Introduction

Ninja Gaiden 2 is the sequel to that ninja game where you have to run fast and kill everything to win. In this case, you also need to run fast and kill everything to win.
This movie was started by Scumtron a while ago, saving 70 frames compared to the currently published movie. The work has continued by eien86, using a bot to analyze all stages of the game to find 4 additional saved frames (plus one false frame).

Software + Hardware

Rom Information

  • Name: Ninja Gaiden II: The Dark Sword of Chaos (USA)
  • SHA1: 951A19474A1D9C2984F3D966FBC41C0F0360105E
  • MD5: 2EC92E60E033B4D8AA5CAA6B1F7838B5

Emulator

  • EmuHawk 2.8.0 (Core: NesHawk)
Resynchronized from the initially submitted [EmuHawk 2.7.0 + QuickNES] movie by eien86, using Scumtron's DPCM glitch detection tool, available here.

Routing Bot

  • Bot: Jaffar
  • Routing Core: QuickNES
  • Platforms:
    • AMD Ryzen Threadripper 3990X Processor (64 cores, 128 threads) + 256Gb RAM (Average Exploration Performance: 1.4M States/s)
    • 2 x AMD EPYC 7742 Processor (128 cores, 256 threads) + 512Gb RAM (Average Exploration Performance: 2.7M States/s)

Comparison Movie

Here is a per-level comparison between this movie and the currently published TAS:

Timing

Criteria

We use the following addresses for timing:
0x01FE - Game Mode
0x007E - Current Stage
0x0081 - Boss HP
0x04C0 - Final Boss Head Status
And the following criteria:
  • Boot: Starting game sequence, including boot, pressing Start, and transitions.
  • Stage #: Starting when (Game Mode) == 68
  • Transition: After a normal stage, transition starts when (Game Mode) == 147, or; during a boss fight, when (Boss HP) == 0
  • Head Dead: Happens when the last boss' death is defeated (Final Boss Head Status) == 16
  • Movie End: The frame of the last button press

Time Table

Here is a time table comparing frame timing between this movie and the published TAS:
             New               Old              Diff
