Language…
10 users online: Batata Douce, crocodileman94, Darolac, DasFueller, Dzing, Gamet2004, Hammerer,  icrawfish,  Nanako, Rykon-V73 - Guests: 285 - Bots: 312
Users: 64,795 (2,377 active)
Latest user: mathew

Lunar Magic suggestions and discussion (LM v3.40)

Tool


I noticed that there are a lot of overworld water path tiles that lack ground equivalents.
You've done some editing with these kinds of tiles (tiles C and 13, yeah?), so is it possible to do something similar with these tiles?

I'd also like to suggest the ability to make any of those blank 16x16 overworld tiles into another path of one's own choosing, but I feel like a lot of this is limited by hardcoded shenanigans.


Other Submissions of mine!
I tried out Lunar Magic's new report feature, and it seems very rudimentary.

Does it really need to tell you the number of times all 65,000+ tiles are used? ~99% of the counts will be 0 and will be from unedited tiles. It would be nice if it only logged the counts of map16 tiles that have been edited.


Don't log these tiles because they haven't been edited.

And does it really need to log all 4,000+ graphics files, even the ones that aren't inserted? If the log says that a file is used 0 times, it doesn't tell you if it's 0 because it's not inserted or if it's inserted and not used, and I would REALLY want to know which graphics files are inserted but not used. It even logs files 34 through 7E, which Lunar Magic specifically says to not use.

It would also be nice if the report was in HTML format instead of txt format because HTML looks nicer and you can make things different colors and put links to the sections at the top of the page. For example, if a graphics file is inserted but not used, that line could be colored red so your attention is drawn to that line.

In conclusion, the log file is very bloated with lots of information you don't need and is a big disappointment right now. Lets hope the people in charge of Lunar Magic implement my suggestions and make the file easier to read.

Click the character on the right side of my layout to visit my Discord server and discuss and play and look at and get updates and sneak peeks of the games and other things I'm making.

The authors of these 2 My Little Pony fan games have removed their games from the Internet.
Rise of the Clockwork Stallions has been updated! Download My Little Pony: Rise of the Clockwork Stallions DX: Director's Cut and My Little Pony: Magic Shards now! Spread this link!

I'm not sure if the following is intended but I'm having some odd behavior while placing rotating platforms in Lunar Magic (current version 3.03).

The first one is while placing the Rotating Falling Platform (sprite 5F) at the very bottom of a level. It doesn't seem to spawn in game.

Also, you can lower it down quite further than the bottom of the screen and it fails to spawn as well.

The lowest it can go until it spawns is the second last tile.


While placing the Grey Single Rotating Platform (sprite A3) near the bottom of the level it works just fine.

You can even place it lower so it wraps to the second screen and it works just fine rotating at the bottom of screen 1.

In fact, you can literally place it off screen (dragging it one tile below the bottom of screen 1 into the blackness so it wraps completely to screen 2) and it still works fine and rotates at the bottom of screen 1! Which is pretty cool behavior by the way.


Lastly, the Three Rotating Platforms (sprite E0) can be placed a few tiles below the bottom of screen 1 and function fine.


So the behavior of these 3 sprites is inconsistent, and I was wondering if it were within the realms of Lunar Magic to make all 3 act similar to the Single Rotating Platform; allowing it to spawn closer to, and even off the bottom of the screen?
edit: Looks like LM takes the animation data from wherever $05BB94 points to, and that's what my patch overwrote. Using a different hijack did the trick.

How does Lunar Magic display SMW's tile animations?

I'm asking because I made a patch that changes the index to the animation table ($05B999) under certain circumstances, and after applying it, all original animations are garbled in LM (though they still work fine in-game). I'm not touching the animation table as far as I'm aware, only the index. There's nothing about that area in the hijack map either.

Is there something in LM I need to work around?

Code
org $05BB92
	autoclean JML ChangeAnimatedTileIndex

freecode
ChangeAnimatedTileIndex:

	SEP #$10
	LDY !SomeRAM
	BEQ .normal
	CMP #$0168
	BCC .normal
	CMP #$0178
	BCS .normal
.changeIndex
	LDA #$0030
.normal
	REP #$10
	TAX
	LDA $05B999,x
	JML $05BB96


 



 
Oh yeah, another annoyance I've had with Lm is this:



I have always found these (entrance to level.. / secondary exit / midway entrance text) being overly long, so option to either shorten it, or hide it(without also hiding mario) would be handy.
Originally posted by JP32
I have always found these (entrance to level.. / secondary exit / midway entrance text) being overly long, so option to either shorten it, or hide it(without also hiding mario) would be handy.

I second this motion. I often find myself moving Mario out of his starting position in the editor while I make polishes and changes because I can't see what I'm doing due to the text bar. A simple hotkey to hide it would be wonderful.
                                                                                                                  
                              
You can use F5/F6/F7 to hide the main entrance, secondary entrances, and midway entrance respectively, or if you're on Lunar Magic 3.03, F5 will hide all of them.

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

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Originally posted by imamelia
You can use F5/F6/F7 to hide the main entrance, secondary entrances, and midway entrance respectively, or if you're on Lunar Magic 3.03, F5 will hide all of them.


