Language…
14 users online: Batata Douce, DanMario24YT, DasFueller, Doopu, Everest, Gamet2004, Gorry, Green, JezJitzu, Mike777, Raychu2021, romw314, Rykon-V73, sinseiga - Guests: 271 - Bots: 310
Users: 64,795 (2,376 active)
Latest user: mathew

Inline Layer 3 Messages v1.0.1

SMW Patches → Inline Layer 3 Messages v1.0.1

Submission Details

Name: Inline Layer 3 Messages v1.0.1
Author: MarioFanGamer
Added:
Tool: Asar
Requires Free Space: Yes
Bug Fix: Yes
Featured: No
Description: This patch kind of fixes a ROM hack specific bug where you can't use message boxes within sublevels which have got a layer 3 background (or foreground such as tides).
I changed this so layer 3 backgrounds and layer 3 messages can coexist while keeping the vanilla message system (text, Yoshi's House and switch palace).
As a bonus, it also fixes level modes 0E, 0F, 1E and 1F (all BG modes with colour maths) where the message doesn't get displayed properly.

Be sure to read the readme before you apply it!
Tags: lorom message sa-1 tilemap yoshi
Comments: 19 (jump to comments)
Download 113.05 KiB | 805 downloads

Screenshots

View all

Comments (19)

AntonioDosGames Link
Guys! For those who are having problems with the game crashing after the battle with Bowser in the game, I got a solution.
I will explain step by step.

1. Leave the !Hijack at 1. If you leave it at 0, you'll need UberASM, and I believe it bugs the battle with Bowser.

2. If you had previously applied UberASM, remove it.

3. The InlineMessageNmi.asm file would be the file to be applied in the UberASM tool. But since we won't be using it, you should leave it in the Asar folder.

4. Apply the "InlineLayer3Message.asm" patch. Not to be confused with "InlineMessageNmi.asm".

4. Enjoy!

If it didn't work, try again, see if those codes that  LadiesMan217 mentioned are there (if so, delete them). If your hack has FastROM, make the modification that the Swaguy14256 mentioned. Hope this really helps.
AntonioDosGames Link
It's a very interesting patch for those who want to use messages in stages that use layer 3, but there's a catch, when you fight Bowser, it works normally, but when the peach scene comes down from the koopa clown, the game simply crashes, and I want this fixed as I want to use this patch. And I want to use vanilla Bowser. Here is an image for you to understand better:

spooonsss Link
Not compatible with Kevin's UberASM "Retry System (+ Multiple Checkpoints)": it doesn't set $1426 unlike the retry patch. Game crashes if Mario dies after hitting a messagebox but before the message shows up. I tried with latest retry and a clean UberASM, it seems to work fine. Sorry for wasting time :)
 Kevin Link
I tried it and it doesn't crash, with the latest Retry (0.4.4)
 LadiesMan217 Link
There’s one bug that doesn’t normally mess with the vanilla game but if you have plans to use LDA #$0B : STA $71 to freeze Mario (through sprites, uberasm, etc), this patch will crash the game since it remaps $1B88’s values. Simply changing $00C5D2 to 0A will fix this bug.

EDIT: This fixed the issue described but broke the fade out to credits after rescuing Peach. The solution to have both working is to go in the patch and at the bottom change it likeso:

EDIT 2: Fatal crash if using said code outside of Bowser. Honestly its better to just use the code at $00F62D to disable inputs rather than using animation B but in case anyone would like to use the animation in multiple accounts vs writing 8 bytes of code every single instance vs 4 you can do this:

Code
HijackNmi:
    	LDX #!SprSize-1
-
	LDA !9E,x
	CMP #$7C
	BEQ .FoundPeach
	DEX
	BPL -
	BRA ++
.FoundPeach
	LDA $71
	CMP #$0B
	BEQ +
++
	JSL nmi
+
	LDA $143A|!addr
	BEQ +
	JML $008212|!bank
+
	JML $008217|!bank

Then mke a hijack at $00C5D1 likeso:

Code
org $00C5D1
autoclean JML FreezePlayerFix
	NOP

freecode

FreezePlayerFix:
	LDX #!SprSize-1
