| |||
| Views: 12,476,408 |
![]() ![]() ![]()
Main
| FAQ
| Uploader
| IRC chat
| Memberlist
| Active users
| Latest posts
| Calendar
| Stats
| Online users
| Search
|
09-07-10 02:35 PM |
|
| Guest: Register | Login | |||
| Main - ROM Hacking - General SMB3 Hacking Thread | New thread | New reply |
| NutheadBros |
| ||
|
Koopa Level: 18 Posts: 65/117 EXP: 29062 Next: 835 Since: 03-29-09 From: Spiral Mountain Last post: 395 days Last view: 79 days |
Actually the spot I tried were Level 4 Ending & Level 5 Ending. That is the trouble Spot because when I play up to either level there is no goal card preventing me from finishing the level. I think that Level 4 Ending & Level 5 Ending are the Sub-Stages that you are talking about |
| KP9000 |
| ||
|
Last post: 1 day Last view: 11 hours |
It sounds like you overwrote some enemy data there. Did you change levels 1-4 or 1-5 endings at all?
Usually these levels use the same enemy data and might overwrite into something else if you add more than it's designed to carry. Anything you change in o ____________________ |
| NutheadBros |
| ||
|
Koopa Level: 18 Posts: 66/117 EXP: 29062 Next: 835 Since: 03-29-09 From: Spiral Mountain Last post: 395 days Last view: 79 days |
Edit: Never Mind it turns out you can't go over enemy limits either.
|
| Quick Curly |
| ||
|
Fuzz Ball Level: 50 Posts: 494/989 EXP: 887346 Next: 59971 Since: 06-15-08 From: Earth Last post: 21 days Last view: 21 days |
Posted by TreliorThat's exactly what it is. In levels like the World 1 Dungeon Spike Room, 3-3, 3-8, etc. where the screen moves up and down, it is in fact the Autoscrolling enemy located below Y: 026. Just like when it is above Y: 026, the Y-position determines its behaviour. If you want to set its position, you can do so in the FCEUXD hex editor.Posted by zbyteThat's weird... Maybe the enemy slot wasn't used, is pushed off the scrollable area of the screen, or something dumb like that, because I checked 3-3 myself and never found that elusive 13th enemy.Posted by TreliorI'm working oPosted by zbyteIt's possible that that particular enemy was a "Nothing" entry, or maybe even the auto-scrolling pointer, it's either o Posted by NutheadBrosThat's sort of half-true. As long as you're organized and you keep track of enemy data that you overwrite so that you can change any areas that originally used the overwritten data accordingly, you're more than free to use more enemies (or more objects, for that matter) in other areas. Of course, there still are limits. I think you're limited to 216 actual objects per area or something like that. You have to experiment and test things yourself to find out what works best for your hack specifically. |
| Trax |
| ||
![]() Stalfos Level: 53 Posts: 867/1020 EXP: 1109310 Next: 47809 Since: 07-06-07 From: Québec Last post: 10 hours Last view: 9 hours |
What exactly is the enemy limit per level in SMB3? |
| KP9000 |
| ||
|
Last post: 1 day Last view: 11 hours |
It's predetermined. When the developers made the game, they defined what it was per level. You can change it, but you have to be able to find some free space in that bank to point to, which IIRC, was very little. ____________________ |
| beneficii |
| ||
|
Shyguy Level: 18 Posts: 78/81 EXP: 26246 Next: 3651 Since: 02-19-07 Last post: 73 days Last view: 370 days |
Regarding the sizes of levels, you are limited by the amount of space in the ROM, ultimately. You can make a level as long as you have a continuous block for its object data and a continuous block for its enemy data, and it will work as long as you point correctly to the start of the object data and enemy data from the world map and for entrances coming from other levels. The problem is organizing modifications to the existing structure--How would such modifications be kept track of? The ROM has a bank for enemy code and in that bank there is a block of all the game's enemy data, and has multiple banks for the code of each object set and in each bank there is a block of all the object data used by all the levels of that object set. If a hacker deletes or adds objects/enemies in a level and to save space the editing program brings the start of the next stage's data to just past the end of the level just modified, and then the stage after that and the stage after that, making sure they were all aligned in a continuous block (while making sure that the block of stages doesn't grow past the space available in the ROM bank), then the editing program must also make sure that all references to the object/enemy data after the stage modified are all updated to reflect the new starting addresses.
Such is FC/NES hacking, due to the limited space available and the fact you would have to add clone banks for more space. In SFC/SNES hacking, there is much more ROM space that is available and in most games not nearly all of it is used, so it is easier to program extensions there, without having to clone banks. EDIT: Corrected grammar. EDIT2: To clarify, in SMB3 Workshop you may delete objects/enemies, so that they are fewer than what they were in original level, but you won't get any of that space to use in other levels, because the editor is strict about keeping the starting addresses of all the levels' object/enemy data the same. EDIT3: The way around that is to enter and keep track of those starting addresses yourself, manually. ____________________ 「しっかり統制された民兵は自由な国の安全保証にとって必要なので、国民が武器を所有し携帯する権利は侵されてはならない」アメリカ合衆国憲法修正第2条 |
| kunio1031 |
| ||
|
Newcomer Level: 3 Posts: 2/2 EXP: 57 Next: 71 Since: 07-25-09 Last post: 404 days Last view: 406 days |
Hey guys, when you do pipes in a stage. Say multiple pipes, do you have to make pointers for each pipe? Also some things I wanted to say about my hack, which I'll be making o 1-My hack is gonna be making itself as much like the names given to the worlds, as described in the mario 3 player's guide. For instance. -World 1-Grass Land-nothing but green hilly stages, nothing else. Except for the fortresses. -World 2-Koopahari Desert-Simple enough. -World 3-Island World-combo of islands and swimming, no "just o -World 4-Land of the Giants-All block structures and enemies are giant, this may sound limited. But I'll figure it out. World 5-Sky World-Easy enough, but I'm o World 6-Winter Wonderland-Lots of frozen coins, and ice blocks. World 7-Pipe Maze-Every single level will be a different maze, so there will be plenty of mazes to go about. Oh and o World 8-Castle of Koopa-This o 2-If I change a level, say 1-1 so that way it would be a hilly stage. But I kept the same amount of 3 bytes and 4 bytes. Is that gonna be a problem? Would it screw the game up or not? |
| Quick Curly |
| ||
|
Fuzz Ball Level: 50 Posts: 502/989 EXP: 887346 Next: 59971 Since: 06-15-08 From: Earth Last post: 21 days Last view: 21 days |
Posted by kunio1031Yes. Also, make sure you o Posted by kunio1031Hopefully it's soon! ![]() Posted by kunio1031Do not change the object set for 1-1. It'll o 1-1: 81 3-byte objects, 5 4-byte objects (81 x 3) + (5 x 4) = 243 + 20 = 263 bytes So the object data for 1-1 (excluding the 9-byte level header) is a total of 263 bytes; so you can use any combination of 3-byte and 4-byte objects as long as the total number of bytes that you use doesn't exceed 263 bytes. When I'm designing levels, I always keep this in mind so that I can use the same exact number of bytes as the maximum: 3 x 4 = 12. Obviously different additions of 3-byte and 4-byte objects might not equal the original total number of bytes used. However, if you use 4 3-byte objects for every 3 4-byte objects that you take out and/or vice versa, you can keep the same total. I know it likely sounds confusing because it's harder for me to explain than to show, so here's a visual of what I mean. Say I want to add more 4-byte objects since you originally o ) you would need to take out 2 3-byte objects so that you free up at least 4 bytes to work with. However, then you have 2 bytes left over that cannot be used. To put 2 4-byte objects in, you would need to remove 3 3-byte objects so that you free up at least 8 bytes to work with. However, in that case you'd have 1 byte left over that cannot be used. As you can probably guess that I was building towards, you could take out 4 3-byte objects to free up 12 bytes which would allow you to insert 3 4-byte objects. The same goes with giving up 3 4-byte objects so that you can use 4 more 3-byte objects. So in the case of 1-1, the following combinations would allow you to use all 263 bytes:
(85 x 3) + (2 x 4) = 255 + 8 = 263 bytes (81 x 3) + (5 x 4) = 243 + 20 = 263 bytes (77 x 3) + (8 x 4) = 231 + 32 = 263 bytes (73 x 3) + (11 x 4) = 219 + 44 = 263 bytes (69 x 3) + (14 x 4) = 207 + 56 = 263 bytes etc. Of course, you don't have to worry about the original number of bytes if you just decide to expand some levels by sacrificing whole or parts of other levels. In that case though, just remember to keep a log of everything so that you minimize the probability of things messing up. Sorry for the long explanation. Hopefully it helps you out. And of course, please keep us up to date o![]() |
| zbyte |
| ||
|
Red Super Koopa Z is Superior! Level: 43 Posts: 205/870 EXP: 546551 Next: 18495 Since: 06-10-09 Last post: 1 day Last view: 1 day |
Posted by Quick CurlyThat's exactly what it is. In levels like the World 1 Dungeon Spike Room, 3-3, 3-8, etc. where the screen moves up and down, it is in fact the Autoscrolling enemy located below Y: 026. Just like when it is above Y: 026, the Y-position determines its behaviour. If you want to set its position, you can do so in the FCEUXD hex editor.Posted by zbyteThat's weird... Maybe the enemy slot wasn't used, is pushed off the scrollable area of the screen, or something dumb like that, because I checked 3-3 myself and never found that elusive 13th enemy.Posted by TreliorI'm working oPosted by zbyteIt's possible that that particular enemy was a "Nothing" entry, or maybe even the auto-scrolling pointer, it's either o I re-sized SMB3 Workshop and still didn't see it, however, I set it below Y: 26 and it moved up an down, but really weird, not the way it's supposed to. ____________________ What happened to the fried chicken? ![]() |
| Quick Curly |
| ||
|
Fuzz Ball Level: 50 Posts: 523/989 EXP: 887346 Next: 59971 Since: 06-15-08 From: Earth Last post: 21 days Last view: 21 days |
Some of them are really far down, so I find that it's just easier to use a hex editor. |
| silas |
| ||
|
Level: 10 Posts: 16/24 EXP: 3323 Next: 1091 Since: 06-30-08 Last post: 93 days Last view: 92 days |
Posted by Quick Curly Or you can mix the enemy data with o ![]() |
| zbyte |
| ||
|
Red Super Koopa Z is Superior! Level: 43 Posts: 212/870 EXP: 546551 Next: 18495 Since: 06-10-09 Last post: 1 day Last view: 1 day |
Posted by Quick CurlyHow am I supposed to do that? ![]() ____________________ What happened to the fried chicken? ![]() |
| Trelior |
| |||
|
Lava Lotus Start + Select + A + B Level: 57 Posts: 346/1687 EXP: 1424203 Next: 61725 Since: 07-12-09 From: Sabula, PA Last post: 6 days Last view: 8 hours |
|
| KP9000 |
| ||
|
Last post: 1 day Last view: 11 hours |
Alright, I've got a castle and a treasure chest in it. What do I have to do to make it not give me another image of the treasure chest as an item and get me out of the level? Also, how do I get the castle to unlock a lock when you collect an item in the level and exit this way? ____________________ |
| zbyte |
| ||
|
Red Super Koopa Z is Superior! Level: 43 Posts: 230/870 EXP: 546551 Next: 18495 Since: 06-10-09 Last post: 1 day Last view: 1 day |
Posted by KP9000Try reading the SMB3 Workshop readme. Posted by KP900Read the Super Mario Bros. 3 Map Editor ReadMe. Posted by TrelliorThis will not work out as planned... this will be harder than my 15-paragraph essay... ![]() ____________________ What happened to the fried chicken? ![]() |
| KP9000 |
| ||
|
Last post: 1 day Last view: 11 hours |
zbyte? Um, did you actually look inside the readme for SMB3 workshop? If you did, why didn't you post any relevant data in here if you went through all that trouble to check?
What I'm asking is how to make it so when you get the treasure chest item, it unlocks the lock o ____________________ |
| beneficii |
| ||
|
Shyguy Level: 18 Posts: 79/81 EXP: 26246 Next: 3651 Since: 02-19-07 Last post: 73 days Last view: 370 days |
KP9000,
I think that to break the lock when you get an item at the end of the level, you will need to do ASM hacking. Locks are tied specifically to the Boom Booms. The upper nybble of Boom Boom's y position determines which of the world's locks to break (if it's 0, then index 0; if it's 1, then index 1; if I remember correctly)--when Boom Boom is actually drawn to the screen, the upper nybble of his y position will always be 1, which restricts where he can appear. To do that for an item, I think you will have to find a way to tie the lock to it. ____________________ 「しっかり統制された民兵は自由な国の安全保証にとって必要なので、国民が武器を所有し携帯する権利は侵されてはならない」アメリカ合衆国憲法修正第2条 |
| KP9000 |
| ||
|
Last post: 1 day Last view: 11 hours |
Well, the final level design I'd like to shoot for is to have a treasure chest with an item attainable without ending the level. Instead, Mario will continue o Is this doable? Also, I still haven't figured out how to change/add what item is given by treasure chests. Any insight o ____________________ |
| beneficii |
| ||
|
Shyguy Level: 18 Posts: 80/81 EXP: 26246 Next: 3651 Since: 02-19-07 Last post: 73 days Last view: 370 days |
KP9000,
That would seem to be somewhat difficult. Not having a Windows computer right now that I can reliably access, I cannot check for myself. Still, I have looked at the treasure chests before, and I think it is that there are 2 objects or sprites (I don't remember which o If it isn't a second object/sprite (and my memory was bad), it might be hardcoded in the ASM. In which case, you might want to try using a debugger or a tracer to find it. I hope it doesn't have to come to that though. The other issue you have to resolve is changing the code of the treasure chests themselves, so that you don't exit the level when you get the item. That would seem to call for none other than good old-fashioned ASM hacking. ____________________ 「しっかり統制された民兵は自由な国の安全保証にとって必要なので、国民が武器を所有し携帯する権利は侵されてはならない」アメリカ合衆国憲法修正第2条 |
| Main - ROM Hacking - General SMB3 Hacking Thread | New thread | New reply |
© 2005-2010 Acmlm, Xkeeper, blackhole89 et al. |
|
MySQL - queries: 97, rows: 140/0, time: 0.067 seconds. |