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

jiMUD — это настольный клиент MUD, построенный на Electron и TypeScript, основанный на веб-клиенте для ShadowMUD. Он переносит опыт текстового мира ShadowMUD на устанавливаемые настольные приложения для Windows, Linux и macOS, а также добавляет инструменты для управления персонажами, картографии и создания контента в игре. Распространение и установка: сборки для Windows поставляются в виде MSI и EXE-инсталляторов, а также портативного EXE, который хранит все файлы в одной папке. Пользователи Linux могут выбирать между DEB, Snap (обычное и классическое ограничение), Flatpak, RPM или AppImage; для интеграции AppImage рекомендуется AppImageLauncher. Некоторые функции зависят от платформы: значок в трее игнорирует клики с индикаторами приложений в Linux, дочерние окна Wayland не всегда остаются поверх родительских (обходной путь — принудительно использовать платформу X11 с --ozone-platform=x11), а автоматическое обновление поддерживается только для AppImage, DEB или RPM. Для сборки из исходного кода требуются Node.js 20 LTS или 22+, npm, TypeScript 2.3+ и CPython. Типичный процесс включает клонирование репозитория, выполнение npm install, а затем npm run release:win, release:linux (или release:linux-slim для пропуска Flatpak) или release:mac; файлы сборки и упаковки записываются в папку dist. Для разработки npm run rebuild, npm run compile и npm run start запускают клиент напрямую из папки с исходным кодом. npm run build:debug-compile создает автономное распакованное приложение в dist/ARCH-unpacked, которое можно запускать без установки. Сборки на основе Docker описаны в отдельном документе. Документация описывает интерфейс, профили, быстрые пути, команды и функции, предпочтения, скриптинг, настройку, активы, карту, менеджер персонажей, инструменты бессмертных (стаффа) и редактор кода, включающий конструктор локаций. Аргументы командной строки охватывают вывод справки и версии, включение инструментов разработчика для всех окон, переопределение файлов настроек и карты, загрузку одного или нескольких персонажей из базы данных по имени или ID, открытие редактора кода с клиентом или без него, портативные опции папки данных, пользовательские папки данных, загрузку макетов окон и игнорирование или пропуск сохранения макетов, принудительное создание экземпляра при включенном режиме одного экземпляра, открытие новых окон или вкладок, установка пользовательского пути для журнала ошибок и включение отчетности о сбоях в локальную папку. Известные ограничения подробно описаны: npm install или update могут завершиться с ошибкой EALLOWGIT на более новых версиях npm; проблемы с дочерними окнами и треем в Linux Wayland, как указано выше; проблемы с разрешениями snap при построении выпадающего списка навигации по пути в инструментах бессмертных (классическое ограничение плюс --classic может помочь); проверка орфографии в Windows не всегда работает с en-US; выбор текста с правым направлением Unicode отображается неправильно; изображения MXP ограничены высотой строки и не могут быть выбраны или скопированы; данные резервных копий, привязанные к конкретной операционной системе, могут вернуться к значениям по умолчанию или быть проигнорированы; выбор текста в поле ввода команды может быть потерян при перемещении фокуса; перетаскивание нескольких файлов и их сброс за пределами приложения передает только первый файл; расширенный редактор может терять некоторые цвета при вставке, оставлять стили застрявшими, показывать непоследовательное мигание, странно вести себя с сильно вложенными обратными стилями и сбрасывать стили при исправлении из контекстного меню; редактор писем наследует проблемы редактора и не работает, пока активен редактор в игре или запрос ввода. Совет по производительности — избегать --disable-gpu. Карта и редактор кода имеют свои собственные разделы с известными проблемами.