Submission #6129: Soig's DS Newer Super Mario Bros. DS "100%" in 2:15:40.51

Nintendo DS
100%
(Submitted: 100%)
(Submitted: Newer Super Mario Bros. DS 1.07.nds USA)
DeSmuME 0.9.9
487015
59.82609828808082
50915
Unknown
Submitted by Soig on 10/18/2018 5:24 PM
Submission Comments
What a crazy year for me... Many TASes made in this year, and two of them are 100% branch. And it's one of 100% branch this time.

Goal

  • 100% == 3 stars' savestate = All levels completed + All starcoins got + All starcoins cost
  • luck manipulation

About the movie

Tool used

addressdata sizedata typenote
021C03511 bytesignedx speed
021C031C4 bytesfixed pointx speed
021C03204 bytesfixed pointy speed
020CAEBC4 bytesfixed pointx pos
020CA2EC2 bytesunsignedx camera
020CAEC04 bytesfixed pointy pos
02088A682 bytesunsignedRNG1
02088A6A2 bytesunsignedRNG2
02088A482 bytesunsignedRNG counter

Comments

  • To cut Bowser.Jr anime on the world map, I use cannon to warp to world 4 and then world 8. And reset to cut the stuff scroll.
  • There are 3 levels force the player to use mini Mario. They are 2-A, 3-2 and 7-7.
But you can complete 3-2 without mini Mario, if you don't aim to secret ending.
And it's fastest to use mini Mario in 7-6. Though it's not necessary.
  • I found the glitch which would allow Mario to jump many times in the air by throwing a hammer at the key frame in 7-4. So there may be some improvable places with that glitch before that level.
  • World 6 is the most special.
The only way entering this world is by world 5's cannon. And if you want to enter 5-cannon, you must exit from the secret ending in 5-ghost. And it's the most special secret ending in this game.
The options in world 6 is different. Max speed is 2.25 on the ground. But you can get 3 speed with shell-speed up. And you can't decrease y speed to 0. So space jump is not available...

Tricks found

1~7: Green Shell suit. 8: Mini Mario. 9: Fireflower suit.
1. Speed up with shell suit
  • If x speed is not 0, and press ↓ to change to shell suit on the ground, it allows to speed up to the right. And the acceleration could be bigger than normal if press opposite direction.
  • Same as nsmb, press ↘(run to the right) or ↙(run to the left) when you leave from the ground while running, and press opposite direction, then.
  • The acceleration of shell Mario is bigger than normal.
  • In general, the direction of acceleration is right, expect:
    • Rebound with shell after moving to the right.
    • Change to shell on the slope "/".
    • Same as nsmb, change to the shell while leaving the ground with running to the left.
  • Others I didn't found.
  • Different from nsmb, Mario can only speed up to 3 (48 in 1 byte) with shell. So did starman, expect on the ground.
  • Luigi's acceleration is similar to Mario's, although Luigi's inertia is bigger.
2. speed changed instantaneously with shell suit
The speed will change to 3 instantaneously if Mario change to a shell while leaving the ground and speed up to the max speed under modern state.
Such as going out from the quicksand, and speed up to 1.5 while walking on the ground.
3. Space jump (Jump again, style A)
You can jump in the air when your y speed is changing to 0 and changing to normal state from other states.
  • Same as nsmb, become normal state from a shell while y speed is 0.
  • Change to normal state after throwing a hammer.
  • I found that only Mario's y speed could become 0 but Luigi. But the height of one jump is higher than Mario.
4. Corner jump (Jump again, style B)
  • Top to a brick or solid at the last moment with shell suit, and change to normal state, then you'll jump again. (And you can get a corner boosting at the same time.)
5. Keep speed with shell
  • Change to a shell and jump after getting a speed bigger than 3 on the slope to keep this speed. But it would decrease to 3 if you press ← or →.
  • The speed would change to 3 after jumping on the ground with starman. But you can keep the speed bigger than 3 if jump on a slope. The biggest speed is bigger than 6.
6. Delay of y speed
  • Change to a shell on the ground, there will be a few frames keeps y speed = 0. And you can do a space jump during this time.
7. State changing glitch
  • You can change to jump state if throw a hammer after leaving the cyclone. But x speed ≤1.5.
  • You can change to jump state if throw a hammer at the first frame after pressing ↓ while flying with rotating. But x speed ≤1.5.
8. Wall jump
  • Same as nsmb, only Mini-Mario can do this. Because Nintendo gives SMB series many improvements and optimizations during these years.
9. Speed up after kicking the wall
  • It's same as nsmb, you can get 2.25 speed after kicking the wall. But x speed changes when y speed is around 0. So that,
    • Use small jump after kicking, to make y speed change to 0 earlier.
    • Top to a solid or brick earlier after kicking.
  • Same as nsmb, throwing a fireball after kicking will speed up the x speed.

今年我也是打了鸡血了,做了一堆TAS...而且有两个还是100%目标的大工程。可见今年的我是多么的无聊... 今天投稿的就是其中一个100%分支。

目标

  • 100% == 三星存档 = 所有关卡通关 + 所有大金币获取 + 所有大金币花费
  • 运气控制

关于录像

使用工具

地址数据大小数据类型注释
021C03511字节分正负x速度
021C031C4字节定点数x速度
021C03204字节定点数y速度
020CAEBC4字节定点数x位置
020CA2EC2字节无正负x屏幕
020CAEC04字节定点数y位置
02088A682字节无正负随机数1
02088A6A2字节无正负随机数2
02088A482字节无正负随机数计数器

