Author Topic: DK Revision Comparisons  (Read 8298 times)

0 Members and 1 Guest are viewing this topic.

Offline YesAffinity

  • Spring Jumper
  • *
  • Posts: 578
    • Awards
DK Revision Comparisons
« on: July 13, 2017, 09:00:48 pm »
Okay fellas, brace yourselves.  Below is video of a sampling of levels I took from a run performed on native TKG4-11 code, and a run performed on Braze High Score Save Kit kid (which the High Score Save folks say is US Set 1).

I haven't done anything fancy with the video other than put in some lame transitions.  If you want to truly see the frame-by-frame difference, you will need to download the video and view in a viewer that allows stepping by frame.  If anyone would like the video sent to them, PM me, I will send it via a file sharing app.


In all clips, TKG4-11 is on the left, Braze HSS is on the right.  Same game board, cab, etc. in all clips.  TKG4-11 video recorded on 7/9/17, Braze HSS video recorded on 7/12/17

Details are in order of the levels as they appear:

L1-2
Both clips were taken starting with the first frame that Donkey Kong appears on the screen
The first firefox on Braze HSS code appears 60 frames/1 second sooner than the first firefox appears on TKG4-11 code

L2-3
Both clips were taken starting with the first frame that Donkey Kong appears on the screen
The first firefox on Braze HSS code appears 40 frames/two-thirds of a second sooner than the first firefox appears on TKG4-11 code
The second firefox on Braze HSS code appears 40 frames/two-thirds of a second sooner than the first firefox appears on TKG4-11 code

L3-1

Both clips were taken starting with the first frame that the counter appears on the screen, which is 1 frame before Donkey Kong appears
On the last barrel that I captured, which was the 6th barrel, DK turns 1 frame sooner on Braze HSS code

L4-2
Both clips were taken starting with the first frame that Donkey Kong appears on the screen
The fireballs spawn 13 frames sooner on the TKG4-11 code.  This is true for all fireballs.

L5-3
Both clips were taken starting with the first frame that the counter appears on the screen, which is 1 frame before Donkey Kong appears
By the 6th barrel, DK turns to release the barrel 6 frames sooner on Braze HSS code
There are also some deviation between timing of the timer countdown between both sets of code, which swings both directions.  By the 6th barrel, it appears the Braze HSS timer is counting down more quickly.

L6-4
Both clips were taken at 7700 on the timer, with an elevator platform just starting to appear on the left elevator.
Follow that elevator until it disappears from the screen, and you will see the Braze HSS elevator disappears 1 frame sooner
Kinda weak, I admit, maybe there's other differences you guys will see.
Matthew 21:22

DK Arcade PB (verified): 970,200 KS
DK Start PB (verified): 126,600
DK L1-1 PB (verified): 11,400
DK PB 1st Man: 622,000

Donkey Kong Direct Feed How-To - http://donkeykongforum.net/index.php?topic=1413.0
^Now outdated, see instead: http://donkeykongforum.net/index.php?topic=2471.0
Member for 9 Years DK Killscreener Blogger Twitch Streamer

Offline Sock Master

  • Elite Member
  • *
  • Posts: 378
    • Awards
Re: DK Revision Comparisons
« Reply #1 on: July 13, 2017, 10:43:31 pm »
I think I see what's going on here.

If you were to play over and over to get many comparisons, sometimes one ROM set will spawn the firefoxes sooner on a given stage and sometimes the other ROM set will spawn the firefoxes sooner.  But it'll vary which of the two sets is the faster.  Both should end up averaging the same overall, though.

There are two timers.  One we see - the bonus timer.  And one we don't see directly - which is internal and used to generate the spawn intervals.

The one we don't see keeps running continuously - looping from 0 to 255 over and over.  It keeps running even during hammer smashes (the main/bonus timer pauses during hammer smashes).   But there is a visible cue about this timer's state..  It's also used to derive the blink of the "1UP" above the player's score.

The firefox/fireball spawn rates change depending on internal difficulty but is still derived from this timer.  At internal difficulty 1, a firefox can spawn every time the timer rolls over back to 0 - or one spawn every ~4.2 seconds.   At internal difficulty 2 a firefox can spawn when the lowest 7 bits of the timer roll back to 0 - or one spawn every ~2.1 seconds.   Lowest 6 bits for internal difficulty 3, etc..

Because the timer runs continuously that means it doesn't start from zero at the start of a new stage.  It'll carry-over whatever value it happened to contain previously at the end of the last stage.  This is why some players look at the blinking "1UP" and wait before finishing the stage - to influence the spawn timer of the next stage.

If you end a stage at just the right moment (but you don't have full information to go on, just the blinking 1UP), you can force the game logic to give you a longer time before the first spawn.  If you smash something with the hammer at just the right moment you can also force the game logic to miss a spawn point and make it take longer before the next firefox spawns.

Kong's barrel release animation sequence also has a bit of random variation added into the delays between his animation frames, so he won't necessarily release barrels at exactly fixed, predictable intervals.
"Badges? We ain't got no badges. We don't need no badges. I don't have to show you any stinkin' badges!"
Member for 8 Years snek IGBY 2016 DKF Team Member Twitch Streamer

Offline YesAffinity

  • Spring Jumper
  • *
  • Posts: 578
    • Awards
Re: DK Revision Comparisons
« Reply #2 on: July 14, 2017, 05:48:39 am »
Maybe, but I can say for certainty, the earlier spawning of firefoxes on the riviots <Allen> is consistent on the BHSS code, from L1-2 on.  Firefoxes spawning on the left before jumpman can ascend the middle ladder is uncommon on levels 1-3 on native TKG4-11 code.  It has been a certainty on BHSS code.

The presence of doubled-up pies on the conveyor level is also more consistent on the BHSS.  I can't remember the last time I saw unjumpable pies on native code.  In fact, I watch for it from time to time, right as a pie is leaving the screen and the direction is about to change.  It is frequent on the BHSS code.

Also worth mentioning, jumpman appears on the screen at the start of the level at the same time, on both versions.  There's a 1 frame variation on a couple of the samples, which I think is an acceptable margin of error.

I think it's worth a deeper dive, but not necessarily with the hardware I have on hand.  I would like to get a legit TKG4-14 set to test further with.
Matthew 21:22

DK Arcade PB (verified): 970,200 KS
DK Start PB (verified): 126,600
DK L1-1 PB (verified): 11,400
DK PB 1st Man: 622,000

Donkey Kong Direct Feed How-To - http://donkeykongforum.net/index.php?topic=1413.0
^Now outdated, see instead: http://donkeykongforum.net/index.php?topic=2471.0
Member for 9 Years DK Killscreener Blogger Twitch Streamer

Offline YesAffinity

  • Spring Jumper
  • *
  • Posts: 578
    • Awards
Re: DK Revision Comparisons
« Reply #3 on: July 15, 2017, 05:57:53 am »
Well Sock Master, I have to admit that you are right on all points, and maybe there really is no difference in the gameplay.  I swear with the Braze HSS kit, it just feels harder, and/or the averages are learning toward less favorable (for me, the player) AI behavior.  I was able to produce a "typical" (what is typical for me/my games) later spawning of the first firefox on riviots L1-2, on the HSS code, so I cannot say absolutely that firefoxes spawn earlier as a rule.

At any rate, I'm willing to admit if I'm wrong.

But, I'd like to do some further testing and put the final nail in my idea coffin.  How would I firmly prove/disprove that there truly is no difference and the problem is more likely that I'm just generally bad at the game, and currently in one of those ruts where I'm performing exceptionally poorly on average?   :P  :'( I'm thinking I would need to do no hammer runs on various levels, and run them out to the end of the timer.  Compare the ending of the level.  Since hammer affects the on-screen timer and duration of the level, no hammer should keep the level duration consistent?  Then compare the run-through's side-by-side to see if there is any speed difference.

Past that it seems with all the randomness, there is no quick answer to whether there is some added difficulty between the two test subjects.  Averages of course could shed some light, but that seems like it would need to be an ongoing data gathering effort.  Assuming every time I do a run, I then go harvest data, what kind of data would be useful?  Number of barrels released by Kong on barrel levels at xxxx on the timer (4000 or less, so at least half of the potential releases are accounted for and giving a good sample)?  Average number of wild barrels per total barrel releases?  Number of platforms ascending the left elevator by xxxx on the timer (again, around the mid-way point of the maximum countdown, at a minimum)?

Number of pies that have appeared on screen by xxxx on the timer?  How many times pies come from the left or right upper conveyors?  (I have noticed what I believe to be a significantly greater likelihood that pies come out right as I reach the upper right conveyor, on the BHSS code...but again, it could all be in my head).
Matthew 21:22

DK Arcade PB (verified): 970,200 KS
DK Start PB (verified): 126,600
DK L1-1 PB (verified): 11,400
DK PB 1st Man: 622,000

Donkey Kong Direct Feed How-To - http://donkeykongforum.net/index.php?topic=1413.0
^Now outdated, see instead: http://donkeykongforum.net/index.php?topic=2471.0
Member for 9 Years DK Killscreener Blogger Twitch Streamer