Рассказ о мадах

Внезапно я вспомнил про свой единственный старый подкаст про мады.

Вот он http://files.mud.kharkov.org/podkast/mud-16-nov-2010.amr

Вообще это не первый мой подкаст (не по теме мадов, а вообще), потом прослушивая записи, я был не слишком в восторге от своей дикции и поэтому старался говорить медленно. У неподготовленного читателя создается впечатление, что я дебил. Нет, я не дебил 😉

Кроме того качество записи: я писал на ходу, по дороге с работы, идя от станции метро “Академика Павлова” (город Харьков) до дома (вдоль по короткой улице Механизаторской, которую проходил всю). Запись велась на телефон-раскладушку Benq Siemens (он у меня давно сломался), поэтому слышен шум машин, моё вейдеровское дыхание и прочие шумы. Дата записи подкаста 16 ноября 2010 года. Шесть лет назад.

* * *

И чтобы два раза не вставать: вот мой старый скринкаст про мады (февраль 2009 года)

https://www.youtube.com/watch?v=r8syPSanRRM

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

Я вернулся из отпуска с наработками

Я вернулся из отпуска, где был неделю и брал с собой ноутбук и немного попрограммировал.

1. По мелочам я правил мир, это не слишком интересно

2. В мад я добавил “Трехмерную библиотеку”. Это концепт отношения к миру мада как к гипертексту. Комната мада с 6 выходами в 6 эвклидовых направлениях это страница гипертекста с 5 ссылками. (Почему с пятью? Один выход я резервирую для ссылки назад). Получается некий граф (да что угодно может получиться). Эвклидовость не обязательна, но я ее люблю. Так проще и ближе к метафоре виртуального мира. Библиотека имеет 3 измерения: по высоте отделы, по долготе отдельные книги, а по широте отдельные страницы (или главы) книг, помещенные в качестве описания комнаты. Увидеть это можно над зоной “Квартира Пруля” (то есть от нач. комн. два раза вверх) Втаскивать туда всю Библиотеку Мошкова не имеет смысла, так как в данном движке весь мире хранится в ОЗУ и вся библиотека в ОЗУ не поместится. Но это только концепт, в частности, для создания игровых библиотек

3. Сделал билдерскую команду build, которая создает новую комнату и сразу связывает ее с текущей. Так можно достаточно комфортно билдить мир в онлайне. Похожая команда была у меня в старой версии мада (режим “прорубаться”), но пропала при очередной грязной синхронизации с Былинами. Похожая команда в tbaMUD называется dig (в моем маде имя dig уже занято игровой командой копания)

Всё выложено на Битбакет и Гитхаб

Я тупой

Virtustan MUD и Zerkalo MUD у меня на 64 битной Убунте то собираются, то не собираются. Я просто не слежу за контекстом, в котором это делаю. По мере выхода новых убунт, то есть раз в пару лет, меняется версия gcc, библиотеки, boost. Кроме того, убунты периодически сами обновляются или я ставлю новые пакеты/новые версии пакетов, устанавливая какой-нибудь нужный софт. И у меня то всё собирается, то не собирается, а я хлопаю ушами. К чему это я, а к тому, что вчера-сегодня и Prool MUD (aka Virtustan MUD) собрались и Зеркало собралось и заработало, в корку не падает. Но все равно _иногда_ нужно шаманство: например, инсталлировать свежий boost, отключить zlib, обновить исходники pugixml* (только для Zerkalo MUD, для Прултмада это не нужно), добавить флаг -m32 (с библиотекой zlib можно пошаманить, чтобы муд собирался в 32 битном режиме и библиотека прилинковывалась именно 32-битная, а не 64-битная, которая по умолчанию, но проще удалить ее из настроек conf.h и из Makefile, потому что нафига сжатие для локального мада (и даже для доступного из интернета мада сжатие не нужно, у мада очень маленький траффик, а современные каналы оч. быстры)

(на 32 битных системах все проще, они как-то более стабильны, чем 64, в Центос, Дебиан собирается без проблем)

Сейчас у меня на рабочем ноуте Ubuntu 15.10 64 bit, gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010)

Очередная попытка собрать Virtustan MUD в среде Ubuntu 15.10 64 bit и чтобы оно потом заработало

sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include

ref: https://bugs.launchpad.net/ubuntu/+source/zlib/+bug/1155307

Для сборки в среде Ubuntu 15.10 64 bit еще надо удалить -lz из Makefile и закомментировать HAVE_ZLIB в conf.h

После этого вроде собралось и работает…

Официальное зеркало Былин

Порой просматривая форум Былин я видел упоминания о официальном зеркале Былин, на котором отлаживают нововведения в коде и мире. Сегодня я узнал его адрес: хост тот же – bylins.su, но порт не 4000, а 5555

Aarchon Web Client. Часть 2-я

Установил я его.

Вначале потребовалось немного шаманства (просто я плохо знаю python). На моем сервере стоит питон 2.6.?, не будучи уверенным, что он пойдет (в доке на Аархон упоминается необходимость питона 2.7), я установил Питон 2.7. Потом немного помучился с установкой pip, и установкой через него пакетов flask и flask-socketIO. Оказалось, два питона дерутся друг с другом и чтобы у меня запустилась именно та версия питона, что надо (и чтобы пакет flask был инсталлирован именно в питон 2.7) пришлось установить виртуальную питонную среду virtualenv). Потом скрипт app.py заработал. С моим Виртустан-мадом веб-клиент не заработал, возможно из-за кириллицы. А вот с tbaMUDом всё взлетело. Все возможности экранного веб-клиента я пока не освоил, но графическое изображение движков hp/mn/mv заработало сразу.

О настройке файла app.py под конкретный муд: хост и порт настраиваются в середине, где вызов telnet. А хост 0.0.0.0 и порт 5000 в конце файла – это доступ к самому клиенту (он становится маленьким веб-сервером и проксирует доступ к маду)

То есть веб-клиент у меня стал доступен по адресу http://mud.kharkov.org:5000

Клиент использует протокол MDSP

Да, из опционально требуемых пакетов gunicorn и eventlet первый установился, а второй нет, но так как они опциональны, у меня всё заработало и без них

Aarchon Web Client

Веб-клиент Aarchon MUD выложен в открытый доступ на Bitbucket’е: https://bitbucket.org/Odoth/aarchon-web-client, под демократичной лицензией MIT. Веб-клиент состоит из веб-сервера, написанного на Python и работающего как прокси-сервер, и HTML/CSS/Javascript фронтенда.

Источник инфы: http://muder.ru/blog/61.html