1. Много причин:
— Сделали бенчмарк и увидели увеличение скорости на нашей математике примерно в 1000 раз
— Го это очень простой язык (по моему сугубо личному мнению это очень важная характеристика для языка)
— Ест очень мало памяти (у нас лобби-сервер работает 200+ дней онлайн, сейчас занимает 7мб памяти)
— Примитивно простой и быстрый деплой (пара строк Makefile, по времени 1-2 секунды)
Последние две причины отличают его в лучшую сторону от Java.
2. Заменим, скорее всего на этот. Сейчас это больше из соображений отладки, когда бывает необходимость смотреть глазами в отладчике, какие данные летают
3. Двое из нас математики по образованию, оптимизировали и там уже некуда оптимизировать, математика у нас очень быстрая :)
Извините, я неправильно выразился. Имелись ввиду ограничения, которые накладывает любой редактор карт (Варкрафт3, Дота2). С их помощью вы делаете кастомную карту, для конкретной игры, и не можете реализовать все, что вы хотите, так как ограничены возможностями данного редактора
Спасибо за отзыв. Часть системы сделана аналогично оригиналу, часть мы придумали сами, но опять же с оглядкой на оригинал. Нельзя сказать, что проведена большая работа по балансировке, но т.к. инстанс игрового сервера запускается под каждую игру, то между запусками игр мы иногда меняем игровые параметры. Если вам интересно, могу пригласить на закрытый бета-тест.
Мы старались уйти от тяжелого наследия движка (оригинальная карта тоже является модом и многие вещи на ней сделаны «костылями»). К тому же, такой проект уже существует, называется Legion Reborn, но там много жалоб на баги и косяки, что опять же подтверждает мои слова о тяжелом наследии.
Удачи вам. Решаем похожую задачу с друзьями, вот тут и тут писали об этом, мало ли окажется полезным:
https://habrahabr.ru/post/258859/
https://habrahabr.ru/post/274367/
Все модели взяты из Unity Asset Store (кто не в курсе, это встроенный в юнити магазин моделей, текстур и прочих полезностей). А интерфейс нарисован дизайнером, который некоторое время работал с нами (об этом есть в статье).
Кстати говоря, мы участвуем в питерском Global Meetup, который пройдет 6 июня в КДЦ «Club house». Там мы сделаем подробный доклад о нашей разработке (уже есть в программе на островке «3D-уголок»), а также предоставим возможность сыграть всем желающим.
Сколько Java потребляет памяти на минимальном приложении http-сервере?
— Сделали бенчмарк и увидели увеличение скорости на нашей математике примерно в 1000 раз
— Го это очень простой язык (по моему сугубо личному мнению это очень важная характеристика для языка)
— Ест очень мало памяти (у нас лобби-сервер работает 200+ дней онлайн, сейчас занимает 7мб памяти)
— Примитивно простой и быстрый деплой (пара строк Makefile, по времени 1-2 секунды)
Последние две причины отличают его в лучшую сторону от Java.
2. Заменим, скорее всего на этот. Сейчас это больше из соображений отладки, когда бывает необходимость смотреть глазами в отладчике, какие данные летают
3. Двое из нас математики по образованию, оптимизировали и там уже некуда оптимизировать, математика у нас очень быстрая :)
Пролистайте наверх, там на графиках наглядно показано как улучшалась производительность сборки мусорка от версии 1.5 к версии 1.8 beta
https://habrahabr.ru/post/258859/
https://habrahabr.ru/post/274367/
06.06.2015 — SPb IT Global Meetup, рассказываем об основной идее и наших наработках
30.06.2015 — Встреча Unity User Group, рассказываем об истории создания, игровой механике, архитектуре клиента и авторитарном сервере
28.11.2015 — IT Meetup, про архитектуру сервера и его перевод с Python на Go (Golang)