Если вы делаете проект для себя, just for fun, то разницы никакой нет.
а я как наивный албанец оставался с поломанным проектом
Пишите или поддерживайте библиотеки сами, если там после обновления что-то ломается, то это обычно легко починить. Самому часто приходилось так делать.
только на то чтоб сохранить все мобы и предметы с помощью какого-нибудь pickle уйдет значительно больше времени
Ну уйдет несколько минут, и игровой мир откатится на несколько минут в случае краша. Не думаю, что краши частое явление у вас.
если нет возможности получить список измененных с прошлой итерации объектов.
Я думаю, что было понятно, что из коробки все это сразу работать не будет, надо будет кое-что допилить.
Тупо не работает.
В остальных мадах такая схема работает. Ксерокопирование шмоток в былинах фиксится с помощью уникальных id.
Если не нравится хранить состояние мада в файле, можно хранить в базе данных считывая/записывая отдельно каждый объект по мере необходимости (как в браузерных играх).
Я говорю про сохранение состояния всей виртуальной машины целиком, включая выполняемый код, глобальные + локальные переменные, потоки, стек, и тд.
Сдаюсь. Только до сих пор не понял, зачем надо сохранять полное состояние вм. Как я понимаю, сейвится состояние комнат, объектов, игроков. Файты тоже сейвятся ?
клиент может просто отрубать начальный диапазон символов.
1) Некрасиво будет смотреться, если брать текущую версию дримлэнда
2) Всякие ASCII-рисунки будут отображаться криво
3) Латиница все же иногда нужна в маде (например, в общении).
А когда это происходит у вас? Понятно, что писать на диск не получится так же быстро, как в БД, но это не критично. Просто размазывать сохранение на большое количество игровых тиков.
Можно подробней, потому что у меня есть подозрение что мы говорим о совершенно разных вещах.
Самый простой вариант — использование pickle или shelve.
Варианты по сложнее и по интереснее, например, ZODB или Prevayler (для питона он тоже есть).
Феня хороша для описания поведения комнат, предметов, мобов, написания квестов, простых активных/пассивных умений/заклинаний и, пожалуй, все.
Я с этим и не спорю, но как мне показалось, вы переписали на феню большинство логики мада, например, создание персонажа. К примеру, вам нужно добавить автоматическое склонение имен. В nodejs я просто добавил библиотеку и написал пару строк кода. У вас же это все займет несколько больше времени.
можно без всяких ребутов
Нативные классы и вызовы у вас пишутся на Си и подгружается в виде модулей?
Godot использует собственный скриптовый язык — GDScript
Собственно их цель была повышение скорости работы языка для скриптов. Ну и сам пример не очень удачный, годных проектов на нем практически нет.
В Unity используют собственный диалект Javascript
Который, опять же, практически никто не использует.
Circle'ах используют DGScript
Только для триггеров. Если бы fenya использовался только для триггеров, в принципе было бы не так плохо.
Я это веду все к тому, что вероятность привлечения новых кодеров на этом языке для мада близится к нулю.
Очень даже неплохо, только бы побольше действий для такого контекстного меню. Желательно, чтобы вообще все, кроме разговоров, можно было делать мышкой.
Как, минимум, в телеграмме есть инлайн-кнопки, редактирования сообщений и обычные кнопки, что очень удобно для мобильных юзеров. Плюс, есть куча мест, где можно легально рекламировать своего бота.
Годно. Но, имхо, лучше по дефолту, чтобы отображались по русски.
Пишите или поддерживайте библиотеки сами, если там после обновления что-то ломается, то это обычно легко починить. Самому часто приходилось так делать.
Ну уйдет несколько минут, и игровой мир откатится на несколько минут в случае краша. Не думаю, что краши частое явление у вас.
Я думаю, что было понятно, что из коробки все это сразу работать не будет, надо будет кое-что допилить.
В остальных мадах такая схема работает. Ксерокопирование шмоток в былинах фиксится с помощью уникальных id.
Если не нравится хранить состояние мада в файле, можно хранить в базе данных считывая/записывая отдельно каждый объект по мере необходимости (как в браузерных играх).
Сдаюсь. Только до сих пор не понял, зачем надо сохранять полное состояние вм. Как я понимаю, сейвится состояние комнат, объектов, игроков. Файты тоже сейвятся ?
1) Некрасиво будет смотреться, если брать текущую версию дримлэнда
2) Всякие ASCII-рисунки будут отображаться криво
3) Латиница все же иногда нужна в маде (например, в общении).
Тогда может быть какой-нибудь режим сделать ?
Так если вся игровая логика написана на скриптовом языке, API не нужно расширять.
Состояние игрового мира: объекты, мобы, комнаты.
Игровой движок
А когда это происходит у вас? Понятно, что писать на диск не получится так же быстро, как в БД, но это не критично. Просто размазывать сохранение на большое количество игровых тиков.
Варианты по сложнее и по интереснее, например, ZODB или Prevayler (для питона он тоже есть).
Я с этим и не спорю, но как мне показалось, вы переписали на феню большинство логики мада, например, создание персонажа. К примеру, вам нужно добавить автоматическое склонение имен. В nodejs я просто добавил библиотеку и написал пару строк кода. У вас же это все займет несколько больше времени.
Нативные классы и вызовы у вас пишутся на Си и подгружается в виде модулей?
Собственно их цель была повышение скорости работы языка для скриптов. Ну и сам пример не очень удачный, годных проектов на нем практически нет.
Который, опять же, практически никто не использует.
Только для триггеров. Если бы fenya использовался только для триггеров, в принципе было бы не так плохо.
Я это веду все к тому, что вероятность привлечения новых кодеров на этом языке для мада близится к нулю.
Думаю, прикольно в такое играть на улице, например.
А мобильные устройства для кого ввели?:)
API.AI поддерживает русский язык.