Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - Split hack, good idea?
  
User name:
Password:
Reply:
 

UserPost
Squash Monster
Posts: 617/677
I'm glad we found a solution. I personally learned some during that, which'll help a great deal should I ever find some serious time to work on my recode of EggVine.

As for multiple patches: we could require that one has a save file to get to the levels in the second patch. It's fully possible to make levels in YI not only unplayable but also unreadable and very difficult to repair (change one key byte and suddenly you're loading half the ROM as garbage data). Nothing would stop somebody from using a completed save file from an unmodified copy of YI though. Actually, I'm pretty sure that one could do that even with a single patch.

That's not a problem though. The point of playing a hack isn't to get to the end, but to play the hack. A good hacker's levels are worth playing for the sake of playing rather than as a mere challenge.
Kefka
Posts: 3240/3392
Several games take up multiple discs to play, so I don't see why having multiple patches couldn't work. If people are going to be cheap and just play the second patch without playing the first, that's their loss. But, then again, since it looks like you don't need to, all points in favor of it are moot.
Golden Yoshi
Posts: 482/693
Well, I've decided to dump the split hack idea. Squash Monster has helped me to find some extra space in the ROM and how to utilize it in levels, therefore a split hack is unnecessary as of now. Thanks for all your input and opinions people, and look out for the full version of SMW2+ later this year (hopefully) .
Bit-Blade
Posts: 249/445
Split Hacks are a mixed bag. On the one hand they are a tad wasteful if you are only using the extra rom for a few extra levels. On the other hand they can be more than a tad excessive if your split hacks span the entirety of more than one rom.

The problem with the savestate/password system is that the passwords can be cracked and the savestates can be hacked. The easy solution to this would be to make other levels unplayable, I suppose, though any idiot with an inclination could remedy that if they care to learn how to level edit.
Squash Monster
Posts: 615/677
In some versions, yes. Not the one most of us hack though.

Golden Yoshi and I were trying to find a solution for quite some time last night. While trying to find Cellar Dweller's post on how to work with the level pointers, I stumbled upon something extremely useful that he said that I apparently missed before. There's a massive chunk of free space right after all the text data.

And, after browsing around the level pointer, we discovered that right after all the used levels is a swarm of FFs, so we're also almost certain that we can use about 20 more level pointers than the original game used.

No luck getting a new level in yet though. I think I'm missing my the data with my pointer, but every time I try to read it by hand it works.

EDIT: And once again I take too long to post. Yeah, as it says above, we're trying that data right now, actually.

The main problem is less space than number of level indexes in the pointer table.

EDIT again:
Hahaha, it's alive!

Now hopefully YI will read indexes higher than it was intended to without doing anything funky on us. Thanks everyone who helped.
Cellar Dweller
Posts: 231/269
Have you tried using the chunk of free space after text data?

"FF FF FF FE"= free space

Use the HiROM version of the pointer to avoid trouble.
HyperLamer
Posts: 5244/8210
Jeez, that's like 45K. And does YI even have a language selector?
FuSoYa
Posts: 205/255
Not sure if you've already thought of this or how much space you need, but have you tried using ycompress? The compression from it is somewhat better than the original, and can free up about 0xB355 bytes when using the original graphics. You may be able to squeeze out a bit more if you blank out the tiles for the other languages.
HyperLamer
Posts: 5229/8210
Well if you absolutely can not get something to work on the real system, then it's acceptable to use a hackish solution, but you should always strive to ensure that your hacks could be played if they were to be put on a flash ROM and stuck into a real cartridge. (If possible, do so!) And yes, that does apply in this case, because you can't very well cart-swap on a SNES, let alone copy save files between the two.
Vystrix Nexoth
Posts: 332/348
One of the basic tenets of ROM hacking is working with what you have available. You don't put stuff in the ROM, you replace what's already there (unless you perform ROM expansion).

I voted "no": if you want more stuff than the original cartridge setup could handle, then expand the ROM. Splitting it across two ROMs, and then calling it a single ROM hack, is a cop-out. It says, "I couldn't do it, I couldn't put what I wanted into this ROM, so I rigged up this bastardized project where I put only part of what I wanted into the ROM, because that's all I'm capable of fitting in there, and put the rest in a different copy of the ROM". It's two half-hacks, not one full hack.

