Here is a example of a bot. That bot go one step forward with the queen, if the queen is on the field
import java.util.ArrayList; import chessBall.ChessBallAIMove; import chessBall.ChessBallConstants; import chessBall.ai.AI; public class MyAI extends AI { // is called before the think method public void reset() { } public String getName() { return "My AI"; } @Override public ArrayList<ChessBallAIMove> think(int[][] level, final AtMove eAtMove) { ArrayList<ChessBallAIMove> move = new ArrayList<ChessBallAIMove>(); // search the queen for (int y = 0; y < level.length; y++) { for (int x = 0; x < level[0].length; x++) { // find the queen? if (((level[y][x] == ChessBallConstants.FIELD_QUEEN_BLACK) && (eAtMove.isBlack())) || ((level[y][x] == ChessBallConstants.FIELD_QUEEN_WHITE) && (eAtMove.isWhite()))) { // if the queen is white then go one step down, otherwise up int add = 1; if (level[y][x] == ChessBallConstants.FIELD_QUEEN_BLACK) { add = -1; } // get the goArea boolean[][] goArea = canGoArea(level, x, y, eAtMove); // if the queen can go to that point then go if ((y + add >= 0) && (y + add < level.length) && (goArea[y+add][x])) { move.add(new ChessBallAIMove(level[y][x], x, y, x, y + add)); } } } } return move; } }