Shadow Realms MUD

Внезапно я занялся этим мудом. Его исходники в виде архива были очень давно выложены на сайте этого муда (сайт сейчас не работает). Я их причесал, они стали у меня запускаться. Вот они https://gitlab.com/prool/shadow_realms_mud

А теперь я адаптировал исходный код к cygwin и сделал виндовую сборку этого муда:

http://mud.kharkov.org/files/srmud_win64.zip

Кроме того, я запустил этот муд на своем сервере (порт 4444, хост mud.kharkov.org). А оригинальный муд не работает, как и его сайт

Бег по граблям

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

Так вот, для памяти запишу: код Виртустан-мада и Старого Зеркала плохо собирается на 64-битных системах, например в cygwin, флаг -m32 и соответствующие библиотеки помогают не всегда. В частности, под cygwin/64 он либо не собирается либо собирается и сразу падает в корку. Ну и чорт с ним, потому как все нормально собирается на 32-разрядном Цигвине, а 32-разрядные exe нормально работают в 64-разрядной Винде.

А на 64-разрядной Ubuntu 18.04.3 мой Виртустан собрался и нормально работает. И Старое Зеркало. (А Былины, как и Ноыое Зеркало изначально заточены именно под Ubuntu x86_64)

Сборки мадов для Виндовс

Я сделал свежие сборки мадов для 64-разрядной Виндовс. Компилировал я в среде cygwin, это оказалось достаточно просто, все делается примерно как в Линуксе (то есть cmake с нужными параметрами, потом make, подробнее см. документацию в репозитории кода Былин).

Во-первых, сделал тестовую “локалку” с тремя зонами (движок для проверки зон) Былин (версия кода от 6 ноября 2019 года). Вот она. (Примерно то же самое, но немного более старое лежит на официальном сайте Былин).

А во-вторых, я сделал локалку Нового Зеркала (со всеми зонами). Вот.

Зачем можно использовать локалки: на них можно играть (это полноценный сервер), можно соло, можно с друзьями по сети. А можно использовать их для билдерства: тестировать зоны, изучать OLC и триггеры и т.п.

Зеркало и macOS

В рамках проекта “Всё, что шевелится, соберу под Андроидом и Эпплом” адаптировал код Зеркала к macOS

https://github.com/prool/zerkalomud

Это получилось не так просто, как у Виртустан мада, так как код Виртустана взят из более свежего релиза Былин и он адаптирован к 64-разрядной архитектуре. А код Зеркала стар и при 32 разрядах собирается и работает без проблем, а на 64 вылетает в корку на макросах флагов. Место, где вылетало, найдено и исправлено. Это макрос GET_FLAG. Эти проблемы еще частично связаны с тем, что в macOS родной компилятор не gcc, а “богомерзкий clang”

Compile Virtustan MUD at Ubuntu 15.10 64bit

sudo apt-get install gcc-4.9-multilib g++-4.9-multilib

sudo apt-get install gcc-multilib g++-multilib

sudo apt-get install libpcap-dev

всё равно не получается!!!!!!!!!!!!!!!!!!!!!

ну и хрен с ним. в 32 разрядных системах всё собирается с полпинка