M.A.X.    Вы вошли как гость
Российский Клуб игроков M.A.X.
 
[Новости]   [Новичку]   [Энциклопедия]   [Документы]   [Файлы]   [Игроки]   [Архивы]   [Архив форума]  
[Новый сайт]   [M.A.X. Gold]   [Партии]  

 
 
 
Архив форума  МаксГолд
[Основной форум] [Голосования] [МаксГолд] [Off-Topic]
 


Для огня не совсем понятно  -  Hruks,  18.04.2013  14:56:50

Отключение если не хватает ресурсов - с этим понятно.
А вот с огнём не очень.
Если пушки/юниты мои и на моём ходу им становится доступно несколько целей, то автоматизировать процесс открытия огня не стоит - я сам лучше вручную отстреляю всеми юнитами.

Такая система приоритетов нужна для ответного огня. Когда во время хода противника мои юниты атакуют противника в ответ на их перемещение.
По сути задача сводится к определению юнита, который выстрелит по цели, если по этой цели могут одновременно выстрелить несколько юнитов. К примеру танк или БТР на всём скаку влетают в центр базы или толпу защитников. Тогда по этому танку могут выстрелить сразу несколько стволов и возникает задача определить кто и в какой последовательности должен стрелять.
По предложенному алгоритму в приведённой ситуации приоритет цели один и тот же, значит отличаться будут только приоритеты пушек. Стало быть огонь откроет пушка с минимальным приоритетом. То есть танк разрядит на себя все доты и примет огнь более толстых стволов, если доживёт.
Логично было бы открыть огонь тем юнитам, которые способны уничтожить юнит. Так нет смысла разряжать 5 дотов, кторые не уничтожат танк, но покусают его сильно, а затем ракетомёт снесёт этот танк с огромным запасом. В итоге всё равно все стволы будт разряжены.

Ну и несколько целей вообще не могут оказаться в одно время в радиусе действия стволов. Это может произойти только если очень шустро управлять своими юнитами - двигать следующий юнит быстрее, чем стреляют по первому. Такое в походовой игре должно быть исключено.

Ну и в большинстве случаев юнит будут подставлять под огонь очнь аккуратно - клетка за клеткой, разряжая выбранные стволы один за другим, результате чего предложенная система приоритетов никак не поможет защитнику, а нападающему она и вовсе не нужна.
Речь шла скорее о фильтрах и принятии решения об открытия огня той или иной пушкой и только потом о приоритетах.
Например если пушке или чему-то важному не угрожает попавший в рендж скаут, то не открывать этой пушкой по нему огонь вовсе.
При таком подходе тоже есть возможность во первых всё же разрядить пушки, подъехав к ним достаточно близко, и во вторых подвинуть свои войска в зону огня противника в надежде на следующем ходу нанести уже сокрушительный удар, воспользоавшись тем, что на этом ходу заряженные пушки так и не открыли огонь.
Ну или там транспортный самолёт сам по себе вообще никому не угрожает, тем не менее сейчас это приоритет номер один для открытия огня защитниками.

В общем для отключения заводов в случае нехватки ресурсов в таком виде можно реализовать.
Всё равно останутся моменты, когда в хранилищах достаточно ресурсов для производства на заводе даже при неработающей шахте, но при нехватке энергии отключится завод, а не шахта. Шахту нужно отключать только если заводам не хватит ресурсов, а для этого нужно считать сколько ресурсов есть и сколько останется после отключения шахты. Причём не того ресурса, что не хватает, а как раз тех, которые добывает шахта и расходуют заводы.
Среди заводов нужно учитывать какому таки хватит ресурсов, среди шахт, какая более важна (производит именно те ресурсы, которых не хватает). Короче даже частисно это реализовать будет сложно.