Об этом проекте

MegaMOO — это созданный с нуля многопользовательский постоянный движок текстовых виртуальных миров, спроектированный по образцу LambdaMOO. Он требует Python 3.10+ и использует только стандартную библиотеку. Мир создаётся командой `megamoo init` и запускается командой `megamoo --dev`, обслуживая Telnet на порту 6770 и выводя URL для браузера. Внутриигровое программирование использует сам Python: каждый глагол, например `verbs/17/jump.py`, представляет собой Python-файл с внедрённым контекстом (`pobj`, `args`, `dobj`, `iobj`, `pmatch`, `call_verb` и т. д.), а изменения подхватываются на лету без перезапуска. Движок включает ядро сервера на asyncio с Telnet/WebSocket и протоколами MUD (MXP, GMCP, MSDP, MSSP), SQLite WAL-хранилище с ленивым кэшем объектов, одиночное родительское наследование в стиле LambdaMOO, сопоставитель естественного языка с поддержкой артиклей/порядковых числительных/прилагательных-существительных/предлогов, эффекты по таймеру, управляемые задачи с защитой suspend/fork и учитывающий род движок подстановки emit. `@import` читает форматы базы данных LambdaMOO с 1 по 4, сохраняя объекты/иерархию/свойства и храня старый код глаголов в неактивном виде для переноса. В README описаны 312 стартовых глаголов, 228 из которых можно набирать. Границы безопасности заданы явно: создание глаголов/eval ограничено уровнем gm3, а обладатели gm3 могут выполнять произвольный Python в процессе сервера. Проект также поставляется с мостом MCP (`tools/megamoo_mcp.py`), предоставляющим 17 инструментов для игровых команд, осмотра и редактирования объектов/глаголов/свойств, eval, поиска, журналов и состояния сервера. Специальные возможности встроены: режим экранного диктора для каждого игрока, перенос строк с учётом ANSI и опциональное отключение переноса строк. Проект лицензирован под MIT и находится в активной разработке; в README указано, что публичного многопользовательского развёртывания ещё не было.