Stage      Initial   Total   Initial   Total    Stage  Total
Boot       0       141      0        141      0        0
0          141     1675     141      1675     0        0
Transition 1816    21       1816     21       0        0
1          1837    121      1837     121      0        0
Transition 1958    21       1958     21       0        0
2          1979    279      1979     279      0        0
Transition 2258    200      2258     200      0        0
3          2458    136      2458     138      -2       -2
Transition 2594    380      2596     380      0        -2
4          2974    1982     2976     1982     0        -2
Transition 4956    68       4958     68       0        -2
5          5024    871      5026     871      0        -2
Transition 5895    21       5897     21       0        -2
6          5916    986      5918     987      -1       -3
Transition 6902    20       6905     20       0        -3
7          6922    278      6925     304      -26      -29
Transition 7200    200      7229     200      0        -29
8          7400    91       7429     94       -3       -32
Transition 7491    380      7523     380      0        -32
9          7871    1994     7903     1997     -3       -35
Transition 9865    68       9900     68       0        -35
10         9933    441      9968     442      -1       -36
Transition 10374   20       10410    20       0        -36
11         10394   464      10430    464      0        -36
Transition 10858   21       10894    21       0        -36
12         10879   466      10915    467      -1       -37
Transition 11345   20       11382    20       0        -37
13         11365   476      11402    478      -2       -39
Transition 11841   21       11880    21       0        -39
14         11862   317      11901    318      -1       -40
Transition 12179   68       12219    68       0        -40
15         12247   117      12287    121      -4       -44
Transition 12364   380      12408    380      0        -44
16         12744   996      12788    1004     -8       -52
Transition 13740   21       13792    21       0        -52
17         13761   194      13813    194      0        -52
Transition 13955   21       14007    21       0        -52
18         13976   1134     14028    1135     -1       -53
Transition 15110   68       15163    68       0        -53
19         15178   771      15231    773      -2       -55
Transition 15949   20       16004    20       0        -55
20         15969   455      16024    457      -2       -57
Transition 16424   21       16481    21       0        -57
21         16445   1143     16502    1145     -2       -59
Transition 17588   200      17647    200      0        -59
22         17788   97       17847    98       -1       -60
Transition 17885   380      17945    380      0        -60
23         18265   440      18325    440      0        -60
Transition 18705   68       18765    68       0        -60
24         18773   752      18833    752      0        -60
Transition 19525   21       19585    21       0        -60
25         19546   419      19606    419      0        -60
Transition 19965   75       20025    75       0        -60
26         20040   1158     20100    1158     0        -60
Transition 21198   21       21258    21       0        -60
27         21219   122      21279    122      0        -60
Transition 21341   21       21401    21       0        -60
28         21362   1136     21422    1136     0        -60
Transition 22498   163      22558    163      0        -60
29         22661   77       22721    77       0        -60
Transition 22738   380      22798    380      0        -60
30         23118   620      23178    620      0        -60
Transition 23738   21       23798    21       0        -60
31         23759   88       23819    88       0        -60
Transition 23847   21       23907    21       0        -60
32         23868   1142     23928    1142     0        -60
Transition 25010   74       25070    74       0        -60
33         25084   979      25144    979      0        -60
Transition 26063   200      26123    200      0        -60
34         26263   284      26323    286      -2       -62
Transition 26547   380      26609    380      0        -62
35         26927   772      26989    772      0        -62
Transition 27699   21       27761    21       0        -62
36         27720   112      27782    112      0        -62
Transition 27832   21       27894    21       0        -62
37         27853   601      27915    601      0        -62
Transition 28454   21       28516    21       0        -62
38         28475   69       28537    69       0        -62
Transition 28544   20       28606    20       0        -62
39         28564   430      28626    430      0        -62
Transition 28994   74       29056    74       0        -62
40         29068   830      29130    841      -11      -73
Transition 29898   21       29971    21       0        -73
41         29919   74       29992    74       0        -73
Transition 29993   21       30066    21       0        -73
42         30014   782      30087    783      -1       -74
Transition 30796   21       30870    21       0        -74
43         30817   151      30891    151      0        -74
Transition 30968   21       31042    21       0        -74
44         30989   490      31063    490      0        -74
Transition 31479   162      31553    162      0        -74
45         31641   122      31715    122      0        -74
Transition 31763   467      31837    467      0        -74
46         32230   104      32304    104      0        -74
Transition 32334   468      32408    468      0        -74
47         32802   55       32876    55       0        -74
Head Dead  32857   225      32931    225      0        -74
Movie End  33082            33156                      -74

Credits

  • Scumtron: Biggest contributor to this movies' saved frames and routing.
  • eien86: Added the last 4 frames (plus one false frame), did the resync, the timing, the comparison movie, and wrote these notes
  • Previous Authors: J.Y, Aiqiyou, Xipo, Samsara, Josh the FunkDOC, and stx-Vile for their collective contribution to this TAS over the years
  • Ninja Gaiden 2 Discord Community who supported this and previous efforts

GoddessMaria: Claiming for judging.
GoddessMaria: Excellent work by the authors in their collaborative efforts to improving a tight movie even more without sacrificing entertainment.
Accepting as an improvement to the previous movie.

