Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - USC

Pages: [1] 2 3 4 5 6 ... 9
Newcomer's Board / Re: Pokémon Stadium won't run after hex editing
« on: September 25, 2016, 12:15:51 am »
Hello! It'd help if we knew what changes you made, and where you made them in the ROM.

Newcomer's Board / Re: Recompression Algorithm Advice
« on: September 15, 2016, 11:00:56 am »
Wow, thanks for all that information Zoinkity! I hadn't even thought of using a tree to search. Hopefully I'll be able to wrap my head around all of it.

Update: After a couple missteps, I was able to make a functioning compression/insertion routine:

(The whole screen excluding the text-box is compressed, but for my purposes the only thing that's important is the top left corner, haha)

Oddly enough, my algorithm seems to create longer runs of compressed data compared to the original - I've decompressed then recompressed several game images and they're all at least 100 - 200 bytes smaller. I assume the original Wonder Swan team's algorithm had be more concerned with time and/or space complexity on 1990s computers than I do. :)

If anyone's curious, the game's about 85% playable at this point (shop dialog is the last remaining hurdle for the player), and roughly 50% fully translated (the 229 Digimon bio's being a LARGE portion of the remaining text). There's a few additional problems related to increasing the Digimon's name max length from 10 to 16 (like running off screen and being partially overwritten in memory), but I haven't made enough progress on those to beg for help yet, haha.
Plus, editing the shops and title screen will keep me busy for a while.

Thanks again for all your help guys!

Newcomer's Board / Re: Recompression Algorithm Advice
« on: September 13, 2016, 01:25:13 am »
Oh yeah, I meant the uncompressed image data. I tend to use "hexcode"/"hex pair"/byte interchangeably - we all have our bad habits, I guess. :)

Thanks, glad to know I'm on the right track! Hopefully I'll have some time this week to program the compressor and see if the theory's correct.

Newcomer's Board / Recompression Algorithm Advice
« on: September 12, 2016, 10:54:03 pm »
Hello all!

I managed to figure out the graphics compression for Digimon 02: Tag Tamers and wrote a simple decompressor script (super duper proud of myself). Now I need to find a way to cram my new changes back in... and I'm not quite sure how.

Decompression overview

The graphics are 2BBP: 00 00 is a black line, FF FF is a white line, etc. The compressed image starts with some meta data (length/width/location, how many tiles will be drawn, etc).

The data is partitioned off with single opcodes that determine how much of its section is uncompressed. For instance, if the section starts with FF:
*Convert to binary, 1111 1111.
*Read from right to left
*If it's "1", the hex value at that position is uncompressed (read one byte)
*If it's "0", the hex value at that position is a compressed opcode (read two bytes)

An FF section reads in 8 bytes before the next section, a 00 section reads in 16, and anything in-between reads in 8 < x < 16 bytes.

If we hit an opcode, then we're repeating a certain amount of lines/hex codes that were already drawn.
In the opcode, the first byte multipled by 16 is how many bytes you go back to start repeating. The following byte is split in two; the first nybble can be used to go back an additional number of hex codes, and the second nybble tells us how many bytes to repeat... plus 3 (since a two byte hex code that only draws 1 or 2 is a waste of space, haha).

Example: 01 45 would go back (1 * 16) + 4 hex values, then redraw the next (5 + 3) hexcodes from there. If it hits the end of the drawn lines before it finishes, it'll loop back to the starting point and repeat the process (this usually only happens with a 00 opcode).

I've been able to use this information manually edit a few in-game graphics so far, but that way lies madness. I think I have an idea of how to write the recompression routine:

*[Fill array with all uncompressed data]

*Read in byte
*Start from index 0 of uncompressed hexcodes array and work our way to the current read position
  --Find the longest matching sequence that starts with the current byte
     --If greater than/equal to 3, create opcode
     --Otherwise, add in byte as uncompressed
  --When we have enough for a section, create the appropriate separator byte and add to "Output" array
*Read in next byte, and repeat until finished.

Not 100% sure this works, but it seems like it would.
I'm not too concerned with the efficency of the algorithm itself (although I don't mind any feedback there) so much as generating the smallest compressed output to fit back in.
Any suggestions or advice would be much appreciated!

Site Talk / Re: How to add a page in the wiki
« on: August 22, 2016, 02:42:32 pm »
If you search for the page on the Wiki and it's not there, the top result will be Create the page "__________" on this wiki!. Click the title and it will take you to the page editor.

There's probably a more official way to do it, but that's what I've used.

ROM Hacking Discussion / Re: Return 5 translation help
« on: August 12, 2016, 07:33:40 pm »
Hello Skorris! .RAR files are just like .ZIP files, a compressed archive that contains the actual patch.

If you can't unzip the RAR file on your computer, you can download a program like 7z to take care of it for you.

According to Bulbapedia, there's 190 indexes for Pokemon in the original series - in theory that gives you 39 creatures to add just using the existing structure.

That said, I don't know if there's enough free space in the ROM to actually store the new Pokemon's image, cry, and other data. You'll want to start mapping that out, as well as learning how the Pokedex data is structured. There are couple of guides here for you to start looking at:
http://www.romhacking.net/documents/73/ (Placing Pokemon in the world map)

