ROM Hack Need helps for making custom Giana Sisters DS levels.

GianaSistersFan64

New Member
OP
Newbie
Joined
Oct 31, 2019
Messages
3
Trophies
0
Age
20
XP
59
Country
France
Hello everyone :) Though I'd be interested to make some real custom level for Giana Sisters DS, but there is several issues that disturb me :

First off, how do we decompress LZ files without corrupting them and/or editing them more easier? Almost all the files of the game are LZ compression and some tools (like CrystalTile) can't recognize them. I tried to decompresse them by using NDS Editor, but files got corrupted (which fortunately, CrystalTile was able to open them, but tiles were glitched with had incorrect colors). Note that level maps are NSCR files, so we can edit them in hexadecimal, but it's more difficult and require me more patience.

And the most difficult is : how do we read bin files? Every levels contain a file called "blocks.bin.lz" which make objects like diamonds, extra blocks, bricks and hurtable objects functional. However, if you add or modify one in the map file, nothing would work, it'll act like you've changed nothing. i know bin files are generic extension, i heard they were very hard to read and i don't know how to view them. Helps and explanations are very welcome :D
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,348
Country
United Kingdom
Crystaltile2 normally works, occasionally has some false positives and the compression scan is a bit buggy but straight decompression usually does well.
Still Cue's GBA/NDS compressors are usually a good bet here
https://www.romhacking.net/utilities/826/

.bin is not hard to read (you open it like any other file in a hex editor or something better as and when). Being a generic extension though it means any format the devs decided to cook up you get to handle.

If it acts like you have changed nothing then you might well have -- just because a file is in the game does not mean the game has to use it. That said I don't know if I would go there right away, though to be fair I would usually work on finding the level data first (renaming levels and swapping them around is a good bet here) and then going backwards to figure out what does what. Unless you mean it uses the NSCR as a level but has the actual logic (collisions, items...) be something else which is normally seen more for 3d games but 2d ones can use the concept. In that case you will need to find the corresponding things handling the levels, enemy placement and whatever else (which might be more than one file -- occasionally levels are one and items/enemies another).
I did have a worked example of reverse engineering a level format in https://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2016-edition-out.73394/ but I don't know if anybody has gone in for Giana Sisters DS (the original back when was something of a meme and this game was seemingly to capitalise on that) so you will likely be doing it yourself.

"wrong colours"
Most console games until you hit fancy 3d stuff don't have straight bitmap images. Instead tiled images which I usually describe as paint by numbers. To that end most tile editors will just use a random/premade colour palette until such a time as you provide one. If you don't want to change the colours you can rip the palette from the game itself while the level is active, or possibly from a savestate made at the same time. no$gba debug is probably what I would use for that one.
 

GianaSistersFan64

New Member
OP
Newbie
Joined
Oct 31, 2019
Messages
3
Trophies
0
Age
20
XP
59
Country
France
Now i use Crystaltile2 only for importing and exporting file (Crystaltile2 is better for saving modifications, Tinke is not good for this except viewing and exporting files). I have BatchLZ77 for decrompressing files and it's very good for me.

Well i didn't knew bin files were not that hard to read :P By bad, misinformations can be everywhere... Nevermind... Your post made me thought, I didn't got the idea to dig more in these files with a hex editor. Realising how blocks.bin worked took me a lot of time, but now i finally know how it work (but i don't know how to explain it).

I really did changed it. I replaced a red diamond into a wall tile and it still was taking it. But now i understood the problem :) The NSCR is also a level with it actual ligic, it toke collisions and level size. The corresponding file for a level is a .xml. It is the main level file because it load level graphics, palettes, maps, background,music, it add the start point, enemies, items as well has the timer.

As for the "wrong colours", i meant for Crystaltile2 using it default palette when a palette isn't loaded. I don't really need ripping palettes, and i don't have any issues with it.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BakerMan
    I rather enjoy a life of taking it easy. I haven't reached that life yet though.
    cearp @ cearp: and Psi - I had a cd player / radio that played mp3 cds once, very cool