This patch creates a prompt that lets players choose whether to restart a level fast without visiting the map when they die. Probably useful for hard or kaizo-light difficulty hacks.
1) fast reset without having overworld transitions
2) some global/local(level-based) customization; make the prompt skippable, set the sfx, etc.
3) an easily configurable multiple midway system (provided by default) for both respawning locations and entrances from the map
4) compatible with the existing multiple midway patch(by Kaijyuu and LX5); mario will be respawned at its extra midway points
- Only one of those two multiple midway systems can be used. If you use Kaijyuu's patch, the default multiple midway system will be disabled.
- Instinctively tapping the button will make the prompt show up faster.
You can get a new version from https://www.smwcentral.net/?p=section&a=details&id=16304
It's almost same as the version in kldc base rom which had a number of testers, so I guess it's safe to replace the old one right now.
This version has a couple of serious bugs which I already fixed for KLDC base rom, but I'm not ready to release the next version because I've been too busy. Things changed/added in the next version are:
- no yoshi entrance glitch which MarioFanGamer mentioned
- a glitch that restarting a level sometimes skips loading music sample when it's not supposed to do
- a way of escaping levels when you use the "no window" option (start+select)
- some minor inconsistency with pipe entrances
- other things I cannot remember
Response to MarioFanGamer:
- About the glitch that always brings you to the main entrance, if I remember correctly, that happens only when the level is unchanged vanilla, which might not be the case any hack encounters. However I might as well check this again when time allows.
- I found it is easier to manage midways with Kaijyuu's version, especially when I had to handle a huge project. It's because I could edit the midway positions by just dragging the entrances in LM, which is more efficient and intuitive than editing a text of coordinates. I also believe that all of 512 secondary entrances won't be used in most cases. (But I agree Kaijyuu's version could have been better by not using the table of a fixed length)
- I made the sprite initial facing routine work like that because I wanted this patch could be applied to hacks in progress, without corrupting existing levels (levels which might exploit the initial facing bug, and levels where the sprite initial patch was already inserted conversely)
Especially if you create harder or even Kaizo hacks, this patch is one of them which you should keep in mind. That way, you increase the flow or playing because you don't return to the overworld the whole time if you die (which happens a lot in these hacks, btw).
But first we come to the negative points:
Because of the windowing/ masking and layer 3 stuff a la message boxes, it naturally has got a couple problems with these (though layer 3 just disappear" but also Mode 7 (and technically the other BGM but they're rare, the tilemap also disappear similar to layer 3) and some kinds of colour maths (e.g. these in the dark rooms in Bowser's Castle). But these are comparably minor, since they only disappear for a short time anyway.
There is a different story regarding the midway points: If you restart a level, you will be put to the main entrance regardless on whether you passed the midpoint or not. The only way to fix that is to give the midway point seperate attributes in Lunar Magic. You don't need to make every midway and main entrance seperated, only the hijacks are required since the.
It also hijacks the routine which branches to the message box messages. That is a problem since patches which modifies the message system (e.g. message box expansion) uses the same hijack. It'll be nice if you've found a workaround for that.
Speaking of incompatibility: I personally find imamelia's MMP better so it's a pity that you can only use Kajyuu's version.
Now we come to the two bigger problems:
The first problem is that if you reenter a level with a no-Yoshi entrance, it not only plays again even with the midway point, it ends up being glitched. It's fine without the midway point but with it is a different story.
The second one is that the patch somehow messes up Mode 7 bosses. But only if you have activated the extra checkpoints their rooms. It's fine if they're placed outside but once you activate them in the mode 7 rooms, they'll start to glitch. If the check isn't set than the graphics work fine.
Both only appear if one doesn't use MMP.
I also am not really happy about the included sprite init facing fix since you have literally put the whole patch in the retry patch with the exception that you added checks that this fix only applies if you use the restart. Very unecessary, especially since you can easily remove the conditions. Either have this included with the patch or leave it out but please, don't do this (at least I wouldn't do this).
However, the most impressive point is on how the code reads from the ROM itself and not with the Asar-conditions. That way, you don't have to repatch the retry patch everytime you use the other patches or tools, though I would have used Asar conditions at some places instead.
I know, using Asar condition reduces the user-frendliness a bit but saves a couple of ROM space, not to mention that it makes sense at some places.
All in together, I went to accept it but keep the two major problems in mind.
Very useful patch, the best advantage is fast back to action and the checkpoint system that can aliviate the frustation with hard hacks.
But it's not recomended use this on hacks that use Layer 3 or hdma because the prompt make them disapear.
But of course you can use the option that automatically respawn Mario from the last checkpoint, but I'd like to hear the death jingle for that option too.