Language…
21 users online: 1UPdudes, Abstract,  Blaagon, CharlieUltra, dashlet, Dennsen86, DixyNL,  Eden_, GiraffeKiller, Hammerer, JezJitzu,  MarioFanGamer, Metal-Yoshi94, MorrieTheMagpie, mtheordinarygamer, Papangu, playagmes169, rafaelfutbal, Ryrir,  Segment1Zone2, TheOrangeToad - Guests: 281 - Bots: 448
Users: 64,795 (2,369 active)
Latest user: mathew

Lunar Magic suggestions and discussion (LM v3.40)

Tool

Just tried it with 1.40 and it seems to be working perfectly fine for me.
Originally posted by FuSoYa
Just tried it with 1.40 and it seems to be working perfectly fine for me.


That's odd. Guess I was wrong then.
My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

I would like to suggest an option to 'Clear All' or remove specific entries in the 'Open a Recent File' list. The entries stay there even if the file has been deleted.

There are a lot of instances where I modify a file then throw it away, so this would help reduce clutter.


YY-CHR > Photoshop.
FuSoYa, on behalf of many of us who go nuts in our hacks with map16 for aesthetics or custom objects, I'd like to run an idea by you: "Bulk Map16 Tile Pasting"

As you know, right now in Lunar Magic if one selects a region in map16 and right-clicks within the level editing window it will paste those tiles to the mouse's position. However any selection that is greater than a single tile it is pasted as a unified object. This is great in cases where one wants to paste a custom multi-tile object, however if you want to get a bunch of single-tile objects into a level to arrange into something larger you have to insert them one at a time which is a bit of a tedious process.



What I'd like to propose is an addition/extension to this functionality wherein if you right-click to paste tiles like normal but hold down a modifier key, for example Shift or Ctrl, it would instead insert the region you have selected in map16 as a group of individual tiles instead of as a unified object. This would make working with several individual tiles easier as you can now paste a big selection of them and move them around without having to go one at a time from the map 16 window.

Thanks for taking feedback #smrpg{y}


I was just thinking about a little tweak for vertical pipe entrances; FuSoYa, just wondering if you would be open to allowing players to manually set the number of pixels they can add to a vertical pipe entrance if desired? Personally, I think it would be a little awkward if Mario entered a level through a 16x16 pipe, but if he was shifted 4 pixels to the left or right, it would look better (especially if the pipe faced upward and there was no solid ground adjacent to the pipe), also, I was told if I edited the value at ROM address $00A757, it would affect all vertical pipe entrances; I don't want to go that route, hence why I'm leaving this suggestion here.

Anyway, I'm gonna post an 2 in 1 image showing my idea (the left one is the "before" image, and the right one is the "after" image; I took both of these images using LM, though I disabled the background as it would have been a real pain for me to make the second image if the background was showing).



So yeah, if you can somehow implement this please, you have my thanks.
Originally posted by BlueToad
I would like to suggest an option to 'Clear All' or remove specific entries in the 'Open a Recent File' list. The entries stay there even if the file has been deleted.


Might add a clear all someday, but you can remove individual entries in regedit if you know what you're doing. You could probably even craft a reg edit file you could double click to import that would effectively clear them all for you.

Originally posted by AmperSam
What I'd like to propose is an addition/extension to this functionality wherein if you right-click to paste tiles like normal but hold down a modifier key, for example Shift or Ctrl, it would instead insert the region you have selected in map16 as a group of individual tiles instead of as a unified object. This would make working with several individual tiles easier as you can now paste a big selection of them and move them around without having to go one at a time from the map 16 window.


I've considered putting it in before, but the problem is that it would likely just get abused. It'd tend to encourage people to waste ROM space by building things tile by tile all the time. Taking those pipes as an example, you'd end up always making the pipe ends and the middle sections use single tiles which is going to take twice as much space as pasting the 2 tiles together as a single object.

Originally posted by Knight of Time
I was just thinking about a little tweak for vertical pipe entrances; FuSoYa, just wondering if you would be open to allowing players to manually set the number of pixels they can add to a vertical pipe entrance if desired?


