WWF No Mercy (a.k.a. Hardcoding a HD Texture Pack into a N64 ROM)

Started by MysteryMan3D, March 13, 2012, 03:47:19 PM

Previous topic - Next topic


WWF No Mercy is one of the, if not THE, most modded N64 games out there. There are hundreds of HD texture packs, in conjunction with custom cheat files, that can be used to turn No Mercy into a whole new game!

But, I want to go a tad further...

There's this mod for No Mercy called WCW Starrcade 64. To me, this is the greatest WCW game that was ever even conceived (Yes, even better than WCW/nWo Revenge, partially because No Mercy is built on an upgraded Revenge engine). I want to be able to play Starrcade 64 on ANY N64 emulator (computer, console, phone) without problems such as high-res texture compatibility (the textures aren't really HD IMO, they're more in-line with vanilla No Mercy), cheat usage, etc.

Because I don't know how to hack ROMs, and probably never will know how to hack ROMs, I would like to request a hacker here (or a group of hackers here) to hardcode the textures, cheat data, and save file that came with the Starrcade 64 mod into the No Mercy ROM. That would solve ALL my problems with trying to get it to work correctly. Sure you'll lose some texture quality in the process, but like I said, the Starrcade textures look pretty much the same as No Mercy, so it won't be a problem for me.

And while you're at it, could you replace the remaining WWF indicia with WCW indicia? Like the theme songs, titantrons, logos, etc.? If you need help figuring out what differentiates WCW from WWF, go here: www.thewrestlinglegendsforum.com

I hope this can be done. And if it can, will someone here be willing to take up the task?


If you're thinking of using high-res stuff like that, just forget about it.


WWF No Mercy most modded?  You really aren't familiar with the different N64 hacking communities then...

Well, you can embed high-resolution textures if:
  • You are willing t subdivide them or write code to automatically region them and
  • are willing to modify every single model's ST to account for the change in textures.
The concept of course is that stretching a 20x40 texture across a chest isn't as crisp as spanning the same area with 2-4 textures.  Although you probably aren't going to be able to stuff a he-def texture into tmem as-is, the easiest workaround is to subdivide it.  Otherwise, you could subdivide it into regions via microcode much like Ogre64 did.
Texture depth isn't even particularly important as clarity.  Take for instance GoldenEye versus Perfect Dark.  GE uses predominantly 256 color images and PD 16 color, yet because they use multiple textures to avoid pixelization PD looks dramatically better.

Anyway, if you're just doing 1-1 texture replacement that's quite easy once the filesystem's been worked out.
SubDrag's sound tool already supports import/export for music.  The compression is a simple LZSS derivative, my guess actual LZSS in binary mode (00 fills).

I'd be willing to give advice or assist with codework you can't do, but I'm not going to take on yet another project.  If you need help figuring out how the codec works or finding the filetable and are willing to document the game yourself that's another story altogether.  Besides, since what you're really aimimg for is a massive texture mod it would really take someone familiar with the subject to document it properly.


Here's a video of the mod in action. It's not as high-res as you think:

You guys are talking like I know how to do this stuff when I've already made it clear that I don't. That's why I need an experienced person here to do the job.


I mostly directed the hi-res thing at the previous post, since there is a misconception about how it can't be done at all.  It can was all.

Sound file replacement has automated to the point of plopping a sound of equal length or lesser into the program and you're done.  Most games are already indexed, so fiddling with them is completely end-user.

If you're interested in learning I'll set you up with what you need and help you with any problems.  It isn't nearly as complicated as what it seems.  It is a bit time-consuming though and I have several other projects I'm supposed to be working on and a fairly large announcement soon when one of them is completed.  Would you be willing to learn what you need to to do it, or would you rather wait?


All right, if it's long instead of hard, I'll have you teach me. I love this mod so much that I really don't want to give up on this now.


Sorry, haven't been here in a few days.  I'll write up a decompressor for the game (missing from the big codec project anyway) since that actually requires ASM knowledge and get back to you again.

Wow!  19460 files within the main file table.  Bit misleading, since each string gets its own file in (x,y) string format.  Still, that's quite a lot to sort out.  How about a file dumper too and some file identification script?


Update to Midwaydec that allows you to decompress some or all of the files in WWF No Mercy.  Filelist provided is for North American v1.0.  Which version do you need, anyway?


Edit: off topic. Sorry!


The same issue doesn't affect other regions though?  Which versions have the problem?  I might be able to port a fix.

Found a copy.  The code differences lie specificly within the initial libraries and yes, SI and PIF support was done differently between them.  Still need to work out exactly what they're doing, how important the larger buffers are, and if this can be backported.

Also, updated Midwaydec with filelists for all four known titles, and threw in Tamiya Racers to boot (though not compressed).  Same link: http://www.mediafire.com/download.php?zije4b8bbc15wvb


Tamiya Racers? Isn't that game being withheld by the owner of the only known proto for anther "community dump" (that is, he wants $1250 to release both that and the more complete version Mini Racers).
"My watch says 30 chickens" Google, 2018


Both were just released, Tamiya Racers a couple days before.
Amazing really that there's three released games all within weeks of each other.  Many thanks go out to Team Carrot!