Rayman Corruptions
Posted: Wed Dec 30, 2015 1:49 am
For those who don't know, game corruption (When we're not talking about accidental data damage, which can happen on its own for a variety of reasons) is taking a ROM of a game as using a special corruption program to scramble its data, then playing the broken ROM and seeing the usually amusing results. Some channels like Vinesauce feature videos of game corruptions.
I've been doing these with Rayman Advance for a while now, and I decided that it'd be better to make my own topic for it than keep filling the Rayman 1 thread with my videos.
My earlier corruptions were done with the Erosion corruptor. This worked fine, but corrupting a file takes a considerable amount of time depending on how many bytes are corrupted. Also, it corrupts the file directly, and one must remember to restore the file after each corruption. Even then, however, if Erosion crashes during a corruption the file will remain corrupted and not be able to be restored.
It is VERY important to keep a backup of both the rom (in my case, a .gba file) and any save file that may accompany it. During my first round of Rayman Advance corruptions, the .save file actually became corrupted from playing a corrupted version of the .gba, since the .sav file updates automatically after playing whether anything was actually saved or not. I had to roll back the folder and its contents to recover my save files. Replace the .sav file with the fresh backup after each corruption for best results, and replace the .gba when necessary.
My latest round of corruptions was done using the Vinesauce ROM Corruptor, which took a little while to set up but was very worth it. Unlike Erosion, it creates the corrupt file instantly no matter how many bytes are corrupted. I found the only time it hangs or stops responding is when I try to use colour replacement, which I haven’t gotten to work anyway- I think it’s designed mainly for NES games. It also creates a new ROM rather than overwriting the original, so the original ROM is safe.
For this I’d recommend creating a copy of your save file and renaming it CorruptedROM and placing it in the same folder as the corrupted ROM output, so the corrupted rom reads from that save file rather than creating a new one. Also, keep a backup of that one and replace regularly, though I’ve found minor corruptions (like sprite/animation changes) shouldn’t affect it.
Eventually I came across some unused maps in Rayman Advance through corruption. I was pretty impressed with myself at first, but later I found out someone else had already found them about a year earlier.
Vinesauce ROM Corruptor settings
Since I recorded that information, however, I managed to narrow down the corruption range so the level switcher still takes effect, but without excess corruption that may make it unplayable (such as the wonky hitboxes in the first recording of the forest level). Unfortunately, however, I’ve forgotten what this narrower range is. I’ll test it again and update it when I do. The first value in the replacement can be a different value too and the respective world will be changed, but I used the Blue Mountains. The rest should work, but I found the Dream Forest usually doesn’t.
Later I decided that merely breaking things wasn’t enough, I had to go and play God, too.
Vinesauce ROM Corruptor settings (Using the queue feature)
And here are the values that correspond to each sprite. Note that I haven’t done the hands and feet of the mother or any of the baby’s sprites yet.
I’ve tried doing similarly with Tarayzan, but unfortunately I just couldn’t get it to work. Almost an entire day of trial and error, and all I could get was the sprites themselves becoming glitched messes, incorrect animations playing, and Tarayzan disappearing altogether. The best I could get was switching his pointing hand into his body and vice-versa, couldn’t seem to get any of his other sprites to switch properly. That night, however, I got something cooler to happen. I found a way to change Rayman’s walk cycle into any of his other animations, including ones unused in the GBA port! I don't have a video yet but I will have one soon. I change Rayman’s other animations this way too as long as I find the byte range for them.
Here are the VineSauce ROM Corruptor settings for some of the ones I found to be significant or interesting.
I’ll probably update this post as I find more things. Feel free to contribute your own experiences, videos, screenshots and the like!
I've been doing these with Rayman Advance for a while now, and I decided that it'd be better to make my own topic for it than keep filling the Rayman 1 thread with my videos.
My earlier corruptions were done with the Erosion corruptor. This worked fine, but corrupting a file takes a considerable amount of time depending on how many bytes are corrupted. Also, it corrupts the file directly, and one must remember to restore the file after each corruption. Even then, however, if Erosion crashes during a corruption the file will remain corrupted and not be able to be restored.
It is VERY important to keep a backup of both the rom (in my case, a .gba file) and any save file that may accompany it. During my first round of Rayman Advance corruptions, the .save file actually became corrupted from playing a corrupted version of the .gba, since the .sav file updates automatically after playing whether anything was actually saved or not. I had to roll back the folder and its contents to recover my save files. Replace the .sav file with the fresh backup after each corruption for best results, and replace the .gba when necessary.
My latest round of corruptions was done using the Vinesauce ROM Corruptor, which took a little while to set up but was very worth it. Unlike Erosion, it creates the corrupt file instantly no matter how many bytes are corrupted. I found the only time it hangs or stops responding is when I try to use colour replacement, which I haven’t gotten to work anyway- I think it’s designed mainly for NES games. It also creates a new ROM rather than overwriting the original, so the original ROM is safe.
For this I’d recommend creating a copy of your save file and renaming it CorruptedROM and placing it in the same folder as the corrupted ROM output, so the corrupted rom reads from that save file rather than creating a new one. Also, keep a backup of that one and replace regularly, though I’ve found minor corruptions (like sprite/animation changes) shouldn’t affect it.
Eventually I came across some unused maps in Rayman Advance through corruption. I was pretty impressed with myself at first, but later I found out someone else had already found them about a year earlier.
Vinesauce ROM Corruptor settings
Code: Select all
540000 - 550000 replace 3 with 6 = Blue Mountains renamed Candy Chateau, opens Band Land level.
6 can be switched for 1, 2, 4, or 5, each number corresponding to the respective world (1 = Forest, 2 = Band Land, etc) which the Blue Mountains will be renamed to. The level, when entered will be something different, usually unplayable. Entering mr Stones Peaks with a 1 value (Forest) enters the Bzzit battle, but will freeze before Bzzit appears. Replacing the second value with 0, or 7 or higher, renames the Blue Mountains to the save file name, with interesting results.Later I decided that merely breaking things wasn’t enough, I had to go and play God, too.
Vinesauce ROM Corruptor settings (Using the queue feature)
Code: Select all
302995 – 304430 replace E with 2
302995 – 304430 replace F with 2
302995 – 304430 replace 10 with 2
302995 – 304430 replace 11 with 2
302995 – 304430 replace 12 with 2
302995 – 304430 replace 19 with 3
301A00 - 301FD5 replace 2 with E
301A00 - 301FD5 replace 3 with 19Code: Select all
302995 - 304430 = The Musician's sprites
(values E, F, 10-12 = The Musician's faces)
(14 = Hand pointing)
(15 = Hand resting)
(16 = Hand palm up)
(17 = Hand neck guitar)
(18 = Hand strum guitar)
(19 = Body)
(1A = Feet)
301A00 - 301FD5 = The Musician's wife and Child's sprites (2 = The mother's head) (3 = The mother's body)Here are the VineSauce ROM Corruptor settings for some of the ones I found to be significant or interesting.
Code: Select all
32CE25 - 32CE26 = Rayman's walk cycle animation, add to byte for interesting results.
(+16 = ????)
(+21 = Handstand kick)
(+26 = Helicopter. Hover Rayman!)
(+28 = Run... like you're in a dream)
(+29 = Ring swing that seems to do a full 180)
(+30 = Vibrating eggs? I remember seeing this in a sprite rip folder actually)
(+37 = Magic power gain sparkle, +38 = Magic power gain sparkle 2)
(+45 = Runjump twirl)
(+48 = Crawl)
(+50 = Slide, +51 = Slide backwards)
(+54 = Backwards crawl??)
(+56 = slightly broken handstand kick)
(+57 = Handstand idle, minus feet)
(+58 = Handstand walk, minus feet)
(+59 = The missing feet from the previous two...)
(+62 = Pained walk from Game Over)
(+67 = Cartwheels)
(+76 = Falling to death)
(+87 = 'Gun Dance' animation not used in the GBA port)
(+89 = Different entrance animation?)
(+90 = Non-GBA animation of Rayman being poked by a gun)
(+91 = Angrier version of the previous)
(+92 = Walk, stop, tap foot, +93 = the first half of that animation)
(+96 = Invisible jetski/motorbike beginning, +97 = The middle, +98 = the end of it)
(+99 = Game Over cough 'n' collapse)
(+100 = Game Over tiptoe) (+101 = Victory!)
(+102 to 105 = Idle/impatience animations)
(-16 = Handstand splits)
(-17 = Frightened handstand?)
(-22 = Unbroken handstand walk!)