Заклинания, существа, артефакты, навыки, городские здания и города.
Мультиплеер без глобальных блокировок (ходы и битвы игроков не мешают другим).
Собственный парсер и компилятор .h3m на PHP: h3m2json
В коде заложена максимальная гибкость, хотя не все выведено наружу. Например, в битве может участвовать неограниченное число сторон, на карте может быть сколько угодно уровней, есть запись реплеев, режим наблюдателя и многое другое.
Особенное внимание уделено созданию модификаций, причем как с программированием (JavaScript), так и без (система эффектов и банков данных). Здесь более подробно.
(02.04.2023 21:55)Berserker Wrote: [ -> ]Потестировал немного. Это, безусловно, очень и очень круто. Идея эффектов тоже интересная.
Очень почетно слышать это от тебя!
(02.04.2023 23:58)igrik Wrote: [ -> ]А это не твой проект, представленный на докладе?
Это проект другого автора. На Хабре есть расшифровка доклада, она меня частично сподвигла на свой труд, но у нас разный подход и технологии (например, у него TypeScript и закрытые исходники).
Кстати, на следующей неделе выложу на Хабр свою статью по мотивам. Надеюсь, найдем еще людей.
(02.04.2023 23:58)igrik Wrote: [ -> ]Вообще, в этом русле я заинтересован, и могу помочь в разработке.
Это здорово. Ты хорошо знаешь JavaScript?
Здесь я набросал основные направления, по которым есть смысл сейчас двигаться. Хотя наиболее важные задачи вроде карты на Canvas требуют прилично работы и навыков, для начала можно хотя бы просто отлавливать и документировать баги - многие исправляются очень быстро, а играть мешают больше, чем медленная работа.
Здесь описано, как поднять локальную версию движка.
Очень хорошо знаю JS. Как и C++, C# и Dlang. А вот php не знаю, хотя сомневаюсь, что он вызовет трудности. Но чуть разгребусь с личными тяготами - подключусь к разработке
Я правда на убунте сижу, но я думаю разберусь, как развернуть локалку... Если нет - спрошу
(08.04.2023 08:25)igrik Wrote: [ -> ]Очень хорошо знаю JS. Как и C++, C# и Dlang.
Шикарно. Буду очень рад тебя видеть в команде!
(08.04.2023 08:25)igrik Wrote: [ -> ]А вот php не знаю, хотя сомневаюсь, что он вызовет трудности.
PHP используется только для конвертации данных (графика и текстовики из lod → банк данных, парсер h3m) и координации игроквых серверов. Это около 30% кодовой базы и по мере развития движка (JS) процент будет снижаться. Важных задач по этой части сейчас нет, а с теми, что есть, я могу разобраться и сам.
Главное на сегодня - тестировать и исправлять баги, многие из которых мелкие, но трудно воспроизводимые, а также переписать карту на использование Canvas (это два модуля, сейчас по 300 и 800 строк соответственно, но на Canvas кода будет в разы больше).
(08.04.2023 08:25)igrik Wrote: [ -> ]Я правда на убунте сижу, но я думаю разберусь, как развернуть локалку... Если нет - спрошу
ОС роли не играет, в README описан универсальный алгоритм развертывания. Под *nix я не тестировал его так же детально, как под Windows, но серьезных проблем не ожидаю - напиши, если что.
(22.04.2023 04:56)planetavril Wrote: [ -> ]i know js minimally, but maybe something i can do,I know html and css3 though
Missed your message, sorry! Sure, get in touch via the forum or Discord and we'll figure out how you can help!
(08.04.2023 08:25)igrik Wrote: [ -> ]Очень хорошо знаю JS. Как и C++, C# и Dlang. А вот php не знаю, хотя сомневаюсь, что он вызовет трудности. Но чуть разгребусь с личными тяготами - подключусь к разработке
Как ты? Личные дела затянули, да?
* * *
На Хабрахабре вышла вторая статья по истории разработки и внутренностях движка HeroWO:
Да, слишком сильно затянули. Раньше осени точно не смогу помочь, вот прям никак.
Хотя я и довольно заинтересован в вашем проекте, но личная жизнь важнее.
Да, слишком сильно затянули. Раньше осени точно не смогу помочь, вот прям никак.
Хотя я и довольно заинтересован в вашем проекте, но личная жизнь важнее.
Да, естественно. У меня по тем же причинам уже месяц лежит почти доделанный рендер карты на Canvas.
(22.07.2023 16:59)igrik Wrote: [ -> ]А можно узнать, на каком фреймворке пишется фронт?
И бэк на чём (хотя вроде php, насколько я понял). И где лежит база данных?
PHP используется для подготовки данных (конвертации карт и пр.) и для координации клиентов (список карт, чат и пр.). Первое хранится в виде файлов (в основном JSON), второе - в MySQL или SQLite. Но эта часть тебя волновать не должна, обращаться к ней приходится редко.
Собственно движок построен на моем событийно-ориентированном фреймворке Sqimitive. На Хабре есть старая вводная статья. Код, демо и документация. Я целенаправленно избегаю внешних зависимостей и пишу код в старом стиле (<ES6, уровень IE11).