Fighting Game AI Competition

Intelligent Computer Entertainment lab., Ritsumeikan University

Get started ------ Install

Following the next steps, you can install FightingICE as well as AIToolkit and start your first step.

--------------------------------------------------------------------------------------------------------------------

First, please find the JDK that you need at

------ JDK download page ------

and choose an integrated development environment such as Eclipse

------ Eclipse download page ------

--------------------------------------------------------------------------------------------------------------------

Second, download the FightingICE platform and AITookit at

Latest version:

------ Version 3.20 (released on June 20, 2017) ------

August 31, 2017

-- If you execute your Python AI using FightingICE version 3.20 or later, please implement roundEnd() function as follows:
--------------------------------------------------------------------------------------------
# please define this method when you use FightingICE version 3.20 or later
def roundEnd(self, p1Hp, p2Hp, frames):
print(p1Hp)
print(p2Hp)
print(frames)
---------------------------------------------------------------------------------------------
as done in our revised DisplayInfo.py.

June 26, 2017

--A simple tool for analyzing replay files has been made available in the end of index-2h.html.

June 20, 2017

--An update of FightingICE has been released. For details on changes in this update, please check this document. If you have already installed version 3.10, please update files available in this zip file; the hit-box boundary of ZEN (ZEN's character data) has been slightly modified, and the final competition will be run in the grey-background mode, rather than the black one in the mid-term.

March 30, 2017

--Added a competition compatible version of a visual-based deep learning sample AI, BasicBot, in the bottom of index-2h

March 22, 2017

--Added a visual-based deep learning sample AI, BasicBot,in the bottom of index-2h
--Added the following information in the middle of index-S
1 If you develop AIs in Python, please use Python 3.5, the official version of Python for this competition.
2 No deep learning libraries such as Torch or TensorFlow are supported at our competition servers. As a result, if your AI is a deep learning one, you should do as follows:
2.1 Submit an AI that does not need such deep learning libraries, but can perform forward propagation through the trained network from the input layer to the output layer and then conduct an action associated to one of the output units.
2.2 Store all trained weights in a folder with the same name as your AI. In the competition, this folder will be placed under ./aiData/
2.3 Refer to the following sample AI which strictly follows 2.1 and 2.2:
Sample_LoadTorchWeightAI.zip
In addition, for Python deep learning AI developers, you might find the following site useful:
https://github.com/oreilly-japan/deep-learning-from-scratch
3 For fair competition among various approaches, use of GPUs is prohibited at the competition servers.

March 9, 2017

Please upgrade FightingICE and AIToolKit to Version 3.10. If you already installed Version 3.00, you can just update AIToolKit.jar and FightingICE.jar.
Below is the list of what we did in this update.
#Fixed bugs
--Did not remove the hadouken effects when a round is changed while playing a replay file
--Did not play the sound effects when an attack hits the opponent
#New Implementation
--a sample script in Python for playing a replay file (see the folder PythonReplay in the enclosed folder Python)
#Modifications
--Set some methods to "deprecated" (unrecommended) and/or added recommended methods
--Updated relevant javadoc in index-2a making them easier to understand
--Updated relevant PDF documents in index-2a
--Added useful comments to machete.py in the enclosed folder Python
--Added useful Linux setup scripts for Linux users in the top of index-2h
--Added two sample deep learning AIs in the bottom of index-2h
For other useful information, please see our descriptions for Version 3.00 on Feb 4, 2017 below. Please also check our Facebook page.

Hope you enjoy our latest version of FightingICE!

Febuary 4, 2017

Please upgrade FightingICE and AIToolKit to Version 3.00 (released on Feb 4, 2017) for the 2017 competition. A description on how the 2017 competition is conducted can be found in index-3. For how to install and other details on new useful options, please read our instructions in index-2h. However, if you already installed Version 2.10 for the 2016 competition, you can just update the following files:
lib/gameLib.jar
AIToolKit.jar
FightingICE.jar
\data\character\ZEN\Motion.csv
\data\character\ZEN\gSetting.txt
\data\character\GARNET\Motion.csv
\data\character\GARNET\gSetting.txt
\data\character\LUD\Motion.csv
\data\character\LUD\gSetting.txt
In addition, please add py4j0.10.4 into FightingICE/lib and set the path on your Eclipse. Please also note that the provided Lud's character data are not official and will be changed when we run the competition.

2016 version:

------ Version 2.10 Upgrade Pack (released on August 10, 2016) ------

------ FightingICE Version 2.00 released on March 30, 2016) ------

------ AIToolKit Version 2.00 (included in the above FightingICE.zip)------

August 10, 2016

Please upgrade FightingICE and AIToolKit to Version 2.10 with many useful options. For how to install and other details, please read the REAME file therein. Hope you enjoy our latest version of FightingICE.

March 30, 2016

Please download FightingICE version 2.00, to which the combo system was introduced. We hope you enjoy our latest version of FightingICE and new competition ranking rules, which should promote more use of AI techniques. Please also check our new sample AI using MCTS, available at the bottom of index-2h.html.

November 03, 2015

FightingICE and AIToolKit have been updated to Version 1.23, where there is no longer limit in the maximum number of frames (int simulationLimit) that can be simulated by the method simulate in class Simulator. Please note that the said limit in Version 1.22 was set to 60 frames. If you have already installed Version 1.22, you only need to replace the old AIToolKit.jar and FightingICE.jar with the new ones. The simulator package released for reference in the end of index-2h.html has also been modified accordingly.

June 22, 2015

The simulator package used in JerryMizunoAI was released in the end of index-2h.html. You can check the source codes, modify them accordingly (e.g., by extending the maximum number of simulated frames from the current setting of 60 to, say, 300), and import this package to your AI.

