Делаю MMORPG за 80 дней. День 80!)
Прошу принять моё почтение - сегодня день 80 и я обязан выдать отчет. Во-первых - игра уже работает по сети полноценно - выкладываю свеженькие скрины, а потом текстом подробности:
Посмотрели картинки, теперь информативный текст:
1) Оказалось, что без полноценных иконок игра - эмоционально не играбельная. Вроде танки можно осначать/тюнинговать и радоваться, но когда иконка выглядит как векторная стрелочка - не вкусно. Потому сейчас разворачивается конвеер по генерации качественных иконок игровых айтемов на базе ComfyUI и LoRA. Сложненько, но когда "завод запущен" - становится легче.
2) Все-таки к MVP-релизу важнецки-важно иметь более 1 модели танка. Внедряем сейчас 5 штук: Учебный, Легкий, Средний, Тяжелый и Инженерный танки.
3) На 79-й день оказалось (внезапно), что в игре нет ни одного звука. Ни звука выстрела, ни звука двигателя. Поизучали этот вопрос и оказалось, что это целая вселенная (в аспекте знаний о том, как сделать так, чтобы звуки в игре воспринимались гармонично). Решаем. Решим.
4) Еще один "бдыж" оказался в том, что не смотря на то, что у тестовой группы танки катаются - у реального пользователя нет возможности "создать акаунт", а для этого нужна "веб-морда" для игры. Пришлось так же оперативно сделать сайт. Сделали: https://entropiatanks.ru/ru (не реклама, просто факт). Про сайт сейчас отдельно напишу и распишу.
Итак, сайт оказался не просто "лендосом, с которого можно скачать exe-файл". Никакие движки не подошли, даже битрикс. Все пришлось писать с нуля.
Сайт должен синхронизироваться с остальными серверами, передавать данные об акаунтах, их изменениях и т.п.
Сам сайт должен понимать, что в игре меняется и оперативно отображать эти изменения (например интерактивную карту мира, которая вот прям в эту минуту релизится). Под это все нужно было разработать API. Ну и оно конечно было разработано. Не без труда, но сроки жали :-)
Чтобы примерно понять, из каких технологий состоит сайт (отведите женщин и детей от монитора). Под капотом сайта сейчас вот такой стек:
React 18 + TypeScript — основа интерфейса сайта. React отвечает за всю интерактивность, а TypeScript помогает меньше ломать код по мере роста проекта.
Vite 5 — собирает сайт и сильно ускоряет разработку. Изменения в интерфейсе почти сразу видны в браузере без долгих пересборок.
react-router-dom 6 — отвечает за навигацию между страницами сайта: медиа, титры, новости и другие разделы, включая русскую и английскую версии.
i18next + react-i18next — система мультиязычности. Все тексты сайта лежат отдельно от кода, поэтому можно добавлять новые языки без переписывания страниц.
Обычный CSS — используется для всего визуального оформления сайта. Без Tailwind и других CSS-фреймворков: стили собраны вручную под визуальный язык Entropia Tanks.
Exo 2 + JetBrains Mono — основные шрифты интерфейса. Exo 2 используется для обычного текста, JetBrains Mono — для технических элементов, цифр и интерфейсных подписей.
Yandex SmartCaptcha — защищает регистрацию от ботов для пользователей из России.
Cloudflare Turnstile — выполняет ту же задачу для остальных регионов мира.
Сайт + сервера сейчас работают в облаках селектела на специальных серверах (говорю простым языком), которые расширяются по запросу. Сегодня играет 100 человек - у нас сервера в минимальной конфигурации. Завтра зашло 100500 человек - мы расчехляем кошелек и сервера начинают работать как звери без всяких переездов между дата-центрами. Система сейчас разработана так, чтобы мочь обслуживать десятки тысяч игроков (может даже сотни - такой тест мы не проводили просто).
Про финансовый отчет: ребят, простите, подробно не напишу сегодня (1 сентября, сын первый раз из школы вернулся), но для ориентира: 650 тысяч ушло в зарплаты, 300 тысяч ушло в ПО и лицензии. Если я что-то не учел, то порог в 1млн уже пройден. Я потом открою таблицы и выдам полную сумму до копеек.
Да, что дальше по постам:
1) За мной всё еще пост про лор игры и механики
2) ....а там может и релиз уже выйдет.
Еще вопрос мне задавали про добавление в команду альфа-бета-тестеров. Я сейчас прям большую группу чисто организационно не потяну - нужно разработку вести. Но несколько человек с незамыленными глазами, возможно, можно было бы подключить. Напишите мне куда-нибудь в Пикабу (просто телеграм-канал еще не создали).
Игра скоро будет доступна, но с опозданием на сколько-то дней - все-таки лучше чуть позже выпуститься но с качественным продуктом.



















я такую игру джва года ждал!