Language…
18 users online:  BeeKaay,  Blaagon, ForthRightMC, Golden Yoshi, Gorry, Green, JezJitzu, JPhanto, mathew, Maw, Metal-Yoshi94, OrangeBronzeDaisy, PuffleDreemurr, Ray Hamilton, ShoopDaWhoop, Skystarmania, Super Nikuworld, vktr - Guests: 273 - Bots: 427
Users: 64,795 (2,370 active)
Latest user: mathew

LMSW: An emulator inside Lunar Magic

Originally posted by Alcaro
Originally posted by Lotica
I wish we could have the ability to test out the overworld with the built-in emulator, but I guess that's something for the drawing board.

Quote
and perhaps add OW support

I believe the overworld is too small for that to be useful. What is there to test on the overworld, anyways?


Well, just to make sure if anything complicated is added to the overworld works properly and just basic monitoring of the overworld. If we're going to do it for the levels, we might as well expand it.
Click here to enter the world of mediocre!
Originally posted by Alcaro
Yes, it loads the target level through a screen exit from C5. It was easier that way, especially on levels that can't be entered from the overworld in the first place, e.g. level 180. Tick the "always reset time limit" (or whatever) button if you find it important enoug.

For me the time limit always seems to be set to 300 no matter what I do... I was hoping I could set C5's time limit to 000 so that I wouldn't have to worry about the time running out while testing, but it's already set to that and changing it doesn't seem to work...

While playing around with it I noticed that an unmodified level EA takes you to the top of level 100. This doesn't happen on a clean ROM, but it does on modified ones.

This is probably just a problem with my keyboard, but I seem to have problems pressing three keys at once... If I try to run right and jump, it won't work... but the weird thing is that it does work when I'm going left. o_O

Also, would it be possible to make it so you can drag Mario around when in sprite editing mode so that you could test parts of a level without having to play the whole thing?

P.S. What does "LMSW" stand for, anyway?

<form action=http://google.com/search method=get> </form>

Unexpected end tag (</form>) at 1556, expected </div>
So, I downloaded the whole shebang, and it all actually works fairly well. There seems to be a bit of an issue with lag sometimes, but the convenience that the affixed emulator brings, being able to test levels on the fly and fix problems while still playing is stunning. Being able to test levels without needing the savestate outside of the area being tested will make things much more of a breeze.

It's also very amusing to see Mario in the Lunar Magic editing screen, especially when the background does not scroll, and the game looks exactly like the editor.


Other Submissions of mine!
Originally posted by Lotica
Well, just to make sure if anything complicated is added to the overworld works properly and just basic monitoring of the overworld. If we're going to do it for the levels, we might as well expand it.

I believe the effort/reward tradeoff is too low for that. Just open an external emulator instead, the overworld needs far less testing than levels.

Originally posted by Epsilon
While playing around with it I noticed that an unmodified level EA takes you to the top of level 100. This doesn't happen on a clean ROM, but it does on modified ones.

I saved level 105 on a clean ROM and opened level EA in LMSW. I got to level EA. Can't reproduce.

Quote
This is probably just a problem with my keyboard, but I seem to have problems pressing three keys at once... If I try to run right and jump, it won't work... but the weird thing is that it does work when I'm going left. o_O

Yeah, that's just your keyboard. I can reproduce it on my laptop, but not my main computer.

Quote
Also, would it be possible to make it so you can drag Mario around when in sprite editing mode so that you could test parts of a level without having to play the whole thing?

I don't think I can do that, but I think FuSoYa has that planned for a future LM.

You'll have to reboot LMSW for it to take effect, though.

Quote
P.S. What does "LMSW" stand for, anyway?

LM is obvious. SW is from uswe, Unlimited/Ultimate (I forgot) Super Mario World Editor (usmwe was too long, so I cut out a letter), which didn't use LM. It looked like this before I decided that pulling out Header Magic and shoving it into LM makes my job easier.

Originally posted by Deeke
Being able to test levels without needing the savestate outside of the area being tested will make things much more of a breeze.

No savestates inside the level, though. *insert smilies*