There's also some utilities that may help you make edits:

Gaming Discussion / Re: This new Sonic is something interesting.
« on: July 26, 2016, 06:41:05 pm »
Wow, the graphics look like a mix between Sonic Crackers and the fan-game Sonic: Time Attacked. I'm super excited about this!

And I definitely agree with FAST6191 about control vs speed; my favorite Sonic game was Sonic CD, which is probably the "slowest" of the originals. The exploration and warping between different versions of the level was what made it fun - but once you have a time period's area half-way memorized, you can blaze through pretty quickly.

ROM Hacking Discussion / Re: Some romhacking questions...
« on: July 13, 2016, 04:50:07 pm »
You'll notice that the top row [where it says Offset (h)] has numbers to the right of it. 00, 01, 02 ... That shows how many values you are away from that row's offset.

So, for 40002,  you want to move two columns over from the 00 one. In your screenshot, you have the palette values shown in the top row.

ROM Hacking Discussion / Re: Some romhacking questions...
« on: July 13, 2016, 01:01:48 am »
The "0x" is used to show that the number is hexadecimal, not base 10. For instance, 10 in hexadecimal is actually 16 in base 10 - so 40002 in hex would be a lot different from 40002 in decimal.

From your screenshot, you're at the start of the ROM. Either use the Search menu to jump to 40002 - or just scroll down until the numbers on the left most column are around 40002, then use the pattern I mentioned above to find the palette.

The translation has been finished for quite some time.
And no, the color hack is not currently compatible because Toruzz is working off the original game file. There's nothing stopping anyone from porting the translation over to the color version once it's done, however. :)

ROM Hacking Discussion / Re: Some romhacking questions...
« on: July 05, 2016, 01:12:36 pm »
Alright, having downloaded VBA-M and tried to run the game, it definitely glitches the graphics up a bit. The regular version runs just fine. That said, the emulator is only needed to get the palette hex values, which I've already provided.

Make the changes using a hex editor, then go back to playing it on BGB. :)

ROM Hacking Discussion / Re: Some romhacking questions...
« on: July 05, 2016, 12:59:56 am »
I'm... honestly curious what you're doing. :)

All you have to do is open the patched ROM with a hex editor, navigate to 40002 (hex) in the ROM, and then change the values of "F7 02" to whatever color value you need it to be.

After that, you can run it in BGB, VBA, or any other emulator - and see the new colors. Also, I've never run it on VBA-M, but the regular VBA runs the game just fine.

ROM Hacking Discussion / Re: Some romhacking questions...
« on: July 03, 2016, 09:18:17 am »
I just used the regular VBA (1.8.3), so I'm sure the tool menu is available on all of them.
And yes, I changed the palette in hex. I figured you'd want the change to be permanent.

ROM Hacking Discussion / Re: Some romhacking questions...
« on: June 29, 2016, 09:37:01 pm »
Hey John, I think that's overkill. :)

I opened up VBA and looked at the GB Palette View option under tools. It gave me a printout of all the colors used onscreen and their hex value. Samus's palette is 7EF7 02F7 0017 080B.

The palette is stored using four bytes each, so if you reverse the hex pairs and search for the sequence (E.g.: F7 7E ** ** F7 02 ** **), you should find it at 0x40002 in the ROM. Change it as you see fit.

Hope that helps!

ROM Hacking Discussion / Re: Some romhacking questions...
« on: June 27, 2016, 03:19:49 pm »
I don't really use BGB, but as long as it shows you the in-game palettes and what hex value is associated with them, you can't ask for more.

ROM Hacking Discussion / Re: Some romhacking questions...
« on: June 26, 2016, 10:29:27 pm »
Regarding Lunar Patch, you choose the "Create Patch" option, then pick the source ROM (the untouched, original version you got). Next, choose the edited ROM (whatever you built your hack into), and finally, give it a name. That's all it is.

As for the color change, I imagine it'd work like anything else. Use your emulator to figure out the palette for Samus, then find that sequence in the GB Rom and make the appropriate edits. Keep in mind, other objects may use that particular palette too, so you'll either have to switch them to a different one or live with the changes. :)
This might be a helpful guide - it's for the NES, but it helped me when I did a GBC hack a few years back:

There's a tie-in to Mega Man II GB in the plotline, so that might have been the reasoning.

Front Page News / Re: ROM Hacks: Pokemon - Crystal (Emu Edition)
« on: June 21, 2016, 01:21:19 pm »
I was probably one of the few kids who went online back then, and there was site after site with doctored screenshots of upcoming Pokemon in the 2nd generation. I believed those pictures and would show them to friends.

Of course with all the Pokemon ROM-hacking nowadays, you could probably easily change those static Pokemon sprites and put whatever simple monochrome pixel-art you want.

...Oh my gosh. I could totally add Pikablu and Yoshi into the games. I could finally correct the lies that EGM told me when I was young. VINDICATION!

That matches the hexcode table of the game itself, so yeah, you've got it!
(Edit: Argh, didn't notice you'd written ツ not ッ. I'm sure you would have figured it out quickly though, haha).

Pages: [1] 2 3 4 5 6 ... 9