Ehh, seems a bit niche. Probably a low chance of it being added unless I happened to already be modifying entrance code.
Would it be a good idea to implement a search function in the 16x16 Tiles Editor based on the info of the blocks print and/or search function by act as, highlight those tiles and be able to scroll through, like in the add objects/add sprite windows F3 function?
Would there be a way to implement a graphics viewer that can easily enable the hacker to view gfx and exgfx files in LM which have already been inserted into the rom, without having to open each file individually in a separate tool? Every chocolate flavored hacker would like this, I imagine. I'm not asking just because I have like 400 exgfx files in my hack, no way!
GANYMEDE

Chapter Two: Land of No Shame
Would it be worth adding an option for tall horizontal levels that replicates the horiz. spawn range employed by normal vertical levels? This would be very useful if, for instance, you're using horizontally-scrolling layer 2 in horiz. level mode 19 but don't want any sprites to despawn when they move a few blocks off-screen to the right.
My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

Originally posted by simon.caio
Would it be a good idea to implement a search function in the 16x16 Tiles Editor based on the info of the blocks print and/or search function by act as, highlight those tiles and be able to scroll through, like in the add objects/add sprite windows F3 function?


Mmm, don't think searching descriptions/act as would get used often enough (and you can already search the .dsc file in a text editor). There isn't enough UI room left in that window at 100% zoom anyway, unless it used a popup window of its own.

Originally posted by Ondore's Lies
Would there be a way to implement a graphics viewer that can easily enable the hacker to view gfx and exgfx files in LM which have already been inserted into the rom, without having to open each file individually in a separate tool? Every chocolate flavored hacker would like this, I imagine. I'm not asking just because I have like 400 exgfx files in my hack, no way!


While possible, having to visually scan the contents of 400 files to find what you want still sounds a bit crazy. #ab{;)} If you're losing track of them you should probably just keep a list somewhere.

Originally posted by Anas
Would it be worth adding an option for tall horizontal levels that replicates the horiz. spawn range employed by normal vertical levels? This would be very useful if, for instance, you're using horizontally-scrolling layer 2 in horiz. level mode 19 but don't want any sprites to despawn when they move a few blocks off-screen to the right.


Maybe. It's occurred to me before, as it'd be useful when recreating a vertical level as a 2 screen wide horizontal level.

But that's probably the only thing you'd want to use that setting for, as it means having a spawn range a full screen to the left and right of the viewable screen. In a level wider than 2 screens that'd effectively mean having a 3 screen wide range for sprites to exist, which is around double the normal range... that could very quickly exhaust the active sprite slots.
Originally posted by FuSoYa
Originally posted by Anas
Would it be worth adding an option for tall horizontal levels that replicates the horiz. spawn range employed by normal vertical levels? This would be very useful if, for instance, you're using horizontally-scrolling layer 2 in horiz. level mode 19 but don't want any sprites to despawn when they move a few blocks off-screen to the right.


Maybe. It's occurred to me before, as it'd be useful when recreating a vertical level as a 2 screen wide horizontal level.

But that's probably the only thing you'd want to use that setting for, as it means having a spawn range a full screen to the left and right of the viewable screen. In a level wider than 2 screens that'd effectively mean having a 3 screen wide range for sprites to exist, which is around double the normal range... that could very quickly exhaust the active sprite slots.


Nice! I will wait warmly. On a different topic, I noticed that the L3 sync fix option is completely useless if you use a resource that gets rid of the status bar's IRQ. As an example, take this patch or this UberASM code by Ladida:

Code
init:
LDA #$01
STA $0D9B|!addr

REP #$20
LDA #$1143
STA $4330
LDA.w #.q
STA $4332
LDY.b #<:.q
STY $4334
SEP #$20
STZ $4337
LDA #$08
TSB $0D9F|!addr
RTL

.q
db $01 : dw $0022|!dp
db $00


What can I possibly do to fix it? Please note that I know next to no ASM myself, so I wouldn't know where to start.
My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

Originally posted by Anas
On a different topic, I noticed that the L3 sync fix option is completely useless if you use a resource that gets rid of the status bar's IRQ.


Well yeah, of course it would be. If there's no IRQ updating layer 3's position mid-frame, then there's no sync issue to fix and the option should be left off like the help file says. In fact you would *cause* a sync issue if you tried turning the option on when it isn't needed, as then layer 3's position would be a frame behind.
Originally posted by FuSoYa
Originally posted by Anas
On a different topic, I noticed that the L3 sync fix option is completely useless if you use a resource that gets rid of the status bar's IRQ.


