Language…
7 users online: anoMaly666, Brian94, HD_DankBaron, monkey03297,  Nanako, Shiki_Makiro, TheOrangeToad - Guests: 240 - Bots: 315
Users: 64,795 (2,377 active)
Latest user: mathew

Touhou Mario 2

Standard

damn I remembered the WIP of it you posted on Discord and while I didn't comment I wanted to see how the finished product would look like. It's very amazing! Did you code your own OAM system (for everything)?
also first use of EXTBG I've ever seen. Like, in any SNES game. I don't even know if it was used in any official games.
Originally posted by Vitor Vilela


Can't even begin to express how amazed I am by this. I get more and more excited for this hack the more and more I see and hear about it. Keep up the good work.
Thanks for the comments people!

Originally posted by Mathos
Originally posted by Vitor Vilela

Honestly, my brain is having a hard time processing how awesome this is. While I did know the SNES could actually show lots of sprite tiles, I would've certainly never imagined it could show enough for rendering a decently complex FG. I'm also amazed by the Mode 7 BG itself: using the mode for a simple rotation/zoom effect is already quite hard, but projection is downright maddening for me, personally. I'd like to know how much time this took you to setup correctly. Also, looking up to a way to use it with your tool if I understood correctly what you're planning for it.


The SNES PPU can display up to 128 sprite tiles on screen. If each tile is 16x16, this means you can fill pretty much half of the screen (256x128 to be exact), making it an reasonable amount for some FG and sprites. Of course sprite and the foreground share these tiles, so you need to keep some balance between the two or part of the tiles will disappear or cause some slowdown. You also need to pay attention that the SNES can only display 32 sprite tiles per scanline, anything after it, it will get cut off. So I can't have a straight line FG and a green parakoopa flying inside it. Additionally, forget FG<->sprite layer priority if there's too many FG tiles.

It took some months to figure out how Mode 7 projection worked exactly, after analyzing how DSP-1 generates the matrix HDMA table. Or actually some years, if you count also the time I spent until I figured how a mode 7 matrix worked and how the tilemap is rendered to the screen.

The tool I made so far lets you put a script which determines exactly the mode 7 matrix parameters per scanline, but I have plans for putting some known projection tricks (like the DSP-1 projection) into the tool, allowing to you generate your own tables (or generation formula, which is way slower and has mandatory SA-1). I don't have plans for releasing for now though, specially since it's still a long, work in progress tool concept.

Quote
Anyway, back on the topic of the sprite FG, I'm also curious as to what is the basis of your system. I'm guessing you're using the tilemap data then performing an upload to the OAM after reading tile numbers and taking scrolling into account ? I wonder how much flexible the system could become in the future (like, with a table telling which sprite tiles to use for which FG tiles), if it's not enough already.


The FG rendering routine runs at end of the frame, after everything has set to the OAM. So I can use all free OAM tiles to whatever I can without risk of getting overwritten. The routine reads $7E/$7F:C800-FFFF table and draws the FG tiles based on the current camera position and earthquake status. So it has all features that a horizontal level can do: vertical scrolling, 0x20 screens, etc. During the rendering, there's a lookup table (using binary search method) that does the conversion between FG map16 number and sprite tile/YXPPCCCT, so it's pretty much a very complete thing. You can also have ExAnimations normally, just animate the sprite tiles instead of FG tiles.

Quote
Anyway, congrats Vitor. You just revolutionised SMW hacking AGAIN :P


Maybe... I didn't thought on that. :P

Originally posted by Erik557
damn I remembered the WIP of it you posted on Discord and while I didn't comment I wanted to see how the finished product would look like. It's very amazing! Did you code your own OAM system (for everything)?


Like I said, the code runs at end of the frame so it gets all free, unused OAM slots for the frame.

That OAM "leftover" system is the same used for the Touhou Mario 2 bosses, so it's a very stable and reliable system.

Quote
also first use of EXTBG I've ever seen. Like, in any SNES game. I don't even know if it was used in any official games.


It doesn't use EXTBG. There's five HDMA channels, where one of them changes the mode from 1 to 7 between the clouds and the main background, so you can still have the status bar and layer 1/2 above the horizon.

EXTBG doesn't exactly work as most of the people think. The second mode 7 layer uses the same tilemap, graphics and scroll registers as first mode 7 layer, except you can have layer priority with it and CGADSUB behaves slight different for it.

Originally posted by MarioSonicGamer
Originally posted by Vitor Vilela


Can't even begin to express how amazed I am by this. I get more and more excited for this hack the more and more I see and hear about it. Keep up the good work.


It's still the beginning.
GitHub - Twitter - YouTube - SnesLab Discord
Quote
It doesn't use EXTBG. There's five HDMA channels, where one of them changes the mode from 1 to 7 between the clouds and the main background, so you can still have the status bar and layer 1/2 above the horizon.

Ok now that makes it even more amazing. Also thanks for the explanation!
It's been around 7 months since the last post. Been thinking about this project a fair amount lately. How have things been for the devs? Last I remember the lives of some of the devs were fairly busy so this project was progressing at a fairly slow rate. I'm a bit fearful this may have been canned, but given how far it seems to have come and how many new and unique concepts it's brought forward I find it hard to really believe that.
Originally posted by MarioSonicGamer
It's been around 7 months since the last post. Been thinking about this project a fair amount lately. How have things been for the devs? Last I remember the lives of some of the devs were fairly busy so this project was progressing at a fairly slow rate. I'm a bit fearful this may have been canned, but given how far it seems to have come and how many new and unique concepts it's brought forward I find it hard to really believe that.

We got worse in terms of being busy: Vitor barely has time for SMW stuff anymore, if not at all, while I kind of lost interests in this for now.
Hopefully we'll continue with progresses sometime. The hack won't be cancelled obviously, consider this an extended pause or something.
Originally posted by Wakana
We got worse in terms of being busy: Vitor barely has time for SMW stuff anymore, if not at all, while I kind of lost interests in this for now.
Hopefully we'll continue with progresses sometime. The hack won't be cancelled obviously, consider this an extended pause or something.


Hmm, well alright. Sad to hear things have gotten worse but it's reassuring to hear this isn't gone. Take your time. Can't wait to hear more about this, whenever that would be!
Quite some time has passed since the last update and I would like to ask you if things have gotten better regarding Touhou Mario 2. Did you make any progress since the last reply on this post? Have things gotten worse? Have things gotten better?
I would really like to know.

Hey guys, it's kamekku14 from SNESLab here!

As of you know, Vitor Vilela states that Touhou Mario 2 is NOT dead...just yet, so stop panicking about what is going on in this thread.

In the meantime, you can join the Touhou Mario Discord server (yes, this exists!) here:
This update is proudly endorsed by the friends of Vitor Vilela.
The Hacking of PuyoPuyo. Come join the fun, friends. 『いけいけ団長、頑張れ頑張れ団長!』
Help us raise funds for the Armed Forces of Ukraine. #ДопомагаємоРазом / #HelpTogether
“Even if you personally are so dissatisfied with life that you want the world to end, surely the cruel reality is that it will continue on, unchanging. All the better for someone perfectly content, like me.”
Aya Shameimaru, Touhou Suzunaan ~ Forbidden Scrollery

Standard