Register - Login
Views: 85735349
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - JCS - Stats - Latest Posts - Color Chart - Smilies
09-25-17 08:15:42 AM

Jul - Game Research/Hacking/Modding - N64 Graphics Tools New poll - New thread - New reply
Pages: 1 2 3 4Next newer thread | Next older thread
Joe
Common spammer
🗿
Level: 103


Posts: 2080/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 05-19-11 07:17:20 PM (last edited by Joe at 11-05-13 09:33:39 PM) Link | Quote

The tools are now located on GitHub. Get the latest version here.



The original post is below.



First, some download links.

Download Windows .exe
Download source code


So what is this, anyways?
This is a pair of command-line programs that are capable of extracting and re-inserting textures in N64 ROMs.

Wait, why wouldn't I use Tile Molester for that?
Tile Molester has some subtle bugs with N64 color formats that cause corruption. It also doesn't support transparent graphics.

So how do I use it?
Use the -h option to see the help.

...Oh, examples? Okay. A command might look like this:
export -a cdbbd1 -x 32 -y 32 -f rgba16 -b Cactus.bmp "Super Mario 64.ext.z64"
That will extract TCRF's famous cactus from an extended Super Mario 64 ROM to a GIMP-compatible file named Cactus.bmp. Importing looks like this:
import -a AB7B8C -f GA16 -b Cactus.bmp "Super Mario 64.ext.z64"
Now the coins are cacti.

Wait, what's that about GIMP-compatible?
Well, see, I'm kind of... lazy. And it turns out, compiling libpng through MinGW isn't exactly my idea of fun. So, you have to use GIMP to convert the BMP files to something that other programs can work with, and then use GIMP to convert it back to BMP when you're done editing. (Or do all of your editing in GIMP, that works too.)

So what formats do you support?
Right now, I support two: RGBA16 and GA16. If you don't know which to use, try exporting with both formats and use the one that looks right. (Don't forget to use the same format when you're importing, or bad stuff might happen.)

Hey, can you support more formats?
Sure, just point me towards the format in question and I'll see what I can do.

Hey, can I use your code?
Sure, but you might be better off writing your own code. Be sure to look at how RGBA16 is handled in export.c, most people get that wrong.


Metal_Man88: This is a good place to point people who recommend using Tile Molester.
Lyskar
12210
-The Chaos within trumps the Chaos without-
Level: 182


Posts: 9107/12211
EXP: 82488184
For next: 416451

Since: 07-03-07
From: 52-2-88-7

Since last post: 2.0 years
Last activity: 2.0 years

Posted on 05-23-11 11:33:30 PM Link | Quote
Yes. I'll keep this in mind, next time people try to link Tile Molester.

How I loathe that program.
gamax92
Member
Level: 13


Posts: 6/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-13-11 10:32:26 PM (last edited by gamax92 at 11-26-13 11:05:41 AM) Link | Quote
I've wrote a frontend to your program and currently it can preview an image to 256 x 256.
It has the feature to rip, and to insert. Even a preview to check your settings.
You can also export and import images in png, tga, and bmp. This feature is provided by nconvert, an awesome image converter by XnView.

Features:
Easy import and export.
A preview window.
Corrects byte swapped roms.
Supports png, tga, and bmp.

Downloads:
N64Rip

Screenshot:

(Updated as to 11/26/2013)
Joe
Common spammer
🗿
Level: 103


Posts: 2127/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 06-13-11 11:21:06 PM Link | Quote
Sorry about that, it seems I messed something up when I reset my router. Those links work now.
gamax92
Member
Level: 13


Posts: 7/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-14-11 12:31:49 AM (last edited by gamax92 at 07-26-13 09:43:33 PM) Link | Quote
To what was previously here, I was using a bad rom file that actually was patched specifically for nemu64. Grabbed a new file and now images export correctly.
Joe
Common spammer
🗿
Level: 103


Posts: 2128/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 06-14-11 12:48:11 AM (last edited by Joe at 06-14-11 12:49 AM) Link | Quote
It looks like instead of using the real address of the cactus (0xcdbbd1), you used an incorrect value (0xcdbbce). Graphics tend to do weird things unless you have the exact starting address.

That, or
your extended ROM is different from my extended ROM.
gamax92
Member
Level: 13


