MMORPG прошлого века: как мы создали первый Киевский игровой сервер

    Давным давно на далеком сервере...

    Вторая половина девяностых. В СНГ интернет как таковой еще только начинает развиваться. Коммерческих сайтов практически нет (а если и есть, то исключительно айтишной тематики). Web еще не стал тем местом, где пользователи проводят основную часть времени. Доминирующая технология последней мили - dial-up, на котором в основном читают почту и сидят в ICQ. Но энтузиасты айтишники уже пользуются и ньюсами и IRC и несколькими другими сервисами. И конечно играют в сетевые игры!

    Doom, в который можно было поиграть вдвоем по модему или вчетвером в локальной сети уже смещен с позиции самой популярной сетевой игры. Сейчас поднимают пиратские батлнет сервера на PVPGN - там можно сразиться в Starcraft и Diablo уже в компании до 4-8 игроков (чем больше игроков, тем больше вероятность лагов). В шутерах доминирует Quake и Quake2 - в игре одновременно может быть уже десяток игроков, и уже не зависеть от чужих лагов (ибо UDP).

    Кто-бы мог подумать, что примерно всего через десять лет появятся игры, в которые может одновременно играть сотня или тысяча игроков, и даже больше!

    Но что это только что было?
    Неужели такие игры уже есть?
    Да, уже есть! А если взять англоязычный мир, так уже давным-давно!

    Рождение FD

    В 1998 году официально запускается первый Киевский MUD (Multi User Dungeon/Dimension) сервер "Forgotten Dungeon".
    Для него по шапочному знакомству выделили немного места на одном из FreeBSD-серверов в общежитии Киевского Политехнического института.

    Это не первый русскоязычный MUD сервер, но один из них.
    Московский "Мир Мерлина" был запущен примерно на год раньше.
    А вот с другими серверами в СНГ старшинство уже можно и оспорить (привет, Zmey и ко.!).

    Благодаря большой локальной сети общежитий КПИ, раскинутой на витой паре, коаксиале и честном слове, сервер быстро заполняется игроками.
    В активные дни количество игроков находящихся в мире превышает 100, то и 150, что по тем меркам весьма немало!
    Такой онлайн позволяет не просто побегать по миру в компании практически в любое время суток, но и наладить дипломатические отношения между кланами и даже альянсами.

    Внешний канал для института был проблемой - интернет в то время был медленным и дорогим, поэтому были периоды, когда игровой сервер не был доступен снаружи.
    Но по договоренности с ректоратом, для "Forgotten Dungeon" в конечном счете все-таки сделали исключение, как для общественно-полезного проекта.
    Снаружи он был известен по адресу mud.ntu-kpi.kiev.ua:4000 до конца своей активной жизни (2005-2007).
    Хотя, честно говоря, внешние игроки составляли не более 10% основного онлайна.

    С одной стороны это несколько ограничивало популярность, но с другой стороны давало свои уникальные преимущества, практически недоступные другим MUD-ам.
    Регулярные встречи игроков и разработчиков в реале еженедельно а то и несколько раз в неделю. Обычная рядовая пятничная сходка могла собрать более половины всего состава.

    Такая тесная и регулярная связь и общий энтузиазм вдохновляли на множество безумных идей, и "Forgotten Dungeon" очень быстро обрастал сложной боевой/магической механикой и уникальными фичами.

    Конечно, по современным меркам, все разработчики в основном не дотягивали даже до джуниоров - обычные студенты, из которых не все отличали компилятор от линкера.
    Мы просто писали код с горящими глазами.
    Сервер падал - его поднимали и писали скрипты с автоматическим рестартом.
    Сервер ломался - его чинили и писали новые фичи с новыми ошибками, которые снова чинили.
    Иногда появлялись игроки и "мимокрокодилы" с факультетов информатики, которые могли написать немного больше, чем "hello world". Они делали свой вклад и пропадали.

    Однако, несмотря на полное отсутствие коммерческого опыта разработки, мы были открыты к любой полезной информации.
    В какой-то момент, узнав про существование систем контроля версий, я перевел все на CVS с коммитами и странной системой версионирования.
    Еще не было Jenkins/Teamcity, не было gitlab/gerrit и других привычных CI инструментов, но у нас при коммите новых изменений уже триггерилась сборка новой версии с отправкой логов. А админ, не выходя из игры мог командой перезагрузить игровой сервер с обновлением на новую версию, что позволяло разграничить права доступа, давая возможность вносить изменения в код, но не давая доступ к полной админке.
    На каждое падение сервера, автоматически генерировался отчет с отладочной информацией (dbg стектрейс) и уходил на почту.
    Для тех времен, это было очень круто!
    За почти 10 лет существования сервера, вклад в разработку внесло несколько десятков человек. Без контроля версий, и этих на коленке сделанных скриптов, наверное не получилось бы и половины вещей довести до ума.

    Конечно, несмотря на все наши значимые (как нам тогда казалось) попытки причесать код, он очень далек от того, на что можно равняться.
    Но мне кажется, это довольно неплохой проект "на поиграться" для начинающих разработчиков, которые хотят освоиться в Си, и научиться работать с базовыми вещами - условия, циклы, структуры данных, неважно тебе 10 или 30+ лет.
    По слухам, на кодовой базе нашего сервера, было даже несколько человек, защитивших свои дипломы.
    Но были и отчисленные за неуспеваемость слишком увлеченные игроки... Каждый берет что может (;

    Технические данные

    За базу был взят один из отделившихся от DikuMud движок, а именно ROM 2.4b4a - довольно популярная кодовая база на то время.
    К сожалению, сам репозиторий со всей историей коммитов не удалось сохранить (это современные системы типа git хранят всю историю локально, а более старые CVS только на сервере).
    Но сохранилась последняя версия исходного кода.
    При помощи Google и stackoverflow я смог довести код до состояния, когда он собирается и запускается на современном Линуксе.
    В коде есть текстовый файл, где вручную писали комментарии на жуткой смеси русского(нецензурного)/английского, но посторонним его читать не рекомендуется.

    Еще до запуска сервера в институте, он стоял у меня на рабочем сервере, я игрался с ним в одиночку (зарегистрировались несколько знакомых, которые заходили в основном потестить какие-то фичи). Но раскручивать я его не собирался, ибо не был готов хостить полноценный сервер на работе, так что я и КПИ нашли друг друга (:
    Добавил поддержку кодировок (koi-8, cp-866, win1251 и транслитерацию), добавил поддержку контрольных символов для ANSI colors, поправил какие-то ошибки.
    И даже придумал и реализовал систему простых автоматических квестов.
    Но эти вещи можно найти практически в каждом MUD, а я хочу поделиться некоторыми уникальными инсайдами или просто забавными моментами.

    Делаем простые вещи

    Если говорить о базовых элементах программирования - например на практике понять разницу между знанием синтаксиса if/then/else и умением им пользоваться хорошо, то игровые механики в таких простеньких консольных или браузерных играх это просто превосходный вариант для начинающих! Ведь для того, чтобы увидеть результат нового супер-пупер заклинания, тебе не нужен гейм-дизайнер, художник, музыкант и кто-то еще. Многие вещи делаются простыми командами.

    Например: научился проверять значение переменной, и создал новую переменную, статус "friendly fire". Добавляем немного условий - и код готов. А с точки зрения игрока - полностью меняется боевая составляющая, потому что теперь можно сражаться команда на команду или клан на клан или стая однотипных монстров против игроков, пользуясь массовыми заклинаниями и не вредя своим "друзьям".

    Можно сделать переменную "Статус зрителя", и создать арену для дуэлей, на которой могут находиться зрители в полной безопасности. Еще немного переменных - и можно уже делать ставки на победителя, и вот уже "просто посмотреть за чужой дуэлью" превращается в азартное зрелище вроде "арены гладиаторов" с букмекером! А учитывая что игра текстовая - все зрители могут смотреть, так сказать, с лучшего места в первом ряду ;)

    Пробуем что-нибудь посложнее

    В какой-то момент я разобрался с тем, как работает "время" в движке, и подумал что ведь можно сделать навыки или заклинания, которые кастуются не мгновенно, а будут требовать времени на "концентрацию". Которые можно даже прервать во время выполнения. И которые будут визуально создавать ощущение, что ты колдуешь что-то мощное. Одно из таких заклинаний - портал. Позволяло создавать объект портал (который пропадал через несколько минут) - через портал мог пройти уже любой игрок.

    Техническая реализация заклинания "полиморф" уже была посложнее. Высокоуровневый маг может превратиться в любой предмет. Полноценный. Его можно было взять. Если это было оружие, им можно было вооружиться и сражаться. Если это была еда, ее можно было съесть (съеденный игрок умирал :).
    Сложность заключалась в том, что все триггеры на оповещение персонажа (кто-то зашел, кто-то сел, кто-то встал и ушел) - были завязаны на объект "персонаж". Следовало добавить многочисленные проверки и триггеры в код, чтобы игрок, превратившийся в объект "предмет", получал полную информацию из мира.
    С заклинанием было связано довольно много проблем, чем с радостью пользовались "злоумышленники", но все они в конечном счете были исправлены, а само заклинание внесло значительные изменения в командную игру и особенно клановые войны.

    Уникальные локации

    Игровой мир в Forgotten Dungeon был довольно большим. И становился еще больше. Несколько карт было скачано с разных ресурсов, адаптировались, переводились, подключались.
    Но еще больше карт рисовали сами игроки. Так была нарисована собственно карта и самого Киевского Политехнического института с кучей локальных мемов и отсылок. Среди NPC фигурируют фамилии преподавателей и ректоров. И наверное хорошо, что на тот момент эти люди были далеки от игр и компьютеров, ибо цензура на сервере была минимальна ;)
    Парочка фамилий, которые можно встретить в игре: Федорова, Куцик, Сенько, Шпортюк, Кравцов, Савицкий, Скоробагатько, Линчевский и др.

    Воспоминания про армию

    Однажды мы придумали армию.
    Натуральную.
    По достижению 18 уровня, все вещи у игрока забираются, и его переносит в закрытую локацию.
    В этой локации он даже пообщаться с другими игроками не может, за исключением тех, кто уже в "армии". Из внешнего мира можно было прийти в специальную "комнату переговоров", в котором можно было пообщаться и даже передать предметы (только с типом "вода" или "еда").
    Без поддержки друзей, клана и хороших предметов, нужно было выжить три уровня с высокоуровневыми агрессивными монстрами (сержанты, солдаты, прапорщики..), пока на 21 уровне товарищ Майор не отправлял тебя назад в общий мир. Иногда даже игроки из враждующих кланов объединялись в армии =)
    Но за смерть в армии не штрафовали, поэтому рано или поздно армию проходили все.
    Казалось бы - ну придумали и придумали.
    Но Армия оказала заметное социальное воздействие.

    Небольшое отступление: в середине 90х во многих MUD у игроков вообще могла отсутствовать возможность сражаться друг с другом, так как многие MUD создавались как социальные игровые "чаты" с ролевой составляющей в стиле DnD (или другой тематикой). На ресурсах со списком серверов, даже отдельно указывалась поддержка PK (Player Killing) в описании сервера.

    Смерть персонажа в игре воспринималась неприятно - потеря опыта, потеря предметов, и в отличие от уже одиночных RPG, нельзя было сохраниться.
    Но Армия в нашем MUD "сделала из тварей дрожащих львов и тигров".
    После армии, страх перед смертью заметно падал, отношение к игровому персонажу менялось.
    Я слышал пару историй, когда игроки из нашего мира уходили в другие миры и наводили там шороху.
    Даже верю, что это могло оказать какое-то влияние и в реале. Ну собственно для кого-то это так и было.
    Конечно с армией тоже было связано много багов, которыми пользовались любители халявы, но мы это дело находили и прекращали:

    Сотни мелочей

    Введено много уникальных рас, с действительно заметными отличиями. Сейчас в MMORPG это уже норма, а тогда и рас было мало, и в базовом движке их отличие было в основном в небольшом разбросе изначальных параметров - силы, ловкости и так далее.
    У нас вводились заметные изменения.
    Раса Вампиров, которые заметно прибавляли в силе по ночам и вынуждали игроков следить за сменой дня и ночи в игре.
    Банальные вещи - Ящеры умеют плавать. Пикси - летать. Этериалы - проходить сквозь двери и сопротивляться режущему оружию. Зомби могут не есть и не дышать. У Кентавров четыре ноги, поэтому удар двумя копытами вполне заменял серьезное оружие.
    Гномы могут перековывать предметы, улучшая их при помощи специальных артефактных компонентов (да, у нас гномы-игроки уже были прародителями современных крафтеров).
    В общем сотни мелочей, которые в сумме значительно влияли на то, как следует одевать/вооружать/прокачивать и отыгрывать своего персонажа в зависимости от расы.

    Введены перерождения с частичным сохранением навыков предыдущего класса, позволяя создавать сложные комбинации (например вор/маг и маг/вор - далеко не одно и тоже, а это ведь необходимо дважды прокачаться до 101 уровня.)

    Админы и игроки творят вместе

    Мы любили игроков-энтузиастов. У нас была активная поддержка кланов и гильдий - мы вводили уникальные индивидуальные визуалиации для игроков и кланов. Мы вводили уникальные заклинания, навыки и фичи и локации для кланов и гильдий прямо в код, которые придумывали вместе с игроками.
    Да, всегда на фоне старались не забывать о балансе, но согласитесь - в современных играх такая идейная поддержка игроков и ролевой составляющей практически невозможна.

    У нас были "отношений", включая секс, свадьбы, разводы и даже возможность получить статус "родственника". Да, следует ставить рейтинг 18+.

    Были игроки-одиночки, которые не хотели в клан. Но клановые фичи были довольно "вкусные". И мы сделали для них специальный клан для одиночек "LONER". Он ни к чему не обязывал, но указывал, что человек сам по себе и давал возможность пользоваться защищенным тепленьким местом с кроватью для отдыха.

    Внутренняя кухня

    Некоторые решения были довольно странные по архитектуре. Например, никто из нас не умел работать с базами данных и не особо разбирались в том, насколько это удобно. Честно говоря, в то время из известных баз были Foxpro и MS Access. MySql еще не был известен. А Oracle какой-то версии 5-6 был жутко тяжелым и решения на его базе только начинали продаваться далеко в Москве.
    В большинстве MUD движков данные игроков хранились в файлах. Проблемным моментом в этом было то, что сохранение файла игрока обычно происходило во время его выхода из игры, и практически все сервера были подвержены ошибке с дублированием предметов.
    Рецепт примерно такой: Ты узнаешь любой баг в игре, который приводит к падению сервера (это встречалось частенько и в разных мадах).

    Инструкция: в игру заходят два игрока, у одного есть "вкусный" предмет.
    Он отдает его второму. Второй выходит из игры (его профайл сохраняется уже с предметом).
    Первый игрок крашит сервер (или дожидается такого краша), и его инвентарь не успевает сохраниться в файл.
    После рестарта сервера - оба заходят - и каждый с предметом.

    Мое ужасное но рабочее решение было в лоб - если игрок производил любые манипуляции с предметами, на него вешался флаг "сохранить".
    При сохранении какого-либо игрока, сохранялись все игроки с таким флагом одновременно.
    При онлайне 100-200 игроков вопрос производительности не стоял, файлы игроков занимали в среднем 3-4 килобайта.
    Решение сработало отлично, и duplicate bug в нашем мире исчез (главное чтобы не крашилась сама процедура сохранения).

    Можно было просто почитать документацию о fopen/fwrite, и вот - добавлены административные команды для работы с оффлайн игроками.
    Администраторам игры было полезно уметь забанить, разбанить, проверить информацию по игрокам, которые сейчас оффлайн, без доступа к консоли сервера.

    Работаем с текстом

    Переводя фразы изначального движка и создавая новые, текст для действий старались строить таким образом, чтобы он звучал корректно вне зависимости от пола игрока.
    Например: "Ты уже благословил Aelita" - звучит неблагозвучно, если заклинание колдует девушка.
    Нейтральная фраза выглядит как: "Aelita уже под божественным благословлением".

    Но затем была придумана и реализована система работы с полом.
    В коде это выглядело как: "Ты уже благословил$a Aelita", (ch->sex)
    Нужное подбиралось из массива ["","а","о"] для он, она, оно.
    Или с использованием готовой функции: act_new("Задание перв$b выполнил$r $n!",ch,NULL,NULL,TO_ALL,POS_DEAD);

    Чуть позже, по той же схеме добавили обработку падежей.
    Для этого в описании персонажей (в основном для NPC) нужно было руками прописать склонения: "волшебн|ый|ого|ому|ого|ым|ом дракош|а|и|е|у|ей|е".

    В тексте фразы указывалась нужная форма:
    act("$c1 выдыхает облако кислоты в $C4.",ch,NULL,victim,TO_NOTVICT);
    Функция проверяла есть ли для данного персонажа набор падежей, если нет - просто брала инфинитив.

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

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

    Зарубежом

    История зарубежных англоязычных МАДов гораздо более долгая. Она начинается чуть ли сразу с появления первых сетей - второй половины семидесятых. Общее количество игроков и онлайн на отдельно взятом крупном сервере могло посоревноваться с общим онлайном всех серверов в СНГ вместе взятых.

    Например Arctic MUD, который появился еще в 1992 году, к концу девяностых мог похвастать онлайном свыше 1000 человек, доходя в пиковое время почти до двух тысяч. Многие англоязычные MUD могли позволить себе монетизирование, которое в то время в СНГ было бы непонятым и попросту невозможным. Также для игры в MUD, точнее комфортной игры, желательный уровень английского языка заметно выше чем elementary. Это также было довольно серьезным барьером для желающих поиграть.
    Вполне возможно что за рубежом было придумано и воплощено много разных интересных вещей, и многие из наших нововведений могли оказаться вторичными.

    Пик MUD серверов в рунете пришелся на тот небольшой промежуток времени, когда сама идея многопользовательских текстовых игр была уже неплохо проработана. Существовало несколько готовых движков с разным подходом к основной механике: level-based (dikumud, ROM, Merc and many other), когда персонаж получает уровни и от уровня уже получает навыки, заклинания и улучшения параметров (elf 80-го левелу), или skill-based (Avalon, Clok, DartMUD), когда уровня нет вообще, или он ни на что не влияет, а значение имеет только уровень владения различными навыками и заклинаниями (владение двуручным мечом 12 уровня).

    Но уже всего через несколько лет на хвост начали наступать первые "графические МАДы", как их называли вначале - Ultima Online, Everquest. А затем подтянулись уже и более современные MMORPG - Lineage/Aion/WOW и другие. Поэтому отечественные мады, ярко вспыхнув, горели не слишком долго - около десяти лет (примерно с 1997 по 2005-2007), вытесненные более современными играми.

    Я потратил примерно одинаковое количество времени на администрирование "Forgotten Dungeon" и шарда Lineage2, и могу сказать, что с точки зрения игровой механики, МАД конечно гораздо глубже, шире, и предоставляет больше возможностей и свободы для игроков.

    Легкость введения новых возможностей и требования к уровню разработчиков просто не сопоставима. Вдобавок для игры не нужен современный компьютер или мощная видеокарта. Даже требования к скорости подключения весьма скромные.

    Но удобство и простота управления, привлекательность и конечно визуальная составляющая - конечно на стороне графических игр.

    Я подсчитал, что в "Forgotten Dungeon" есть примерно 350 команд, которые можно ввести (правда часть из них административные, часть эмоции), около 120 заклинания и примерно 50 навыков (активных и пассивных). Гайдов и форумов практически не было в силу неразвитости веб, есть только довольно обширная но запутанная внутренняя справка. Примерно месяц занимало просто чтобы игрок стал чувствовать себя в игре уверенно и ориентироваться в мире.
    А для большинства графических игр - месяц это зачастую если и не ветеран, то уже довольно опытный игрок.

    На текущий момент (2021 год) еще можно найти несколько живых серверов в СНГ (http://www.mudconnector.su/MudList), но это лишь тень минулого и зачастую они пустуют.
    А вот среди англоязычных серверов можно найти десяток серверов, с онлайном в 500-800 игроков.

    Стоит отметить, что MUD - это практически единственный вариант интересной многопользовательской сетевой игры для слепых игроков, поскольку текстовая игра очень легко адаптируется при помощи синтезатора речи. Существуют целые кланы таких игроков. Да и поддержать таких игроков, добавив несколько опций по запросу для удобства - это действительно требует очень немного затрат со стороны разработчиков.

    Конец истории

    Я уверен, что наши восторженные "открытия" тех времен сейчас вряд ли кого-то удивят.
    Подход к разработке заметно изменился. Количество готовых наработанных решений за 20 лет можно найти практически на любой случай. Паттерны, структуры данных (словари, двухсторонние списки с уже готовыми методами работы) и множество других вещей - уже встроено в язык.
    Но эта статья - кусочек реальной истории одного из первых виртуальных миров Украины и рунета.

    Исходники "Forgotten Dungeon" доступны на https://github.com/sfkulyk/fdungeon
    Кстати, выложить код в github (правда без некоторых последних правок), я успел еще до https://archiveprogram.github.com/, поэтому можно надеятся, что исходники FD переживут всех нас ;)

    Сам игровой мир (пусть и пустой) живет по адресу mud.saboteur.com.ua:4000, чисто из чувства ностальгии. Много он не просит, а вдруг кто зайдет пустить слезу по временам, когда трава была зеленее.

    Изредка я могу вносить мелкие правки, а также планирую использовать его в школьно-образовательных целях, но ничего серьезного вносить не планируется (тем более что я не разработчик, а так - балуюсь). Если кому интересно - форкайте!

    Буду благодарен, если при этом вы сохраните в текстах наши юные смешные имена..

    Спасибо всем, кто дочитал до конца.

    Комментарии 1

      0
      Да, классные были времена!
      Хоть я сам и рубился в Аладон
      Параллельный мир. Гибеор, 2000

      Параллельный мир. Гибеор(01/01/1990)
      Ты входишь в этот мир:
      >смотреть
      Мрачная больничная комната с невысоким потолком.
      Лампа на потолке заливает комнату ярким неживым светом. У зарешеченного окна стоит смятая кровать и тумбочка. Голые стены и потолок — взгляду не за что зацепиться.
      Видимые выходы: нет
      >вещи
      У тебя есть:
      ничего
      >экипировка
      Ты используешь:
      Одето на тело: больничная пижама
      Одето на ноги: больничные тапочки
      >кто
      — СМЕРТНЫЕ — [ Человек воин ] Клэймор Оруженосец
      Всего персонажей: 1. Максимум (с перезагрузки): 1.
      >орать Есть хоть кто-нибудь?!!!

      День 1-й (Клэймор)
      «Боже мой… Куда я попал? Какая сволочь меня сюда перенесла?! Правильно говорили, что магам надо группу транспортных умений подрезать — совсем распустились. Ну и шуточки… Почему никто не отвечает? Орать уже больше нет сил. Хочется спать.»
      >спать
      Ты ложишься спать.

      День 1-й (Главврач Донецкой Областной Клиники по лечению компьютерных психозов)
      — Он все время кричит?
      — Да, почти. Просыпается, покричит, иногда потыкается в стены и снова засыпает.
      — Стрэйфится, прыгает?
      — Нет. Это не квейкер. Точно не квейкер.
      — А кто? Есть версии?
      — Пока нет.
      — Продолжайте давать реланиум, через пару дней попробуем побеседовать.

      Заключение Киевского Института Физиологии имени жертв академика Павлова
      Пациент: Сергеев Александр Викторович, 25 лет.
      Должность: программист.
      Семейное положение: не женат, детей не имеет.
      Данные осмотра.
      Общее физическое состояние организма нормальное, из видимых отклонений — сколиоз начальной стадии и легкая апоплексия кровеносных сосудов глазных яблок. Рефлексы в норме. Реакция: на зрительные раздражители обострена, на прочие — ниже нормы. Речь достаточно связная, насыщена яркими образами. Смысл высказываний труднопонимаем, пациент имеет склонность комментировать свои действия.
      Предварительный диагноз: шизофрения.

      Донецкая Областная Клиника по лечению компьютерных психозов
      Сергеев Александр Викторович, 25 лет. Краткая история болезни.
      Первые признаки заболевания по словам друзей и родственников начались через 2 месяца после подключения к сети интернет: больной засиживался ночами за компьютером, слабо реагировал на внешние раздражители. Стал хуже есть, перестал встречаться со своей девушкой. В разговоре начали появляться странные слова и выражения: эльфы, гномы, тролли, мобы, экспа, хитролл, прокачка и т.п. На все расспросы больной отвечал что-то невразумительное: «поселился в другом мире», «у меня появилась вторая жизнь». Через некоторое время стал утверждать, что он — Клэймор, средневековый воин, у него есть жена (эльфийка) и два сына.
      Доставлен в клинику родственниками после эпизода с отключением телефонной линии из-за профилактических работ, когда больной в ярости разбил о стенку модем и стал кричать, что он «этих поганых телефонистов всех поодиночке захантит, на экспу порежет, а весь шмот вместе с АТС пожертвует такой-то бабушке».
      По сообщению вызванной психиатрической бригады больной вел себя достаточно тихо и особо не сопротивлялся. Когда он узнал, что его везут в больницу, он поинтересовался «для какого уровня эта зона?», на что недоуменные санитары ответили «для любого», после чего больной совсем успокоился и повеселел. По пути в клинику он настойчиво интересовался где в здании можно левелиться воину 30-го уровня, и санитары вынуждены были пообещать, что обязательно покажут на месте.
      После помещения в палату начал вести себя более возбужденно и агрессивно. Выказывал опасение, что комната недостаточно надежна. Интересовался, могут ли его отсюда призвать? После получения утвердительного ответа впал в уныние. Выклянчил у лечащего врача обещание походить по больнице с ним в группе. Сказал непонятную фразу: «я буду танковать, а ты — подлечивать». Лечащий врач пообещал, что будет подлечивать в любом случае.
      На третий день пребывания в клинике был обследован аспирантами Киевского Института физиологии. Общее заключение: физически здоров, подозрение на острую форму шизофрении.
      Дальнейшие проверки на стандартные мании положительного результата не дали.
      Результаты проверки реакции на типичные причины психозов:
      — 3D-шутеры — отрицательно,
      — порнография в Сети — отрицательно,
      — web-чаты и IRC (Internet Relay Chat) — отрицательно (хотя определенный интерес к IRC проявил).
      Причина нервного расстройства пока остается невыясненной, хотя безусловно связана с интернет и книгами в жанре средневекового фэнтези. Последнее вызывает удивление, так как по словам знакомых и родственников, пациент уже давно не читал художественной литературы, тем более — фантастики.
      Пациент отождествляет себя с неким Клэймором, воином из средневекового мира Аладон.
      Диагноз: раздвоение личности на фоне навязчивой идеи о жизни в параллельном мире.

      День 3-й (Клэймор)
      «Чем они меня пичкают?! Соображается весьма плохо, все время клонит в сон. Периодически приходят санитары и ведут к врачу на беседу. Санитары явно мобы — тупые, набор действий ограничен, на все мои действия и фразы отвечают стандартными шаблонами. А вот, кстати, и они.»
      Санитар приходит с севера.
      Санитар приходит с севера.
      Санитар произносит: Александр, пора к врачу.
      >смотреть санитар
      Сильный и недружелюбный мужик в белом халате.
      Санитар в прекрасном состоянии.
      Санитар использует:
      Одето на голову: медицинский колпак
      Одето на тело: белый халат
      Одето на ноги: кроссовки
      Оружие: смирительная рубашка
      >шансы санитар
      У тебя сегодня счастливый день?
      >вздыхать
      Ты вздыхаешь.
      >хмуриться
      Ты неодобрительно хмуришься.
      >встать
      Ты встаешь.
      >следовать санитар
      Ты теперь следуешь за санитаром.
      Санитар уходит на север.
      Санитар уходит на север.
      Ты следуешь за санитаром.
      Больничный коридор.
      Здесь прохладно и неуютно, мимо проходят врачи и санитары.
      Видимые выходы: юг, восток, запад.
      Санитар закрывает дверь.
      Санитар запирает дверь.


      Санитар уходит на восток.
      Санитар уходит на восток.
      Ты следуешь за санитаром.
      У кабинета врача.
      Здесь прохладно и неуютно, мимо проходят врачи и санитары. Дверь на севере ведет в кабинет психиатра.
      Видимые выходы: восток, запад.
      Санитар открывает дверь.
      Санитар уходит на север.
      Санитар уходит на север.
      Ты следуешь за санитаром.
      В кабинете психиатра.
      Маленькая тихая комната. На подоконнике в горшках комнатные цветы. Здесь ты чувствуешь себя спокойно и уверенно. Дверь на юге ведет в коридор.
      Психиатр сидит за столом.
      Видимые выходы: юг.
      Санитар закрывает дверь.

      День 3-й (фонограмма беседы с лечащим врачом)
      — Добрый день, Александр!
      — Я Вам уже говорил, что меня зовут Клэймор.
      — Хорошо. Клэймор. Кстати, почему именно Клэймор?
      — Ну я же не спрашиваю, почему Вас зовут Андрей, так? Кстати, запрещенное имя.
      — Почему запрещенное? Кем запрещенное?
      — Имморталами, бессмертными. Вы бы еще Зевсом назвались. Странно, почему Вас до сих пор не удалили. Или хотя бы не переименовали.
      — Как так — удалили?
      — Молча.
      — Чем Вы так озлоблены, Клэймор?
      — Обманом. Вы меня все время обманываете. Обещали, что можно будет поохотиться по больнице. Но не даете выходить из палаты, а там экспу нельзя набирать. И зачем Вы отрубили мне каналы общения?
      — Мы Вас выпускали на второй день, но вы ведь чуть не задушили нашего кота. Что плохого он Вам сделал? Вы не любите котов?
      — Да нет… Почему же. Люблю. Просто до уровня 670 экспы осталось. Без меча я санитара явно не завалю, вот и решил на котах остаток набрать. А какого он уровня?
      — ?
      — Какого уровня кот?
      — Не понимаю.
      — А Вы какого уровня?
      — Я дипломированный врач-психиатр первой категории.
      — То есть, сразу после муд-школы, первый уровень, плюс школьный диплом?
      — Почему же школьный? Институтский.
      — Значит, Вы — десятого уровня?
      — Наверное.
      — Маг?
      — Простите?..
      — Вы колдовать умеете?
      — Нет, только лечить.
      — Жрец?
      — Врач.
      — Жрец. Раз лечите, значит — жрец.
      — Мда…

      День 6-й (Александр Сергеев)
      «Только сейчас я начал понимать, куда попал. Это дурка, самая обыкновенная дурка. Надо ж было так вляпаться… Доигрался, одним словом. Ё-мое… :((( Как же теперь в глаза друзьям смотреть? Клеймо психа на всю жизнь прилипнет — не отделаешься.
      Что я успел натворить? Какие-то смутные обрывки воспоминаний. Кажется с психу разбил дома модем и что-то орал. Потом… Что было потом? Кошка… При чем тут кошка? Что я сделал с кошкой?! Кошмар… Какое-то наваждение.
      Что ж делать теперь? Надо все объяснить… Внятно, связно, логично. Чтобы поняли, как я в такое вляпался по самые… Эх… И чтобы выпустили, это — главное.»

      День 6-й (фонограмма беседы с лечащим врачом)
      — Добрый день… Клэймор.
      — Александр.
      — ? Хорошо… Александр. Как Вы себя чувствуете?
      — В целом — хорошо. Только все время спать хочется. Из-за транквилизаторов?
      — Да. Это из-за реланиума. Поначалу Вы были: ммм: слегка агрессивным.
      — Да уж… Я понимаю.
      — Вы можете объяснить, что с Вами произошло?
      — Попытаюсь. Это из-за Аладона.
      — Что такое Аладон?
      — Аладон? Игра, мад. По-английски — MUD (Multi User Dimensions).
      — А по-русски?
      — По-русски — МПМ, многопользовательский мир. Онлайновая ролевая игра по интернет.
      — Что-то типа Ultima Online?
      — Похоже. Только гораздо интереснее.
      — Хм: Интереснее? Там более красочная графика?
      — Там вообще нет графики. Только текст.
      — ???
      — Да, только текст. Но это на самом деле только плюс. В той же Ультиме вы не сможете задумчиво почесать затылок или плюнуть своему собеседнику в правый глаз. А в Аладоне — запросто.
      — А зачем? Зачем задумчиво чесать затылок или плеваться?
      — Как зачем? Это ведь жизнь. Понимаете? Жизнь в миниатюре. А в жизни всякое бывает.
      — Не совсем ясно. Как можно имитировать жизнь только при помощи текста?
      — Ну как же! А воображение? Все остальное дорисовывает именно оно. Когда вы читаете книгу, вы можете обойтись и без иллюстраций. Здесь то же самое. Только это живая книга, и вы сами являетесь одним из ее авторов и персонажей.
      — Занятно…
      — Это не просто занятно. Это захватывает с головой. Без остатка. Я сам не верил, пока не попробовал.
      — А что могут… Точнее — что делают персонажи в МПМ? Как они живут?
      — Что делают? Практически все. Дружат, воюют, организовывают кланы, сообщества, влюбляются, женятся, разводятся. Живут, одним словом. На мобов охотятся.
      — Мобов? Это кто?
      — Мобы — персонажи, управляемые компьютером (Mob, Mobile). Еще их называют NPC — Non Player Characters. За их убийство дают очки опыта или экспу (exp, experience). Тут система, как в обыкновенной RPG. Убил, получил опыт, набрал нужное количество очков, перешел на следующий уровень. А новый уровень открывает новые возможности: боевые умения, приемы или заклинания (для магов).
      — Ясно. А какой уровень является максимальным?
      — 51-й. Во всяком случае в Аладоне. Да и в большинстве других — тоже. Но с достижением этого уровня игра не заканчивается. Можно стать Богом этого мира и обрести новые умения, плюс войти в число создателей (implementors). Разрабатывать новые зоны.
      — Зоны?
      — Ну да… Зоны. Часть игрового пространства.
      — Ага.
      — Вы мне не верите?
      — Ну что Вы! Как раз сейчас я вам верю. :) А Вы сможете мне показать этот Ваш… Аладон?
      — Конечно! У Вас компьютеры с доступом в Сеть в клинике есть?
      — Есть. Только давайте не сегодня… Сейчас Вам нужно успокоиться и отдохнуть.

      День 7-й (Аладон)
      За Западными воротами Триграда
      Ты стоишь за западной стеной Триграда. На востоке над тобой нависает Западная Башня с большими воротами в ней. Стена тянется с севера на юг.
      Видимые выходы: восток, запад.
      Карр приходит с запада.
      Таркус приходит с востока.
      Таркус произносит: Привет!
      Таркус обнимает Карра.
      Карр обнимает Таркуса.
      Таркус произносит: Новость слышал?
      Карр произносит: Какую?
      Карр удивленно поднимает брови.
      Таркус произносит: Клэймора в больницу положили. Совсем на почве мада двинулся.
      Карр оценивающе присвистывает.
      Карр произносит: Ни фига себе!!!
      Таркус произносит: Вот тебе и ни фига…
      Таркус вздыхает.

      День 8-й (фонограмма беседы с лечащим врачом)
      — Добрый день, Александр!
      — День добрый!
      — Как себя чувствуете?
      — Гораздо лучше. Вживаюсь в реальность (с натянутым смехом).
      — Сегодня мы побеседуем в этой комнате. Здесь есть компьютер с доступом в интернет. Как мы и договаривались. Хорошо?
      — Хорошо.
      — Можно вопрос? Вы позавчера упомянули в разговоре, что есть и другие МПМ кроме Аладона. Их много?
      — Конечно! Есть много разных МПМ. Особенно много англоязычных. Аладон хорош тем, что он полностью русифицирован… все сообщения и команды идут на русском языке.
      — Понятно. А как Вы вообще узнали про МПМ вообще и про Аладон в частности?
      — Случайно на www.susanin.com в разделе «Игры» наткнулся (www.mud.donetsk.ua). А Аладон выбрал потому, что он хостился нашим донецким провайдером Аист. Теперь хостинг перенесли в Москву на Совинтел.
      — Ясно. А есть еще русскоязычные МПМ? Именно русскоязычные?
      — Я знаю еще 2 полностью русскоязычных мада: Мир Трех Лун (www.rmud.net.ru) и Арда (www.arda.pp.ru). Остальные мады либо частично русифицированы, либо полностью на английском языке. О русскоязычных и частично русифицированных мадах можно много узнать на www.mud.org.ru, а об англоязычных на www.mudconnector.com — это вообще кладезь мад-ресурсов… тысячи различных мадов, от стандартных фэнтези до современных Hi-tech.
      — Тысячи? Никогда бы не подумал, что их так много. Ну хорошо, покажите мне хотя бы Аладон.
      — Для начала нам понадобится мад-клиент.
      — Простите?..
      — Ну: Такая программа, с помощью которой можно подключаться к мад-серверу и играть.
      — А без нее никак?
      — Можно и без нее, при помощи обычного telnet в составе Windows. Только это жутко неудобно. Проще скачать какой-нибудь популярный простенький клиент. Например, Jaba (www.halyava.ru/jmc) или zMUD (www.zuggsoft.com). Есть и другие клиенты, под другие ОС. При желании даже для Маков можно найти. Основные удобства, которые предоставляет мад-клиент: поддержка цвета при выводе информации на экран, привязка различных действий на определенные пользователем клавиши (например, логично привязать команды перемещений «север», «юг» и т.д. на курсорные клавиши). Также в клиентах можно программировать триггеры — определенные действия, которые будут выполняться при появлении на экране заданных текстовых строк. Например, для Jaba это будет выглядеть следующим образом: #action {ты хочешь пить} {пить бурдюк}, после определения такого триггера ваш персонаж будет автоматически пить воду из бурдюка, когда будет испытывать жажду. Кстати, предлагаю скачать именно Jaba.
      (Через 5 минут:)
      — Теперь у нас есть клиент, базовые команды привязаны к нужным клавишам. Можно начинать. Подключаемся к серверу: #connect aladon.sovintel.ru 9000.
      — Ага! А что делать теперь? Тут спрашивают какую кодировку выбрать.
      — Для Windows выбираем Win1251. Для Unix мы бы выбрали KOI8.
      — Ясно. Теперь спрашивают имя. Что мне вводить? Андрей?
      — Нет. Это запрещенное имя. Нужно придумать такое, чтобы не совпадало с реальными именами, не было названием какого-либо предмета и в то же время по духу подходило бы эпохе средневековья. Но мы ведь вообще-то создаем нового персонажа, значит надо набрать «новое». После этого начнется процесс создания персонажа, где нужно будет выбрать расу Вашего героя, профессию, определить умения, которыми Вы сможете овладеть в процессе игры, и ответить еще на несколько различных вопросов. Имя персонажа выбирается в последнюю очередь.
      — Понятно. А какую расу и профессию мне выбирать?
      — По большому счету это дело вкуса, но новичкам обычно рекомендуют начинать игру человеком-воином. Я советую Вам то же самое. Для начала — это оптимальный выбор.
      — Хорошо. А вот уже и имя спрашивают. Ммм… Скажем, Ландерон в качестве имени подойдет?
      — Вполне.
      — «Добро пожаловать в мир АЛАДОН». Я уже в игре?
      — Да.
      — И что мне делать?
      — Прямо на севере находится школа для начинающих игроков. Это одна из самых простых и безопасных зон, в которой легко освоиться новичку. Для начала запомните основные команды: север, юг, запад, восток, верх, низ, сесть, встать, отдыхать, спать, смотреть, взять, убить, бежать, возврат…
      — Ого! Так много?
      — Это не много. Это очень мало. На самом деле в мадах несколько сотен команд, не считая «социалов» — команд для демонстрации эмоций.
      — И как же это все запомнить?
      — Все команды Вам сразу не понадобятся. Об остальных вы узнаете в процессе игры от других игроков. Можно также посмотреть встроенную справку. Наберите «справка» и многие вопросы отпадут сами собой.
      — Интересно, очень интересно… Ладно… Не буду Вас больше утомлять. Продолжим беседу завтра?
      — Как скажете…

      День 9-й (диалог с санитаром по пути в столовую)
      — А когда меня сегодня примет Андрей Витальевич?
      — Он сегодня занят (равнодушно пережевывая жевательную резинку).
      — Но он сам мне вчера сказал, что примет меня сегодня…
      — У него много работы. Он готовит отчеты в Word'е.
      — Аааа… (с пониманием). Отчеты… В Word'е… Мда… Стоит показать человеку MUD, и он сразу становится м#даком.
      — Что Вы сказали?
      — Ничего, ничего…

      День 11-й (в кабинете врача)
      — Доброе утро!
      — Доброе…
      — Вы не в духе?
      — Как сказать… Когда меня выписывают?
      — Голубчик, ну Вы ведь понимаете, что так быстро мы Вас просто не можем выписать? Даже при всем желании. Завтра Вы пройдете осмотр, серию тестов, потом еще пара дней под наблюдением: А уж потом домой.
      — Ясно (с обреченным видом)… Вы эти дни в Аладон играли?
      — Немного (с нотками смущения в голосе). У меня много работы было — практически ни минуты свободного времени.
      — Конечно! Я понимаю (с плохо скрываемым злорадством).
      — На самом деле это действительно занятная вещь. С чисто профессиональной точки зрения. Столько типажей, столько интересных психологических ситуаций. Действительно — общество в миниатюре, как Вы и говорили.
      — Угу. С профессиональной точки зрения.
      — Не ерничайте. На самом деле меня компьютерные игры мало интересуют. Ладно, Александр… Я вижу, у Вас сегодня плохое настроение. Давайте побеседуем после Вашего осмотра?
      — Вы что — решили меня в онлайновый справочник по мадам превратить?! Вы меня лечите или хотите полным психом сделать?
      — Ну что вы такое говорите… Давайте договоримся… я помогаю ускорить Вашу выписку, а Вы… Вы помогаете мне дойти до 20-го уровня (с заискивающими нотками).
      — ?! Вы с ума сошли.
      — Я не могу сойти с ума. Я — психиатр. :)

      День 15-й (диалог в кабинете главврача)
      — Ну что, Андрей Витальевич? Как там наши дела с Сергеевым?
      — Продвигаются. Причину психоза выяснили. Больной идет на поправку, прошел осмотр.
      — Прошел, говорите? Это хорошо. Когда планируете выписывать?
      — Думаю, что еще недельку минимум стоит подержать под наблюдением.
      — ?
      — Во избежание рецидива.
      — Рецидива… Ну что ж… Вам, как лечащему врачу виднее. Только не переусердствуйте.
      — О чем Вы говорите! Разумеется… Это ведь не тюрьма.
      — Андрей Витальевич, как насчет пивка после работы?
      — Ммм… Я бы с удовольствием. Но…
      — Но?
      — Работы много незаконченной осталось. Еще пара бумажек за мной висит…
      — Что-то Вы последнее время все работаете и работаете. По вечерам задерживаетесь. Проблемы в семье?
      — Нет, ну что Вы…

      Конец 4-й недели (Клэймор и Ландерон)
      В кабинете психиатра.
      Маленькая тихая комната. На подоконнике в горшках комнатные цветы. Здесь ты чувствуешь себя спокойно и уверенно. Дверь на юге ведет в коридор.
      Видимые выходы: юг.
      Ландерон приходит с юга.
      >сказать Ну наконец-то! Ты где шлялся? Сколько тебя ждать можно?
      Ландерон произносит: Кота валил. 220 экспы отвалили. Неплохо, а? Пошляемся в группе? Ты танкуешь.
      >сказать Давай. Пошли в столовую — там повара можно запинать. Он 30-го уровня — нам за него много дадут. Заодно подхарчимся и бурдюки наполним.
      Ландерон кивает.
      Ландерон теперь следует за тобой.
      >группа ландерон
      Ландерон присоединяется в твою группу.
      >сказать Понеслась!!!
      >кто
      — СМЕРТНЫЕ — [ Человек воин ] Клэймор Оруженосец
      [ Человек воин ] Ландерон Посвященный
      Всего персонажей: 2. Максимум (с перезагрузки): 2.

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

      Самое читаемое