YesAffinity's Feed

YesAffinity
12-31-2018 at 01:26 PM
7 Comments
Rate this Entry

Street Fighter 2 - 10mhz vs. 12mhz

So, I figured I'd start something of a blog on this subject. I didn't want this information to get lost with the associated score submissions, and I want to be able to add information as time goes on, should there be things to add.


That said, where the discussion currently stands:


1) 10mhz or 12mhz A boards are allowable for Street Fighter 2' Champion Edition submissions. The official manual for CE shows dip switch banks for both the old "long" A board, which are 10mhz boards, as well as dip switch banks from the new "short" A board. Now, the dip switch bank appearance is identical between the short 10 mhz A board and the final revision 12mhz "DASH" A board. There is no delineation in the manual as to which board is being referenced in this section of the manual. BUT because the original long 10mhz board is represented AND the release of SF2CE also brought the release of the DASH A board, then we can safely assume that all compatible A boards were intended by CAPCOM to be used in conjuction with CE - original long 10mhz A board, second generation short 10mhz A board, and final revision DASH 12mhz A board.


Side note - I think this begs the question as to whether 12mhz A boards should be allowed for use with Street Fighter 2 World Warrior. The 12mhz A board didn't yet publicly exist when when the final revision of SF2WW was released.


2) It is widely believed that there are noticeable differences when playing SF2' Hyper Fighting on a 10mhz board vs. 12mhz board. These include (when played on a 10mhz A board): background music dropouts, reduced input recognition/greater difficulty executing special moves, slower gameplay. There has been at least one report (arcade-projects.com) that Final Fight benefits slightly in terms of less slowdown, when run on a 12mhz A board (FF originally came on the long 10mhz A board). I believe that SF2'CE also benefits in similar ways, when run on a 12mhz A, or suffers slightly when run on a 10mhz A board.


3) Per Leonardoliveira, a MAME dev and absolute Capcom hardware guru, input recognition is tied to raster vblanking, occuring 60 times per second, and should not be affected by clock speed, at least at the hardware level. He could not speak to how the different clock speeds might affect game code execution, or if there is some provision for this within game code.


As many of you know, I have spent quite a bit of time recently, playing SF2'CE. My efforts focused on running the game on a 10mhz A board. In the process of attemtping to push the TG high score for this particular title higher, I developed a certain routine for playing the game. I have, as of this morning, applied that routine to playing on a 12mhz A board, and am confident the below findings are true:


A) A 12mhz A board absolutely provides improved input recognition. It is night and day, compared to running the game on a 10mhz A board.

B) Playing against Ken AI - A big part of my Ken strategy includes timing fireballs to collide with Ken when he wakes up from a knock-down. When playing on a 10mhz A board, Ken will get hit by the fireball regularly - probably something around 80% of the time. When playing on a 12mhz A board, Ken will block and take the tick damage. Not once did Ken take the hit from the fireball. This is pretty significant. On 10mhz - Ken takes the hit, points are awarded, life is reduced more quickly (potentially better timer points award upon completing the round). On 12 mhz - Ken takes the tick damage, no points are awarded for that reduction of life, not as much life is reduced, victory doesn't come as quickly, less timer points upon completion of the round.

C) "Corner tricks" are also more apt to be blocked by the AI. Some examples are:

-After knocking down E. Honda in the corner, stand close, execute a well-timed standing fierce->jab dragon punch, on wakeup. This connects probably 3 out of 5 times when playing on 10mhz, didn't connect once (was blocked) out of 6 or 7 attempts when playing on 12mhz A board.

-After knocking down Vega (Claw) in the corner, a well-timed dragon punch will either connect and knock down Vega again, or Vega will do a back flip at the end of which a jab dragon punch will connect and knock down. Rinse and repeat. On 10mhz A board, on very rare occassions will Vega block the dragon punch AND immediately throw. Maybe something like 1 out of 20...it basically rarely happens in a game. On 12mhz A board, the AI blocked and threw all 3 rounds.