I'm currently working on editing the format of the configuration files. I don't think I'll get done before C3 ends, but I'll make a new thread somewhere. Hack Discussion, Advanced SMW Hacking, or somewhere else?
<blm> zsnes users are the flatearthers of emulation
Originally posted by Alcaro
Originally posted by Epsilon
While playing around with it I noticed that an unmodified level EA takes you to the top of level 100. This doesn't happen on a clean ROM, but it does on modified ones.

I saved level 105 on a clean ROM and opened level EA in LMSW. I got to level EA. Can't reproduce.

Sorry, what I meant was if you go through a pipe in level EA then you'll go to the bonus game instead of level 1D. It happens on most of the test ROMs/hacks I've tested, but not all of them. I made an IPS patch of a mostly clean ROM (just with Lunar Magic ASM hacks) that you can try.

<form action=http://google.com/search method=get> </form>

Unexpected end tag (</form>) at 1126, expected </div>
#w{=|}
Okay, just awesome. It reminds me of how you can edit stuff in SMBX's level editor while playtesting.
Kinda in hibernation for a while. I hope to be back in full swing soon.
I vote Alcaro for admin!

Now we can test certain portions of our level without having to go through other parts.
don't click this link...
Originally posted by Epsilon
Originally posted by Alcaro
Originally posted by Epsilon
While playing around with it I noticed that an unmodified level EA takes you to the top of level 100. This doesn't happen on a clean ROM, but it does on modified ones.

I saved level 105 on a clean ROM and opened level EA in LMSW. I got to level EA. Can't reproduce.

Sorry, what I meant was if you go through a pipe in level EA then you'll go to the bonus game instead of level 1D. It happens on most of the test ROMs/hacks I've tested, but not all of them. I made an IPS patch of a mostly clean ROM (just with Lunar Magic ASM hacks) that you can try.

Okay, now I can reproduce it, but I have no idea what's happening. I'll study it some time when it's not past midnight.

Originally posted by mathelete
Now we can test certain portions of our level without having to go through other parts.

Yes thank you Captain Obvious. How could I miss that?

Either way, here's another update. Changelog:
  • Replaced the configuration format. It's now editable with a text editor, and extensible as well.
  • Added a "fog of war" setting to the configuration file.
  • Squished the bug that made goal tapes bug up if a message box is hit earlier in the level.
  • Put back the readme. I made it a week or so ago, but forgot putting it in the zip, and then I went on vacation and lost access to that document.
  • Made the code compile cleanly with -Wall.
  • I'm sure there are a bunch of other changes, but I can't remember them.

<blm> zsnes users are the flatearthers of emulation
im a noob but everytime i go in a pipe the game freezes and then closes emulator and give an error message of not being able to continue or something and OW would be useful because you can test the OW easily.
If anyone would do this, I would like someone to make (and send) me a version of Ladida's Minimalist Status Bar (the double version), that works with the coponies patch created by Noobish Noobsicle. (yes I know this is impractical.)

[Friday 07:21:55pm] PatPatPat I'm still sad that my big gay dance is gone
Originally posted by MarioMaster12
im a noob but everytime i go in a pipe the game freezes and then closes emulator and give an error message of not being able to continue or something and OW would be useful because you can test the OW easily.

The OW is not needed at all; you can always just move the Mario sprite to another level and start a new game to test events or something.
LINKS Twitter | YouTube | SoundCloud | Fortaleza Reznor
to hear birds and see none.
Just tried this out. A few things to report:

