Page 1 of 1

chocomap.lua (v1.2) - better overworld, now with undocumented memory access

Posted: Sat Oct 30, 2021 11:11 am
by deice
this library has been merged with xmap.

Re: chocomap.lua - everybody's lua-drawn now

Posted: Mon Nov 01, 2021 4:23 pm
by KBM-Quine
as someone who's tinkered with 1.3 maps quite a bit, i like this! but chucking this in Ti2 without any other lua running yields this:
Image
as well as that, this renders over the vanilla pause menu. it also doesn't animate things when paused. that can be overcome by updating frames in onDraw.

as for your costume bugs, Graphics.sprites.player[player.character].img can be used in place of Graphics.loadImage(Misc.resolveGraphicsFile("player-"..tostring(player.character)..".png")). though you will need to update that to account for character/costume changes. you can do this in onDraw for that:

Code: Select all

-- make playerSprite just " local playerSprite" at the top then do this in onDraw
if not (playerSprite == Graphics.sprites.player[player.character].img) then
	playerSprite = Graphics.sprites.player[player.character].img
end
as for peach and toads' overworld rendering issues, you can find how that's handled in source here for an idea of how to handle that (if you can understand it anyhow)

on the switches, 0x00B2BFD8 is the animation array for 1.3 levels (gotten from map3d.lua in data/scripts). which makes sense, given that the level gets a "pressed" frame after you've beaten it.

all in all, i like where this is going. keep up the good work!

Re: chocomap.lua (v1.1) - now with more QA

Posted: Mon Nov 01, 2021 7:01 pm
by deice
KBM-Quine wrote:
Mon Nov 01, 2021 4:23 pm
(bug reports)
all in all, i like where this is going. keep up the good work!
thank you very much for the feedback! i've addressed and (hopefully) completely fixed all of the issues you've pointed out in your post.
for anyone else reading, the script has been updated and a brief changelog is now visible in the top post, please redownload.

Re: chocomap.lua (v1.2) - better overworld, now with undocumented memory access

Posted: Tue Nov 02, 2021 7:50 am
by deice
apologies for the self bump, but i've updated the script once again with the features i couldn't get around to earlier. i suggest once again redownloading (but don't worry about constant updates anymore as this is the current definitive version unless new bugs are found)

Re: chocomap.lua (v1.2) - better overworld, now with undocumented memory access

Posted: Fri Nov 12, 2021 4:22 pm
by Blake Izayoi
This is really amazing. Fantastic work making the basegame overworld better!

Re: chocomap.lua (v1.2) - better overworld, now with undocumented memory access

Posted: Wed Nov 17, 2021 10:04 am
by FutureNyanCat
Honestly? I feel this deserves to be in SMBX2's full release. It gives players who prefer making vanilla overworld maps even more control over what they can do, especially for animated scenery, paths, and tiles. Nice work.

Re: chocomap.lua (v1.2) - better overworld, now with undocumented memory access

Posted: Wed Nov 17, 2021 12:16 pm
by deice
Hatsune Blake wrote:
Fri Nov 12, 2021 4:22 pm
This is really amazing. Fantastic work making the basegame overworld better!
FutureNyanCat2014 wrote: It gives players who prefer making vanilla overworld maps even more control over what they can do, especially for animated scenery, paths, and tiles. Nice work.
thanks for the compliments fellas, means a lot. i didn't think many people would care much for this with somewhat more robust map replacements like map3d or smwmap around ^^"
FutureNyanCat2014 wrote: Honestly? I feel this deserves to be in SMBX2's full release.
yea as i said i count on most of this being implemented into smbx2 when the staff starts to put more focus towards the overworld (as right now the documentation is a bit lacking for some overworld elements, and others aren't even named properly in the lunalua source) though i'm sure that whatever they come up with will be much faster performance-wise as it'll probably involve directly messing with the game's routines as opposed to chocomap which just draws a massive black rectangle over the player's viewport