Buggy code:
public class GamePlayer implements ubco . ai . games . GamePlayer { GameClient gameClient = null ; BoardLogic bl ; SearchTree T ; String role ; String teamName ; int roomID ; Board frame = null ; public GamePlayer ( String name , String passwd ) { } public String getRooms ( ) { } public void joinRoom ( ) { } public boolean handleMessage ( String msg ) throws Exception { } public boolean handleMessage ( GameMessage gmsg ) throws Exception { IXMLElement xml = ServerMessage . parseMessage ( gmsg . msg ) ; String xmlType = xml . getAttribute ( "type" , null ) ; System . out . println ( ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>" + xmlType ) ) ; switch ( xmlType ) { case GameMessage . ACTION_GAME_START : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>ACTION_GAME_START" ) ; String teamRole = "" ; IXMLElement firstChild = xml . getChildAtIndex ( 0 ) ; IXMLElement [ ] grandchildren = new IXMLElement [ 3 ] ; grandchildren [ 0 ] = firstChild . getChildAtIndex ( 0 ) ; grandchildren [ 1 ] = firstChild . getChildAtIndex ( 1 ) ; for ( int i = 0 ; i < ( grandchildren . length ) ; i ++ ) { if ( grandchildren [ i ] . getAttribute ( "name" , null ) . equals ( teamName ) ) { teamRole = grandchildren [ i ] . getAttribute ( "role" , null ) ; break ; } } role = teamRole ; System . out . println ( ( ( ( "We<seq2seq4repair_space>are<seq2seq4repair_space>gameplayer<seq2seq4repair_space>" + ( teamName ) ) + "<seq2seq4repair_space>and<seq2seq4repair_space>our<seq2seq4repair_space>Role<seq2seq4repair_space>is:<seq2seq4repair_space>" ) + ( role ) ) ) ; if ( role . equals ( "W" ) ) { System . out . println ( "Our<seq2seq4repair_space>Move" ) ; bl = new BoardLogic ( true ) ; T = new SearchTree ( new SearchNode ( bl ) ) ; this . makeMove ( ) ; } else { bl = new BoardLogic ( false ) ; T = new SearchTree ( new SearchNode ( bl ) ) ; System . out . println ( bl . toString ( ) ) ; } break ; case GameMessage . ACTION_MOVE : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>ACTION_MOVE" ) ; break ; case GameMessage . ACTION_POS_MARKED : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>ACTION_POS_MARKED" ) ; break ; case GameMessage . ACTION_ROOM_JOINED : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>ACTION_ROOM_JOINED" ) ; break ; case GameMessage . MSG_CHAT : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>MSG_CHAT" ) ; break ; case GameMessage . MSG_GAME : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>MSG_GAME" ) ; IXMLElement queen1 = xml . getChildAtIndex ( 0 ) ; String queen_move1 = queen1 . getAttribute ( "move" , null ) ; IXMLElement arrow1 = xml . getChildAtIndex ( 1 ) ; String arrow_move1 = arrow1 . getAttribute ( "move" , null ) ; move queenMove = translateIn ( queen_move1 ) ; Arrow arrow = translateArrowIn ( arrow_move1 ) ; T . makeMoveOnRoot ( queenMove , arrow ) ; <START_BUG> System . out . println ( T . getRoot ( ) . B . toString ( ) ) ; <END_BUG> this . makeMove ( ) ; break ; case GameMessage . MSG_GENERAL : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>MSG_GENERAL" ) ; break ; case GameMessage . MSG_JOIN_ROOM : System . out . println ( "Message<seq2seq4repair_space>Type:<seq2seq4repair_space>MSG_JOIN_ROOM" ) ; break ; } return true ; } public void sendToServer ( String msgType , int roomID , String queen_move , String arrow_move ) { } public void makeMove ( ) { } private BoardLogic randomMove ( BoardLogic b ) { } public String translateOut ( move m ) { } public move translateIn ( String move ) { } public String translateArrowOut ( Arrow a ) { } public Arrow translateArrowIn ( String move ) { } No newline ; at end ; of file ; }

Fix:
System . out . println ( ( "\nEnemy\'s<seq2seq4repair_space>Move" + ( T . getRoot ( ) . B . toString ( ) ) ) ) ;