Posts: 8/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-14-11 01:35:18 AM (last edited by gamax92 at 07-29-13 12:44:08 PM) Link | Quote
Well I am writing a frontend to your program and currently it can preview an image to 256 x 256, but I don't think there are textures that large. It has the feature to rip, and to insert. Even a preview to check your settings.

N64Rip.zip - File Down, use
N64Rip.zip


(Updated as to 2/18/2012)
Joe
Common spammer
🗿
Level: 103


Posts: 2129/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 06-14-11 07:00:47 PM Link | Quote
Wow, that looks very nice. I especially like the preview, it's very helpful.

In fact, I just used your program to rip this:

Nintendo logo
Peardian

  
Magikoopa

July 3: KvSG #479 is up!

Level: 146


Posts: 4932/7337
EXP: 38262912
For next: 250382

Since: 08-02-07
From: Isle Delfino

Since last post: 173 days
Last activity: 9 days

Posted on 06-14-11 07:05:04 PM (last edited by Peardian at 06-14-11 07:06 PM) Link | Quote
Nintendo 64 textures can't be larger than a specific file size. The average texture will be anywhere from 16x16 to 64x64 (grayscale), with some exceptions. However, the largest textures you can probably expect will actually be 320 pixels wide and... probably no taller than 128 pixels, though allowing a canvas height of 240 couldn't hurt.

Edit: I know exactly which game that's from, but I won't spoil it.
Lyskar
12210
-The Chaos within trumps the Chaos without-
Level: 182


Posts: 9249/12211
EXP: 82488184
For next: 416451

Since: 07-03-07
From: 52-2-88-7

Since last post: 2.0 years
Last activity: 2.0 years

Posted on 06-15-11 03:38:04 PM Link | Quote
Huh. Yeah, I should definitely put this tool front and center of the SM64 forum, as people using Tile Molester are the bane of my existence.
gamax92
Member
Level: 13


Posts: 9/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-15-11 08:06:42 PM (last edited by gamax92 at 07-29-13 12:44:22 PM) Link | Quote
I do have an update to this program. nconvert for XnView can successfully convert the bmp to png with transparency. but I'm having a big issue making the png go back to bmp for imports. The new update also has a handler if you specify a name with out the .bmp extension, it will auto add the extension on. And it wont allow you to do any operations until a rom file has been specified. It also utilizes the temp dir.

N64Rip.zip - File Down, use
N64Rip.zip

@Peardian: You can always specify any size in the front end. The program will end up just squishing it but you should still get an idea of what your ripping.

@Joe: What are requirements for bmp import?
Joe
Common spammer
🗿
Level: 103


Posts: 2132/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 06-15-11 09:44:10 PM Link | Quote
It has to be 32 bits per pixel with an alpha channel. If your BMP file meets those requirements but my program doesn't accept it, send it to me and I'll use it to update my program.
gamax92
Member
Level: 13


Posts: 10/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-15-11 10:39:20 PM (last edited by gamax92 at 07-26-13 04:30:43 PM) Link | Quote
Just got home, original post have been updated with new version.

To the nconvert issue:
nconvert's bmp is correct but in hex editor compared to your exporter, one byte is off.
When changed from 0x00 to 0x10 like original, importer accepts it.
Previewer shows confirmed import of file.

byte is at 0x23 in file.
Joe
Common spammer
🗿
Level: 103


Posts: 2133/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 06-16-11 01:08:46 AM (last edited by Joe at 06-16-11 02:16 AM) Link | Quote
That's a bug in nconvert. Going by Microsoft's names, they forgot to set biSizeImage. (Going by what my code says, that one would be sz_image, but I made those names up myself.)

I'll go update my code now.

Edit: All right, done. Please let me know if there are any problems with it.
gamax92
Member
Level: 13


Posts: 11/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 06-17-11 12:35:01 AM (last edited by gamax92 at 07-29-13 12:48:21 PM) Link | Quote
Alrighty, new version with import conversion is complete

N64Rip.zip - File Down, use
N64Rip.zip
CruisnEma
Member
Level: 19


Posts: 1/79
EXP: 31889
For next: 3888

Since: 02-01-12


Since last post: 37 days
Last activity: 1 day

