(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
05-07-24 06:56 AM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - Mess up Morton and Roy's walls (SMW) New poll | |
Pages: 1 2Add to favorites | Next newer thread | Next older thread
User Post
Smallhacker

Super Koopa
I AM A Group Of Officially Frustrated Younglings, G.O.O.F.Y. MEMBER








Since: 11-17-05
From: Söderhamn, Sweden

Last post: 6289 days
Last view: 6287 days
Skype
Posted on 01-05-06 06:44 PM Link | Quote
Back when I was created "Sprite breeding", I tried entering random addresses as the second sprite, just for fun. My bro wanted to enter an address. He entered D364 and got a sprite which actually worked. Of course I was annoyed.

Just to see if it was a coincedence or some kind of fate thingie, I decided to test this "D364" crap again. I named a SMW ROM "D364.smc", jumped to 0xD364 in a hex editor and entered D3 64. Then I tested the ROM. I became even more annoyed at my bro.

Appearently, 0xD364 is a part of the "Shrink room" routine used in the Roy battle. Setting it to D3 64 appearently causes the shrinking to go crazy. It makes both Roy (and Morton, since this works in his battle too) and Mario act strangely when the walls moves past each other.

Screenshot:


Have fun. *Kills my brother*
jp

Red Paragoomba


 





Since: 12-19-05
From: Uruguay

Last post: 6635 days
Last view: 6635 days
Posted on 01-05-06 07:37 PM Link | Quote

Whaaat??
Is your brother even aware of what the odds are of entering a random word at that same address, and not only not freezing the game, but also making something useful happening? Thousands, maybe millions to 1...

He must be a psychic... a SMW psychic at least... Why D364 anyway?

BTW, ask him if he knows where the routine that makes the game start popup appear is... We've got to make good use of that talent!
Smallhacker

Super Koopa
I AM A Group Of Officially Frustrated Younglings, G.O.O.F.Y. MEMBER








Since: 11-17-05
From: Söderhamn, Sweden

Last post: 6289 days
Last view: 6287 days
Skype
Posted on 01-05-06 08:05 PM Link | Quote
Originally posted by jp
Is your brother even aware of what the odds are of entering a random word at that same address, and not only not freezing the game, but also making something useful happening? Thousands, maybe millions to 1...


I've told him that so many times that he should have learned it by now...
spel werdz rite









Since: 11-19-05

Last post: 6288 days
Last view: 6287 days
Posted on 01-06-06 04:15 AM Link | Quote
I was trying this out, it doesn't move as much if you stay on the right wall, but it closes in quickly on the left side.

Oh, and for jp, the odds of finding something like this is 1 in 2^1,048,576
Just to let you know, that's 314,573 digits long!

EDIT: Smallhacker, what are the odds of you knowing what part of the game D3 64 would affect?

EDIT2: fixed numbers


(edited by spel werdz rite on 01-06-06 02:32 PM)
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6287 days
Last view: 6287 days
Posted on 01-06-06 05:07 AM Link | Quote
Well if it's a local address the odds are in 1 in 2^14 technically. But good find nonetheless.
Smallhacker

Super Koopa
I AM A Group Of Officially Frustrated Younglings, G.O.O.F.Y. MEMBER








Since: 11-17-05
From: Söderhamn, Sweden

Last post: 6289 days
Last view: 6287 days
Skype
Posted on 01-06-06 07:06 AM Link | Quote
Originally posted by spel werdz rite
Smallhacker, what are the odds of you knowing what part of the game D3 64 would affect?


I looked at the offset list.

D364 is in this area:

0D157 1 byte Misc. Ludwig jump right type modifier
0D158 1 byte Misc. Ludwig jump left type modifier
0D1CD 1 byte Misc. Ludwig, Morton, and Roy's HP
0D24F 1 byte Music Boss defeated music
0D646 Unknown Sprite tilemap related Sprite tilemap: Ludwig Fireball

I assumed that it would be related to bosses, so I played the castle levels.
S.N.N.
wtf


 





Since: 11-17-05
From: Ontario, Canada

Last post: 6293 days
Last view: 6287 days
Posted on 01-06-06 01:14 PM Link | Quote
That seems really cool. I nominate D364 for the hex address of the year

It looks like Mario and Roy/Morton get pushed OUTSIDE of the walls. Would it be possible to make the walls stop at a certain point, and instead of making the characters act crazy, actually kill Mario? That could be used to make a tough boss battle if it worked.

Smallhacker's borhter is the new god around here
richyawyingtmv

Bouncy


 





Since: 11-18-05
From: England

Last post: 6289 days
Last view: 6287 days
Posted on 01-06-06 01:57 PM Link | Quote
Originally posted by Smallhacker
I named a SMW ROM "D364.smc", jumped to 0xD364 in a hex editor and entered D3 64. Then I tested the ROM. I became even more annoyed at my bro.


Just wait until your brother wins the nobel peace prize for that find
jp

Red Paragoomba


 





Since: 12-19-05
From: Uruguay

Last post: 6635 days
Last view: 6635 days
Posted on 01-06-06 02:46 PM Link | Quote
Hehe... I wonder what calculation you guys made for the odds... Because conditions for success are incredibly complex, overwriting a byte at random in an assembled program could be changing anything from opcodes to pointers or processor flags, or a loop, or a routine that is executed every frame!

It's a dynamic system with thousands of variables, a calculation would have to take the whole system into consideration! That is, you would have to execute all the code up to that address, for every one of them! (absolutely impractical)

And I'm curious about how you defined success (that is, "something useful") in your probability calculation?
spel werdz rite









Since: 11-19-05

Last post: 6288 days
Last view: 6287 days
Posted on 01-06-06 03:30 PM Link | Quote
Calculation:
First, the highest hexadecimal number goes to is 256 (FF) which is 2^8
Because it has to be two numbers in a row, you would square the number (2^8)^2=2^16 (65,536)
Because it only goes from 0 to FFFF (because it has to be exactly two bytes and 00 xx counts) the decimal equivalent of that is 65,536 which means all possibilities range from 0 to 65,536.
Due to the order of probability, the next step would be (2^16)^65,536=2^1,048,576

And those are your odds: 1 in 2^1,048,576
As for finding out how many digits that is, when you take 2^n it will increase one more decimal every three or four times. 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384
It increases in that pattern for a while, that basically boils down to 3.33 times to increase a digit. (it's not exact, but it's close)
So to find the number of digits, it would be 1048576/3.33=314572.8 which rounds up to 314,573 digits.

To make this post a little on topic, I'm going to try different values around xD364 to see what elese happens with the walls.
Apophis

Ropa








Since: 11-17-05

Last post: 6287 days
Last view: 6287 days
Skype
Posted on 01-06-06 03:56 PM Link | Quote
So he found not only a working sprite, but also the shrink room routine, and you want to hurt him? Give him a fricking medal!
jp

Red Paragoomba


 





Since: 12-19-05
From: Uruguay

Last post: 6635 days
Last view: 6635 days
Posted on 01-06-06 04:43 PM Link | Quote
Um... if possibilities range from 00 00 to FF FF wouldn't that be 1 in 65536?

BUT... this is not an equi-probability problem... Every 2-byte combination doesn't have the same probability of resulting in success. Actually, the CPU and ROM work as a (very complicated) function that returns that result.




(edited by jp on 01-06-06 04:02 PM)
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6287 days
Last view: 6287 days
Posted on 01-06-06 09:06 PM Link | Quote
You're forgetting that the code is in a LoRom game, which only uses half the bank. The other half is RAM, and well... good luck trying to get RAM to stay consistent.
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6288 days
Last view: 6288 days
Posted on 01-06-06 10:46 PM Link | Quote
Have him try more, maybe he'll find something else.

BTW, the odds are 1 in who cares?
asdf

Link's Awakening
‭‮‭‮ಠ_ಠ








Since: 11-18-05

Last post: 6289 days
Last view: 6287 days
Posted on 01-06-06 10:58 PM Link | Quote
Originally posted by HyperHacker
BTW, the odds are 1 in who cares?


This man, he speaks the truth. Hell, I could say that D364 is 54116 in decimal. That number has 411 in the middle, the number you dial to get information on the telephone. Smallhacker's brother provided information. Or I could say D364 is 151544 in Octal, or whatever the hell you call Base 8. There are two 1s, two 4s and two 5s. If we put 212425 into decimal and convert it to hex, we get 33DC9. DC. Washington DC. Smallhacker's brother is working with the governmen*gets shot*

Oh, and about the walls. This is a good...find. If there are no freezing or trapping glitches, this could make for an interesting boss battle. Which is a good thing, considering SMW's bosses are hard to make interesting unless you do something incredibly unusual. This fits right in.
HyperHacker

Star Mario
Finally being paid to code in VB! If only I still enjoyed that. <_<
Wii #7182 6487 4198 1828


 





Since: 11-18-05
From: Canada, w00t!
My computer's specs, if anyone gives a damn.
STOP TRUNCATING THIS >8^(

Last post: 6288 days
Last view: 6288 days
Posted on 01-06-06 11:17 PM Link | Quote
Haha, compared to some of the 9/11 theories I've heard, that actually sounds fairly plausible. 9 + 1 + 1 = 11 and George Bush was 9 years old once and one of his relatives is 62 and there's one 6 and one 2 in 62! OMG CONSPIRACY
Kailieann



 





Since: 11-18-05

Last post: 6287 days
Last view: 6287 days
Posted on 01-06-06 11:46 PM Link | Quote
Originally posted by MathOnNapkins
You're forgetting that the code is in a LoRom game, which only uses half the bank. The other half is RAM, and well... good luck trying to get RAM to stay consistent.


This could easily be valuable though. If one were to find five consecutive unused RAM addresses (or rearrange the existing code so that five consecutive RAM addresses became unused) you could write a JSL (+ address + RTS) to RAM and potentially use it to change a sprite's ASM code on the fly.

I actually went on a dead-RAM hunt a while back, and $010B-$01CD looked like they were completely unused, but my D-pad is still broken, which makes it extremely difficult to test these kinds of things. I only made it as far as Yoshi's Island 3, and there were a few offsets after $01CD that looked equally blank until I hit certain spots.

If anyone cares to continue my research, the other non-WRAM (seemingly) unused addresses I came up with were $918B, $918D, $918F, $C100-$C7FF, $7F0000-$7FFFFF, $7F8183-$7F837A, and $7F8396-$FC7FF
All you have to do is keep an eye on them and see if they change to any value other than x55, which is the default RAM value when the system is turned on.


(edited by Kailieann on 01-06-06 10:52 PM)
MathOnNapkins

1100

In SPC700 HELL


 





Since: 11-18-05

Last post: 6287 days
Last view: 6287 days
Posted on 01-07-06 01:03 AM Link | Quote
Well you could use GSD and play for quite a while to see if there are any writes/reads of the given location. Other than that it is quite difficult to say for certain that a given address is unused. You'd have to have a complete grasp of everything that the game can possibly do.
Sukasa

Birdo
Not quite as active as before.
Xkeeper supporter
Xk > ||bass
I IP Banned myself! Twice!








Since: 11-17-05
From: Somewhere over there

Last post: 6288 days
Last view: 6287 days
Posted on 01-07-06 01:04 AM Link | Quote
Too cool. So, that's the speed of the walls moving inward? Radical. Now, which of those two values actually changes the speed, and what does the other one do, assuming that they are 2 8-bit numbers, or are they opcodes?

EDIT: What were they before you changed them?


(edited by Sukasa on 01-07-06 12:05 AM)
jp

Red Paragoomba


 





Since: 12-19-05
From: Uruguay

Last post: 6635 days
Last view: 6635 days
Posted on 01-07-06 05:38 AM Link | Quote
About those unused spaces (all 55s), $7E010B is used by the blocktool locked blocks and keys. I had to move out of there when I realised the keys weren't working any more
Pages: 1 2Add to favorites | Next newer thread | Next older thread
Acmlm's Board - I3 Archive - ROM Hacking - Mess up Morton and Roy's walls (SMW) |


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.031 seconds; used 453.34 kB (max 591.82 kB)