| |||
Views: 88,503,353 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 04-30-24 05:59 AM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 3 guests | 1 bot |
Main - ROM Hacking - General SMB3 Hacking Thread | New thread | New reply |
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 892/1443 EXP: 4173719 Next: 17410 Since: 06-15-08 From: Earth Last post: 25 days Last view: 25 days |
Welcome back! Sounds interesting! Best of luck, JaSp! Keep us updated!
Thanks for the information. I appreciate that very much. I'll definitely look into it some more following that. Yeah, that fact concerning projects being abandoned applies to both individual and group projects, both big and small. However, provided that I have the free time - which I will have an endless supply of starting next Friday () - I can be more than dedicated enough to keep encouraging the life of a project. I apologize for the end of my last post in leaving the state of the project idea before it could even further develop questionable; it was a bad day on the work side of things and I was tying that in to this, and that wasn't fair. Once I'm done with all of that for good, I'll definitely be more than willing to get started on this right away. As for organization, I'm pretty much keeping my current college work group together with that, so yeah. As time progresses, so will everything else, I reckon. This morning, an idea unexpectedly took formation in my head, and I quickly wrote out a rough concept for it. Basically, based off of Trelior's original idea about basing the hack on the Board 2 community itself, I built off of that and thought, what if the other forums were somehow involved too? Like a hack dedicated and in honour of the entire ROM hacking community (issues aside, of course). Basic notes that I have at this time (to be added to/revised later): ------------------------------------------------------------------------------------------------------- Story: Once again, Princess Toadstool has been kidnapped. This never gets old, right?! But wait - the one-who-done-it is not actually Bowser this time, no. In fact, there are actually many who had a hand in this. The many ROM hackers somehow brought Princess Peach into their world - the world of online ROM hacking message boards - leaving Mario to venture through his favourite dream* and nightmare simultaneously. *Did you know that Mario actually approves ROM hacking? WORLD IDEAS: - Board 2 - Romhacking.net - Jul [Rusted Logic] - Neritic - Badderhacks.net?! -> Order to be determined later. The current idea for the final world is unlisted and unspoiled for now. The hack will predictably be around 5-6 worlds, depending on whether or not ideas stick around or not, as anyone who knows me knows that I like connecting areas a lot, thus reducing the number of total available levels to be divided between the decided number of worlds. ASM: - Separate graphics sets for each World Map, assuming that the current applicable banks will not be enough to cover all of the actual boards. CURRENT PEOPLE WHO HAVE EXPRESSED INTEREST TO ME FOR THIS PROJECT/DEVELOPING TEAM (HOPEFULLY MORE TO BE ADDED LATER ): - Gamers110 (These guys) - lucariokiddo (From what I gathered, anyway - in recruitment, perhaps) - NutheadBros (A really cool guy) - Quick Curly (Some guy) - Static S (This other guy) ROUGH LIST OF TASKS (LIKELY MORE TO BE ADDED LATER): - World Map graphics and layouts (to be designed like actual forum posts directly relating to the proper forum/board on which the world is based). - Levels for respective worlds (shouldn't be too difficult with me around to pitch in where it's needed). - etc. (I think this post is long enough already. ) And as noted earlier, this project would be done using good ol' SMB3 Workshop and the other usual utilities, not Reuben. I'm sorry if this affects the opinions of this project overall, but like I said before, I'll just quickly finish the last couple things with Luigi's Chronicles 2 so that it's finally out of the way, and then I'm going to be focused on this, and the others involved have already agreed with this. As before, thanks for reading another long blah-blah post from me. If you didn't, that's cool too. |
Hamtaro126 |
| ||
Cheep-cheep Level: 33 Posts: 134/194 EXP: 212903 Next: 16276 Since: 05-02-07 From: Shelton, WA Last post: 2476 days Last view: 2319 days |
What about in this order, QC?:
Board2 Romhacking.net SMW Central (Super Mario World Hacking Forums) SMS Power (Sega 8-bit forum including Hacking.) Jul (Rusted Logic) Sonic Retro (Sonic the Hedgehog Hacking forums) And for world 8: Lost Levels Warp Zone: ''Google'' ____________________ Mah boi, romhacking is what all true warriors strive for! I wonder what's for dinner? |
KP9000 |
| |||
Boomboom Level: 90 Posts: 1291/1975 EXP: 6955453 Next: 233156 Since: 02-19-07 Last post: 3584 days Last view: 3208 days |
|
Trax |
| ||
Yellow Stalfos Level: 71 Posts: 959/1145 EXP: 3036734 Next: 130380 Since: 07-06-07 From: Québec Last post: 3630 days Last view: 2882 days |
May be a wild guess, but I got this code after a quick check at the ROM, a few bytes past the table:
Something like that? |
KP9000 |
| |||
Boomboom Level: 90 Posts: 1295/1975 EXP: 6955453 Next: 233156 Since: 02-19-07 Last post: 3584 days Last view: 3208 days |
|
JaSp |
| ||
Shyguy Level: 24 Posts: 75/95 EXP: 73310 Next: 4815 Since: 03-02-07 From: Paris, France Last post: 4354 days Last view: 4149 days |
Maybe you have confounded ROM & RAM addresses.
In the case of DD's docs, 0x indicates a ROM address and $ indicates a RAM address. So if you'd like to mess with, say 0x24EE, you have to 'convert' it to a probable RAM address and set the load breakpoint to one of the resulting addresses (that would be either $84DE, $A4DE, $C4DE, or $E4DE; since PRG banks are located between 8000-FFFF). And looking at Trax's code, $A4DE seems more likely (257C: B9 ECA4 LDA $A4EC,Y ; Loaded here) Not sure that's your issue here though! |
Kawa |
| ||
CHIKKN NI A BAAZZKIT!!! 80's Cheerilee is best pony Level: 138 Posts: 3622/5344 EXP: 30954225 Next: 708756 Since: 02-20-07 From: The Netherlands Last post: 4502 days Last view: 2637 days |
Posted by JaSpJust popping up to say this is one of the main reasons I prefer GBA hacking: if a given address, given as a full 32 bits value, starts with 0x08, you can bet it all it'll be a ROM address, no matter what prefix the author uses. If it's a 24-bit value, it's probably still a ROM address. * Kawa disappears again ____________________ Wife make lunch - Shampoo Opera - give it a spin Spare some of your free time? <GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered Kawa rocks — byuu |
Trax |
| ||
Yellow Stalfos Level: 71 Posts: 960/1145 EXP: 3036734 Next: 130380 Since: 07-06-07 From: Québec Last post: 3630 days Last view: 2882 days |
Maybe you didn't add 0x10 to the address? If your ROM is headered, then you must add 0x10 to account for the first 0x10 bytes of the header.
I'm checking at 0x24EC (+0x10) right now: 00 00 19 1E 0C 0D 1F 0B 03 06 08 07 05 04 0B 0E The code takes a value from $0689,X and keeps only the 4 last bits, so the resulting number can't be higher than F, so I deduced that the data table above would be 0x10 bytes long. And it probably is because there's another table at 0x24FC (+0x10), which is exactly 0x10 more than 0x24EC. I know there's another table because of the load line at 0x25DE. And the code explained:
I don't know SMB3 at all, but here's my guess. The 1-Up item must have a certain code associated to it. From the table and DDs info, I presume it's 08. So when a block must spit out a 1-Up, there must be some way to tell the game, this block has item 08 in it. And when you hit the block, a sprite comes out. So the game takes the ID of the item (in this case 08), and checks the table for the sprite ID, which is 03... This is the most logical explanation I can find; correct me if I'm wrong... |
KP9000 |
| |||
Boomboom Level: 90 Posts: 1296/1975 EXP: 6955453 Next: 233156 Since: 02-19-07 Last post: 3584 days Last view: 3208 days |
|
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 947/1443 EXP: 4173719 Next: 17410 Since: 06-15-08 From: Earth Last post: 25 days Last view: 25 days |
Posted by Hamtaro126I like that! Thanks for the interest and suggestion! I actually discussed it with a few of the others and decided that the planned collaborative hack would focus primarily on level and map designs, as well as possibly custom palettes. It is a learning ground, after all. I want to avoid any possible further confusion. So while I like the thought of a major gimmick hack, perhaps that will be best saved for another time and place. As for news on this project, I've been surprisingly busy as of late, what with taking a programming class online and other personal commitments. Plus it seems lately that I cannot get a hold of anybody. I've asked for suggestions for a starting ground on the planned huge tutorial and haven't really gotten any direction for it. I have covered a few basics already, but would like to know what everybody wants me to direct more focus towards and what points are most critical to hit. Also, where would such a tutorial be most convenient for everyone to access? A separate topic here on Board 2? A huge ZIP folder containing a bunch of text files, sort of dividing information up into chapters? Of course it's simple enough to just say that I should type up everything that I can think of, but I would like to reduce the chance of questions/requests for expanding on certain areas later on. The point of this is mainly for the collaborative hack, of course, but it would be nice for everyone later in the case of a new SMB3 hacker wondering where to start to just be able to refer them to such a tutorial. And of course, I wouldn't be able to cover everything, and for any other documents that do exist like KP9000's SMB3 Notes and Complete Tile Definitions for SMB3 and DarkBoyHacker's SMB3 ASM Hacking Tutorial can be referenced and/or linked to for additional readings. So any suggestions? Plus is there anyone else who would like to participate in this project? Thank you. |
4matsy |
| ||
Micro-Goomba Level: 9 Posts: 9/10 EXP: 2502 Next: 660 Since: 03-09-07 Last post: 5061 days Last view: 4640 days |
Okay, so you know how when you stomp a turtle, and it's about to come back out of its shell, it shakes a bit and sticks out its feet like this?
I've been looking through the pattern tables in the NES, SNES, and GBA versions for the better part of 2 hours and haven't been able to find the graphic for the feet. It's not with the rest of the turtle/shell/goomba graphics, and I even opened up the tile viewer in the emulator to see if the game switched graphics banks when the feet came out, or some other weird method like that...nothing. So, uh...yeah. Does anyone know where the graphics for the waking-up-shell's feet are in the rom? |
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 954/1443 EXP: 4173719 Next: 17410 Since: 06-15-08 From: Earth Last post: 25 days Last view: 25 days |
I don't know about the SNES or GBA versions, but I went through the NES version...
After a quick look, it seems as though the same graphic is used for while the Koopa is walking as well as while sticking its feet out. Tile $F8 between the range of 0x53000-0x53FFF in ROM. Hopefully I got that right... (Click images to enlarge.) And now... some data! Whoopee?! NOTE: String sizes are denoted in hex, not decimal. For example, 0x14 bytes indicates 20 bytes in decimal. RAM Data
ROM Data
I have to cut this post short, and I think I still have some other data that I missed from my many unorganized notes, so maybe more will come later. As for the collaborative SMB3 hacking project... no comments??? |
4matsy |
| ||
Micro-Goomba Level: 9 Posts: 10/10 EXP: 2502 Next: 660 Since: 03-09-07 Last post: 5061 days Last view: 4640 days |
Gah, right under my nose the whole time. Thanks, Quick Curly. :p
And now, upon looking closer at that GBA screen, I see they used the same tile, but flipped it upside-down to give the appearance of the feet sticking out diagonally. You can see the one pixel of shell rim that's in that foot tile, too, if you zoom in and get a good look at the feet. Heh. |
deshaun182 |
| ||
Red Koopa Level: 27 Posts: 4/131 EXP: 106670 Next: 9489 Since: 06-21-10 Last post: 2303 days Last view: 2303 days |
I remember i used to hack this!!! But only level changes. I have like 432409123478129384712903471903894712934712347123-74912389471238741 uploaded into my email in case i ever needed them again!
They were all fairly short. ____________________ --The Disappeared-- God Bless |
deshaun182 |
| ||
Red Koopa Level: 27 Posts: 14/131 EXP: 106670 Next: 9489 Since: 06-21-10 Last post: 2303 days Last view: 2303 days |
So, i want to get started on hacking this game again. What tools do i need/should i use? ____________________ --The Disappeared-- God Bless |
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 968/1443 EXP: 4173719 Next: 17410 Since: 06-15-08 From: Earth Last post: 25 days Last view: 25 days |
Tools/utilities:
SMB3 Workshop - To edit the levels, level headers, and object palettes. SMB3 Map Editor - To edit the World Maps. SMB3TE - To edit the title screen. FCEUXD - To edit everything else. Use this to edit palettes for enemies, Mario, Luigi, etc. that cannot be edited in SMB3 Workshop, as well as text, music, etc. Information/references: SMB3 Data Crystal Page - For quick ROM and RAM offsets, as well as the locations for palettes and text for editing purposes. General SMB3 Hacking Thread (This Thread) - Definitely a good read. SMB3 Music Data-Related Post - For an idea (a rough idea) about music. A Little SMB3 Data - Another old small post. Mainly only really good for map animation speed (not much). Small SMB3 Map Editor Pipe Editing Tutorial - A short, simple tutorial showing how to add a pipe system to the World 1 Map. Small SMB3 Palette Editing Tutorial - A short tutorial showing how to use FCEUXD to edit the World Map palettes. Also refer to my previous post in this thread to take note that the palettes that each World Map uses are determined by the data at ranges 0x1842D-0x18435 (0x9) (object palettes) and 0x18436-0x1843E (0x9) (sprite palettes). SMB3 Title Screen Palette Definitions - Courtesy of your friendly neighbourhood KP9000. These links obviously don't cover everything there is to know, but hopefully this post provides you with a decent starting ground and helps you out. If you have any further questions, please feel free to PM me or post your questions in this thread so that others can help you out as well. |
zbyte |
| ||
Boomerang Brother Z is Superior! Level: 66 Posts: 842/1016 EXP: 2387982 Next: 73869 Since: 06-10-09 Last post: 4435 days Last view: 2915 days |
A couple of people touched on the pipe that ignores pointers.
Posted by silas Posted by binarycuberoots The pipe that supposedly ignores pointers doesn't ignore them at all. It uses them just as the other pipes do. Rather, it ignores the level described in the header and takes you to those underground bonus rooms with Giant [?] blocks! These rooms are specific to each world, and are not available in World 1 and 2, thus making you fall. Even when you entered it, you'd exit the way you wanted to in your pointer. And even then you would always happen to fall into a starry sky. Look at 3-5, 5-5, 6-3, and so on. So these pipes aren't erratic at all! Even DahrkDaiz got this wrong. Also, The World 5 pipe set doesn't exist in SMB3 Workshop's level selection list, and the map editor doesn't recognize them either. Here's the offsets:
As well another piece of data:
EDIT: Sorry for leaving everyone hanging there. Something (or someone) always likes to drag me away from what I'm doing here. As for the huge SMB3 hack, I'm not really sure about the ASM part of it. It's supposed to be a learning ground, right? I don't think a new SMB3 hacker would have fun attempting to do that stuff, although we come come up with a different story altogether. However, CHR expansion doesn't seem all that difficult either. The idea was great though! ____________________ No quotes found; we apologize for the inconvenience. Commas, question marks, and semicolons are available, though. |
Quick Curly |
| ||
Giant Red Paratroopa Level: 77 Posts: 978/1443 EXP: 4173719 Next: 17410 Since: 06-15-08 From: Earth Last post: 25 days Last view: 25 days |
Sorry to sound like a downer, but after all the time that's already passed by, I'm not going to bother with the collaborative SMB3 hack idea anymore. Anytime I was trying to get a hold of the people who said that they wanted to participate for ideas, or to simply get started on some basic level editing, they either were never available or they would intentionally not respond. Plus I started on the planned huge tutorial some time ago and asked the others for input/ideas on what they needed help/information on, and no one provided any. I was the only one who was trying to push the project forward, so in such a case, I might as well continue doing stuff on my own which has been the scenario for pretty much the whole time I've been ROM hacking anyway. So whatever. The point of the project was to help them gain some experience. If they don't want to do that, it doesn't upset me or anything. It's their choice. Again, whatever.
On top of that, now that I'm on my midnight schedule (as in, my day is night for the majority of everyone else) I doubt it would work now anyway. |
zbyte |
| ||
Boomerang Brother Z is Superior! Level: 66 Posts: 850/1016 EXP: 2387982 Next: 73869 Since: 06-10-09 Last post: 4435 days Last view: 2915 days |
Oh well. At least you put forth some effort. I think you should finish up your own work as well. I recall you being in the testing stages of your SMB3 hack - is this correct? Sorry if it's not.
I forgot to mention this in my last chapter of a post - and that is that entering a pipe in the special world-specific Bonus Area will take you back to the level you came from. The only way the special pipe won't take you to the special Bonus Area is if you play the main level in another world. Sorry that you missed out on your 'Nooki! I forgot to mention this as well - FCEUXD and the SP version don't work for me. FCEUXD worked normally the first couple of weeks or so for me, but after that it wouldn't open properly. It would only appear in the taskbar when I start up the program and I have to maximize it by right-clicking on it. And once I opened up a tool like the hex editor both of them would minimize to the taskbar and would never appear again. The SP version didn't work properly as long. I use the FCEUX now. It combines all previous branches of the FCEU emulators, including the FCEUXD. I chop up some unused level data sometimes to use secondary areas or bonus areas. You have to include a 9-byte level header in the number of extra bytes. Is this similar to unused enemy data? Usually I see 01 at the beginning of each enemy data offset; this must be some type of header. Any ideas? Should extra enemy data be handled the same way extra level data does? ____________________ No quotes found; we apologize for the inconvenience. Commas, question marks, and semicolons are available, though. |
KP9000 |
| |||
Boomboom Level: 90 Posts: 1384/1975 EXP: 6955453 Next: 233156 Since: 02-19-07 Last post: 3584 days Last view: 3208 days |
|
Main - ROM Hacking - General SMB3 Hacking Thread | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 135, rows: 175/183, time: 0.028 seconds. |