Ms. Pac-Man Vs. Ghost Team Competition CIG 2018

Some of the more useful methods provided by the API are documented here

This method advances the game by one timestep. You need to provide a MOVE for the Ms. Pac-Man and an EnumMap containing MOVE's for each GHOST Only fully observable game objects can be forwarded, so you'll need to obtain one with the next set of methods


      public void advanceGame(MOVE pacManMove, EnumMap ghostMoves);
      public boolean isGamePo()
    

These methods work together to allow Partiall Observable games to be determinised into a fully observable game. The GameInfo object can be populated with information regarding what an agent thinks is possible true, and then it can be used to obtain a fully observable game object that uses that information as truth. This can then be easily forwarded and experimented with.


      public GameInfo getBlankGameInfo();
      public Game getGameFromInfo(GameInfo info);
    

These methods provide information about agents that were eaten in the last update.


      public boolean wasPacManEaten();
      public boolean wasGhostEaten(GHOST ghost);
    

These methods provide information about whether a Pill or PowerPill was eaten in the last update.


      public boolean wasPillEaten();
      public boolean wasPowerPillEaten();
    

This method simply provides information about whether the game is over or not.


      public boolean gameOver();
    

This method simply provides a reference to the current Maze in the game.


      public Maze getCurrentMaze();
    

These methods allow agents to query if a Pill or PowerPill is still available. Will return null if the querying agent can't see the location. The last two methods return an array of indices for the Pill's or PowerPill's that are still available and visible


      public Boolean isPillStillAvailable(int pillIndex);
      public Boolean isPowerPillStillAvailable(int powerPillIndex);

      public int[] getActivePillsIndices();
      public int[] getActivePowerPillsIndices();
    

These methods allow agents to query information about the Ms. Pac-Man agent. Will return -1 or null respectively if the querying agent can't see Ms. Pac-Man.


      public int getPacmanCurrentNodeIndex();
      public MOVE getPacmanLastMoveMade();
    

These methods allow agents to query information about the GHOST agent. Will return -1 or null respectively if the querying agent can't see the GHOST.


      public int getGhostCurrentNodeIndex(GHOST ghostType);
      public MOVE getGhostLastMoveMade(GHOST ghostType);
    

These methods allow agents to query information about the edible nature of a GHOST. Will return null or -1 respectively if the querying agent can't see the GHOST.


      public Boolean isGhostEdible(GHOST ghostType);
      public int getGhostEdibleTime(GHOST ghostType);
    

These methods allow agents to query information about the MOVE's available at a given node


      public MOVE[] getPossibleMoves(int nodeIndex);
      public MOVE[] getPossibleMoves(int nodeIndex, MOVE lastModeMade);
    

These methods allow agents to make pathfinding queries of the game.


      public MOVE getNextMoveTowardsTarget(int fromNodeIndex, int toNodeIndex, DM distanceMeasure);
      public MOVE getNextMoveAwayFromTarget(int fromNodeIndex, int toNodeIndex, DM distanceMeasure);
      public MOVE getNextMoveTowardsTarget(int fromNodeIndex, int toNodeIndex, MOVE lastMoveMade, DM distanceMeasure);
      public MOVE getNextMoveAwayFromTarget(int fromNodeIndex, int toNodeIndex, MOVE lastMoveMade, DM distanceMeasure);