Поддержка utf8 в жабе — это сложная задача. Вся соль в том, что жаба изначально написана без поддержки юникода. Т.е. чтобы полноценно поддержать utf8 нужно переписать почти весь клиент на юникод — в том числе поддержку скриптовых движков, поддержку регулярок и т.д. Без этого все эти хитрые французкие буквы все равно отображаться не будут. Конвертировать utf8 в win-кодировку бессмысленно.
А я знаю, почему не работает. (Кстати код для поддержки UTF-8 в Былинах мой)
Основная кодировка в Былинах — koi8-r. Соответственно, если игрок работает в win или utf-8, все его сообщения переводятся в koi8-r, а только потом обрабатываются интерпретатором команд. Вот и теряются хитрые французские буквы и иероглифы
А вот например в TBAMUD основная кодировка UTF-8 и там всё работает
Мой тестовый форк TBAMUD можно попробовать по адресу mud.kharkov.org 4444
У мада статические тексты, переводы надо кешировать и при последующем посещении комнаты уже будет перевод. Или надо ждать в каждой комнате (но только при первом посещении).
Перевод, я думаю, можно совместить с модулем рисования карты, то есть хранить в памяти и карту и переводы описаний комнат
Не обязательно изобретать свой велосипед, можно воспользоваться готовым решением, например Яндекс API для переводчика https://tech.yandex.ru/translate/ или от гугла. Переводят сейчас не очень хорошо, но они пытаются улучшить работу, гугл с нейросетями все для этого экспериментирует. Может когда-нибудь машинный перевод не станет отличаться по качеству от человеческого.
Для этого надо подключать какой-нибудь словарь, который переводит предложениями, самому это не написать. И еще не факт что переведенное игра правильно поймет. И перевод может быть корявым, не поймут играющие люди или ты не поймешь их ответа (все зависит от переводчика же). Я сомневаюсь в жизнеспособность такого решения.
Очень странно, но в репозитория клиента пусто. Т.е. исходников настолько мало, что клиента там по сути нет. Сервер — там исходники есть, но их тоже не очень много, но есть. Однако сервер написан в циркуль стайле. Хоть и написано с++11 — ооп там почти нет. И он не дописан, т.е. он не играбелен. Очень надеяся на чтото интересное и готовое, но очень сыро. И юникод, кстати, не поддерживается.
Кстати, когда я пытался войти в мад на французском языке, у меня появилась идея, что было бы неплохо, если бы в тортилле был плагин для автоматического перевода текста, как поступающего с сервера, так и отправляемого на сервер. То есть, не только то, что все описания появляются на экране уже переведенными, но и отправляемые команды переводились бы автоматически на нужный язык (например, вводишь «сказать привет», а сервер получает «tell hello»).
Кстати, появилась совершенно безумная идея (ну, как обычно) создания мада, построенного на теме межнационального соперничества, например, между русскими и немцами, этакий World of Tanks MUD. Так как, Вторая Мировая слишком трагическая, то такой MUD может быть по мотивам Первой Мировой. Этот мад должен быть двуязычным, то есть все описания дублируются на русском и немецком языках. Геймплей построен на захвате контрольных точек и поделен на сезоны, по окончании которого результаты обнуляются.
Можно использовать и сам mudportal https://github.com/plamzi/MUDPortal-Web-App, вроде с установкой ничего сложного. Единственное, надо кириллические кодировки туда добавить.
да, он на джаве и да, нынешняя джава это ужас-ужас-ужас
вот кстати он — mud.kharkov.org/javamud/ (из виндовс должен нормально работать с кодировкой cp1251, то есть кодировкой номер 2, а у меня линукс-убунту с UTF-8, и чтобы апплет заработал, надо в маде сделать несимметричную кодировку, то есть чтобы мад выдавал в cp1251, а принимал в utf-8
Логи можно удалять все, кроме последних, то есть самых свержих, тех, которые в данный момент пишутся
А если ты удалил вообще все логи, это плохо, но не очень.
Ура, я снова здесь
Основная кодировка в Былинах — koi8-r. Соответственно, если игрок работает в win или utf-8, все его сообщения переводятся в koi8-r, а только потом обрабатываются интерпретатором команд. Вот и теряются хитрые французские буквы и иероглифы
А вот например в TBAMUD основная кодировка UTF-8 и там всё работает
Мой тестовый форк TBAMUD можно попробовать по адресу mud.kharkov.org 4444
Перевод, я думаю, можно совместить с модулем рисования карты, то есть хранить в памяти и карту и переводы описаний комнат
вот кстати он — mud.kharkov.org/javamud/ (из виндовс должен нормально работать с кодировкой cp1251, то есть кодировкой номер 2, а у меня линукс-убунту с UTF-8, и чтобы апплет заработал, надо в маде сделать несимметричную кодировку, то есть чтобы мад выдавал в cp1251, а принимал в utf-8