Package net.sf.colossus.ai
Class MilvangAI
- java.lang.Object
-
- net.sf.colossus.ai.AbstractAI
-
- net.sf.colossus.ai.SimpleAI
-
- net.sf.colossus.ai.RationalAI
-
- net.sf.colossus.ai.MilvangAI
-
- All Implemented Interfaces:
AI
public class MilvangAI extends RationalAI
- Author:
- kmilvangjens
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.colossus.ai.RationalAI
RationalAI.BattleResults, RationalAI.CompCreaturesByValueName, RationalAI.MusteredCreatures
-
Nested classes/interfaces inherited from class net.sf.colossus.ai.SimpleAI
SimpleAI.PowerSkill, SimpleAI.TriggerTimeIsUp
-
Nested classes/interfaces inherited from class net.sf.colossus.ai.AbstractAI
AbstractAI.AbstractAIOracle, AbstractAI.CreatureValueConstants, AbstractAI.MoveInfo
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.logging.Logger
LOGGER
private static double
PRIMARY_RECRUIT_FACTOR
private static double
SECONDARY_RECRUIT_FACTOR
-
Fields inherited from class net.sf.colossus.ai.RationalAI
I_HATE_HUMANS, KILLPOINTS, RECRUIT_AT_7, RECRUIT_FALSE, RECRUIT_TRUE, TITAN_SURVIVAL
-
Fields inherited from class net.sf.colossus.ai.SimpleAI
MIN_ITERATIONS, timeIsUp, timeLimit
-
Fields inherited from class net.sf.colossus.ai.AbstractAI
bec, client, cvc, hintSectionUsed, random, variant
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) RationalAI.MusteredCreatures
chooseCreaturesToSplitOut(Legion legion, boolean at_risk)
Decide how to split this legion, and return a list of Creatures to remove + status flag indicating if these creatures have mustered or not(package private) double
findRecruitPotential(java.util.Map<CreatureType,java.lang.Integer> critters, MasterBoardTerrain terrain)
-
Methods inherited from class net.sf.colossus.ai.RationalAI
concede, estimateBattleResults, flee, getCombatList, masterMove, split, splitCallback, splitOneLegion
-
Methods inherited from class net.sf.colossus.ai.SimpleAI
acquireAngel, battleMove, chooseRecruit, doInitialGameSplit, evaluateCritterMove_Defender, evaluateCritterMove_Rangestrike, evaluateCritterMove_Strike, evaluateCritterMove_Titan, evaluateLegionBattleMove, evaluateLegionBattleMoveAsAWhole, findBestLegionMove, findLegionMoves, findWeakestTwoCritters, getCreatureMoveLimit, getNativeValue, handleCarries, handleMulligans, muster, pickColor, pickEngagement, pickEntrySide, pickMarker, pickStrikePenalty, RATIO_DRAW, RATIO_LOSE_HEAVY_LOSS, RATIO_WIN_HEAVY_LOSS, RATIO_WIN_MINIMAL_LOSS, reinforce, retryFailedBattleMoves, setupTimer, strike, summonAngel
-
Methods inherited from class net.sf.colossus.ai.AbstractAI
buildEnemyAttackMap, cleanupBattle, couldRecruitUp, countCreatureAccrossAllLegionFromPlayer, findStrikeMap, generateDamageMap, generateLegionMoves, getAcqStepValue, getBattleStrike, getBattleUnit, getCaretaker, getHintedRecruitmentValue, getHintedRecruitmentValueNonTitan, getHintedRecruitmentValueNonTitan, getInitialSplitHint, getKillValue, getKillValue, getNumberOfWaysToTerrain, getVariantRecruitHint, hasOpponentNativeCreature, initBattle, isHumanLegion, makeLegionMove, rangeToClosestOpponent, setVariant
-
-
-
-
Field Detail
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
PRIMARY_RECRUIT_FACTOR
private static final double PRIMARY_RECRUIT_FACTOR
- See Also:
- Constant Field Values
-
SECONDARY_RECRUIT_FACTOR
private static final double SECONDARY_RECRUIT_FACTOR
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
MilvangAI
public MilvangAI(Client client)
-
-
Method Detail
-
findRecruitPotential
double findRecruitPotential(java.util.Map<CreatureType,java.lang.Integer> critters, MasterBoardTerrain terrain)
-
chooseCreaturesToSplitOut
RationalAI.MusteredCreatures chooseCreaturesToSplitOut(Legion legion, boolean at_risk)
Description copied from class:RationalAI
Decide how to split this legion, and return a list of Creatures to remove + status flag indicating if these creatures have mustered or not- Overrides:
chooseCreaturesToSplitOut
in classRationalAI
-
-