💦 CREATE AND FUCK YOUR OWN AI CUMSLUT 🔥 TRY NOW ♥
Create AI Cumsluts 💦
April 28, 2022

Super Street Fighter 2X - The Tournament Battle!

It's been quite a journey getting to this point but here we finally are, Super Street Fighter 2X - The Tournament Battle is available to our patrons now! This version of the game is currently available to play on real hardware at Mikado Game Center Europe, and also recently debuted at Texas Showdown 2022 with support/hardware/streaming by Texas Shottakers!

You can view the footage from Texas Showdown here:

https://www.twitch.tv/videos/1464908121

How did we get here and what does it mean? The short answer is SSF2XTB, or 2XTB for short, brings the network functionality and tournament handling features of Super Street Fighter 2 Tournament Battle to SSF2X. The game allows eight players across four CPS2 cabinets to compete in three rounds of swiss. After each match, players move positions between cabinets depending on their performance.

But how did this come to be? Is this game a long lost relic, or is it a Frankenstein's monster of hackery? The answer may astound you.

Many have wondered about the network functionality of Super Street Fighter II - The Tournament Battle through out the years. We at Arcade Atavism surely had, but so had another prolific hacker you may know: Darksoft. Through a series of fortunate events, Darksoft was directed towards Arcade Atavism by our cohort Jotego, and he approached us about the possibility of unlocking the functionality in SSF2X. It was revealed that Darksoft and Misturugi-W from Arcade-Projects.com had procured and reproduced the network adapters required for Tournament Battle, and were willing to share the schematics for the network adapter and PAL (a programmable logic device) information required to get it running. We received this information with the intent to write an emulation of the adapter so that we could assess the way Tournament Battle worked, and also determine if any Tournament Battle functionality remained in 2X.

During the development of Final Fight AE CPS2 we periodically took time to develop the MAME driver. After the completion of the bulk of FFAE CPS2 development we were able to begin working on SSF2XTB in earnest. To begin our analysis, the code of SSF2TB was extracted by tracing it at run time. After sifting through what constituted the network functionality we could perform the same analysis on 2X. It was at this time it became apparent that the primary network functionality had been stripped from 2X, as connecting a network adapter to the game does not execute any extra code. However, traces of the code remained, and through that the network initialization code was found to be intact but unused. Calling the network init function will cause the "Terminal Check" screen to display, but without the missing network code, nothing more can occur.

Carefully documenting and porting the network code from SSF2TB to 2X caused the code that has been lying dormant in 2X for nearly 30 years to come to life... and what did we find?!?

Well, it works! New screens, new modes, the whole shebang comes to life and you are greeted by some very nostalgic content. By purely emergent circumstances, we even got a new title screen! However, there are many problems. Capcom clearly abandoned this feature early in the development of SSF2X. The character select screen layout is a broken remix of SSF2's, no super bars are shown, and even attempting to do a super move freezes the game. It wasn't exactly playable.

Fortunately, since we are familiar with the way Capcom writes their software and have prior experience modding it, these were relatively minor inconveniences to overcome. We reworked the character selection screen to match the layout from 2X, modified the "game states" during TB to call the original 2X game play state, fixed some bugs with sprite priority, and generally tidied up the place. One major feature that we added was the ability to play "best of 3" rounds, as the original SSF2TB was restricted to single-round matches and are almost untenable for competitive play.

A serious obstacle during development was the way the turbo feature works in 2X. A "threadlet" is being executed multiple times per frame that increments the turbo count. Consequently, the number of times the turbo value is incremented depends on how much code is executed on a given frame, which is directly related to scene complexity. As a result, any code added or removed from 2X results in a different rate of play. Additional code is being executed by the network functions, and so the game ran slightly slower than normal. To circumvent this issue a new turbo mechanism was devised and implemented that (in theory) should negate any difference in speed that changes in code path lead to. This should also solve the long standing issue of levels playing at different rates in ST/2X. We plan on releasing the turbo fix as a standalone patch for SSF2X.

That about wraps it up! The patches to enable SSF2XTB are available to all our Early Access patrons via discord. The CPS2 network adapter driver for mame can be found here:

https://github.com/originalgrego/mame/blob/master/src/mame/machine/cps2network.cpp

And a precompiled build of it can be found here:

https://www.dropbox.com/s/q74gavybv8w0wme/cps2net64.exe?dl=0

It must be added to a mame directory with the rest of the mame files, follow the directions in cps2network.cpp to launch clients/server.

We are very happy to have partenered with so many great people to bring this project to life. One final shout out to Darksoft, Mitsurugi-W, Mikado Game Center Europe, Fightcade, Texas Showdown and Texas Shottakers!

Comments (1)

t
tobemorecrazy · April 28, 2022

Thank you for the amazing work! I am so happy I have been able to contribute to the hard work you've done for these classics and your SNES work!