Starting from the line 309 in SaboteurBoardState.java:
if(!isAnHiddenObjective) {
int[][] path = this.board[i][j].getPath();
for (int k = 0; i < 3; i++) {
for (int h = 0; i < 3; i++) {
this.intBoard[i * 3 + k][j * 3 + h] = path[h][2-k];
}
}
}
The for loops seem have wrong variable i in the condition and increment part. Does not make sense for me.