As I said, one of the key concepts in ROM hacking is replacing, not adding, content. Often times there's simply too much stuff to put into a game, whether the limitations are in the console, in the cartridge, or in the way the game allocates cartridge space for various things such as level data. To make it work, you will have to make some sacrifices. To cop-out by splitting it into two hacks would be like, say, making a Windows version of the game and modifying that: it gives you more creative leg room, but then you don't get the prestige of having hacked it under the same terms as hackers past.

And those things don't even take into account the technical difficulties involved in trying to play such a hack. Switching save-game files around, dicking around with save-states, whatever... cartridges weren't designed for that. You want something in the game, you put it on the cart. If it won't fit on the cart, make it bigger. If you can't do that, you're SOL.
Squash Monster
Posts: 611/677
Last time I saw talk about expanding Yoshi's Island, nobody knew how to do it because the game was rather split-personality when it came to deciding if it was HiRom or LoRom (something to do with the SuperFX chip or something, I don't remember well).

If somebody knows the right way to expand it, though, then it'd be very easy to repoint levels into the expanded space. And EggVine shouldn't choke on it if you put a bit of data for it to read back there. Specifically, (from memory, don't kill me if it doesn't work) wherever you point two needs a ten byte header (what's in it shouldn't actually matter), at least one object (00 00 00 number-of-your-favorite-object-out-of-"O4Sdata.dat" should be enough), an FF to signal the start of screen exits, an FF to signal the end of screen exits, as many 00s as you can stand so EggVine loads that area as free bytes, and any other byte to end the free space (EV would most likely read past end of file if you didn't put that there ). You'll need a second area of data like this for sprites as well. I'm pretty sure this one can just be two FFs, a lot of 00s, and a byte to end it.

In summary:
--Expand the ROM.
--Go to ROM adress: BF9C3 + (6 * levelIndex) and use the first three bytes you run into there to point to where in your expanded area you put the level. Use the next three bytes to point to where you want the sprites. Some pointers are HiROM and some are LoROM and I'm not sure what determines which you should use.
--Put 00 00 00 00 00 00 00 00 00 00 00 00 00 85 FF FF (lots of 00s) 2Awhere you want a level. 85 and 2A don't matter, they just happen to make a fish-shaped platform and be a spiffy number, respectively.
--Put FF FF (lots of 00s) 2A where you want to put your sprites. Once again, 2A is any random spiffy number.


And I'm sorry I didn't get that level-defragmenter finished this week. Between the presentation I have to give next week and being sick, I've not had much time to do fun stuff like this .

EDIT: Darn, FuSoYa ninja'ed my post. Well, there you have it -- unless you find something new, use two ROMs. As a player, I wouldn't have a problem with it.
FuSoYa
Posts: 204/255
YI ROM expansion has been discussed here a few times before. AFAIK, the map for SFX games doesn't go beyond 2 MB.
Sukasa
Posts: 946/1981
I think that you should try to expand the ROM, but if that doessn't work then yeah, use two ROMs.
HyperLamer
Posts: 5217/8210
Only split if necessary. I don't imagine why you can't expand the ROM and repoint them. Multi-ROM games would be a pain because if you wanted to move between the first and second half you would have to close the emulator and open a different ROM, and if it were at all well-designed they would share a save file so you would need to rename that too.
tuna
Posts: 352/2
Lunar Expand won't work? >__>

(THen again, I know nothing about expanding, but it just came to mind.... that's what you cna use with SMW ROMs anyway, but you never know)
Golden Yoshi
Posts: 481/693
Well obviously this has come across my mind, and if I knew how to do it I most definitely would. Unless someone here knows how I would go about doing this, any help would be appreciated.
BGNG
Posts: 74/276
I personally prefer to patch things to a ROM and be done with it. If you can expand the size of the ROM (which I'm sure is entirely possible), do that instead of issuing two IPS patches.
Golden Yoshi
Posts: 480/693
Alright, awesome, I never knew that anyone has done this before, otherwise I probably would've never asked and just have did it.
PeterGriffinTheMan
Posts: 194/425
I think people who make very long hacks need two roms to finish the whole hack. Like FF7 they had three discs. I agree.
Golden Yoshi
Posts: 477/693
Hmm...four votes for "yes" so far, I'm starting to feel this is probably my best choice regarding the hack, unless someone says otherwise.
This is a long thread. Click here to view it.
Acmlm's Board - I2 Archive - Rom Hacking - Split hack, good idea?


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.003 seconds.