@Override public State copy() { return new GGGoal(x, y, type, name); }
@Override public ObjectInstance copyWithName(String objectName) { return new GGGoal(x, y, type, objectName); }
/** * Returns the initial state for a classic prisoner's dilemma formulated in a Grid Game. * @return the grid game prisoner's dilemma initial state */ public static State getPrisonersDilemmaInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(3, 0, 0, "agent0"), new GGAgent(5, 0, 1, "agent1"), new GGGoal(0, 0, 1, "g0"), new GGGoal(4, 0, 0, "g1"), new GGGoal(8, 0, 2, "g2") ); setBoundaryWalls(s, 9, 1); return s; }
/** * Returns the initial state for a classic coordination game, where the agent's personal goals are on opposite sides. * @return the coordination game initial state */ public static State getCorrdinationGameInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(0, 0, 0, "agent0"), new GGAgent(2, 0, 1, "agent1"), new GGGoal(0, 2, 2, "g0"), new GGGoal(2, 2, 1, "g1") ); setBoundaryWalls(s, 3, 3); return s; }
/** * Returns the initial state for a simple game in which both players can win without interfering with one another. * @return the simple game initial state */ public static State getSimpleGameInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(0, 0, 0, "agent0"), new GGAgent(2, 0, 1, "agent1"), new GGGoal(0, 2, 1, "g0"), new GGGoal(2, 2, 2, "g1") ); setBoundaryWalls(s, 3, 3); return s; }
/** * Returns the initial state for Friend Foe game. * @return the initial state for Friend Foe */ public static State getFriendFoeInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(3, 0 ,0, "agent0"), new GGAgent(6, 0, 1, "agent1"), new GGGoal(0, 0, 1, "g0"), new GGGoal(4, 0, 0, "g1") ); setBoundaryWalls(s, 8, 1); return s; }
/** * Returns the initial state for the Incredible game (a game in which player 0 can give an incredible threat). * @return the initial state for the Incredible game. */ public static State getIncredibleInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(2, 0, 0, "agent0"), new GGAgent(3, 0, 1, "agent1"), new GGGoal(0, 0, 1, "g0"), new GGGoal(1, 0, 2, "g1") ); setBoundaryWalls(s, 4, 1); return s; }
public static State getTurkeyInitialState(){ GenericOOState s = new GenericOOState( new GGAgent(0, 0, 0, "agent0"), new GGAgent(2, 0, 1, "agent1"), new GGGoal(0, 3, 1, "g0"), new GGGoal(1, 2, 0, "g1"), new GGGoal(2, 3, 2, "g2"), new GGWall.GGHorizontalWall(0, 0, 1, 1, "w0"), new GGWall.GGHorizontalWall(2, 2, 1, 1, "w1") ); setBoundaryWalls(s, 3, 4); return s; }