Pages: 1
Powerline |
Posted on 08-29-15, 11:43 pm (rev. 3 by ImageBot on 11-21-16, 03:16 am)
|
Karma: 228 Posts: 20/22 Since: 10-18-12 |
If you have played NSMBDS for years, or just a couple of minutes in Mario vs. Luigi's Pipe stage, you have at least once got mad at this annoying "feature" that keeps stealing your momentum:
I don't know what to call it other than "edge grab", as this "feature" plays a cool animation of Mario or Luigi climbing over a tile edge, if you are lucky, which you kinda always are when precision jumping. Now, the animation is not that bad, but Mario/Luigi comes to a complete stop in the process! If you have played SMB3 or New Super Mario Bros. Wii, you'll never get stopped by a tile during precision jumping. So let's get rid of this thing and enjoy NSMBDS, cause it almost feels like a precision platform game! I can only remove this by using DeSmuME emulator's cheats (menu: Tools->Cheats->List): Add a new cheat by pressing "internal" button, and input... Address: 103754 Value: -509607936 Select size: 4 bytes. Oh the AR code becomes: 02103754 E1A00000. Maybe you can put this code in Action Replay? So this disabled the turing on of the bit flag 0x1000 which tells Mario/Luigi to animate and stop his velocity. The code is located in the large virtual member subroutine 21031B4 for Player Collision: loc_210373C:
LDR R1, [R9,#0x64] @ Load current Y pos
LDR R0, [R9,#0x74] @ Load previous Y pos
CMP R1, R0 @ Jump if new <= old
BLE loc_210375C
ANDS R0, R7, #0x200 @ And if not slope/edge tile!
LDREQ R0, [R9,#0x788]
ORREQ R0, R0, #0x1000 @ THEN DO the Tile edge bug!!!
STREQ R0, [R9,#0x788]
loc_210375C: In C++ this code would look like this: // If not running upwards a slope, but moved upwards from previous frame,
// set the flag to cause edge grab (which is done later at the time of landing from a jump)
if ((this->vecPos.y > this->vecPreviousPos.y) &&
(CollisionResultFlags & TILE_FLOOR_SLOPE) == 0)
{
this->OtherFlags |= 0x1000; // Edge grab
} I have not seen any other errors from removing this flag, and I hope there won't be any! You should play through the whole game and feel how much better it plays. Sadly, it is still kinda messad up compared to SMB3 and NSMBWii, and there is no quick fixes. But this one is a huge step in the right direction /Poweline |
KingYoshi |
Posted on 08-30-15, 07:27 am (rev. 1 by KingYoshi on 08-30-15, 07:28 am)
|
Fire Snake
Eugene Karma: 3842 Posts: 524/1157 Since: 11-29-11 |
I've never noticed this actually. But I can imagine that 'edge grab' is annoying, so I think this is a nice ASM Hack (although I haven't used it yet).
|
skawo |
Posted on 08-30-15, 07:50 am
|
Karma: 19807 Posts: 195/1100 Since: 04-02-13 |
I don't think you can call this a bug fix, considering it's very obviously a deliberate mechanic.
|
Powerline |
Posted on 08-30-15, 04:25 pm (rev. 1 by Powerline on 08-30-15, 04:27 pm)
|
Karma: 228 Posts: 21/22 Since: 10-18-12 |
Yea, it is not a bug... But long before I knew that, and while searching for a fix, I thought it was a bug because no other major 2D Mario games had this annoying "feature", and it seemed random when it happened. Anyway, the topic name "Bug fix" stays because it is a fix of an annoying random thing (good description of a bug), and I want as many people to know about it. Any other topic description, like "Feature fix" wouldn't really get attention from people in the same way.
Having this clear, there are still other "issues" that could potentially be fixed, like Mario/Luigi auto-turning in the direction of a jump while landing (fixed in NSMBWii), and slope force values being opposite from NSMBWii, making Mario/Luigi walk slower downhill and faster uphill, when that clearly feels and looks wrong. |
Thierry |
Posted on 08-30-15, 04:40 pm
|
この記号は… 解読できないよ…
Karma: 6351 Posts: 1653/2788 Since: 01-17-13 |
It's still confusing, and actually I don't see anything else than 'feature riddance' that would fit (it sucks as thread title though).
|
Hiccup |
Posted on 08-30-15, 06:36 pm
|
Birdo
Karma: 2789 Posts: 1443/2091 Since: 06-26-11 |
Its not confusing as soon as you read the thread though. Nice work Powerline!
|
Arisotura |
Posted on 09-01-15, 02:56 pm
|
☭ coffee and cream
Karma: 10543 Posts: 1771/2782 Since: 06-26-11 |
Powerline |
Posted on 09-17-15, 05:35 pm
|
Karma: 228 Posts: 22/22 Since: 10-18-12 |
I have been playing Mario Vs Luigi against my wife for hours every day with both NDS flashcarts having the Action Replay code 02103754 E1A00000 set. It has never desynced once! It is a much better gameplay experience
|
Hiccup |
Posted on 09-18-15, 09:09 am (rev. 1 by Hiccup on 07-24-16, 09:48 am)
|
Birdo
Karma: 2789 Posts: 1448/2091 Since: 06-26-11 |
(nvm)
|
Pages: 1