AI: reworked blockers selections:

* now computer will use simplified 1 vs 1 combat damage simulations to choose better blockers (due better game score after combat);
* it's not a full combat simulation, but support many things like non-stack abilities, damage replacement effects and SBA -- much better than older PT compare (related to #13290);
* now AI correctly use a blockers with deathtouth, indestructible, first/double strike and other abilities;
* chump blocks also supported (chump logic implemented before in 92b7ed8efc, related to #4485);
This commit is contained in:
Oleg Agafonov 2025-02-06 06:28:17 +04:00
parent 7d229e511c
commit b4fa6ace66
3 changed files with 108 additions and 11 deletions

View file

@ -243,7 +243,7 @@ public class CombatGroup implements Serializable, Copyable<CombatGroup> {
* @param first true for first strike damage step, false for normal damage step
* @return true if permanent should deal damage this step
*/
private boolean dealsDamageThisStep(Permanent perm, boolean first, Game game) {
public static boolean dealsDamageThisStep(Permanent perm, boolean first, Game game) {
if (perm == null) {
return false;
}