The reason why I haven't ripped any DAC out of GEMS games yet is because I was planning on documenting the locations of the data in every GEMS game one day. It's actually really trivial since the GEMS initialization routine takes the pointers to everything, so all I would need to know is the size of the item on the list closest to the end of the ROM (assuming it's all contiguous, that is).
Rings are obj25. In Sonic 1, rings are treated the same way as any other object, so by disabling obj25 you'll remove all rings. However, Sonic 2 treats rings as a special case and normally doesn't use obj25. Instead, rings are handled by the RingsManager routine, so you need to stop this from running. If you're using SonEd2, that means you're using a split disassembly. So, to make changes to the code, you just need to open "s2.asm" in a text editor, do a search for the thing you want (in this case, "RingsManager"), make the change and then save and build. If you don't know how to code in ASM, don't worry, as you'll be able to get by with just two things! First, a semicolon ";" means a comment, so place this in front of individual lines to prevent them from executing. Secondly, "rts" means "return from subroutine", so place this within a block of code to stop anything below it executing. In your case, you want to type it just below the "RingsManger:" label, so that any time it tries to run it immediately exits again.
This is pretty glitchy - the explosions are random letters and the flickies are letters as well. Also, I paused it and the game froze.
Sonic 2 Secret Rings Control, a port of SatSR's controls to S2. Tails is disabled, 2P is disabled, the level select screen always appears when starting the game. Controls: Press nothing to move forward Press the opposite direction to walk backwards Press C to jump Press C while jumping to do a homing attack or jump dash Jump while holding back to hop backwards, but this leaves you vulnerable Hold B to stop Press B in the air to do a jump cancel (stop moving forwards and shoot down) Hold B or back while in the air to not move forwards Hold A to perform Speed Break, draining your rings and making you invincible Sonic will turn around when he hits: a spring, a CPZ booster, or the bouncy walls in Metropolis.
Gave this a try and it's certainly interesting. Managed to get through all of Emerald Hill and then got stuck in the first act of Chemical Plant thanks to not being able to go the other direction. Still, it's pretty fun, good work!
MainMemory, I am determined to beat each zone in this manner! I love a good challenge. EDIT: Case in point:
Updated with fixed homing attack, now targets badniks, monitors, bosses, springs, signpost, breakable block, bumpers.
This reminds me: the Sonic 2 Secret Rings Edition should have a challenge called "Hold Right to Win". This playability should be included in that game ALONG WITH THAT CHALLENGE. The legitimate "Hold Right to Win" challenge was just made by MainMemory. We just need to implement this as a challenge mode in Sonic 2 Secret Rings Edition and voilá (is this how this word is written?).
Well, I'd pretty much have to make two versions of each of Sonic's movement routines, but I could probably do it.
Well, they challenged you to put this challenge in that hack once. And it seems you've finally reached the feat with this hack.
This is kind of fun. Boss fights are crazy, and SCZ. Bug: At the shield monitor near the start of MCZ1 (after breaking it), if you jump and do a homing attack Sonic gets pushed through the ground, or if you jump and do a Speed Break Sonic falls through the ground. It happens all over but this is a convenient place to test both problems. Bug: If you Speed Break into the lava at the HTZ boss, you'll get hit and instantly drop rings, even though you were invincible, and if you had a shield you lose your rings and the shield at the same time. Bug: The background layer has trouble keeping up with Sonic when he's using Speed Break. I'll reach the end of ARZ1 and then the leaves scroll in later. Intentional?
While it is a nice idea to home into such objects, it seems to suffer the same issue that I came across when homing into such objects. If you are at the wrong height compared to the object, you might home into the side of a spring or block. I suppose the code could be altered in those objects themselves to check for homing attack, though. Nice concept for a hack, however. It makes for a good challenge.
Oh, I guess I'm not, but I couldn't see it happen from running at red spring speed through the second part of ARZ1 in the original. Maybe it has to do with maintaining that speed over a longer time period, which this hack makes easy to do. Never mind on that one.
Is it actually possible to pass every act without the use of glitches? I can't figure out how to get past CPZ Act 2 (although the screenshot on the last page suggests that one is possible), and I only got through MCZ1 thanks to a very lucky jump onto the top of a closed bridge-wall thingy, and spindashed through.
That's why jump cancel works even during a homing attack. And yes, speed break is very buggy, mostly because you move very fast, but I'm not sure why it allows you to fall through floors. And I've never been able to beat CPZ2 either. I would have liked an object like a path swapper that I could place when you need to turn around and a spring won't work, but I know nothing about programming new objects.
Am I supposed to be able to perform the spin dash? (ffff, I kept Gens's window in the screenshot to show that this is the "secret rings control" version and not regular Sonic 2, but it was truncated)
Alright, let me try again then: If you enter a CPZ tube while using the dash move thing, the stars will stay with you as long as you are in the tube. Rings aren't depleted though.