AITEM TESTING AI IN COMMERCIAL GAME WITH EMULATOR - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

AITEM TESTING AI IN COMMERCIAL GAME WITH EMULATOR

Description:

Test game, Street Fighter Zero3. One of the best fighting game. Also known as Street Fighter Alpha3. Has many ways to play. Can separate expert from novice. ... – PowerPoint PPT presentation

Number of Views:65
Avg rating:3.0/5.0
Slides: 28
Provided by: iLL94
Category:

less

Transcript and Presenter's Notes

Title: AITEM TESTING AI IN COMMERCIAL GAME WITH EMULATOR


1
AI-TEMTESTING AI IN COMMERCIAL GAME WITH
EMULATOR
AITEM Testing AI in Commercial Game with Emulator
  • Worapoj Thunputtarakul and Vishnu Kotrajaras
  • Department of Computer Engineering
  • CHULALONGKORN University, Bangkok, Thailand

Department of Computer Engineering, CHULALONGKORN
University, Thailand
2
Forecast (Abstract)
AI-TEM Testing AI in Commercial Game with
Emulator
  • Have you ever wanted to develop AI for popular
    games, console games?
  • When you develop AI for games, how can you test
    it? Is it hard to find a testbed?
  • Are you bored of testing only PC games?

Department of Computer Engineering, CHULALONGKORN
University, Thailand
3
Outline
AI-TEM Testing AI in Commercial Game with
Emulator
  • The problem of finding Game AI tesbed
  • The concept framework of AI-TEM
  • Experiment Using AI-TEM
  • Conclusion Future work
  • Discussion

Department of Computer Engineering, CHULALONGKORN
University, Thailand
4
The Problem
AI-TEM Testing AI in Commercial Game with
Emulator
  • Criteria of Testbed game.
  • Not too simple.
  • Has many ways to play.
  • Allows AI to show off its cleverness.
  • High quality, Nominee name, Accepted games.
  • What will you do to have that Testbed?
  • Develop a game for testing from scratch.
  • Use tool sets from some games.
  • Find open source games.
  • Find a game company that can give you source of
    their game.
  • Use Testbed.

Department of Computer Engineering, CHULALONGKORN
University, Thailand
5
Inspiration of AI-TEM
AI-TEM Testing AI in Commercial Game with
Emulator
  • Want to test AI in Winning Eleven,
  • Street Fighter, The King of Fighter.
  • Robot, press controller, see the game. (R.O.B,
    Gyromite?)
  • Emulator ROM can do that!
  • Observe game state, send controller signal.

Department of Computer Engineering, CHULALONGKORN
University, Thailand
6
Emulator ROM
AI-TEM Testing AI in Commercial Game with
Emulator
Game cartridge
ROM Dumper
Game ROM
ROM DATA


Game console
Game emulator
Emulated game
Department of Computer Engineering, CHULALONGKORN
University, Thailand
7
AI-TEM Framework
AI-TEM Testing AI in Commercial Game with
Emulator
Artificial Intelligence Testbed in Emulator
Department of Computer Engineering, CHULALONGKORN
University, Thailand
8
AI-TEM with VBA
AI-TEM Testing AI in Commercial Game with
Emulator
AI-TEM, VBA, VBA Link
Why VBA?- Open Source- Many supporting tools -
Many interesting games- Familiar
http//vba.ngemu.com http//vbalink.wz.cz/index.h
tm
Department of Computer Engineering, CHULALONGKORN
University, Thailand
9
Test game, Street Fighter Zero3
AI-TEM Testing AI in Commercial Game with
Emulator
  • One of the best fighting game.
  • Also known as Street Fighter Alpha3.
  • Has many ways to play.
  • Can separate expert from novice.
  • Classic game, 1998 2006.

Credits shinken209 From youtube
Credits CybeRAkumA From youtube
Video from Arcade Version
Department of Computer Engineering, CHULALONGKORN
University, Thailand
10
The Working of AI-TEM
AI-TEM Testing AI in Commercial Game with
Emulator
Game State Observer 1P Position X Address
0x20007C2 Value(16 bits) 002C(h) 002C 44
Game state Normalizer Normalize by subtract 44 1P
Position X 0
Department of Computer Engineering, CHULALONGKORN
University, Thailand
11
Example STZ3 Game state Address
AI-TEM Testing AI in Commercial Game with
Emulator
Example, not exactly real value. After
normalized.
Department of Computer Engineering, CHULALONGKORN
University, Thailand
12
Example STZ3 RYU Animation Data
AI-TEM Testing AI in Commercial Game with
Emulator
Punch
Shoryuken
Etc
Value after normalized
Department of Computer Engineering, CHULALONGKORN
University, Thailand
13
Example Python Interface
AI-TEM Testing AI in Commercial Game with
Emulator
  • Function
  • CPGetData(PyObject self, PyObject args)
  • CPPressCustomCombo(PyObject self, PyObject args)
  • Data ID
  • GET_ANIMATION
  • GET_POSX
  • GET_GAUGE
  • Object ID
  • STZ3_P1
  • STZ3_HP_BAR_P1
  • STZ3_ISM_BAR_P2

