Насколько SpeedSim адекватно описывает движок oGame?
Добавлено: 28 сен 2010, 01:31
Сабж
Супернова / Сверхновая - Форумы
https://forum.supernova.ws/
А почему будет тормозить?Gorlum писал(а):Это ж памяти будет хавать немерянно! А как оно будет тормозить!!!
3) и 4) Вот есть подозрение, что они обсчитывают КАЖДЫЙ корабль. Поэтому надо хранить броню КАЖДОГО корабля. И хранить весь бой, поскольу в огейме броня не восстанавливается. Кратность сразу идет побоку - не имеет смысла тогда вообще менять систему боя, если вводить кратность. Для ЗС это будет все равно, что не менять ничего в большинстве случаев - и так не убьешь, и так.AlexBlack писал(а):А почему будет тормозить?Gorlum писал(а):Это ж памяти будет хавать немерянно! А как оно будет тормозить!!!
1) симулятор убрать из игры. Жалко, но ... симулируем в другом месте, на отдельном сервере, или еще как - например, в отдельный пакет, и на скачку выложить - симулятор оффлайн, на жабоскрипте )
2) совершенно спокойно ставим бои в очередь. Если так вышло, что одновременно происходит сотня боев, кто-то узнает о результатах на полминуты позже. Ничего, потерпят.
3) весь скорострел кратен 5. Считаем по 5-кам вместо отдельных кораблей. Этакий компромисс между совсем дискретным рассчетом и совсем общим, по флотам в сумме.
4) поскольку в начале следующего раунда все корабли имеют полную броню и щиты, значит, хранить в массиве их параметры не требуется. Тогда я вообще не понимаю, почему должно тормозить - в цикле перебрать 10000 кораблей, однотипных, и посчитать кого убили для 4-процессорных Xeon'ов вообще не задача, а так... на миллисекунды.
короче, не знаю - но особых тормозов не вижу. Самое длительное - это запрос из базы, а их будет наверно 2 - перед собственно расчетом, получить флот атакующего и обороняющегося - если и не 2 (параметры кораблей еще получить по каждому типу, наверно), то в любом случае не больше, чем сейчас.
SpeedKernel\SKernel_Sim.cppGorlum писал(а): Может кто-нибудь посмотреть и сказать доходчиво - они симулируют бой по типам кораблей или по каждому кораблю отдельно? А то что-то я нихрена понять не могу...
Если не считать по кораблям, а только по суммам, не вижу разницы между малым и большим флотом// backup set fleet
// possibly copy into file for less memory usage when using _very_ big fleets?
Ха! Если бы по комментарию можно было бы на 100% идентифицировать алгоритм - я бы не спрашивал. Но вот в инициализации симулятора в коде в цикле заполняется структура размером к-во типов юнитов*мак_к-во_игроков... Короче, нужно не просто комменты почитать - с этим и я справился, а внимательно посмотреть сам код.AlexBlack писал(а):По каждому кораблю отдельно. Достаточно увидеть комментарийЕсли не считать по кораблям, а только по суммам, не вижу разницы между малым и большим флотом// backup set fleet
// possibly copy into file for less memory usage when using _very_ big fleets?
Да есть у меня спидсим. Гонять его практически бесполезно - там в коде есть несколько рэндомов, которые делают результаты очень различающимися. В частности, одним из таких моментов является шанс взрыва корабля при повреждении его более чем на 30%. А взрыв, скажем, одной СН в бою может принципиально изменить результат.Ivash писал(а):Может срин поможет)