There were other differences that I'm certain occurred, but the above were the most pronounced, and in the case of the Vega corner trick, that's a run ender very late in the game. Not cool! :p


So, tl;dr - There are definitely differences in gameplay and AI behavior when running SF2'CE on a 10mhz A board vs. a 12mhz A board. Arguably, there are advantages when running it on a 10mhz A board.

ThanksEVN thanked this post
LikesMarc liked this post
Comments
  1. Snowflake's Avatar

    i know none of us wanna go overboard cluttering the wiki, but this is an important discussion that it shouldnt disappear on the wall. I think this would be a good use of the wiki. Maybe keep the established facts to the wiki page itself, but the discussion points in the comments until a consensus is reached.

    LikesYesAffinity liked this post
  2. EVN's Avatar

    Writing this reply on holidays on my phone so beware any ramblings that aren't well fleshed out.


    Here we are at my biggest peeve with Twin Galaxies. Track rules.


    The TL:DR of this post is - if you have poorly articulated rules then pretty much anything goes.


    I recently had a chat with @Marc who is an awesome Ghouls n Ghosts player. He was telling me that on speedrun.com the rules are pretty minimalistic. This situation we have here pretty much happened for speedrunning Ghouls n Ghosts, it has been established that the fastest runs can be done on the Japanese version of the game. So what they all do is play the Japanese version because that's what you have to do if you want to compete.


    I have never seen Twin Galaxies edit track rules after they have been established so with the rules as they are I don't see any other way forward other than to do the same thing as the speedrunning community do. Basically from now on everyone is going to be playing on a 10Mhz board with version 920313 unless someone finds some better tech.


    If you want to restrict people to a particular software version or a particular revision of the hardware then the correct time to do that is at the time the track is created. Not after some poor soul spends eight months grinding to beat a score and doing nothing against the poorly written rules.


    If someone who cared about Street Fighter 2: Champion Edition wrote the rules they might read something like:

    -Must use the last production version of the game 920803.

    -This track is for the USA ROM set (you may burn the ROMs needed from MAME sf2ceuc.zip as required). You must show the system boot up and demonstrate that you are playing the correct version.

    -You must play on a Dash CPS1 A board, the dash sticker must be clearly visible in the submission.

    -You must show the game dip switches in the service menu before or after your run. You must demonstrate that the game is set to difficulty 7.

    -etc etc etc, add good rules here that clearly articulate what is expected from someone who wishes to submit so as not to waste people's time.

    ThanksYesAffinity thanked this post
    LikesYesAffinity, Marc liked this post
  3. YesAffinity's Avatar

    All great points, Evan. We have clear definitions, to a pretty good extent, with MAME track rules. They define the romset and dip switch settings. MAME also conveniently takes care of the whole 10mhz/12mhz issue as well...to some extent. I know there was a point up to which MAME ran SF2:HF too fast. I'm not sure what code tweaks were made to correct it, but it was corrected. So possibly, even in MAME, there are advantages to running SF2CE on earlier MAME versions, as well as SF2HF on later (corrected) MAME versions.

    At any rate, where we stand currently with SF2:CE arcade, it could just be a matter of a trade-off. While I have to adjust to play on a 12mhz A board, due to having all of my recent time grinding on a 10mhz A board, that doesn't necessarily mean there's an advantage. As I've been continuing to grind on the 12mhz A board, the improved input recognition seems to be a clear advntage on its own. That advantage appears to be countered by more AI randomness/slightly less patterned behavior. It's really starting to seem to me to be a six-one-way/half-a-dozen-the-other scenario.


    I don't think we have the luxury, at least for this track, to retroactively refine the rules, as doing so could result in score removal. But, it can certainly be a lesson for future track creation.

    ThanksEVN thanked this post
    LikesEVN, Marc liked this post
  4. EVN's Avatar

    Quote Originally Posted by YesAffinity

    All great points, Evan. We have clear definitions, to a pretty good extent, with MAME track rules. They define the romset and dip switch settings. MAME also conveniently takes care of the whole 10mhz/12mhz issue as well...to some extent. I know there was a point up to which MAME ran SF2:HF too fast. I'm not sure what code tweaks were made to correct it, but it was corrected. So possibly, even in MAME, there are advantages to running SF2CE on earlier MAME versions, as well as SF2HF on later (corrected) MAME versions.


    Yeah but with MAME I doubt anyone knew what they were doing when the track was created. I bet that track is for 920313 simply because that ROM is "sf2ce.zip" in MAME.


    EDIT: Actually it's not - it's 920513 World. I wonder what the rationale for choosing that version was?


    EDIT again: I was right the first time. The ROM got renamed but when the track was created, 920313 was "sf2ce.zip".

    Updated 01-06-2019 at 12:09 AM by EVN
  5. Marc's Avatar

    This is a very interesting discussion, and thanks to @YesAffinity and @EVN for doing a lot of the investigative work and putting in the hard yards.


    As EVN mentioned regarding the speedrunning community, they for the most part allow whatever variation of the game there is in the single leaderboard for a particular game. If the community finds a particular variation has an advantage, or an advantageous bug, or even that the text in cutscenes goes faster in another language, then to stay competitive you just have to switch to the new 'fastest' variation. Otherwise, work harder on the old one to try and keep up on the leaderboard.


    There are exceptions, particularly when the community 'rallies' around a particular ruleset for a run simply because it becomes popular for example. If a new thing is discovered that obliterates that old rule set, then they may seperate the old ruleset into it's own track, and have the new devastating technique put in another track as the default (usually called any% - because you can finish the game in any way you can, whatever is the fastest no matter what goes).


    This might seem neither here nor there, or even academic. However, in my opinion, I think it is immensely powerful in the way in which the 'platform' (in this instance I'm using platform to describe a community - one platform would be Twin Galaxies, one would be speedrun.com) can be perceived in the eyes of the general public.


    This is because of one simple reason. On speedrun.com you can say you have the world record on a game and the conversation pretty much ends there (because the any% category is the catch all, any other 'tracks' or specific rules are offshoots). Joe Public hears that and understands that Mr Steve Run has the world record on the game and that's cool, roll on the fanfare. On Twin Galaxies if Joe Public hears Mr Tim Galleries has the world record on a particular game, Tim - when questioned on the news in an interview for example - might have to start explaining that he in fact holds the world record on the Italian version, with the 1.23 romset, and with the dip switch settings set to Hard, and that Ms Tilly Galway has the world record on the 1.24 romset on another leaderboard. You can already see the newsreaders eyes glazing over and not understanding what Tim is talking about. "But you have the world record right?", to which Tim replies "well it depends which version you're talking about....".

    So having a number of seperate specific rulesets for each game muddies the waters. It's also, in my opinion, a slippery slope - where do you stop in the specifics? And when you get to the incredibly fine grained specifics, how do you prove, without scientists and various microscopes and DNA testing, that those specifics are really being met? As the granularity becomes more and more granular, it becomes more and more hard to adjudicate, and more and more confusing for anyone on the outside trying to make sense of it all.


    This example here - of the 10mhz and 12mhz debate - is a great example, and I think a good example of why you wouldn't want to start splitting the leaderboard due to the differences discovered. I just don't see how it helps anyone. Would you really want to be known as the '10mhz world champion', while another guy / gal is known as the '12mhz World Champion'? Try and explain that one to the media! It's a cool debate for us nerds, but it doesn't help recognition, or even Twin Galaxies as a whole because no one else understands what's going on.


    Again, all this is my opinion. There are many opinions to the contrary!

    LikesYesAffinity liked this post
  6. GibGirl's Avatar

    Quote Originally Posted by Marc

    This is a very interesting discussion, and thanks to @YesAffinity and @EVN for doing a lot of the investigative work and putting in the hard yards.


    As EVN mentioned regarding the speedrunning community, they for the most part allow whatever variation of the game there is in the single leaderboard for a particular game. If the community finds a particular variation has an advantage, or an advantageous bug, or even that the text in cutscenes goes faster in another language, then to stay competitive you just have to switch to the new 'fastest' variation. Otherwise, work harder on the old one to try and keep up on the leaderboard.


    There are exceptions, particularly when the community 'rallies' around a particular ruleset for a run simply because it becomes popular for example. If a new thing is discovered that obliterates that old rule set, then they may seperate the old ruleset into it's own track, and have the new devastating technique put in another track as the default (usually called any% - because you can finish the game in any way you can, whatever is the fastest no matter what goes).


    This might seem neither here nor there, or even academic. However, in my opinion, I think it is immensely powerful in the way in which the 'platform' (in this instance I'm using platform to describe a community - one platform would be Twin Galaxies, one would be speedrun.com) can be perceived in the eyes of the general public.


    This is because of one simple reason. On speedrun.com you can say you have the world record on a game and the conversation pretty much ends there (because the any% category is the catch all, any other 'tracks' or specific rules are offshoots). Joe Public hears that and understands that Mr Steve Run has the world record on the game and that's cool, roll on the fanfare. On Twin Galaxies if Joe Public hears Mr Tim Galleries has the world record on a particular game, Tim - when questioned on the news in an interview for example - might have to start explaining that he in fact holds the world record on the Italian version, with the 1.23 romset, and with the dip switch settings set to Hard, and that Ms Tilly Galway has the world record on the 1.24 romset on another leaderboard. You can already see the newsreaders eyes glazing over and not understanding what Tim is talking about. "But you have the world record right?", to which Tim replies "well it depends which version you're talking about....".

    So having a number of seperate specific rulesets for each game muddies the waters. It's also, in my opinion, a slippery slope - where do you stop in the specifics? And when you get to the incredibly fine grained specifics, how do you prove, without scientists and various microscopes and DNA testing, that those specifics are really being met? As the granularity becomes more and more granular, it becomes more and more hard to adjudicate, and more and more confusing for anyone on the outside trying to make sense of it all.


    This example here - of the 10mhz and 12mhz debate - is a great example, and I think a good example of why you wouldn't want to start splitting the leaderboard due to the differences discovered. I just don't see how it helps anyone. Would you really want to be known as the '10mhz world champion', while another guy / gal is known as the '12mhz World Champion'? Try and explain that one to the media! It's a cool debate for us nerds, but it doesn't help recognition, or even Twin Galaxies as a whole because no one else understands what's going on.


    Again, all this is my opinion. There are many opinions to the contrary!


    All this has inspired me to add another feature request to the wiki list I've started:

    https://www.twingalaxies.com/wiki_index.php?title=List-of-Feature-Requests-Suggestions


    "Subcharts", a track that is a subcategory of another, and all the sub-scores roll up into the larger one. So that we can have both the differentiation of the individual differences, and those interested can dig in, but they get combined into a leaderboard that allows seeing which are the best overall.

    LikesSnowflake, Marc, YesAffinity liked this post
  7. Marc's Avatar

    Awesome, thanks @GibGirl - I'd support such a feature.


    I forgot to add a concrete example of a mixed leaderboard on speedrun.com so you can see how it works. The most obvious example for me is a game I run myself, Ghouls'n Ghosts: https://www.speedrun.com/Ghouls_n_Ghosts#Any_Arcade

    Here you can see that the Arcade Any% category has a large number of variations all existing on the same leaderboard. You have the Japanese Mame variation (regarded as the fastest in the community, due to Japanese having the fastest cut scenes (text goes faster), and Mame not having the lag that affects PCB hardware), you have the Japanese PS2 version (arcade conversion), USA Mame variation, and the one I run, which is the Japanese Arcade PCB.

    The different versions don't just have a couple of differences in how fast they run either. For example, the USA variation is vastly easier - it has more checkpoints on death, easier and slower enemies, and more armour spawns. But even though it's a lot easier, it's still slower than just surviving in the much harder Japanese version.


    LikesYesAffinity liked this post
Join us