笔记

  • 为了减去库巴二世带着碧池小公举满地图跑的动画,我用大炮从世界1崩到世界4然后崩到世界8,然后用复位又毙掉了工作人员名单过场。
  • 在这个游戏里一共有3关强制使用迷你马里奥,分别是2-A,3-2和7-7.
但是如果你不想走隐藏出口,你可以不用迷你马里奥走3-2.
还有就是虽然在7-6不是强制使用迷你马里奥,但使用它是最快的方案。
  • 我发现扔锤子无限太空跳的bug是在7-4,所以在此之前可能有些地方如果用这个技巧会提升。
  • 第6世界是最特殊的。
进入第6世界唯一的方法是走5-炮,而进5-炮必须找到5-鬼的隐藏出口。而5-鬼的隐藏出口也是这个游戏里最特殊的一个出口。
第6世界的动力参数也是不同的。平地最大速度2.25,但你仍可以以龟壳加速的方式加到3。但你无法让y速度减到0,所以太空跳在太空关里废了...

发现技巧

1~7:龟壳装;8:迷你;9:火力花
1. 龟壳加速
  • 在地面上,按下↓变成龟壳状态,如果x速度≠0,则可以向右加速。包含向左时的减速和向右时的加速。并且,左右反向按键(如向左时按→。向右时按←)的加速度会比较大。
  • 与nsmb相同,在地面跑,最后刚刚脱离地面的时候,如果向右跑按↘,向左跑按↙,然后反向按键,即可。
  • 龟壳状态的加速度比直立状态的大。
  • 通常情况下,龟壳加速的加速度方向都是右。除非以下情况:
    • 向右跑的过程中以龟壳状态撞墙弹回之后。
    • 在/方向的斜坡上从直立状态变成龟壳。
    • 与nsmb相同,向左跑,在刚刚脱离地面的时候变成龟壳。
    • 其它没总结出来的情况。
  • 与nsmb不同,newer龟壳加速只能到3(1字节是48),在无敌状态下也是3,除非在地面上。
  • 虽然路易惯性大,但对于在斜坡加速和龟壳加速则与马里奥相似。
2. 龟壳速度秒变
已经达到当前状态的最大速度,然后在刚刚脱离这个状态时变成龟壳,下1帧将会变成3的速度。
如出流沙后变成龟壳;在地面以步行非跑步达到满速1.5,脱离地面后变成龟壳。
3. 空中跳跃(二次跳跃A)
在空中,y速度==0时,从其它状态变回纯粹的直立状态,即可做到太空跳。
  • 与nsmb相同,以龟壳状态跳起,在y=0时切换回直立状态。
  • 先扔锤子,在y=0时恰好转换回直立状态。
  • 目前经测试,只发现马里奥可以在空中让y速度=0;路易做不到。但路易的单次跳跃高度要比马里奥高很多。
4. 斜角跳跃(二次跳跃B)
  • 保证以龟壳状态在最后能够顶到砖块或地面的时候顶到它并切换回直立状态,则可以达到此效果。(同时可以获得斜角助推/斜角增益)。
5. 龟壳保速
  • 从斜坡加速到比3大的速度,然后变成龟壳并立刻跳起,能够保持这个不正常的超大速度。但如果按←或者→会慢慢变回3的速度。
  • 在无敌状态下,从地面跳起,速度由4.5变回3;在斜坡上跳起,能够保持跳起前的速度。最大时速度>6.
6. y速度延迟
  • 在地面上以其它状态变成龟壳,在脱离地面后会有几帧的时间y速度保持0不变。在此期间可以进行太空跳。
7. 故障切换状态
  • 从旋风刚刚脱离时可以扔锤子,扔完后切回跳跃状态,但x速度≤1.5.
  • 在旋转飞天时按↓开始下冲的的第1帧,可以扔锤子,扔完后切回跳跃状态,但x速度≤1.5.
8. 卡墙跳
  • 与nsmb相同,由于多年来任天堂对2D超级马里奥兄弟系列的不断改进和优化,只有迷你马里奥能够做到卡墙跳,只有由适当的位置和速度即可达到。
9. 踢墙后加速
  • 与nsmb相同,踢墙后能够立即获得2.25的速度,但只有在y速度马上变成0时才会开始变加速。所以,
    • 踢墙后使用最小的跳跃,以此让y尽早变0;
    • 踢墙后尽早顶到障碍物,强迫y变0.
  • 与nsmb相同,踢墙后马上发火球,则可以切回普通跳跃状态,立刻开始x加速。

Memory: Judging
Memory: Optimization seems fine.
Fulfills Vault full completion by basing completion off of what is tracked on the file select: stars are placed on your file for completing all levels, collecting all star coins, and spending all star coins.
The romhack itself was very entertaining in spite of the additional autoscroller levels. In particular it's amazing how the hack managed to make the Hammer Suit, a modification of the Blue Shell power-up of the base game, manages to be even more broken than the item it's based off of. Despite the category's length, it managed to be interesting throughout. The audience enjoyed it too.
I've confirmed sync on the build currently available on the hack's website.
Accepting to Moons.
fsvgm777: Processing.
Last Edited by adelikat on 10/28/2023 8:19 PM
Page History Latest diff List referrers