lfnetwork.com mark read register faq members calendar

Thread: Some Concepts on how to Compile Heads
Thread Tools Display Modes
Post a new thread. Add a reply to this thread. Indicate all threads in this forum as read. Subscribe to this forum. RSS feed: this forum RSS feed: all forums
Old 06-17-2011, 03:28 PM   #1
Master of Puppets
VarsityPuppet's Avatar
Join Date: May 2009
Location: MN
Posts: 1,289
Current Game: Chrono Trigger
Contest winner - Modding  Forum Veteran  Veteran Modder  Helpful! 
Some Concepts on how to Compile Heads

* Click HERE for original thread *

Well, here it is. I would just like you guys to know that I gave about 80% effort when making this... at least for the first half, then it dropped to 20% for the last half.

Up until recently, animated models have been really hard to work with in general. My other meshing tutorial demonstrated a certainly brute force method of meshing models. Taina's replacer has helped with editing models, though let's admit: it is pretty limited in the sense that you're only moving vertices, and you can't actually add geometry.

Then came along settoken (or is it miro42?) Either way, one of those guys discovered that hex editing certain values after adding geometry will put the head in the proper place and have it properly animated. Unfortunately, the process seemed to be greatly limited and the outcome varied from head to head.

But this changes now.

Few things you're going to need:

3DsMax (with NWmax plug-in)
A Hex Editing program. Google is your friend.

Okay, if all else fails, try Hex Editor Neo

For the sake of my sanity, I'm going to assume you have a moderate competence in modeling. If not, you really shouldn't be attempting this tutorial quite yet. Also for the sake of sanity, I'm going to refrain from using screenshots because I'm above all things, lazy.

I'm just going to assume that you have everything prepared and ready to go. All you need is the correct way to export and compile stuff.

First off export your model. Yay, that's easy.

Now, before you compile this in mdlops, I want to introduce to you a new concept, which I like to call...

The SuperModel Compile!

Basically, all you have to do is open your ascii file, and look to see which supermodel it uses.

It should say something like:

setsupermodel N_BastNewH S_Female03

S_female03 is what we're looking for. You need to extract s_female03.mdl and s_female03.mdx from Kotor Tool.

SAnd since mdlops usually requires you to provide the original model to recompile new models... well, guess what? All you have to do is rename the s_female03 files to match the aurorabase of your ascii file.

For instance, in this case I would have: N_BastnewH.mdl and N_BastnewH.mdx (formerly s_female03) and then the ascii which I'm

going to recompile (n_BastnewH-ascii)

Then, recompile it with mdlope. This is the SuperModel Compile.

For merging body models, this generally works all the time. Head models require an extra step which I like to call...

The Hex Edit!

I have made a tool that will do this automatically for you.
It does require JRE (Java Runtime Environment) to run, but so do a few other KotOR tools.
Download thread is here

As stated above, you will need to acquire a Hex Editing program. Remember that Google is your friend. Hex Editor Neo is the one I'll show you how to use.

You're going to want to open your compiled mdl in said hex editing program. If you got a good program, it should have a Go To function (the window is oftentimes brought up by Ctrl + G) and a Find function (Ctrl + F).

Use the Find Function to search for "16 00 16 00" (If there is an option to search for Hex Values, use that.) It should bring you to the first occurrence of those values and that's exactly what we want.

Show spoiler

If we look at the address of the data, it should say 0x000008e1 - and that data will be displayed somewhere on the main screen, or maybe on a side toolbar... who knows? Anyways, you're going to need to make a pointer to that address in order for this to work.

Show spoiler

To do that, just flip the values in pairs of two. If your address ends in 08e1, then it's pointer will be e108. Remember this value, write it down somewhere.

Next, use the Go To Function and type in 0b4. There should be two byes there surrounded by lots of 00s and whatnot. Replace those

Show spoiler

two bytes with your pointer from the last step. For instance, I would be replacing 99 02 with e1 08. Save your file. All you have to do is try it in-game.

Show spoiler

So yeah, there is my half-hearted tutorial on how to correctly compile heads.

Last edited by VarsityPuppet; 02-25-2012 at 01:55 AM.
VarsityPuppet is offline   you may: quote & reply,
Post a new thread. Add a reply to this thread. Indicate all threads in this forum as read. Subscribe to this forum. RSS feed: this forum RSS feed: all forums
Go Back   LucasForums > Network > Star Wars Gamer > Community > The Star Forge > Knights of the Old Republic series > Holowan Laboratories > Tutorials > Tutorials: Skinning and Modeling > Some Concepts on how to Compile Heads

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT -4. The time now is 02:09 PM.

Powered by vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.