MUD программеру


При создании своего МАД сервера, наступает момент, когда нужно создать свой набор зон, который будет отличаться от стандартного. В стандартный набор входит родильная зона, где появляются все персонажи, впервые попавшие в мир. Школа новичка, в которой игрок обучается основам жизни в этом мире, а также учит минимально необходимый набор команд, для дальнейшей игры. Общий город, обычно он называется Изенгард или что-то созвучное с этим название.
Предварительно нужно подумать, на какую именно тематику будет ваш сервер. Исходя из этого, нужно составить предварительную карту мира. Если ваш сервер построен по произведению. то можно взять карту, которая часто печатается в подарочном издании книги. Если же это полностью вымышленный мир, то эту карту придется рисовать самостоятельно. Но карта крайне необходима.
Проблема большинства старых серверов заключается в том, что их создатели, к сожалению, никогда не задумывались о том, как и где они будут подключать новые зоны. Поэтому, если попытаться расположить на бумаге все переходы из одной зоны в другую, получается очень запутанная и крайне не вразумительная карта.
Поэтому сперва наперво нужно нарисовать общую карту мира. Выделив на ней основные и центральные города каждой, из представленных в мире рас. После чего нужно соединить эти города трактами или тропами, а далее, можно примерно представить, что будет еще находиться на карте. И теперь, при создании очередной зоны, сначала нужно спланировать, как и где она будет подключена в мире. Чтоб не было неожиданных соединений, вроде как переход из одного узда мира в другой за один шаг. Конечно, в идеале можно весь мир закольцевать. Но этого делать необязательно.
Теперь рассмотрим, какие зоны нужны игрокам.
Во-первых нужен достаточно большой набор зон, для новичков. В этих зонах должно быть множество мелких мобов, на которых будут тренировать свои умения новички. Зон действительно должно быть много, чтоб не было столпотворения в одной зоне до 20 человек, при наличии всего 10 мобов. Это могут быть заброшенные деревеньки, небольшие леса или поля, в которых копошатся мелкие, не очень сильные мобы. Обязательно в этих зонах должны быть мелкие квесты, типа найди-принеси. Это позволит новичку быстрее понять атмосферу мира, войти во вкус игры, и научить в дальнейшем выполнять квесты.
После того как новичок переходит в разряд игроков среднего уровня, ему необходимо множество зон с квестами. Таких квестов должно быть как только можно больше. Чтоб игрок не просто уничтожал мобов, а и осознанно выполнял задания, которые могут быть выгоднее, чем уничтожение всех мобов в этой локации. В этот момент игрок среднего уровня начинает заботиться о носимых его персонажем вещах. Начинает выбирать и искать вещи поднимающие тот или иной параметр, что в дальнейшем ему позволит уничтожать все большее количество монстров, или же выполнять все более сложные квесты. Поэтому крайне желательно, чтобы в зонах для игроков среднего уровня было как можно больше предметов, одежды и оружия.
Зона для хайлевелов, игроков максимального уровня, по сути должны собой переставлять арену, на которой игроку, а лучше даже партии игроков, предстоит сразиться с большим количеством очень сильных мобов. Это могут быть и замки с драконами и арены славы в заброшенном городе. Но таких зон обязательно должно быть несколько. Это позволит всем хайлевел игрокам найти себе занятие по интересу. За каждое выполненное задание игроку дбязательно нужно давать бонус в виде какой либо вещи. Разнообразие тут не обязательно, потому как игроки на высоких уровнях одевают только самые лучшие вещи и берут лучшее оружие. Поэтому большое разнообразие может навредить. Все равно игроки найдут, какой предмет гардероба, или какое оружее самое лудшее, и все будут ходить только с ними. Мода на лучшие вещи не проходит никогда. Поэтому и количество лучших вещей желательно ограничить.
Таким образом, распределение зон по уровню игрока желательно сделать следующим:
Начальный уровень - 30%
Средний уровень - 40%
Высокий уровень - 20%
Это позволит создать наиболее реальный баланс среди игроков, и не позволит переполняться зонам. То есть в зоне не будет игроков больше по силе, чем мобов.

Есть еще сайт с онлайн-играми, флешевыми, например моя любимая Лазеры. Нужно путем установки зеркал зажечь лазером все лампочки.

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

Когда созданна среда разработки. Скачаны и разракованя исходный код, нужно скомпилировать, полученые исходные коды.

