SF2 AI – does it cheat?

I’ve seen a few questions floating around about whether the AI can cheat – specifically whether it needs to charge Bladekicks or Sonic Booms like a human player does.

No, it doesn’t.

The built-in AI programs are simple lists of moves that aren’t subject to the normal human rules of needing to charge back a certain amount of time before performing a move like a Sonic Boom, and the computer controlled opponent can execute them without these requirements.

For some moves, such as E.Honda’s Hundred-Hand-Slap, Chun-Li’s Thousand-Foot-Kick, etc. the AI scripts include a couple of moves to make it look like they are subject to the same rules as human input (and also a clue to new players how to execute the moves), but the AI machine is capable of launching into any power move as easily and instantly as any ordinary attack.

SF2 AI – does it cheat?

Reverse engineering Street Fighter 2 – The World Warrior

Years ago (2005!) I started reverse engineering the ROMs for Street Fighter 2 – The World Warrior in my spare time, and rewriting the whole thing (yes, the whole game) in C.

Since I can’t likely share my source or binary without infringing Capcom’s copyright, I decided I should at least start a blog to share with the world what I’ve found from the code, for whatever reason you might be interested.

I’ll likely never be able to release my full code or binary, so I want to share as much of my findings as I (legally) can so if for some reason I can’t continue, not too much of this goes to waste.

I also wrote a graphics engine to emulate the CPS’s tile graphics hardware using OpenGL. Because this code is mine, I’ll be sharing parts of it with you.

Reverse engineering Street Fighter 2 – The World Warrior