That's true, but it can still be very handy to know where entrances are without having to juggle between making all of them invisible and visible.
Something like a tiny door icon to represent the entrance, the midway tape to represent the midway point, and a little pipe for secondary entrances (with the relevant numbers next to those) would make things still simple to parse, but not so obtrusive.


Other Submissions of mine!
Add a fill feature like in Super Mario Bros X.
Userbar made by Green Jerry




Originally posted by toad64
Add a fill feature like in Super Mario Bros X.

That already exists (Ctrl-Shift-right click from the Map16 editor).


 
Originally posted by WhiteYoshiEgg
Originally posted by toad64
Add a fill feature like in Super Mario Bros X.

That already exists (Ctrl-Shift-right click from the Map16 editor).
I didn't actually know that the fill feature is in lunar magic, Oops.

:(
Userbar made by Green Jerry




Originally posted by JP32
Since levels can be extra large now, having option to drag through level with holding right/middle mouse button down and moving mouse(or hell even with just ASDW) like you can do with paint.net or photoshop would be handy.


I usually just hold down the left mouse button to start a selection on an empty square and move the mouse along the window border to scroll.

Originally posted by Roberto zampari
When i use the extra large levels, you need to remove some useless screens that won't appear in-game. Renember the Yoshi's Island level editor called Golden Egg? I have the same thing. I mean, the level section will access the level screens if have layer 1 tiles. This is a reference to the Golden Egg.


Vitor had some thoughts about something similar, so maybe someday.

Originally posted by Deeke
You've done some editing with these kinds of tiles (tiles C and 13, yeah?), so is it possible to do something similar with these tiles?


LM didn't change the actual behavior of those two, it only changed the path it displayed for them in the editor. It did tweak the path behavior of some other tile in the past to fix a certain issue, though that was about a decade ago.

Adding more water path tiles is something that's come up now and then before. Could be a useful addition to look into sometime.

Originally posted by Deeke
I'd also like to suggest the ability to make any of those blank 16x16 overworld tiles into another path of one's own choosing, but I feel like a lot of this is limited by hardcoded shenanigans.


Haven't looked too closely at it, but it's likely a mix of hard coded bits and small tables everywhere. Which probably describes most of the overworld...

Originally posted by DPBOX
Does it really need to tell you the number of times all 65,000+ tiles are used? ~99% of the counts will be 0 and will be from unedited tiles. It would be nice if it only logged the counts of map16 tiles that have been edited.


Edited or used perhaps. Not that anyone should be throwing unedited tiles into their level, but if it does happen it'd be best to still have that logged too.

Originally posted by DPBOX
If the log says that a file is used 0 times, it doesn't tell you if it's 0 because it's not inserted or if it's inserted and not used, and I would REALLY want to know which graphics files are inserted but not used.


Sounds like that might be best as a separate option, to only report files that were never loaded by a level but are inserted in the ROM.

Originally posted by hash
So the behavior of these 3 sprites is inconsistent, and I was wondering if it were within the realms of Lunar Magic to make all 3 act similar to the Single Rotating Platform; allowing it to spawn closer to, and even off the bottom of the screen?


I believe that's the way those sprites have always been. Probably a bit outside the scope of LM to play with... you'll need to find someone willing to tweak those sprites for you.

Originally posted by JP32
I have always found these (entrance to level.. / secondary exit / midway entrance text) being overly long, so option to either shorten it, or hide it(without also hiding mario) would be handy.


This is one of those things that's occurred to me before. But the labels can be translucent, so F5 is probably good enough for the few times when they're actually in the way. If LM displayed labels for a bunch of different things other than entrances it might be worth having a separate option for, but since it doesn't...
Do the labels even need to be that large, though? They're kind of inconsistent with the rest of the visual style, even. Just make them smaller and more concise, something like this:



Or you could even keep the current size and have the label only appear when you mouse-over or something.
Originally posted by MANGOMILK
Do the labels even need to be that large, though? They're kind of inconsistent with the rest of the visual style, even. Just make them smaller and more concise, something like this:


It wouldn't really look like that. Your image is with zoom at 300%. Labels are applied before zoom, not after (and not really interested in changing that as it partly defeats the purpose of zoom).

Originally posted by MANGOMILK
Or you could even keep the current size and have the label only appear when you mouse-over or something.


I'd rather be able to see all the entrance numbers at a glance.
Not sure if this is intentional or not, but when setting the level dimensions to $1C (level height: $0380 tiles, Max H-Screens=$01) and have the level be set to any any horizontal layer 2s, causes the level to be all black with some of the level entrances and secondarys to not appear but only its “label tag”.

Is this because when selecting horizontal layer 2 level, ALWAYS halfs the width of the level (in number of screen units), rounded down, even when there is only one screen before applying the layer 2? I assume the formula works like this:

LevelWidth = floor(OriginalLevelWidth/2)

And what happened was this:

LevelWidth = floor(1/2)

which cause LM to attempt to display a level with a width of 0, which is not even showing a screen at all, and anything outside the level is all black.
Give thanks to RPG hacker for working on Asar.
Yes that's intentional. Tides or a layer 2 level will cut the number of available horizontal screens in half, so if you only started with a max of 1 screen, you end up with no screens and no level at all.

If you want a layer 2 level that's 1 screen wide, you need to use horizontal level setting $1B not $1C.
One more thing/suggestion about overworld path tomfoolery:
Is there already (or could there be) something that allows for paths that cross over each other, like in Forest of Illusion or Chocolate Island? Maybe this is would need an external tool or patch, but there isn't much of a presence in the scene at all to my knowledge.


Other Submissions of mine!
The original game uses hardcoded paths for places where they cross over. You can hex edit the data for them to change them, though.

Code
;------------------------------------------------
; hardcoded overworld path stuff
;------------------------------------------------

; list of level numbers with hardcoded paths
org $049078
; original values
;	db $09,$15,$23,$1B,$43,$44,$24,$FF,$30,$31
; new values
	db $09,$15,$23,$1B,$43,$44,$24,$FF,$30,$31

; X and Y coordinates for the position-based hardcoded path
org $049084
; original values
;	dw $0178,$0128
; new values
	dw $0178,$0128

; list of pseudo-Layer 1 tiles for hardcoded paths
org $049086
; original values
;	db $10,$10,$1E,$19,$16,$66
;	db $16,$19,$1E,$10,$10,$66
;	db $04,$04,$04,$58
;	db $04,$04,$04,$66
;	db $04,$04,$04,$04,$04,$6A
;	db $04,$04,$04,$04,$04,$66
;	db $1E,$19,$06,$09,$0F,$20,$1A,$21,$1A,$14,$19,$18,$1F,$17,$82
;	db $17,$1F,$18,$19,$14,$1A,$21,$1A,$20,$0F,$09,$06,$19,$1E,$66
;	db $04,$04,$58
;	db $04,$04,$5F
; new values
	db $10,$10,$1E,$19,$16,$66,$16,$19
	db $1E,$10,$10,$66,$04,$04,$04,$58
	db $04,$04,$04,$66,$04,$04,$04,$04
	db $04,$6A,$04,$04,$04,$04,$04,$66
	db $1E,$19,$06,$09,$0F,$20,$1A,$21
	db $1A,$14,$19,$18,$1F,$17,$82,$17
	db $1F,$18,$19,$14,$1A,$21,$1A,$20
	db $0F,$09,$06,$19,$1E,$66,$04,$04
	db $58,$04,$04,$5F

; list of facing directions for tiles in hardcoded paths - 00 = up, 02 = down, 04 = left, 06 = right
org $0490CA
; original values
;	db $02,$02,$02,$02,$06,$06
;	db $04,$04,$00,$00,$00,$00
;	db $04,$04,$04,$04
;	db $06,$06,$06,$06
;	db $06,$06,$06,$06,$06,$06
;	db $04,$04,$04,$04,$04,$04
;	db $02,$02,$06,$06,$00,$00,$00,$04,$00,$04,$04,$00,$04,$00,$04
;	db $06,$02,$06,$02,$06,$06,$02,$06,$02,$02,$02,$04,$04,$00,$00
;	db $06,$06,$06
;	db $04,$04,$04
; new values
	db $02,$02,$02,$02,$06,$06,$04,$04
	db $00,$00,$00,$00,$04,$04,$04,$04
	db $06,$06,$06,$06,$06,$06,$06,$06
	db $06,$06,$04,$04,$04,$04,$04,$04
	db $02,$02,$06,$06,$00,$00,$00,$04
	db $00,$04,$04,$00,$04,$00,$04,$06
	db $02,$06,$02,$06,$06,$02,$06,$02
	db $02,$02,$04,$04,$00,$00,$06,$06
	db $06,$04,$04,$04

; list of data indexes to the previous two tables
org $04910E
; original values
;	db $00,$06,$0C,$10,$14,$1A,$20,$2F,$3E,$41
; new values
	db $00,$06,$0C,$10,$14,$1A,$20,$2F,$3E,$41


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

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Trying to perform the remap 80-FF,+100 over pages D3 and a bit of D4 in map16 crashed Lunar Magic. Moving the tiles further up to pages 5 and 6 (or so) and doing the remap there works fine.
It's easily the best thing I've done
So why the empty numb?
Alright thanks, I've got it fixed for the next version. In the meantime I'd avoid doing remaps in the Map16 editor on pages A3+. Temporarily moving the tiles to an earlier page to remap them then moving them back like you did should work.

Tool