May 12, 2015

It might be worth mentioning some manual controls (P1's perspective) as follows:
-> + -> is DASH
<- + <- is BACK_STEP (however, this motion needs energy in V1.2x)
<- is STAND_GUARD (In V1.1x the character moves back while guarding, but in V1.2x the character stays there while guarding)

May 11, 2015

Oops, we forgot mentioning in Javadoc that the maximum number of frames (int simulationLimit) that can be simulated by the method simulate in class Simulator is 60. Please see how the method is used in JerryMizunoAI. In addition, from FightingICE 1.20 and its subsequent versions you can quit the current game and return to the game menu by pressing the Esc key.

April 17, 2015

FightingICE and AIToolKit have been updated to Version 1.22, by which the break length between consecutive rounds has been slightly expanded to ensure that both AIs will start each round will their proper initial states. In addition, from this version, a new package "simulator" is provided that can be used as a forward model for predicting future states; please check our brand new sample JerryMizunoAI, which uses the package. Finally, AIR_D_DF_FA skill has been revised to its correct value 10 in \data\character\ZEN\Motion.csv.

March 8, 2015

FightingICE and AIToolKit have been updated to Version 1.21, by which the names of methods setSizeX(or Y), setCenterX(or Y), getSizeX(or Y), getCenterX(or Y) have been renamed to setGraphicSizeX(or Y), setGraphicCenterX(or Y), getGraphicSizeX(or Y),getGraphicCenterX(orY). They are used in platform development but not in AI development. If you have already installed Version 1.20 released on March 6, 2015. Please simply replace the jar files in your projects with the new ones, accordingly.

March 6, 2015

FightingICE and AIToolKit have been updated to Version 1.20, by which the loading time was significantly reduced, the character data of ZEN were adjusted for better balance among its skills, the method lever in Key was removed, and some methods were newly added. For more details on those newly added methods, please see the highlighted methods in Introduction of the relevant data and methods.pdf.

July 2, 2014

FightingICE and AIToolKit have been slightly updated, by which a bug about ZEN being able to walk pass its enemy character in Category 3C has been removed. In addition, comments to the newly introduced methods were added. The Javadoc pages that include those new methods have also been updated accordingly.

June 27, 2014

FightingICE and AIToolKit have been updated.


March 20, 2014

A new sample AI, MizunoAI, has been added in the bottom of the following

page: Get started-First step

January 30, 2014

The next competition will be run at CIG 2014.

http://www.cig2014.de/

September 7, 2013

A new sample AI, MotionDataSample AI, has been added, which gives a very simple sample on how to use the method CancelAbleFrame in the class MotionData. This AI does nothing but displays its opponent character's return value of CancelAbleFrame.

September 4, 2013

We have updated FightingICE to Version 0.52 where the HP of each character will be decreased. (it was increased in the earlier versions)

In addtition, the getCancelAbleFrame method in the MotionData class will return -1 if the motion of interest has no cancelable period. (0 was returned in this case in the earlier versions)

We have also revised Introduction of the relevant data and methods.pdf and Information about the character.pdf, accordingly.

August 21, 2013

FightingICE and AIToolKit have been updated to Versions 0.51 and 0.31, respectively. After decompressing them, the folder data/aiData will also be created and AIToolKit.jar will be available, respectively.

A description on file submission has been revised in Submission

August 21, 2013

The midterm-submission deadline has been extended to August 27, 2013 (23:59 JST).

FightingICE and AIToolKit have been updated to Versions 0.50 and 0.30, respectively. In this update, the method close() has been newly introduced in AIInterface for properly finalizing AI at the end of each game. If this method is not used, your AI may not work properly. Please see how to use it in the also-updated AI samples in Get started-First step, where the description about close() has also been added.

In addition, the description on File I/O in The rules-Competition has been updated.

August 16, 2013

FightingICE has been updated to Version 0.41, where during the replay-mode, the round information is displayed at the top-right of the game display.

The page Get started-First step has been revised with easier-to-read explanations.

The description of the formula for calculating the player character's score in Rules-Game has been corrected.

The brief table of skills in Get started-Advanced has been updated with information on the key-input conversion.

August 15, 2013

FightingICE has been updated to Version 0.40 with the following modifications.

1. It will now not show an error when the number of files in log\replay is larger than 64 and the number of AIs in data\ai than 32 (However, we recommend you keep the number of files less than these limits.)

2. All default AIs (jar files) in data\ai have been removed.

3. The round information is displayed at the top-right of the game display.

August 14, 2013

The following documents have been revised.

In Rules-Game

1. the formula for calculating the player scores

2. the description on the special rule

3. the two figures at the bottom of this page

In Get started-Advanced

1. all PDF file documents; the edited log can be seen in the following files:

Introduction of the CommandCenter class with edited log

Introduction of the relevant data and methods with edited log

Introduction of the game flow with edited log

Information about the character with edited log

August 10, 2013

The following documents have been revised:

In Get started-First step

1. The description of Void get Information(FrameData fd) has been revised.

In Get started-Advance

1. Introduction of Command class's lines 10,23-25,30 in the sample AI.

August 8, 2013

The link of AIToolKit has been corrected. Sorry about this!

August 1, 2013

FightingICE has been updated to version 0.32.

AIToolKit has been updated to version 0.2.

Some comments of program were modified. Some unnecessary comments were deleted.

July 19, 2013

FightingICE has been updated to Version 0.3.

Ready time, replay system, BGM and effective sound have been added to the platform.

--------------------------------------------------------------------------------------------------------------------

Please download FightingICE and open the self-extract file to finish the installation.

Please keep your FightingICE and AIToolkit the latest ones.

--------------------------------------------------------------------------------------------------------------------