p1x stz3.CPGetData(ptr, GET_POSX, STZ3_P1)
p2x stz3.CPGetData(ptr, GET_POSX, STZ3_P2)
delta abs(p1x - p2x) mytuple ((PRESS_DOWN,
2), (PRESS_DOWNPRESS_RIGHT, 2),
(PRESS_RIGHT, 2), (PRESS_B, 2), (0, 10)) if
delta gt 150 stz3.CPPressCustomCombo(ptr,
mytuple)
Department of Computer Engineering, CHULALONGKORN
University, Thailand
14
Discussion
AI-TEM Testing AI in Commercial Game with
Emulator
  • Is it hard to use?
  • About Finding Address.
  • Game State Address is specific for game.
  • About Collecting Game Data for reference.
  • (Animation data, Position range, Sprite size)
  • Which AI to test? (Method, Topic)
  • What game type? (Fighting, Soccer, FPS, RTS, )
  • VBA in AI-TEM.

Department of Computer Engineering, CHULALONGKORN
University, Thailand
15
Fight for the future
AI-TEM Testing AI in Commercial Game with
Emulator
  • Next scope for STZ3. Other ISM.
  • Other Emulators Arcade, PlayStation.
  • Other Games.
  • Other features.

Department of Computer Engineering, CHULALONGKORN
University, Thailand
16
AI-TEM Testing AI in Commercial Game with
Emulator
Thank you http//www.cp.eng.chula.ac.th/g48wth/
aitem.htm
Worapoj.T_at_student.chula.ac.th
Vishnu_at_cp.eng.chula.ac.
th
Department of Computer Engineering, CHULALONGKORN
University, Thailand
17
Tools supporting AI-TEM
AI-TEM Testing AI in Commercial Game with
Emulator
Supporting Game State Observer- Finding Game
State Address- Modified to be Game State Observer
Supporting AI Module- Help collecting game state
data for use in AI- Help debugging AI- Help in
training AI, Automatic Battle tool (new)
Department of Computer Engineering, CHULALONGKORN
University, Thailand
18
AI-TEM Testing AI in Commercial Game with
Emulator
Auto Animation Collection Tool (for STZ3)
  • For every character
  • Force value in address 20007C2 to change
    character animation

Customize (.ini file) - Destination Folder -
Number of Frames capture - Character list
Ryu Value 0
Ryu Value N
Eagle Value 0
Eagle Value N



Capture frame
Example only
Department of Computer Engineering, CHULALONGKORN
University, Thailand
19
AI-TEM Testing AI in Commercial Game with
Emulator
(New) Auto Battle Tool (for STZ3)
Automatic long run battle. Use for some AI that
needs it. (Ex. Learning type AI)
Customize (.ini file) - Number of Matches - Time
for each match - VS Characters - ISM, Rounds -
Built-in AI or Python AI
New tool, not mentioned in paper
Department of Computer Engineering, CHULALONGKORN
University, Thailand
20
AI-TEM Testing AI in Commercial Game with
Emulator
Search for Game State Address (1)
Example Position Address Use VBA Cheat
search. Old value, 16bits Equal, Hexadecimal
1 Begin...
Search produces 14,756 results, Please refine
better
2 Search for addresses of which values increase.
Search produces 1,368 results, Please refine
better
Cont...
Department of Computer Engineering, CHULALONGKORN
University, Thailand
21
AI-TEM Testing AI in Commercial Game with
Emulator
Search for Game State Address (2)
3 Still Search for addresses of which values
increase.
Search produces less than 1,000 results,
4 Search for addresses of which values decrease.
Search produces interesting result.
5 Check 20007C2 in memory viewer Its OK.
Department of Computer Engineering, CHULALONGKORN
University, Thailand
22
AI-TEM Testing AI in Commercial Game with
Emulator
Beware of Data Size when search
Address 20007C2 8 bits FF 16 bits 01FF
Continue to move forward. And search for address
which value increase.
Address 20007C2 8 bits 20 16 bits 0220
Notice 8bit value is decrease because
overflow. 8 bits will not found. 16 bits will
found.
Example only Value not match to real situation.
Department of Computer Engineering, CHULALONGKORN
University, Thailand
23
AI-TEM Testing AI in Commercial Game with
Emulator
Memory Compare Tool Game State Data Dump
  • WriteGMDFile -gt .GMD
  • N GMD files
  • Memory Compare Tool
  • Set condition
  • 6 Result files
  • 8, 16, 32 bits. Signed, Unsigned

Department of Computer Engineering, CHULALONGKORN
University, Thailand
24
AI-TEM Testing AI in Commercial Game with
Emulator
About Coordinating Reference
Pic1
Red line is reference point for address
20007C2 RYU sprite size 32p 1-4 Line3 middle of
sprite
Pic2 Left side
Pic3 Right side
2C(h) 44, 10p 12p 22p 44u
Department of Computer Engineering, CHULALONGKORN
University, Thailand
25
AI-TEM Testing AI in Commercial Game with
Emulator
Legal Information
  • Is emulation really legal?
  • Ok, so it's legal, but is it right?
  • Are ROM images legal?
  • Is distributing ROM images legal?

From GAMEBOY-ADVANCE.net http//www.gameboy-advan
ce.net/site/legal_info.htm
Department of Computer Engineering, CHULALONGKORN
University, Thailand
26
AI-TEM Testing AI in Commercial Game with
Emulator
Thank you http//www.cp.eng.chula.ac.th/g48wth/
aitem.htm
Worapoj.T_at_student.chula.ac.th
Vishnu_at_cp.eng.chula.ac.
th
Department of Computer Engineering, CHULALONGKORN
University, Thailand
27
AI-TEM Testing AI in Commercial Game with
Emulator
Department of Computer Engineering, CHULALONGKORN
University, Thailand
Write a Comment
User Comments (0)
About PowerShow.com