Для начала вы должны выбрать папку у себя на жестком диске, где вы будете работать. Желательно, чтобы в пути не было пробелов.

Теперь разпакуем архив. Так как пути к программам цигвина у нас просисаны в переменной окружения PATH то нам остается дать команду
tar xzf smaugfuss1.8.tgz

Естественно, что архив smaugfuss1.8.tgz должен находится в текущей папке. После этого, в текущей папке появится папка SmaugFUSS в которой исходные коды, зоны и документация.
Можно разраковывать архив не GNU программой tar а ВинРаром, но кому как нравиться.

Теперь нужно скомпилировать исходные коды. Для этого нужно зайти в папку SmaugFUSS\src и дать команду
make

После чего на экране побегут строчки информирующие о том, какой файл в данный момент компилируется.

Теперь вы имеете среду для разработки. Вы можете изменять исходные коды мада для достижения поставленных целей.

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

Так как наш мад сервер будет основан на SmaugFuss то для начала необходимо скачать исходники. SmaugFuss это продолжение разработки одного из самых интересных мад движков. В этой разработке было исправлено множество ошибок, добавленно множество новых возможностей. Скачать исходники можно на сайте разработчиков Smaug в разделе Files. На текущий момент доступна версия 1.8.
Скачать SmaugFuss 1.8

Также, для ознакомления, стоит посетить несколько сайтов, некоторые из них заброшены, а некоторые обновляются регулярно. Это сайты с различными кодовыми базами мадов. Их будет полезно изучить.
ftp.games.org - Один из самых старых и больших сайтов, в настоящее время заброшен
mudmagic.com - Регулярно обновляемый сайт. Много интересных кодовых баз.
—-
По мере нахождения ресурсов этот список будет пополнятсья.

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

В первую очередь, необходимо скачать cygwin.

Для создания среды разработки необходимо сделать следующие шаги:

Cygwin это набор GNU программ, которые скомпилированы и работают в M$Windows.
cygwin ставится через инсталлятор который выкачивает только требуемые модули. Инсталлятор cygwin необходимо скачать на официальном сайте CygWin.
После загрузки инсталятора, необходимо загрузить уже скомпилированные пакеты програм, для дальнейшей их установки на компьютер. Можно скачать все пркеты, но это около 700 мегабайт. А так как большенство из них, это очень спицифические библиотеки, которые врядли потребуються, мы будем скачивать только необходимый минимум для работы. Все скачаные модули будут сохраняться в папку, в которой находится инсталлятор.
Итак, запускаем инсталлятор “setup.exe”, выбираем “Download Without installing”, затем выбираем сервр с которого скачивать модули. Сервер выбирается опытным путем =) Я порекомендую или немецкие или голландские сервера, хотя возможно, что к вам ближе будут другие сервера. После этого начнется скачивание списка доступных модулей. После того как будет скачан список доступных файлов появиться окно “Select Package”. Необходимо будет выбрать следующие пакеты:

  • archive/unzip
  • devel/ctags
  • devel/cvs
  • devel/indent
  • devel/gcc
  • devel/libxml2-dev
  • devel/make
  • devel/openssl-dev
  • devel/subversion
  • editots/vim
  • text/aspell-dev

Те пакеты, которые выбраны по умолчанию, ненужно удалять. Если при выборе одного из выше перечисленных пакетов добавиться еще несколько, их также ненужно удалять.
Все необходимые пакеты имеет объем около 50 мегабайт.

Выкладывать эти файлы в виде одного архива не имеет никакого смысла, потому как программы постоянно обновляться, исправляються ошибки и появляются новые версии. Поэтому лудше все необходимое скачать все пакеты скачать с сайта.

После того как все будет скачано, необходимо установить эти пакеты. Опять запускаем инсталлятор, выбираем пункт “Instapp from local directory”, повторно выбираем все выше перечисленные пакеты, и устанавливаем все это желательно в папку по умолчанию.

Далее, в переменны окружения, необходимо будет добавить PATH=c:\cygwin\bin причем вместо c:\cygwin\ должна быть та папка куда был установлен cygwin.

Теперь все. Можно запустить cygwin и работать в консоли, но я предпочитаю работать в FAR`е с прописанной переменной окружения PATH =)

Теперь среда для сборки готова. Можно брать исходники и компилировать.

Первый шаг выполнен. Теперь на компьютере есть среда которая позволит скомпилировать исходные коды мада.

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong