diff --git a/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer2.java b/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer2.java index 6b145ff62c3..1ef23ff9fd1 100644 --- a/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer2.java +++ b/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer2.java @@ -372,13 +372,14 @@ public class ComputerPlayer2 extends ComputerPlayer implements } node.setGameValue(game.getState().getValue()); SimulatedPlayer currentPlayer = (SimulatedPlayer) game.getPlayer(game.getPlayerList().get()); + logger.fine("simulating -- player " + currentPlayer.getName()); SimulationNode bestNode = null; List allActions = currentPlayer.simulatePriority(game, filter); if (logger.isLoggable(Level.FINE)) logger.fine("simulating -- adding " + allActions.size() + " children:" + allActions); for (Ability action: allActions) { Game sim = game.copy(); - if (sim.getPlayer(playerId).activateAbility((ActivatedAbility) action.copy(), sim)) { + if (sim.getPlayer(currentPlayer.getId()).activateAbility((ActivatedAbility) action.copy(), sim)) { sim.applyEffects(); if (!sim.isGameOver() && action.isUsesStack()) { // only pass if the last action uses the stack diff --git a/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer3.java b/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer3.java index afa0f883dc7..23191d1c8e2 100644 --- a/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer3.java +++ b/Mage.Server.Plugins/Mage.Player.AIMinimax/src/mage/player/ai/ComputerPlayer3.java @@ -230,13 +230,13 @@ public class ComputerPlayer3 extends ComputerPlayer2 implements Player { else { switch (game.getTurn().getStepType()) { case PRECOMBAT_MAIN: - val = simulateCombat(game, node, depth-1, alpha, beta, false); + val = -simulateCombat(game, node, depth-1, alpha, beta, false); break; case POSTCOMBAT_MAIN: - val = simulateCounterAttack(game, node, depth-1, alpha, beta); + val = -simulateCounterAttack(game, node, depth-1, alpha, beta); break; default: - val = GameStateEvaluator.evaluate(playerId, game); + val = -GameStateEvaluator.evaluate(playerId, game); break; } } diff --git a/Mage.Server/plugins/mage-player-aiminimax.jar b/Mage.Server/plugins/mage-player-aiminimax.jar index c733ae46014..894e7fee898 100644 Binary files a/Mage.Server/plugins/mage-player-aiminimax.jar and b/Mage.Server/plugins/mage-player-aiminimax.jar differ diff --git a/Mage.Sets/src/mage/sets/riseoftheeldrazi/SeaGateOracle.java b/Mage.Sets/src/mage/sets/riseoftheeldrazi/SeaGateOracle.java index 73948b07419..9ab3205ab76 100644 --- a/Mage.Sets/src/mage/sets/riseoftheeldrazi/SeaGateOracle.java +++ b/Mage.Sets/src/mage/sets/riseoftheeldrazi/SeaGateOracle.java @@ -59,7 +59,7 @@ public class SeaGateOracle extends CardImpl { this.subtype.add("Human"); this.subtype.add("Wizard"); this.power = new MageInt(1); - this.toughness = new MageInt(1); + this.toughness = new MageInt(3); this.addAbility(new EntersBattlefieldTriggeredAbility(new SeaGateOracleEffect(), false)); } diff --git a/Mage/src/mage/abilities/common/PassAbility.java b/Mage/src/mage/abilities/common/PassAbility.java index d0ac2e1da81..3dadc962ae4 100644 --- a/Mage/src/mage/abilities/common/PassAbility.java +++ b/Mage/src/mage/abilities/common/PassAbility.java @@ -28,9 +28,11 @@ package mage.abilities.common; +import java.util.UUID; import mage.Constants.Zone; import mage.abilities.ActivatedAbilityImpl; import mage.abilities.effects.common.PassEffect; +import mage.game.Game; /** * @@ -51,6 +53,11 @@ public class PassAbility extends ActivatedAbilityImpl { return new PassAbility(this); } + @Override + public boolean canActivate(UUID playerId, Game game) { + return true; + } + @Override public String toString() { return "Pass"; diff --git a/Mage/src/mage/abilities/effects/common/PlayTargetWithoutPayingManaEffect.java b/Mage/src/mage/abilities/effects/common/PlayTargetWithoutPayingManaEffect.java index 5e3859156f9..9867106250b 100644 --- a/Mage/src/mage/abilities/effects/common/PlayTargetWithoutPayingManaEffect.java +++ b/Mage/src/mage/abilities/effects/common/PlayTargetWithoutPayingManaEffect.java @@ -58,7 +58,10 @@ public class PlayTargetWithoutPayingManaEffect extends OneShotEffect