-
	LDA !9E,x
	CMP #$7C
	BEQ +
	DEX
	BPL -
	BRA ++
+
	LDA #$01					;$00C5D1	|
	BRA +
++
	LDA #$0A
+
	STA $1B88|!addr				;$00C5D3	|
	JML $00C5D6|!bank


Again, it's probably better to just use the input disable routine but for someone like me 2 years into my hack and not knowing exactly every instance I used animation B, this was the fastest way to make sure nothing crashed vs hunting down every animation B instance I had.
Swaguy14256 Link
Originally posted by AmazingChest
I've inserted this no problem on a custom baserom but for some reason it won't insert on the RHR baserom v4. Even though I definitely have edited the messages prior to insertion, it always fails and gives the error: "Please edit the messages at least once before you apply this patch."


Check if the ROM uses FastROM addressing. If it does, you need to change "assert read4($05B1A3) == $03BB9022" into "assert read4($05B1A3) == $83BB9022".
AmazingChest Link
I've inserted this no problem on a custom baserom but for some reason it won't insert on the RHR baserom v4. Even though I definitely have edited the messages prior to insertion, it always fails and gives the error: "Please edit the messages at least once before you apply this patch."
El Cuh Fermin Link
This also works with HDMA. When it hits a message box. It works good. Great patch
JamesD28 Link
Tested with:

• Lunar Magic 3.30
• SA-1 Pack v1.40
• SA-1 Pack v1.32 (DMA remap test)
• Asar v1.81
• Snes9x v1.60
• bsnes plus v05
• Retry System (+ Multiple Checkpoints) v2.06c

NMI code (!HijackNmi = 0) tested with:

• UberASMTool 1.4

There were initially some issues with the Palace !-blocks, which have been fixed by the author in the 1.0.1 version. Everything else works perfectly, so, accepted. It sure is a nice thing to be able to use layer 3 with the original message box system, and in terms of ease of installation, this patch is certainly nice and simple to get working.
 Donut Link
I really like the demo that comes with this patch, it's cute!
Also this patch is really useful...
Anas Link
Originally posted by MarioFanGamer
Originally posted by Anas
I applied this on my SA-1 1.40 ROM with the layer 3 subscreen fix and Mario 8x8 DMAer patches applied beforehand and whenever a message pops up, the entire screen goes entirely black except for the message and status bar. What could be the reason?

First guess: SA-1 v1.40 since that remaps the HDMA channels and I ended up using the vanilla setting since I never planned for it.


In that case, what should I do to fix it?
 MarioFanGamer Author Link
Originally posted by Anas
I applied this on my SA-1 1.40 ROM with the layer 3 subscreen fix and Mario 8x8 DMAer patches applied beforehand and whenever a message pops up, the entire screen goes entirely black except for the message and status bar. What could be the reason?

First guess: SA-1 v1.40 since that remaps the HDMA channels and I ended up using the vanilla setting since I never planned for it.

Originally posted by BlueToad
Does it remove the status bar? From the screenshots it seems that it does.

It's because I use fullscreen layer 3 tilemaps and I have chosen the simplest option to remove SMW's status bar. It has been tested the vanilla status bar, though.
Anas Link
Originally posted by BlueToad
Does it remove the status bar? From the screenshots it seems that it does.


No, it does not. The status bar was removed in the GIFs separately for showoff.
BlueToad Link
Does it remove the status bar? From the screenshots it seems that it does.
simon.caio Link
thought that is exactly what I need but sadly it isn't compatible with the retry patch (at least d^4 retry patch)...
Anas Link
I applied this on my SA-1 1.40 ROM with the layer 3 subscreen fix and Mario 8x8 DMAer patches applied beforehand and whenever a message pops up, the entire screen goes entirely black except for the message and status bar. What could be the reason?
Hayashi Neru Link
Compared to the sprite message box. If you are using the Sprite Status Bar, this patch is recommended, and if using Mode 0, Mode 2~7 or 4bpp messages, the sprite message box is recommended.
Unfortunately, these two patches cannot be used together.
Klug Link
Interesting choice, might gonna use it right now.
El Cuh Fermin Link
Awesome patch. I will basically need this when I use the layer 3 stuff.