Re-record count is inaccurate, as rewind was mostly used.
Takes damage to save time. Death was used to save time. Heavy use of glitches. Skips levels
When you reach a miniboss or boss, there is a chance they will glitch if too many sprites are present, as shown in Alyosha & Kyman's run in level 6's boss, or become even glitchier if you activate a boss fight while enemies are exploding.
I am not sure how this works exactly, or how to make this reliably, but RAM address 0x0089 might be of use.
The items that the miniboss spawns in level 2 seem to increase the current level i am in, effectively skipping all of level 3, and putting me past the end of level 4, out of bounds. Luckily there was floor there all the way to the boss.
Glitching bosses like that only works for minibosses, or bosses that explode. Bosses that collapse will only spawn in weird locations no matter what, and still have full health.
Trying to glitch other exploding minibosses will not be worth your time, as the items that will spawn will have no helpful effect. For example, the 3 mini-bosses in level 6 will spawn items that will increase your HIT count by 1, 10, or 100, in that order.
Thanks to Alyosha & Kyman for the boss quick-kill death glitch!

Samsara: Judging.
CasualPokePlayer: Judging...
CasualPokePlayer: Setting to delayed per author request.
CasualPokePlayer: Well, can't delay this forever, so, judging...
CasualPokePlayer: At a glance, this movie looks very well optimized. For that, I would say well done Lucky Bacon! However, comparing this movie with the published run shows minor execution issues here and there. It's not terribly obvious, nor does it distract from the great improvement this run is over the published run. These issues can't really be fixed without just outright redoing the movie, so this seems fine. The author has also stated they have found new skip that would save several minutes too, but of course this would requiring redoing the entire movie, so this isn't something to reject over.
Given this, I say this movie is acceptable.
fsvgm777: Processing.


MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
Encode of your original submission movie with my HUD script enabled: Link to video (the actual framecount is 22173 but I've recorded through my TAStudio project which had 3 appended frames at the end) HUD script used: User movie #73265863092820188 edit: started to assemble a gameresource page here: Wiki: GameResources/NES/FistOfTheNorthStar Timesheet: https://docs.google.com/spreadsheets/d/1GvTYgRjMsYSk8Jt3U8HjL7OphKcUWiGyy1YvzwCwFW8/edit?usp=sharing WIP 5 uses different position to sacrifice for a better 2 enemy scenario for the first miniboss camx pos double exploding enemy glitch.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Player (36)
Joined: 5/15/2010
Posts: 15
So i found this snippet of code, that seems to handle what happens with which powerups.
Language: lua

00:AF91:A6 8A LDX $008A = #$05 ;--PowerUp Number 00:AF93:CA DEX 00:AF94:F6 EA INC $EA,X @ $00EE = #$00
Since each minibosses seem to be able to spawn a powerup in incrementing value, that means, if we had enough of them, we could have another go at incrementing levels... in a way. Power up 16 will increment $FF, which is the address used if you want to continue after a game over. But we don't have that many minibosses. But the adresses normally written by the powerups ($EA - $EC) don't actually seem to have any impact on the game.
MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
Currently I believe the powerups also functions as other visual stuffs, considering that the 0x70 is the "open a door" animation used in the later stages as screen transitioning. More addresses with explanations: (later they will be added to the gameresource page) Main boss hp 0x6a --> seems to always load 56 for every main boss Mini boss state 0x6b --> Animation state (Door) 0x72 Animation state (Main boss, enemy slot 0) 0x78 EA, EB: garbled enemy sprite, no effect EC: first enemy (from stage 1, level 0) sprite ED, EE: No sprite, but doesn't gets removed on its own EF: garbled enemy sprite, no effect F0: Kenshiro lying (dead), no effect F1: garbled enemy sprite, no effect F2: Kenshiro standing, no effect F3: Main boss #1 F4: garbled enemy sprite, no effect edit: F5: Kenshiro ducking punching, no effect F6: nothing, gets removed fast F7: garbled enemy sprite, no effect F8: nothing, gets removed fast F9: No sprite, but doesn't gets removed on its own FA: Kenshiro standing kicking, unpickable power up FB: Garbled Kenshiro, no effect FC, FD, FF: No sprite, but doesn't gets removed on its own FE: Garbled boss sprite, no effect Regarding the snippet of code: Line 1: X = 0x8A's value == 5 Line 2: X = X - 1 == 4 Line 3: 0xEE = 0xEA + X == 0 I'm not sure if I'm right about the last line, will revisit a bit later
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Player (36)
Joined: 5/15/2010
Posts: 15
The "Powerup" address is what controls the Enemy ID. 00-03 Will be a level's normal enemy. 04-09: Minibosses in order. Changing that value will change their behaviour. 0A-11: Bosses in order. Changing that value will change their behaviour. However, Bosses will always spawn with ID 0F. When they are ID 0F, their behaviour will change depending on what level you are in ($EE) The rest are just glitchy bosses with odd animations, attack patterns, hitboxes. EDIT: Current time, up to the end of level 6. Note that i changed "miniboss end (99)" to "miniboss end (Camera unlocked)", since the level timer does not always immediately get set to 99 on miniboss end. In level 6, it took quite a number a frames to show 99, way after the camera started to move. S: 23 1st level start (colors ready): 183 1st miniboss start (boss shown): 1315 1st miniboss end (Camera unlocked): 1440 1st boss start (boss shown): 2728 1st boss end (lag frames): 2854 2nd level start (colors ready): 3004 2nd miniboss start (boss shown): 4707 2nd miniboss end (Camera unlocked): 4825 4th boss start (boss shown): 6107 --This was the true time i was supposed to put in my last post. 6007 was when the boss was activated, but not shown. My bad! 4th boss end (lag frames): 6344 5th level start (colors ready): 6526 5th boss start (boss shown): 10255 5th boss end (lag frames): 10474 6th level start (colors ready): 10657 6th miniboss #1 start (boss shown): 13268 6th miniboss #1 end (Camera unlocked): 13572 Other 2 minibosses were skipped!! 6th boss start (boss shown): 14484 6th boss end (lag frames): 14743 Level 6 is so cramped, most of the time, its impossible to get past those "camera lag" moments. Some of the lag even prevented the camera to move for up to 5 frames! 7th level start (colors ready): 14826[/b]
MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
Good job! Yes we need to change the comparison points to be more precise. Level timer 99 My latest hud script here: User movie #73353016102155940 (will upload and add to this post soon) uses gui.pixelText(120,8,string.format("%d%d", memory.readbyte(0x65), memory.readbyte(0x64))) 0x65 the first digit of timer for example 9, 0x64 the second digit of timer for example 9, 8, 7, 6... you know. Powerup address being the enemy ID Okay, this makes sense, will do some tests today. Yes, main bosses seems to be always F and have different gameplay than normal minibosses which seems to be normal enemies. The rest of the values (past F) seems to be the result of how the game works. Imagine something like the ROM having the following regions [enemy data] [level data] [sprites] where using more than F probably reads from another region. edit: For example the enemy data might only contains 15 entries, so reading from enemy data 16 would read from the offset (position) over the end of it's region, reading from another region. Times Updated the timesheet a lil bit with your post' numbers. WIP5 which uses a different kind of position sacrifices to get a little better 2 enemy position before 1st miniboss for double exploding boss glitch User movie #73353048780342013 edit 1 for this post: I will continue researching on Tuesday or Wednesday. Note that while it's good to have a movie with so many (frames) improvements than this submission, the movie will probably desync, so we will use -- your new WIP -- movie as comparison points and when we are about to continue from 1st miniboss end. (As soon as we can come up with a way to verify the potentially best movement/time sacrifices to manipulate the position of 2 enemies before starting a boss fight), we can add entertainment relevant stuffs as well as trying to improve each part of your newer WIP. final... edit: Our new strategy so far (Applies to both Hokuto no Ken 2 and Fist of the North Star, but we are probably going to use the USA version. Will start with checking up the version differences and edit the gameresource page) Stage 1 (level 0) - Manipulate two enemies as close as possible to the first mini boss cam x position 1792 - First mini boss double explode - Manipulate two enemies as close as possible to the final boss cam x position 3840 - Final boss double explode Stage 2 (level 1) - This level has 3 stairs, which increases our cam x position greatly: (cam x position in previous room, cam x position in next room) from 1070 to 1560 from 1794 to 2304 from 2200 to 2816 - This level might be improvable with using damage boosting if possible. This depends on how far we need to scroll the camera and how many time sacrifice required for projectiles and/or enemies boosting us as fast as possible. - Manipulate two enemies as close as possible to the first mini boss cam x position 3328 - First mini boss double explode, pick up glitched next level power ups for Stage 4 (level 3) Stage 4 (level 3) - Going back to the left to start boss fight and double ko The remaining stages seems to be all rely on the previously mentioned strategies. Boss fights where enemies don't spawn will use double ko, while others will do double exploding glitch.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
I've made my researches and the USA should be used because of those long cutscenes in the Japanese version. I will finish polishing my Lua script tomorrow (Saturday) and try to get an optimal as possible version of Stage 1 with the least amount of position/time sacrifices to get double explosion glitch for both miniboss and main boss. And also will write down Alyosha and Kyman's TAS to compare us against it with correct, precise comparison points.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Player (36)
Joined: 5/15/2010
Posts: 15
I'm sorry if i am not saying much, but i barely have free time on the weekdays to do stuff.
MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
It's not a problem if we don't work on this that actively, I'm still trying to figure out how does the spawn system works. - It looks like they are based on cam x poses and they can be avoided by waiting ~18 frames. - Enemy direction before spawning depends on cam x (Kenshiro+camera) pos - Since only 2 enemy slot exists, this leads to N spawn positions / levels where most of them are blocked/avoided by running constantly forward while the 2 slots are being used - 2nd enemies don't always spawn, just because it's slot is free. Currently my WIP6 level 99 timer for first level is 1387. Ideally we would just spawn 2 enemies right before entering a boss fight, so we wouldn't need to alter any other enemies. However they spawn and might be way too much behind us to let an enemy spawn in front of us, or even two.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Samsara
She/They
Senior Judge, Site Admin, Expert player (2108)
Joined: 11/13/2006
Posts: 2821
Location: Northern California
Any updates on the improvement?
TASvideos Admin and acting Senior Judge 💙 Currently unable to dedicate a lot of time to the site, taking care of family. Now infrequently posting on Bluesky
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
MESHUGGAH
Other
Skilled player (1916)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
I haven't worked on this since my last post and I believe neither Lucky Bacon. Despite it looks "simple" to continue and finish our collaboration, I think the TAS is not hex edit friendly and it would take much more time to incorporate it (as I've tried) in to the original submission. My own personal opinion would be accept the original submission for the reason of currently known fastest TAS to complete the game. The improvements being added is a quest for the future. This being said, I guess Lucky Bacon the original author should also chime in.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Player (36)
Joined: 5/15/2010
Posts: 15
Our current project WILL save a couple of minutes from my run thanks to a new skip discovered, but i will not be able to work on it for a little more while. Its a shame it had to be such a bad timing with me requesting to pause the judging, right before i had to be even busier than i thought. The run can be accepted if you wish. I apologize for the very long absence, i just had too much on my mind.
Skilled player (1670)
Joined: 7/1/2013
Posts: 447
Lucky Bacon wrote:
Our current project WILL save a couple of minutes from my run thanks to a new skip discovered
Neat! I am looking forward to it.
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15543
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [4563] NES Fist of the North Star by Lucky_Bacon in 06:08.94