Name: | Custom Scroll Limits (+ Megaman Flip Screen Effect) |
Author: | HammerBrother |
Added: | |
Type: | Level |
Includes GFX: | No |
Includes Hijack: | Yes |
Featured: | No |
Description: | This ASM pack enables you to have custom scroll limits in your level. It also comes with a feature of a flip-screen effect seen in Megaman, Metroid, Legend of Zelda, Celeste and many others to divide a level into rooms. These can easily be set by editing the table. Of course, I also made a single screen version (but each zone will always be 256x256, not overlapping). Very useful for designing levels to have areas where you don't want horizontal or vertical scrolls. |
Tags: | screen scroll |
Comments: | 11 (jump to comments) |
Rating: |
Download
1.11 MiB | 423 downloads
Comments (11)
In Disable Screen Barrier via RAM, change !Freeram_DisableBarrier = $60 to !Freeram_DisableBarrier = $5C.
In Sprite Scroll Fix, change !Freeram_PrevPos = $60 to !Freeram_PrevPos = $7F844D.
(thanks ghb for figuring it out!)
Edit: I tested it proper fully now and it works.
I was thinking of this too, but sadly no, since the sprite spawning is handled by LM.
One thing you can do however is not place sprites using LM, but manually using uberasm tool (loop all 12/22 slots). The provided routines (UberasmTool/libraryLibraryScrollLimits.asm) comes with an output that indicates the beginning or end of the scroll effect:
I would recommend the latter option, after calling it, check the carry flag or $0D and from there write your own ASM code that do this:
You first delete the sprites (all 12/22 slots) before spawning the new ones (in the screen the player is going to).
Make sure all the sprites in the area processes off-screen (especially if the zone is more than a single screen wide or tall, else they would permanently disappear when despawning until you reenter the scroll zone). This can be done by setting $167A's bit 2 (%-----P--, ORA.b #%00000100 : STA !167A,x).
Note that this method causes the whole area to be limited to 12/22 sprite slots
A vanilla method in doing this can be achieved by using separate levels, but I would like hackers to be able to have multiple scroll sections per level, giving it a somewhat seamless transition without the reloading and fading to black.