GeneticBot.java
1 import hlt.*; 2 import pep.*; 3 4 public class GeneticBot { 5 6 private static boolean isEvolving = false; 7 8 public static void main(final String[] args) { 9 Game game = new Game(); 10 11 if (args.length == 1) { 12 isEvolving = Integer.parseInt(args[0]) == 1; 13 } 14 Parameters.evolvedDefaults(); 15 if (isEvolving){ 16 Parameters.populateFromXML(); 17 } 18 19 game.ready("GeneticBot"); 20 Log.log("Successfully created bot! My Player ID is " + game.myId + "."); 21 22 for (;;) { 23 game.updateFrame(); 24 if (isEvolving){ 25 if (game.turnNumber == 1) { 26 Parameters.saveInitialState(game); 27 } else if (game.turnNumber == Constants.MAX_TURNS){ 28 Parameters.writeFitness(game); 29 } 30 } 31 BehaviorManager.updateBehaviors(game); 32 CommandManager.updateCommands(game); 33 writePerfomance(game); 34 // CommandManager.logCommands(); 35 game.endTurn(CommandManager.getCommands()); 36 } 37 } 38 39 private static void writePerfomance(Game game){ 40 if (game.turnNumber == Constants.MAX_TURNS - 1){ 41 String bankHalite = Integer.toString(game.me.halite - 4000); 42 TextLogger.writeLine("genetic.txt", bankHalite); 43 } 44 } 45 } 46