As a quick update guys, I've been working a little bit more on my dynamic sprite routine and I've fixed most of the bugs that were shown in the .gif of that. Well, except for the one where the mega mole glitches since I don't understand why that's happening, but anyway, here is a better .gif showing more sprites I've made dynamic:
Also, I've gotten AddmusicK to work with my modified source code ROM, and I've also gotten my improved version of Con's MSU-1 patch to cooperate with AddmusicK. It was as simple as making the SPC700 play a blank song when the MSU-1 plays a song and having the MSU-1 not attempt to play whatever song number the blank song (that way, it doesn't try to play a new song on the next frame) or the Nintendo Presents sound has (that way, the SMW samples get loaded into ARAM). Speaking of which, I'm going to be using the MSU-1 for the music in my kaizo hack, though I will include a normal soundtrack for those that can't or don't want to enable the MSU-1. Consider the MSU-1 soundtrack as a bonus feature. ;)
Lastly, I've decided to post an IPS patch of my modified source code ROM so you guys can see all the stuff I showed off here for yourself.
Link
A couple notes:
- The game over text won't show up if Mario dies, because I haven't integrated that into the source code ROM yet.
- Many sprites haven't been made dynamic yet, so they'll of course be glitched. All the sprites in the above .gif will show up correctly, and a few almost do (ex. For some reason, pitchin' chucks lose their head when they hold a baseball. I haven't figured out what causes it yet). A few, such as the koopa kids have been deleted from the ROM or replaced with a custom sprite.
- Sprite 12 is the Mario head sprite, 7C is a(n) (unfinished) save block, and 85 is a poison mushroom. These aren't normal custom sprites since they're handled through SMW's sprite table rather than the SpriteTool one, so you must spawn them the same way you would with an unused SMW sprite.
- Most of the titlescreen layer 3 won't show up because I disabled the IRQ from occurring in my attempts to disable the status bar. The file select stuff is still present, it will just be invisible.
- Mario's graphics can be glitched up when entering a level. This is because the game doesn't yet clear out a certain table on level load and thus thinks that Mario already has his graphics loaded when they were actually overwritten. Mario's graphics will fix themselves if he does a pose where his body and/or head is different from his standing frame. Also, some of Mario's poses will be glitched anyway because I haven't yet fixed them when I modified his graphics routine so it could handle Yoshi's animations.
- There are other miscellaneous glitches caused by some of the changes I made to the source code. Mostly graphical stuff though.
Anyway, onto the replies:
Originally posted by antimatterhunteroh my god, if this kicks off, this will be the best thing ever! Go for it!!!
I'll make sure it will. ;) I'd like to see what kinds of interesting level designs people come up with when I eventually release a patch for this.
Originally posted by MellonpizzaI have most of the code that creates objects, and I'm more or less figuring out why what I have isn't working. I figure if I check some things the loading routine does and fix them, it will work fine (Like certain values have to be set, index registers, routines I didn't run, ect.)
That's interesting. When I was making my optimized level loading code, I mainly just copied the existing code elsewhere, LM hijacks and all, and then optimized it as best as I could so it would take as little time as possible. I did learn a little bit of how it worked, but there is still some stuff I don't understand.
Also, here is a fun fact that I learned about the level load routine. If you paste as many direct map16 tiles into a level as you can and re-size them to their limit both horizontally and vertically and paste the max number of sprites allowed, then it will literally take 30 minutes for the level to load. Not even my optimized level loading routine could put a dent in that. O_o
Originally posted by WhiteYoshiEggWhoa, now here's an ASM prodigy who wasn't on my radar at all.
I've only skimmed through this thread and it's enough to make me gasp audbily - not to mention it's a great inspiration for my own, less advanced, projects.
Imagine me taking a humble bow right now.
I'm not surprised you might not have heard of me. I'm not the most active user here outside of the threads I've made and I don't go on the IRC either, so yeah. XD I probably should start being more active here now that I think about it...
Anyway, I'm glad to hear you liked what I had to show off, and good luck with whatever projects you're working on.
Originally posted by GreenHammerBroIs it okay to submit these single byte bug fixes to the smwc tom map? Since these were discovered by you.
Speaking of looking at Smw's source code, are you planning to update the smwdisc after my update (the one with the bytes of the opcode not being displayed being fixed)? With more comments (I do this a lot on any of my asm stuff to keep in track), it makes it easier to modify smw. Lots of places were not commented.
You can submit those to the ROM map if you want.
Also, I wasn't planning on updating smwdisc, but I could help out a little with that.
Originally posted by LeomonWow
This looks good, hella good
Y'know what, you deserve this
*gives Yoshifanatic a chubby yoshi dakimakura*
Don't ask me why I had that lying around
Thanks. XD
My Hacks:
Mario's Strange Quest V1.6
Yoshi's Strange Quest V1.3 /
V1.3.1 Beta 4.6
Mario & Yoshi's Strange Quests (2/10/2023 Build)
Other stuff:
My SMW/SMAS/SMAS+W disassembly
Yoshifanatic's Discord Server: A place for fans of my stuff and/or Yoshi to chat with others.