EZGames69: Processing...


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15619
Location: 127.0.0.1
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3826)
Joined: 11/30/2014
Posts: 2834
Location: US
Another Ninja Gaiden improvement nice! Again thanks for putting in the effort to make it work in NESHawk, those DPCM effects do matter for accuracy. Hopefully you don't have to encounter a case where the conversion isn't possible, that would be a shame, but I guess we can cross that bridge if we ever come to it. Anyway I'll work on a verification eventually if no one else gets to it first. Great work!
Player (154)
Joined: 5/1/2006
Posts: 150
So here is the file I wanted to submit: https://tasvideos.org/UserFiles/Info/638004523001742569
Alyosha wrote:
Hopefully you don't have to encounter a case where the conversion isn't possible, that would be a shame, but I guess we can cross that bridge if we ever come to it.
At least with this series it's likely even in the trickiest cases that going back and changing some earlier input can affect bit deletion on a problem frame. And if speed were the only concern, then it's hard to imagine a truly unfixable situation.
eien86
He/Him
Judge, Skilled player (1886)
Joined: 3/21/2021
Posts: 262
Location: Switzerland
Scumtron wrote:
https://tasvideos.org/UserFiles/Info/638004523001742569
To avoid confusion, @GoddessMaria: the movie file above is a proposal for an alternative ending that ends the proper game faster and might one day become a viable strat. However, it does not produce a faster movie than the one submitted, so please do not replace it.
Player (154)
Joined: 5/1/2006
Posts: 150
I quit.
Memory
She/Her
Site Admin, Skilled player (1558)
Joined: 3/20/2014
Posts: 1767
Location: Dumpster
Scumtron wrote:
I quit.
???
[16:36:31] <Mothrayas> I have to say this argument about robot drug usage is a lot more fun than whatever else we have been doing in the past two+ hours
[16:08:10] <BenLubar> a TAS is just the limit of a segmented speedrun as the segment length approaches zero
aiqiyou
He/Him
Skilled player (1829)
Joined: 8/4/2018
Posts: 95
Location: China
On 2021/10/29, we submitted the TAS in 33157 frame of NG2. In the days that followed, Scumtron explained new points of improvement. Then our submission was delayed for judge. During that period of time, I had some communication with Scumtron and finally determined the presentation of the TAS. It integrates part of our videos.A month later, Scumtron submitted an unlisted WIP in 33089 frame. The link is: https://tasvideos.org/userfiles/info/75845227782432718 Later, I asked Scumtron if he could submit the latest TAS. But he said he was still pounding away at this TAS. In order to respect his opinion, we did not update this unpublished WIP to our submission. In February this year, Samsara said that: It's been three months. This has waited long enough. If the improvement ever gets finished, it'll have to be a new submission. Accepting this as an improvement to the published run in the meantime. This year, I spent a lot of time on other games and completed some new TAS. When I saw that the TAS of NG2 was submitted again, I was surprised. I thought that Scumtron had found a new partner and was promoted. But when I saw the frame number of the video, it was so close to the previously unpublished WIP. If we had originally submitted 33089 frames TAS, then eien86 might have been improved by only a few frames. So my first question is whether it is reasonable to keep only the names of Scumtron and eien86 here. What's more, Scumtron delete his own name now. Therefore, only eien86 is left in the current submission. This seems to be the case under the current rules. The right to speak is always in the hands of those who finally discover ascension. Of course, I still respect Scumtron's opinion here. Because in my mind, he will always be the person who has made the greatest contribution to NG2 TAS.
eien86
He/Him
Judge, Skilled player (1886)
Joined: 3/21/2021
Posts: 262
Location: Switzerland
This is something that can happen when a non-public WIP is delayed for a long time on a competitive game such as this. Therefore, I can totally empathize with Aiqiyou and J.Y.'s position. I also empathize with Scumtron, which is one of the most talented and perfectionistic TASers on this site. I hope someone will empathize with me as well: I just want to bring this work to light for everyone to enjoy. I defer to the judge(s) the decision of defining who the authors should be and which order they should be placed. Whatever the case is, I think Scumtron has to be in first place. I am fine being placed in any other position.
aiqiyou
He/Him
Skilled player (1829)
Joined: 8/4/2018
Posts: 95
Location: China
eien86 wrote:
This is something that can happen when a non-public WIP is delayed for a long time on a competitive game such as this. Therefore, I can totally empathize with Aiqiyou and J.Y.'s position. I also empathize with Scumtron, which is one of the most talented and perfectionistic TASers on this site. I hope someone will empathize with me as well: I just want to bring this work to light for everyone to enjoy. I defer to the judge(s) the decision of defining who the authors should be and which order they should be placed. Whatever the case is, I think Scumtron has to be in first place. I am fine being placed in any other position.
This reminds me of my NES Jackal 2 players TAS with zyr2288. When I mentioned in Submission #6640, I improved 355 frame with zyr2288's 2 player TAS, which wasn't submitted it on TASV. ThunderAxe31 asked me: Did you ask to zyr2288 if he wanted to be included in the author list of this submission? I think this is a very good example. When I complete the TAS and prepare to submit it using the WIP not disclosed by others, It is necessary for me to ask for the other party's opinions, including whether he's satisfied with the current TAS and the specific matters of the submitted content. I think this is respect for each other. But it seems that you haven't done so. In the WIP I listed before, the author's name is Scumtron, J.Y and me. I think it is a prejudice that just because TAS has been improved a few frames, the names of me and J. Y can be deleted from it. Suppose that the TAS is finally published, and only the name of eien86 is included. If any judge intends to do so, I have nothing to say.
eien86
He/Him
Judge, Skilled player (1886)
Joined: 3/21/2021
Posts: 262
Location: Switzerland
aiqiyou wrote:
eien86 wrote:
This is something that can happen when a non-public WIP is delayed for a long time on a competitive game such as this. Therefore, I can totally empathize with Aiqiyou and J.Y.'s position. I also empathize with Scumtron, which is one of the most talented and perfectionistic TASers on this site. I hope someone will empathize with me as well: I just want to bring this work to light for everyone to enjoy. I defer to the judge(s) the decision of defining who the authors should be and which order they should be placed. Whatever the case is, I think Scumtron has to be in first place. I am fine being placed in any other position.
This reminds me of my NES Jackal 2 players TAS with zyr2288. When I mentioned in Submission #6640, I improved 355 frame with zyr2288's 2 player TAS, which wasn't submitted it on TASV. ThunderAxe31 asked me: Did you ask to zyr2288 if he wanted to be included in the author list of this submission? I think this is a very good example. When I complete the TAS and prepare to submit it using the WIP not disclosed by others, It is necessary for me to ask for the other party's opinions, including whether he's satisfied with the current TAS and the specific matters of the submitted content. I think this is respect for each other. But it seems that you haven't done so. In the WIP I listed before, the author's name is Scumtron, J.Y and me. I think it is a prejudice that just because TAS has been improved a few frames, the names of me and J. Y can be deleted from it. Suppose that the TAS is finally published, and only the name of eien86 is included. If any judge intends to do so, I have nothing to say.
This is the first time I've seen this WIP. Back then, Scumtron sent me a different .bk file over discord. I had no idea you were involved in making it, otherwise I would have included you. I apologize for this omission, but you gotta understand I had no idea.
aiqiyou
He/Him
Skilled player (1829)
Joined: 8/4/2018
Posts: 95
Location: China
eien86 wrote:
Back then, Scumtron sent me a different .bk file over discord. I had no idea you were involved in making it, otherwise I would have included you. I apologize for this omission, but you gotta understand I had no idea.
My original intention wasn't blame. I just want to prove that the names of Scumtron, J. Y and me should added in this submission. Besides, before submitting, you should have fully solicited the opinions of Scumtron, because you didn't do this before makes Scumtron quit. Therefore, I hope you can revise the submitted text again, add the document of Scumtron and wait for the judge's decision.
eien86
He/Him
Judge, Skilled player (1886)
Joined: 3/21/2021
Posts: 262
Location: Switzerland
I fully support adding you and J.Y. into the authors list. However, I prefer that the judge does it since I don't have the full picture of the case. As said before, I'm just learning now you were involved in making the movie Scum sent me at the beginning of my work. Regarding Scum quitting, I've got nothing to say -- I'm only responsible for my own actions. He needs to be added back into the authors list, if anything, for archival correctness purposes.
Samsara
She/They
Senior Judge, Site Admin, Expert player (2240)
Joined: 11/13/2006
Posts: 2822
Location: Northern California
Given that Scumtron removed his own name from this submission, I think it's fair to say that he wishes to have no involvement with it. While it would be nice to have fully accurate co-author attribution, in cases like these where an author removes their own name, we respect their decision and it is final unless they return to say otherwise. That being said, I also fully support adding aiqiyou and J.Y as co-authors to this submission.
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.
aiqiyou
He/Him
Skilled player (1829)
Joined: 8/4/2018
Posts: 95
Location: China
Fine. It is a good choice to let the judge decide. All I want to say is basically finished. Please also understand me. I must do this to attract attention. Because the 33089 frame WIP is not open to the public, I must come forward to clarify it. What's more, I saw that Samsara also joined this topic. She may know more about the whole case. She was the judge of the previous TAS and I shared her the hidden WIP before the previous TAS published.
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3826)
Joined: 11/30/2014
Posts: 2834
Location: US
Console Verified! Link to video
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15619
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. ---- [4893] NES Ninja Gaiden II: The Dark Sword of Chaos by aiqiyou, J.Y & eien86 in 09:10.48