Peach Speech Glitch (more info):
02004ACC and nearby addresses seem to be info related to what event is playing or what kind of speech bubble is displayed.
02004B6C has to be "1" in order to activate the event.
Escorting Peach and approaching her after a room is done would yield this scenario (in other words, 02004ACC and nearby addresses have these values):
01 14 3B 26 08
78 43 26 08
0A 3B 26 08
and 02004B6C is "1".
---
02004ACE seems to be some kind of event pointer, I'm not sure.
If it is 22 at the time the event is triggered like above, then a wrong warp to Little Fungitown occurs.
...
6C = Goomba battle with Stardust Field background
Can also cause a rumbling screen instead
7B, AF = Minecart minigame
82, A8 = Photographer cutscene
B3 = Camera scrolls slowly somewhere...
B7, BB = Map screen
---
When on the map screen, 02004ACC seems to have an influence on what screen it displays next (However, what exactly is going to happen is also dependent on something else - I have not found out what).
---
End credits scenario is
01 83 12 C0 5E
00 00 00 00
82 12 C0 5E 01
...
01
FF 00 00 9C
But trying to reproduce the credits glitch by using the knowledge above, and by editing addresses to have values from the End Credits scenario does not seem to work... There are still other factors that have influence on what happens.
Ultimately, on VBA, things can happen that don't happen that way on real console. I like to come back to researching Peach Speech Glitch sometimes but it doesn't seem like I'm going to find out anything useful.. other than what I posted above.
----------
@altabiscuit
- When doing 2nd Rock skip, and using Luigi's Spinjump to make him float, what am I supposed to do next? When I switch the brothers, Mario will fall down and no rock skip can be done.
- Big Skip. You wrote:
This is confusing to me. Did you mean Highjump until the flicker stops?
I would be grateful for very precise step by step explanations. Instead of "follow Fungitown skip until across the wall" or such. I hope you understand.
---------
At least, the most important testing seems to be done now. Spinjump gives Luigi Barrelhop on console-only, which may be useful but not in any% English TAS. Luigi cannot get Glitch Hammer so there is no possibility of yet unfound glitches.
I will do route planning very soon, this weekend maybe.
----------
I tested Action Command Glitch on English version between GBA, GB Player and DS. Someone requested this here earlier...
The glitch looks consistent, there are no differences.
L is pressed 7 times, then I hop off and press L twice to get barrel hop on Luigi. This would only be useful on J from what I've found so far. If we can find a way to get a blank action ID on Luigi earlier than the forest then the J version has potential to be faster.
Hat clip to Fungitown behaves a little differently as far as movement goes, but it does the same thing every time if you move in the exact same spot, but in real time that's hard to replicate the same exact movement.
You hop on top of Mario with Spin Jump and hop back off, don't use Spin Jump. Swap the bros, then high jump over the rock with Mario.
It really doesn't help that the icon cues are different on emulator... I think you press L 15 times after the flickering stops.
When I can find time I'm going to make videos with instructions.
From what I've noticed the action command glitch does not skip action IDs randomly on DS or GBA but it does on GB Player. DS and GBA behave similarly to WiiU VC in that regard and it does not lag as much as GB Player.
I'm wondering if the GB Player runs at a different framerate.
You can test for yourself if GB Player is faster or slower.
http://tasvideos.org/PlatformFramerates.html
A real GBA runs at 59.7275fps.
On the GBA version, find a place with an in-game timer and using a stopwatch time how long that in-game timer took in real time (do it more than once and average if you like). Now do the same thing on GB Player, emulator, whatever and take the ratio of the two real times, and you'll have the ratio of the frame rates.
Joined: 12/1/2012
Posts: 103
Location: New Donk City
So I did some investigating into damage formulas for various attacks a while back, and by mugg's request, here's a summary of some of the more pertinent info. Basically, all damage is calculated by (Attacker POW - Defender DEF / 2) * Attack Constant. Here are the Attack Constant values for all of the Bros.' solo attacks and successful Bros. attacks. Note that the values are not exact, as they're based on hexadecimal constants; for example, the global enemy Attack Constant is about 0.3984 = 102/256.
Solo Attacks:
Mario Jump - 0.4778
Luigi Jump - 0.3984
Jump Fail - 0.2381
Hand Attack - 0.4575
Hand Fail - 0.1182
Mario Hammer - 0.3175 / 0.4171 / 0.5167 (random)
Luigi Hammer - 0.3175 / 0.4373 / 0.5571 (random)
Hammer Fail - 0.1587
First Strike - 0.1992
Counterattack - 0.1992
Mario's Bros. Moves:
Splash Bros. - 1.4318
Splash Adv. - 1.2596
Swing Bros. - 1.4318 when you let go of Luigi at the first possible moment, ~50% more at maximum speed? I didn't know there was a faster speed when I got this data...
Swing Adv. - 0.2282 extra
Chopper Bros. - 0.7167, 0.1903 x2, 0.0951 x2, 0.0466 x2, 0.0223 x inf?
Chopper Adv. - 0.9556, 0.2855 x2, 0.1418 x2, 0.0951 x2, 0.0466 x4?, 0.0223 x inf? I think 0.223 is the minimum, I forget whether it's after 12 or 13 hits.
Fire Bros. - 0.0996 per, 0.1992 for failed Luigi hit
Fire Adv. - 1.789 per
Luigi's Bros. Moves:
Bounce Bros. - 1.1945
Bounce Adv. - 0.4778
Knockback Bros. - 1.1455
Knockback Adv. - 1.2596, 0.2282 x2, 0.1141 x2, 0.0559 x2, 0.0268 x inf?
Cyclone Bros. - 0.1700 per
Cyclone Adv. - 0.1431 extra
Thunder Bros. - 0.2389
Thunder Adv. - 0.8361
As a side note, Luigi's Thunder Bros. normally makes enemies have a multiplier of 85/256 DEF (~1/3) or 72/256 (~3/10) POW for Advanced, but landing just the first two presses of the normal move multiplies all ground enemies' DEF by 48/256 (3/16), and landing just the first B press knocks the targeted enemy's DEF to 0.
It's important to note that with Bros Attacks that it will use whatever Attack stat of the Bro who makes the connecting hit.
So with Knockback Bros it's using Mario's attack stat and not Luigi's. Failing Bounce Advance after the first input will also use Mario's stat instead of Luigi's.
Interesting. So what about Chopper Bros Advanced, is Luigi's POW used?
I think it would be best to have table with all possible hits from each attack and noting which constant with which brother's POW is used. But that's tedious work.. I think a smaller table with just the data above will do for now. Thanks much jdaster! And thanks alta for the info.
edit:
Also, hammer constant is random, really?
I'm pretty sure the hammer constant depends on the timing of the hit and isn't random. Because if you mash the attack button you will get the same damage every time.
Also yes Chopper Adv uses Luigi's POW. In the current RTA route I only buy one mush badge because the attacks I use only use Mario's POW.
Joined: 12/1/2012
Posts: 103
Location: New Donk City
I do have data for failed hits on most of the moves, as well as the move's minimum power, and which bro's POW is used (although it's apparently not 100% accurate, as I have Mario as the bro used for all forms of Chopper Bros. except no buttons pressed). Here's a link to a txt file that has all this info and such; I guess I'd forgotten I was planning on doing a MLSS stat guide at some point.
https://dl.dropboxusercontent.com/u/64507723/mlss_statguide.txt
jdaster, thanks for your guide. I have referenced it on the Game Resources page.
Do you have the attack constants for Jump Lucky, Hand Lucky, Hammer Lucky?
And do you plan to look into finding the constants for the Japanese version? It would be interesting to see such differences.
Remember that you can use VBA's "import battery file" in order to select a savegame. For Superstar Saga, you can load savegames from other versions of the game. So if you have a good savegame that you used for testing on the English version, you could load that while running the Japanese game.
I try to be more specific:
Luigi is floating. I switch brothers.
After I switched, Luigi will stand on the ground and Mario behind Luigi will fall down.
Luigi doesn't stay airborne.
I will test this again today, maybe it will work this time.
Joined: 12/1/2012
Posts: 103
Location: New Donk City
Lucky hits always do 1.915x damage, I believe; I don't know if tested it on anything but jumps, though. I could give it a go for the Japanese version as well; I probably already have a copy of the ROM and some saves sitting around some place. The trick's going to be finding where the enemy DEF is in the ROM / memory, as it's probably different from the NA version; I always tested with 0 enemy DEF, although I suppose it's not strictly necessary since the DEF values are known.
EDIT: Yep, I have an endgame save in 1283-MLSS(J). I'll try to get all the info within the next couple of days.
Joined: 12/1/2012
Posts: 103
Location: New Donk City
Japanese values here (wow, a lot of them are considerably lower than US):
SOLO ATTACKS (I'd assume the Lucky values are the same in US, I assumed it was a multiplier)
Mario:
Jump - 0.2381 failed, 0.4778 successful (Lucky 0.9151)
Hammer - 0.1587 failed, 0.3175/4171/5167 (predetermined) successful (Lucky 0.8357)
Hand - 0.1182 failed, 0.4575 successful (Crit x2)
Counter - 0.1992 (both)
First Strike - 0.1992
Luigi:
Jump - 0.2381, 0.3984 (Lucky 0.7968)
Hammer - 0.1587, 0.3175/4373/5571 predetermined (Lucky 0.9960)
Hand - 0.1182, 0.4575 (Crit x2)
Counter - 0.1992
First Strike - 0.1992
BROS. ATTACKS
Splash Bros.
None - 0.2390
First A - 0.4779
First A, miss, last A - 0.7168
A,B - 0.9557
A,B,A - 1.0975
A, Adv. A - 0.4779
A, Adv. A,B - 0.7168
A, Adv. A,B,A - 1.0509
Swing Bros.
None / A w/missed release - 0.2390
A with timed release - 0.4779 ~ 0.7168
A, final B - 1.0751 ~ 1.9113
Adv. AB mashing - always 2 damage, apparently
Chopper Bros.
None - 0.2390
A - 0.4779
A,B - 0.7168
A,B,A - 0.5731 0.2389 0.1903 0.1418 0.0951 0.0466 0.0223...
A, Adv. A - 0.7877
A, Adv. A,B - 0.7168 0.2855 0.2389 0.1903 0.1418 0.0951 0.0951 0.0466 0.0466 0.0466 0.0223...
Fire Bros.
None / Luigi miss w/o Adv. - 0.2187
Successful hammered fireball (per) - 0.1521
Successful Adv. fireballs, miss hammer (per) - 0.0478
Successful Adv. fireballs, miss last A (per) - 0.1094
Successful Adv. fireballs, hit last A (per) - 0.1965
Bounce Bros.
None - 0.2390
First B - 0.4779
First B, miss, last B - 0.7168
B,A - 0.9557
B,A,B - 1.1703
Adv. A - 0.7168
Adv. A,B, miss last hits - 0.3584 each
Adv. A,B, last hits - 0.6197 each
Knockback Bros.
None - 0.2390
First B / First B, Adv. A - 0.4779
B,B / B, Adv. A,B - 0.7168
B,B,A - 0.9557
B, Adv. A,B,A - 0.7634 0.2855 0.2389 0.1903 0.1418 0.1194 0.0951 0.0709 0.0466 0.0223...
B, Adv. A,B,A, miss an A - 0.0131
Cyclone Bros.
None - 0.2390
Per hit, after first B - 0.1419/1643/1867 predetermined
Final Adv. B, miss A - 0.1195
Final Adv. B,A - 0.1904/2371/2838 predetermined
Thunder Bros.
None - 0.2584
B - 0.5168
B,B - 0.1030 to all
B,B,B - 0.6197 to all
B, Adv. A - 0.6197
B, Adv. A,A - 0.8256
B, Adv. A,A,B - 1.1364
Red Peppers give +50% POW to the user in the US version, I'll test to see if it affects Mush Badges. EDIT: Hmm, but only +25% in the Japanese version. And it does include Mush Badges in both cases.
So Wii U VC, DS, and GBA SP do not do action command skipping like the GB Player does, so emulator is far closer to what the other systems do as far as accuracy goes. There's still a discrepancy with the number of button presses and visuals though.
My only guess to why this might be is a different framerate from GB Player. Wii U VC also appears to lag less during the action command glitch. I'm going to time area transitions and other things to see if the VC has any advantages there.
Sorry but I might not be making a new TAS after all.
I have run into a problem and I realize that I'm, you could say, living a false dream. Planning and the production of the TAS takes up way too much time. I barely have time for myself anymore due to work. I'm not even getting paid for the work... It's times like these when I feel really depressive and hopeless. I don't know what will happen. And I don't know why I'm posting it here out of all possible places. Guess I just wanted to say that I might not be capable of doing any TASing.
Sorry but I might not be making a new TAS after all.
I have run into a problem and I realize that I'm, you could say, living a false dream. Planning and the production of the TAS takes up way too much time. I barely have time for myself anymore due to work. I'm not even getting paid for the work... It's times like these when I feel really depressive and hopeless. I don't know what will happen. And I don't know why I'm posting it here out of all possible places. Guess I just wanted to say that I might not be capable of doing any TASing.
Damn. I would like to help on TAS, as I finished Superstar Saga and did lot of walktrough (2010 Kappa) but dunno what to do, I can help on doing the final TAS and research things :/
Current:
Rayman 3 maybe? idk xD
Paused:
N64 Rayman 2 (with Funnyhair)
GBA SMA 4 : E Reader (With TehSeven)
TASVideos is like a quicksand, you get in, but you cannot quit the sand
Sorry but I might not be making a new TAS after all.
I have run into a problem and I realize that I'm, you could say, living a false dream. Planning and the production of the TAS takes up way too much time. I barely have time for myself anymore due to work. I'm not even getting paid for the work... It's times like these when I feel really depressive and hopeless. I don't know what will happen. And I don't know why I'm posting it here out of all possible places. Guess I just wanted to say that I might not be capable of doing any TASing.
Life & Work before TAS. You've helped in the planning of this TAS, hopefully someone who takes the reigns will have the decency to credit you for your hard work.
and if someone doesn't take the TAS, you will always have something to come back to when life gets a little easy. So go use the time you have for yourself on whatever makes you happy. Cheers dude.
For the time being, I will pretend I have never made my
previous post...
-----
I improved "Rock Skip" in Guffawha and Teehee Valley (towards Birdo) a bit for TAS:
Get "glitch hammer". Pound Luigi. Highjump on him and hop off. With some preparation, while the brothers are in "glitchy state", you can make Luigi (who is in front and underground) end up in a wall. Jump once and leave the wall. You can now use Mario's Highjump to cross the rock.
In Teehee Valley towards Birdo, it may be possible to skip the rock completely using a small teleport, but we still haven't any knowledge on how teleporting works to begin with. It's all random and trial-and-error to me..
It may also be possible to do the "huge skip" from the right entrance instead of the left. This would save some seconds in the TAS and looks mandatory (because why should TAS walk around needlessly?).
-----
TAS will skip Super Hammers (RTA gets them). That means a few rocks that altabiscuit breaks will have to be bypassed.
- Rock at the entrance to Teehee Valley can be easily skipped with a barrel clip and careful walking, even on the English version.
(This "barrel clip and careful walking" thing does not work on the black rock towards Birdo! That's why the improved rock skip detailed above will be used.)
- 2 rocks in Teehee Valley maze (between Guffawha and Fungitown) have yet to be tested. I will edit this post later.
EDIT: I think the 1st can be skipped with "barrel clip and careful walking". The 2nd has to be skipped with the "new Rock skip". Possibly we can use "Luigi hat teleportation" to warp through some of those rooms. Or... see below...
-----
I managed to skip the last door in Guffawha Ruins. It's really simple, you just have to walk on top of the door and then fall off into the foreground. Use "glitch hammer" on luigi and Highjump on him to enter "glitchy state". Since the glitchy state will cause the brothers to zip back to where they came from, they are zipped right into the loading zone.
I'm not really sure if it is faster though. Guffawha Ruins requires some strange floating Luigi skipping, possibly also the entrance minigame with Luigi hammering the orbs. If the "Rock Skips" and "Huge Skip to Fungitown" can be done really fast, then the route through the Ruins is probably slower.
but we still haven't any knowledge on how teleporting works to begin with. It's all random and trial-and-error to me..
I have made an attempt to break it down. And I have made a luascript to try to visualize it.
http://pastebin.com/6mvjevFLhttp://pastebin.com/pBWJnCuc
- Green and red dots are Luigi and Mario.
- Black line is the path, that the back brother is following to try to catch up with the front brother. The game uses a list of X/Y-coordinates which is located in 020057E8 ~ 02005FE4 (X and Y are dwords respectively). For each such coordinate, I have drawn a black pixel.
- The cross is where the game is currently going to overwrite the next element in the list. The address it uses is 02006F60(word). (The implementation of this might be bugged because it doesn't stay until the tail is right on top of the cross... but that should be a minor issue.)
So using this, we may be able to understand the teleportation glitch a lot better. We may be able to understand why we are teleported screen lengths away at some times and aren't at other times.
-----------------
EDIT:
It seems I already discovered something.
The screen length-long teleportation seems to occur when
- you visit a new room. Because when you visit a new room, some part of the "follow path" will be completely elsewhere.
- you walk in a direction and switch places a few times. Doing that, a segment of the "follow path" can be left behind, sufficiently far away.
I will do more investigation later.
Today, I tested editing savegames.
- There is an address that keeps track of the possibilities which of the savegames are currently in use, but editing its values out of bounds does not brick the game.
- Starting a savegame with zero data causes you to start in a beta room unable to move, with 0 health, no items etc.
- One of the values that get saved determines the destination/room where you continue. Some values cause the game to trigger the end credits right away.
- Most other values are flags which blocks have been hit, which rocks have been crushed, which quests have been solved, which cutscenes have been watched, etc. as you would expect.
- I know from previous testing that a savegame will remember if Mario was full of water at the time you saved your game. This might require Luigi having spinjumped on Mario.
For each of the 3 savegames, these are the addresses that hold the savegame info on where you continue after loading. If the address of the savegame that's being loaded has a certain value, the end credits are triggered.
02001E90 -> 1DF or 1E or 1C7
02002588 -> 1DF or 1E or 1C7
02002C80 -> 1DF or 1E or 1C7
We currently have almost no way of editing memory. Peach Speech glitch does some rampaging through the memory which often causes the game to crash but we cannot abuse this glitch since we have no control over it (we can't use it with precision) and it may be incorrectly emulated.
About "Peach Speech Glitch" I'd like to put a last reminder here, or in other words, a message to clarify what might have been unclear.
02004ACC and nearby addresses tell what event to play (cutscenes, speech bubbles, fadeouts, anything the game does basicly...). Some of these addresses may be pointers?
02004B6C typically becomes "1" when you talk to someone. It also becomes "1" or another nonzero value when you break out of the barrel during the glitch. When that is the case, game will run the event depending on the values near 02004ACC - Those values seem randomly generated after the barrel breaking. I would need to ask someone to investigate this further, with tracing, breakpoints or whatever.. I don't know what you can do.
Still not sure if this glitch works correctly in VBA...
I just wrong warped to Mario Bros within Superstar Saga: http://www.twitch.tv/altabiscuit/v/3690630
Get Barrel Hop on Mario and Luigi
Turn Mario into a Barrel
Swap the bros, press A to do barrel break with Luigi
Turn Luigi into a Barrel
Break Luigi out of the barrel
Swap the bros
High Jump on Mario
In my short testing session this is what I've determined:
The action commands the bros are set to matter
The height of the bros matter as well
I've managed to call Mario Bros a few times using different combinations of action commands but there might be other applications to this as well.
This was done on the Wii U VC English version. I have not tested on JP yet.