| Tessera sprite conversion project |
|
Forum Index - SMW Hacking - General SMW Hacking Help - ASM & Related Topics - Tessera sprite conversion project |
|
Pages: 1 2  |
|
|
|
| Posted on 2011-09-06 09:07:16 PM |
Link | Quote |
|
A lot of you probably know about Tessera, my Sprite Tool. Fewer might know that almost all the custom sprites currently in the sprites section are incompatible with it. (A good number of them are even in TRASM, which Tessera does not and will never support.) However...we can fix that. I was already planning to convert most of them to work with—and take advantage of—Tessera, but is anyone else willing to help out? You'd be changing the init and main pointers, changing TRASM syntax to xkas, changing certain routines (such as sprite spawning) to work in Tessera, and preferably, in the case of customizable sprites, using the extra bytes for user-defined options. I'll probably post a list of finished sprites here, which includes things like generators, shooters, and disassemblies. They will be in xkas06 format; Tessera doesn't support other assemblers yet, and I haven't decided for sure if I want to use bass for sprites and the like.
Edit: Oh, and I should mention that any sprites that are already included with the tool or are redundant (i.e. there is a better version) need not be done.
Sprites to be done (not an exhaustive list by any means):
- Albatoss
- Beezo
- Blooper
- Hoopster
- Lava
- SMB1 scale platforms*
- SMB2 Ninji*
- SMB3 Ptooie*
- Spike*
- Tweeter
- Winged item cloud
Asterisked ones maybe could also use behavior modification (to add more customizable options or make them act more like the original).
Finished sprites:
- Bone Pile (normal)
- Enemy Changer (normal)
- Hammer Bro (normal)
- SMB1 Bowser (normal)
- Warp When Die (generator)
- YI Ball 'n' Chain (dynamic)
|
| Last edited on 2011-11-14 12:59:34 PM by imamelia. |
|
| Posted on 2011-09-07 09:42:53 AM |
Link | Quote |
|
Here I got some done already:
Wrap When Die - This sprite will warp you t another level when you die.
Enemy Changer - Changes one normal sprite to another as well as the music and brightness of level. Requires ON/OFF Switch.
Bone Pile - A pile of bones that simply stays wherever you put it. If the player gets close, the sprite transforms into the original Dry Bones (Ones that walk around or throw bones depending on the initial X position). Made by Sonikku.
|
|
| Posted on 2011-09-07 12:50:51 PM |
Link | Quote |
|
All right. That's a decent start.
I finished the YI Ball 'n' Chain sprite. It was easier than I'd expected to convert, actually.
|
|
| Posted on 2011-09-07 01:27:35 PM |
Link | Quote |
|
|
I've got a little question: Will the sprites that'll already be converted with Tessera have some special features? For example: YI Ball'n'Chain: Bitsc 0-1 or 0-2: Rotation speed?
|
| Last edited on 2011-09-07 01:27:52 PM by Ripperon-X. |
|
| Posted on 2011-09-07 03:14:03 PM |
Link | Quote |
|
|
That's my plan. I don't know about other people. (It would be nice if they did add extra options like that, though.)
|
|
| Posted on 2011-09-07 03:46:36 PM |
Link | Quote |
|
|
so to help one would just have to convert trasm to xkas? i support this but i have no opinion of tessera.
|
|
| Posted on 2011-09-10 04:30:47 AM |
Link | Quote |
|
So is this pretty much what we have to do:
- For xkas sprites, change the way the INIT and MAIN labels are written.
- For trasm sprites, change the syntax to xkas first (using 1024's ASM converter) and then do the above.
- Slightly modify some routines like the sprite spawning one. I'd like to know which other ones BTW and the way they should be written.
- If possible, configure the sprites to use extra bytes?
By the way, I wouldn't really recommend submitting every single sprite (well not every one.. but you know, many of them) again with a Tessera tag added to them. Just get them all done and then pack them all in one .ZIP file and submit that. Ignore this if that's what you were planning to do though.
Also, I am glad you dropped TRASM support.
|
|
| Posted on 2011-09-10 10:02:38 AM |
Link | Quote |
|
Also apparently change any sprite that goes into status 3, 9, A and B (including all carriable sprites) to JSL $01812B with the status in the accumulator. Imamelia told me that in PMs.
You know looking at $01812B, it makes me wonder if you can use JSL $01812B to call an original sprite's main code too. If so you probably want to only call that on those statuses. But it might be handy.
|
| Last edited on 2011-09-10 10:15:58 AM by KilloZapit. |
|
| Posted on 2011-09-12 11:04:19 AM |
Link | Quote |
|
|
This sound something very useful, I might help providing I know how to use the extra bytes from xkas sprites that use the extra property bytes for things it doesn't need to.
|
|
|
|
| Posted on 2011-10-24 07:18:33 PM |
Link | Quote |
|
|
Who wants to help me convert 'The Ultimate n00b Boss'?
|
|
| Posted on 2011-11-08 09:44:06 PM |
Link | Quote |
|
I could have sworn I replied to this thread earlier...anyway:
Originally posted by IceguySo is this pretty much what we have to do:
- For xkas sprites, change the way the INIT and MAIN labels are written.
- For trasm sprites, change the syntax to xkas first (using 1024's ASM converter) and then do the above.
- Slightly modify some routines like the sprite spawning one. I'd like to know which other ones BTW and the way they should be written.
- If possible, configure the sprites to use extra bytes?
Yeah, that about sums it up. The only other thing I can think of that is affected by the code differences is any sprites that have special handling for statuses other than 1 and 8 (for example, SMB2 carriable sprites).
Originally posted by IceguyBy the way, I wouldn't really recommend submitting every single sprite (well not every one.. but you know, many of them) again with a Tessera tag added to them. Just get them all done and then pack them all in one .ZIP file and submit that. Ignore this if that's what you were planning to do though.
That would probably be best if we get several sprites done within a short period of time. If they're spread out over time, though, it might not work as well.
Originally posted by IceguyAlso, I am glad you dropped TRASM support. 
Yeah, I couldn't figure out how you were supposed to declare 24-bit pointers in TRASM, so I pretty much just said "screw it".
Originally posted by HadronAlright, I've got some really casually 'fixed' sprites I've done for my hack, here they are.
Go ahead and submit them if you want.
Originally posted by shrineWho wants to help me convert 'The Ultimate n00b Boss'?
Have you gotten anywhere with this? I think Iceguy was actually thinking of making a new version of that sprite, though.
|
|
| Posted on 2011-11-08 10:53:20 PM |
Link | Quote |
|
|
I'm actually very interested in helping with this. I'll post what I get done when I get it done.
|
|
| Posted on 2011-11-09 02:56:49 AM |
Link | Quote |
|
Might as well post the sprites I've converted so far here as well, to avoid duplicates:
- Thwomp (all varieties except for the boss one)
- Hammer Bro
- Boomerang Bro + Boomerang (combined into one sprite)
- Shell Bro
- Bomb Bro
- Sledge Bro
- Deadweight Bro + Weight (also combined)
- Chain Chomp
- Mini Chomp Shark
- Ground Pound Boss
- Level Ender
- Tile Generator (although later I've realized that the trigger sprite included with Tessera combines these last two and more)
- Phanto (although I need to recode this one a bit, to fix a momentum-related bug)
- Roto Disc
- Thwimp disassembly
Also, I'm currently working on converting the rest of the sprites included with Spritetool.
Originally posted by wiiqwertyopsprites
I can't help but think that at least the first two of these should make use of the extra bytes; the first one for where to warp, and the second one for which enemies to change into each other.
Also, somewhat surprised to see that none of the sprites linked in the OP makes use of the shared subroutines patch, so as to not have to include GET_DRAW_INFO and SUB_OFF_SCREEN in every single sprite.
|
|
| Posted on 2011-11-09 03:19:04 AM |
Link | Quote |
|
Originally posted by yoshicookiezeusMight as well post the sprites I've converted so far here as well, to avoid duplicates:
- Thwomp (all varieties except for the boss one)
- Hammer Bro
- Boomerang Bro + Boomerang (combined into one sprite)
- Shell Bro
- Bomb Bro
- Sledge Bro
- Deadweight Bro + Weight (also combined)
- Chain Chomp
- Mini Chomp Shark
- Ground Pound Boss
- Level Ender
- Tile Generator (although later I've realized that the trigger sprite included with Tessera combines these last two and more)
- Phanto (although I need to recode this one a bit, to fix a momentum-related bug)
- Roto Disc
- Thwimp disassembly
Also, I'm currently working on converting the rest of the sprites included with Spritetool.
I still think it would be better to combine all the Bros. into one sprite, but whatever. There's nothing saying there can't be more than one version of a sprite. Also, I've already made a Tessera version of the Roto-Disc...should I go ahead and upload that? And if you're going to do the ground pound boss, why not combine it with the non-boss version? (I don't know why I didn't include that sprite with the tool in the first place...)
Originally posted by yoshicookiezeusAlso, somewhat surprised to see that none of the sprites linked in the OP makes use of the shared subroutines patch, so as to not have to include GET_DRAW_INFO and SUB_OFF_SCREEN in every single sprite.
The YI Ball 'n' Chain and the SMB1 Bowser do...or at least they should. The ones in my uploads folder seem to, and I would assume those are the same ones that are on the site.
Also, something that I thought of a while ago...might it not be a good idea to use the extra bytes to combine a lot of the disassemblies (and I do mean a LOT, not just similar ones) into one sprite that the user could insert for customized tilemaps, behavior, and the like? If it got too large, we could always use macros in case somebody wanted only one or two disassemblies. Now that I think about it, there are probably a sizable number of original SMW sprites that could be expanded...I thought of making 4-color Mechakoopas that behave similarly to the regular Koopas, for example, as well as a Bowser statue whose behavior does not depends on its X position.
|
| Last edited on 2011-11-09 03:19:58 AM by imamelia. |
|
| Posted on 2011-11-09 03:50:36 AM |
Link | Quote |
|
The downside in combining sprites would of course be that the average hacker would be forced to insert a lot of sprites he doesn't actually want.
Of course, if they are similar enough(like the bros) it would be understandable, but otherwise it might be a burden.
|
|
| Posted on 2011-11-12 04:42:17 PM |
Link | Quote |
|
Originally posted by imameliaOriginally posted by shrine
Who wants to help me convert 'The Ultimate n00b Boss'?
Have you gotten anywhere with this? I think Iceguy was actually thinking of making a new version of that sprite, though.
Well, I haven't really got far with this, seeming as I've been in amends on converting Romi's Sprites to the Tessera format (The Hoopster and Nut especiallly) and the Pile Driver Micro Goomba.
|
|
| Posted on 2011-11-12 04:51:21 PM |
Link | Quote |
|
|
Actually, I just did the Pile Driver Micro Goomba. I also made it possible to use a custom death frame, unlike the original (although I hope its interaction isn't still messed up...). I was going to do the Fire Snake next, but smkdan basically said that it's three years old and rather buggy, so it might be better just to redo it from scratch.
|
|
| Posted on 2011-11-12 05:03:35 PM |
Link | Quote |
|
|
OK, I'll just focus on Romi's sprites for now.
|
|
| Posted on 2011-11-14 12:37:31 PM |
Link | Quote |
|
Okay, I've finished the Pile Driver Micro Goomba and the Fire Snake. I might just put them in a package with some other sprites, though.
Also, I added a list of possible sprites to convert to the first post. It's very small right now, but I'll have more.
|
|
|
Pages: 1 2  |
|
|
|
|
Forum Index - SMW Hacking - General SMW Hacking Help - ASM & Related Topics - Tessera sprite conversion project |