- Sometimes, when loading a level (either when starting the emulator or when taking a screen exit to another level), the game immediately pauses, and refuses to unpause.
- If I switch to sprite editing mode and back, all sprites in the emulated level reset to their original positions (unless it's something like Mario riding Yoshi), even if they were still on-screen. (It can even cause an enemy to warp right on top of Mario.)
- ! blocks are never filled in, regardless of whether Lunar Magic is set to have them filled in.
- Custom objects show up in their glitchy LM form, not the way they should appear in-game.

Also, am I correct to assume that it always warps from level C5, even if the game starts in level 1C5? (One of my hacks stores 00 to various bytes of SRAM in levelinit1C5, but the status bar displayed them as whatever glitchy value they start as.)

I still don't find this that useful for testing gameplay (it doesn't give the same feel as playing the level in a normal emulator), though it seems convenient for things like setting initial layer 1/2 positions, as well as for just having fun with. Though it would be nice if it could load from midway/secondary entrances...

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
Originally posted by Zeldara109
It doesn't seem that useful for me (it probably takes like 5 seconds for me to save a level, re-open the ROM, and load an overworld savestate in the emulator, and saving a few seconds in exchange for dealing with not-in-the-actual-game glitches doesn't seem worth it), but impressive nonetheless.

Though I'm anticipating all sorts of issues if it doesn't keep track of things like $13BF. (I get the feeling that someone will design an entire level with the wrong creating block path (depends on submap) at some point, due to a failure to test it outside of Lunar Magic...)

Yeah, there are some problems I have with it as well, namely custom objects: any level dependent on them won't play correctly. It's definitely a great idea, though, and one that I'm sure will prove very useful to a lot of people. Kudos to Alcaro for making it and FuSoYa for supporting it.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
New bug: I started at level E3, took the pipe to 15, then tried to go back to E3, but it took me to 1E3 instead. :/

Edit: After testing the patch I linked earlier, I found that the pipe in E3 goes to a pipe in level 103... I think it's the same bug as before. Secondary Exits are sometimes adding/subtracting 100 from the destination's level number for some reason.

<form action=http://google.com/search method=get> </form>

Unexpected end tag (</form>) at 661, expected </div>
Oh yeah... the exit issue is probably a $13BF related problem. If a level has already been saved in LM it'll be fine, but for original levels that LM hasn't touched yet there's code that falls back on reading $13BF to determine how to handle the exit.

If starting on a level <0x100 then $13BF should be set to something <=0x24, otherwise it should be set to something >=0x25.
I get the LM part, but what does SW stand for?
Re-registered as Roadsguy.
Alcaro likes to act like it means "Secret Window" but in reality he just took away the Mario in "Super Mario World".
This is "Lunar Magic Super World".
Your layout has been removed.
Originally posted by Zeldara109
- Sometimes, when loading a level (either when starting the emulator or when taking a screen exit to another level), the game immediately pauses, and refuses to unpause.

Could it possibly be sprite editing mode randomly triggering for some unobvious reason?

Originally posted by mariomaster12
because you can test the OW easily

Which is why it's not needed. There's very little to test on the overworld, and most of it can already be done in LM.
I will not make this. This is my final decision and I will not change it.

Originally posted by Ayosuf
Oh yeah... the exit issue is probably a $13BF related problem. If a level has already been saved in LM it'll be fine, but for original levels that LM hasn't touched yet there's code that falls back on reading $13BF to determine how to handle the exit.

If starting on a level <0x100 then $13BF should be set to something <=0x24, otherwise it should be set to something >=0x25.

Huh. Okay.

Guess I should lock it to (levelnum>>2)&0x40 then.

Originally posted by leod
Alcaro likes to act like it means "Secret Window" but in reality he just took away the Mario in "Super Mario World".
This is "Lunar Magic Super World".

Better explaination:
Originally posted by Alcaro
Quote
P.S. What does "LMSW" stand for, anyway?

LM is obvious. SW is from uswe, Unlimited/Ultimate (I forgot) Super Mario World Editor (usmwe was too long, so I cut out a letter), which didn't use LM. It looked like this before I decided that pulling out Header Magic and shoving it into LM makes my job easier.

<blm> zsnes users are the flatearthers of emulation
Originally posted by leod
Alcaro likes to act like it means "Secret Window"

"Secret Window" is actually what I came up with when trying to figure out the meaning (assuming he didn't have that in mind prior to that).


 
I thought of that as well. But it could have been "Secret Work".
I find it kinda annoying how the emulator shifts back to the left side of the screen when you go all the way to the right, though that's just a minor complaint of mine.

Overall, I'd say this was my favorite release of this C3. Good job Alcaro!