The summary of changes in the FightingICE ver. 3.20 【New Implementation】 ・Created a new option "--mute" which mutes BGM and sound effects ・Created a new option "--grey-bg" which provides a grey background ・Created a new option "--json" which outputs game logs in JSON format ・Created a new option "--err-log" which outputs the system's errors and the AI's logs to text files ・Created Python files which extract game features from JSON logs for machine learning AIs (see example.py) ・Created a new method "roundEnd()" in AIInterface in order to get the result of the previous round ・Created new methods in GameData which get the self and opponent AI name 【Modification】 ・Javadoc was updated ・Some images were updated in "First step" (index-2h.html) on the HP ・Mutes BGM and sound effects when FTG is launched with the option "--disable-window" or (and) "--mute" ・Displays the amount of HP and energy as a numerical value above the HP bar when FTG is launched with "--limithp" ・The accuracy of the simulation (used in MCTS AIs, etc.) was improved ・Determines "hit" when the attack's hit box overlaps with the opponent character's hit box 【Fixed Bugs】 ・Did not remove the projectile effects even after a new round has started changed while playing replay ・Did not play the sound effects when an attack hits the opponent ・A character was under the ground when it conducted certain actions --------How to launch FTG in the competition mode---------- --limithp [P1's HP] [P2's HP] --grey-bg --inverted-player 1 For example, --limithp 400 400 --grey-bg --inverted-player 1 -------How to use roundEnd()------- This method informs the result of each round. It is called when each round ends. The AIs can get the result of the previous round that just ended by coding as follows: @Override public void roundEnd(int p1Hp, int p2Hp, int frames) { int x = p1Hp; int y = p2Hp; int z = frames; System.out.println("P1's HP: " + x + " P2's HP: " + y + " Elapsed frame: " + z); } For more information on AIInterface, please also check the Javadoc AIInterface.java That's all folks!