Well yeah, of course it would be. If there's no IRQ updating layer 3's position mid-frame, then there's no sync issue to fix and the option should be left off like the help file says. In fact you would *cause* a sync issue if you tried turning the option on when it isn't needed, as then layer 3's position would be a frame behind.


All right then, thanks for the clarification. Judging by what you said, the only thing I need to do to fix it is update the layer 3 position... I'll look or ask around for how to do that.
My Mode 0 guide.

My Discord server. It has a lot of archived ASM stuff, so check that out!

I'm not sure if this is an LM or GPS thing, but since LM hijacks around this area, I want to make sure. Cape interaction with custom blocks on Layer 2 process as if its on Layer 1. At $02950B LM hijacks to fix cape interaction with Iggy/Larry apparently but $0F never stores to $1933 to indicate that Layer 2 interaction should be used before the block code runs. I've made my own small hijack there to fix it for the time being.
Originally posted by mario90
I'm not sure if this is an LM or GPS thing, but since LM hijacks around this area, I want to make sure.


It's neither, and the hijack isn't related. It's more of a documentation issue.

For figuring out which layer your block is on, $1933 is only valid for the main player interactions. For sprite interactions it's $185E, and for the cape and fire hit it's $0F.

The game does happen to later copy $0F to $1933 for the cape hit at least, but that's done too late for custom blocks. You could probably copy the value yourself for sprite interaction and cape/fire hits when you plan to run code that relies on $1933 (such as for code that changes a Map16 block).
Originally posted by FuSoYa
For sprite interactions it's $185E


Ah, I didn't know that. I thought it was weird I couldn't find any indication of how a sprite knows its touching layer 2 like the other interactions did.

I ran a routine to get the layer 2 position of the map16 tile, and if it matched, set $1933 for layer 2 specific code. I saw $185E a few times while looking to see how the original game did it, but its description in the RAM map lead me to believe it had nothing to do with it.

I'll submit an update for it and hopefully it'll save someone else the trouble I had.
If you implemented Layer 3 Auto-Scroll, does this mean you will implement Auto-Scroll for Layer 2 in the next version or in the future?
You added new scrolling rates for backgrounds, why not for Layer 2?
Why don't you implement Auto-Scroll in "Layer 2 scrolling rates" ?
There is a bug with the tile outline feature, blue p-switch blocks are inverted when toggling the switch so brown blocks are marked as pass-through while coins are marked as solid.

It works correctly when enabling it for the first time as well as clicking on the tiles themselves which updates them to the correct outline again.



And while I'm talking about that, would it be possible to add slope assist dirt, maybe in a different color? Sprites interact very differently with it and it's often difficult to tell apart from normal dirt since the graphics are usually the same, just the acts like is different.


Or maybe even have a way to define that yourself, could be useful for custom blocks using the dsc file.
Originally posted by Roberto zampari
If you implemented Layer 3 Auto-Scroll, does this mean you will implement Auto-Scroll for Layer 2 in the next version or in the future?
You added new scrolling rates for backgrounds, why not for Layer 2??


It's a possible idea for the future I suppose. I hadn't really thought about it much since the original game would always use sprite commands for that one.

Originally posted by TheBiob
There is a bug with the tile outline feature, blue p-switch blocks are inverted when toggling the switch so brown blocks are marked as pass-through while coins are marked as solid.

It works correctly when enabling it for the first time as well as clicking on the tiles themselves which updates them to the correct outline again.


Whoops, looks like the result of a tweak I did in 3.03 when viewing block contents was added. Most people probably have animation turned on and didn't notice. Thanks, it's now been fixed for the next version. #ab{:)}

Originally posted by TheBiob
And while I'm talking about that, would it be possible to add slope assist dirt, maybe in a different color? Sprites interact very differently with it and it's often difficult to tell apart from normal dirt since the graphics are usually the same, just the acts like is different.


You mean for the few currently blank ones like 1F0? Hmm, not really sure what sort of outline I'd even show for that though...
Originally posted by FuSoYa
You mean for the few currently blank ones like 1F0? Hmm, not really sure what sort of outline I'd even show for that though...


yeah the 1F0-like tiles, I was thinking maybe a line at the top like the clouds/ledges just a different color, yellow or something, if that's not too similar to the lava outline.


And is that a no on the custom outlines then?

Tool