Posted on 02-01-12 05:30:11 PM Link | Quote
Originally posted by gamax92
Alrighty, new version with import conversion is complete

N64Rip.zip

The files are offline (darn Mediafire) can you re-upload please?
gamax92
Member
Level: 13


Posts: 17/34
EXP: 9601
For next: 666

Since: 04-24-11
From: Inside my Wii

Since last post: 3.0 years
Last activity: 343 days

Posted on 02-18-12 03:23:12 PM (last edited by gamax92 at 07-29-13 12:48:37 PM) Link | Quote
N64Rip.zip

Recreated it! I'm also not hosting it on mediafire so it shouldnt randomly disseapear again.
If your antivirus complains, its because its UPX packed.

EDIT: Since I can't remember if I did this before.
The import.exe and the export.exe as well as nconvert.exe is embedded inside the exe.
No need to download the other programs.
CruisnEma
Member
Level: 19


Posts: 2/79
EXP: 31889
For next: 3888

Since: 02-01-12


Since last post: 37 days
Last activity: 1 day

Posted on 03-07-12 05:25:03 AM (last edited by Halfshadow at 03-07-12 05:35 AM) Link | Quote
Originally posted by gamax92
N64Rip.exe

Recreated it! I'm also not hosting it on mediafire so it shouldnt randomly disseapear again.
If your antivirus complains, its because its UPX packed.

EDIT: Since I can't remember if I did this before.
The import.exe and the export.exe as well as nconvert.exe is embedded inside the exe.
No need to download the other programs.

Very thanks, but i can't find the pic because show only an offset and search for every offset is too long, I can help me with the offset of the names of the PNG exported with the Project 64 mod of the texture exporter/loader? Otherwise what I can find the offsets of the textture to change? Thanks.

My project is of uncensor the Cruis'n serie, I'm creating the reources (images and sounds) but is very hard to work in the N64 roms, but I've created things as there:



And in the Project 64 run as:

http://www.youtube.com/embed/8B0Z9B6PGTk

If you're interested to help me (but is hard, because few things are hide in the map of the race and must be moved to the correct place) let me know, thanks howewer for now.
ZethN64

Level: 3


Posts: 1/2
EXP: 127
For next: 1

Since: 03-07-12


Since last post: 5.0 years
Last activity: 86 days

Posted on 03-07-12 02:00:13 PM (last edited by ZethN64 at 03-07-12 04:14 PM) Link | Quote
Great work with this so far. I also have to ask what is GA16? That happens to be a format I am unfamiliar with. Here is some other texture formats used by N64 games that you might want to consider adding for support for the program.

4-bit RGBA
8-bit RGBA
4-bit YUV
8-bit YUV
16-bit YUV
4-bit CI
8-bit CI
16-bit CI
4-bit IA
8-bit IA
16-bit IA
4-bit I
8-bit I
16-bit I
Joe
Common spammer
🗿
Level: 103


Posts: 2491/3286
EXP: 11469129
For next: 2277

Since: 08-02-07
From: Pororoca

Since last post: 50 days
Last activity: 17 hours

Posted on 03-07-12 06:48:35 PM Link | Quote
Originally posted by ZethN64
I also have to ask what is GA16?
It's the same thing you refer to as 16-bit IA. I was in a bit of a hurry and used the first name that came to mind; I haven't changed it simply because I'm lazy.
Originally posted by ZethN64
Here is some other texture formats used by N64 games that you might want to consider adding for support for the program.
I'm happy to add supports for more formats. Just point me to a game (and a ROM address) and I'll add it as soon as possible.

The only catch is that some formats require extra data in order to decode them properly. Any color indexed formats need a color list in order to decode textures. The YUV formats need the constants that are used by the RDP to convert them back to RGB. (The latter requires a modified build of MESS to get the conversion constants, which can be game- or texture-specific.)
Pages: 1 2 3 4Next newer thread | Next older thread
Jul - Game Research/Hacking/Modding - N64 Graphics Tools New poll - New thread - New reply




Rusted Logic

Acmlmboard - commit 2f1bc75 [2017-08-27]
©2000-2017 Acmlm, Xkeeper, Inuyasha, et al.

29 database queries, 13 query cache hits.
Query execution time: 0.139162 seconds
Script execution time: 0.016387 seconds
Total render time: 0.155549 seconds