Статистика русскоязычных мадов

Внезапно я решил начал делать статистику посещения русских (русскоязычных, постсоветских, называйте как хотите) мадов. Я давно использую пакет munin и добавить туда еще один плагин сравнительно несложно.

Я уже начал эту работу, вот первые три мада

http://muds.kharkov.org

Кстати, исходники своих плагинов потом я выложу на github примерно сюда

https://github.com/prool/prool-utilities
(там появится подкаталог)

Как я получаю информацию:

1. У некоторых мадов (у малого количества) статистика (число игроков онлайн в данный момент) есть на сайте мада. Сайт посещает каждые 5 минут мой бот (curl) и парсит

2. У тех мадов, у которых этого нету, я зарегистрирую персонажа и специальным скриптом для клиента tintin++ буду заходить каждые 5 минут, выдавать команду КТО и выходить. И парсить

Тут меня и забанят 😉

Я готов к конструктивному диалогу с иммами мадов, например к снижению частоты заходов бота, чтобы не создавать нагрузку на проц и траффик. Также я даже готов к ответу “статистика мада является приватной информацией и обнародована не будет, а бота мы забаним за нарушение правил”. Я уважаю вашу деятельность и вашу стратегию работы.

* * *

UPDATE. Прагматические замечания по программированию.

Как оказалось, tintin++ не умеет запускаться по крону, так как у крона терминал dumb, а тинтину нужен, например vt100. Я не придумал ничего умнее, чем под бота выделить отдельное окно скрина 🙂

И не надо забывать, что плагины Мунина запускаются от пользователя nobody

Внезапно я написал примитивнейший скрипт для tintin++, осуществлябщий вход в мад, выполнение одной команды (для примера взята команда users), а затем выход из мада и из tintin’а.

#action {ENTER} {i}
#action {MUDQUIT} {#zap;#zap}
#sess s0 mud.kharkov.org 3333
5
мудер парольмудера
users
quit
0

где i – это любая строка, главное, что в конце выдается enter,
3333 – порт моего тестового мада (у основного порт 3000),
5 – номер кодировки,
0 – пункт меню по выходу из мада

Для чего можно использовать этот скрипт?

Для периодического захода во все русские мады, выдачи команды КТО и построения графика посещаемости их при помощи munin. (Пока не забанят робота)

Или для того, чтобы в маде, например в Былинах, где игрок экспирится, заходить и обновлять его

Инструкции новым иммам

Я веду переписку с некоторыми начинающими иммами, которые поднимают у себя копии Виртустанмада или Прульзеркала. Свои ответы, которые в некотором смысле являются инструкциями для новых имморталов, буду приводить здесь

1-й вопрос. О командах имма

Первое. Список команд имморталов – команда wizhelp

А потом справку по каждой команде ты можешь смотреть обычным образом, командой help или помощь

например

помощь shutdown

При этом надо, чтобы твой персонаж иммортал был 34 уровня (при создании нового сервера первый зарегистрировавшийся перс будет 34) и дополнительно, чтобы твой персонаж был в списке иммов. Это делается хитро:

Смотришь файл lib/misc/privilege.lst

Его структура интуитивно должна быть понятна.

Видишь строку, начинающуюся с имени имма Пруль, вместо Пруля пишешь свое имя

А дальше сложнее, после имени надо ввести uin – цифровой идентификатор игрока. Находишь его среди файлов в подкаталогах каталога
lib/plrs

В каком именно подкаталоге будет твой файл, зависит от первой буквы имени твоего перса. UIN там в четвертой строке

Второй вопрос, о создании вещей и мобов

Создание объекта

load obj 411

где 411 – номер объекта

Объект возникает в инвентаре

Создание моба

load mob 411

моб возникает в комнате

А как узнать номера объектов и мобов?

команда

olist 1000 1999

выдается список объектов в номерами от 1000 до 1999

аналогичные команды

mlist список мобов

rlist список комнат

zlist список зон

Обрати внимание на систему нумерации

Например, зона 10, в ней объекты, мобы и комнаты нумеруются от 1000 до 1098

Номеров, заканчивающихся на 99 не бывает

Еще введи команду

РЕЖИМ ФЛАГИ

ты начнешь видеть номера комнат, объектов и мобов

И полезная команда

прыжок 4000

она переносит в комнату с номером 4000

А если ты спрашивал о создании новых объектов, которых еще не существует в маде, то есть команды редактирования (используй их осторожно, чтобы не испортить уже существующие в маде объекты).

med 1200 редактирование моба номен 1200

аналогично red
oed

Найди номера, которые не используются, и аккуратно создавай новые объекты, мобов, комнаты, если хочешь

А чтобы понять, какие бывают параметры, можно набрать, например, oed на уже существующий объект, изучить параметры и выйти из редактирования не сохраняя объект. И уже потом создавать что-то своё