lfnetwork.com mark read register faq members calendar

Thread: Jade Empire modding (see first post for info summary)
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 04-30-2007, 09:17 AM   #41
wurzelpfrumpf
Lurker
 
Join Date: Apr 2007
Posts: 1
Can't find the heads

Help! Can anybody tell me where to find the heads of the pc's? I want to change Lings head and found only the bodies. Maybe I'm blind or was looking in the wrong directory (override).
wurzelpfrumpf is offline   you may: quote & reply,
Old 04-30-2007, 10:03 AM   #42
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by mjpb3
Not that it doesn't work properly or anything--and I can use it just as it is--but, I was curious as to why I get so much dithering when converting the TXBs to TGAs.
Hmm, I haven't noticed anything like that (but then I haven't tested it very much either ). Which image in particular would this be noticeable for?

Quote:
Originally Posted by mjpb3
Also, is there any way for the converter to increase the output file size from 256x256 to the more commonly used 512x512?
The TXB files contain compressed bitmaps which come in one resolution. The converter does not do any scaling, it just grabs the bitmap, decompresses it and saves it in TGA format instead. The resolution you get in the TGA is the one the TXB was saved in. Only vector graphics can be rescaled freely without image quality loss, bitmaps are fixed in size. You'd probably get better image quality if you use an image manipulation application like Photoshop, Paintshop Pro or GIMP than if I'd try to make the converter scale them up.

Quote:
Originally Posted by wurzelpfrumpf
Help! Can anybody tell me where to find the heads of the pc's? I want to change Lings head and found only the bodies. Maybe I'm blind or was looking in the wrong directory (override).
You can find them inside players.mod (in the data folder) if I remember correctly. You should be able to use the ERF/RIM Editor linked to in the first post in this thread to extract them from the MOD file.
stoffe is offline   you may: quote & reply,
Old 04-30-2007, 12:27 PM   #43
mjpb3
Forumite
 
mjpb3's Avatar
 
Join Date: Oct 2005
Location: Eccentricity
Posts: 632
Quote:
Originally Posted by stoffe
Hmm, I haven't noticed anything like that (but then I haven't tested it very much either ). Which image in particular would this be noticeable for?
The one I was working on was Scholar Ling's body texture (her outfit).

The image I converted has some dithering around the colored parts, but I actually now suspect that it isn't your converter that's causing it because a few of the images I converted from the ones that already come in the Override folder have dithering too.

I think it may just be because the game is using graphic files that were used on the XBox first. *shrug*

Quote:
Originally Posted by stoffe
The TXB files contain compressed bitmaps which come in one resolution. The converter does not do any scaling, it just grabs the bitmap, decompresses it and saves it in TGA format instead. The resolution you get in the TGA is the one the TXB was saved in. Only vector graphics can be rescaled freely without image quality loss, bitmaps are fixed in size. You'd probably get better image quality if you use an image manipulation application like Photoshop, Paintshop Pro or GIMP than if I'd try to make the converter scale them up.
Yes, I am using Paint Shop Pro for these (plus everything else I do )

I tried scaling them up from 256x256 to 512x512, but because of the dithering it looked worse. I think I can fix it though, using my retouch tool.

Anyway, thanks for the converter!



.·:*¨¨*:·..·:*¨My Mods¨*:·..·:*¨¨*:·.
Disciple FTW!
There is no canon. There is only Revan.
FYI: I am a girl, and you may call me Janet.
It's all just fun and games until the flying monkeys attack.
mjpb3 is offline   you may: quote & reply,
Old 05-03-2007, 09:33 AM   #44
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Another update.

I've uploaded what's hopefully the final version of my ERF/RIM Editor for Jade Empire (unless there are any bugs I have overlooked). I found a list of File Type <--> ResType associations so hopefully it should now fully recognize all data types used by the game and allow extracting/adding them properly.

Link is in the first post in this thread.
stoffe is offline   you may: quote & reply,
Old 05-14-2007, 06:19 PM   #45
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Some minor things I've figured out while poking around the game data, in case someone is interested:

How to make a new essence gem
  1. Add two new entries to dialog.tlk, one with the name and one with the description.
  2. Add a new line to the gems.2da - set the columns:
    • Set the Level column to a value between 1-6 (I think this is for how late in the game they appear)
    • Set the CombatOnly column to 1 if the effects only should be applied during combat (0 for all the time).
    • Don't know what the UpgradeCost column is used for.
    • The Upgrade column seems to point to the row label of the next gem in a "family" (Flawed -> Inferior etc) of gems, or 0 if there is no more powerful of the same type.
    • Set the Effect0 column to a row label from effects.2da of the type of effect you want the gem to grant.
    • Set the Parameter0 column to the parameter of that effect as needed (for example the magnitude of a bonus granted)
    • Set the Duration0 column to 0, since all gem effects are permanent while equipped.
    • Similarly set Effect1 and Effect2 (and their parameters) if you want the gem to grant up to 3 effects.
    • Set the UniqueSet column to a line number in unique.2da to only allow one gem if this type to be equipped (or 0 to allow multiple).
    • Set the MinAlignment column to the lowest alignment (open palm/closed fist) value to allow equipping this gem. Scale goes from 0 (Max Closed Fist) to 255 (Max Open Palm).
    • Set the MaxAlignment column to the highest alignment value to allow equipping this gem.
    • Set the AlignmentSRTREF column to a StrRef to show if attempting to equip the gem while falling outside those specified alignment boundraries.
  3. Add a new line to items.2da - set the columns:
    • Set the TYPE column to gems (makes it use gems.2da)
    • Set the ID column to the row label in gems.2da of your new line for your gem.
    • Set the COST column to its base silver value when bought/sold.
    • Set the 3DMODEL column to w_icon_Damulet. (Model in world when appearing from smashed container)
    • Set the ICON column to the name of a TXB or TGA file with an icon to be used on the Amulet screen.
    • Set the STRREF_NAME column to the StrRef of the new dialog.tlk entry holding the name you added.
    • Set the STRREF_DESC column to the StrRef of the new dialog.tlk entry holding the description you added.
    • Set the SCRIPT column to **** (not used for gems)
  4. To add the gem as a reward in-game, find the ar_*.2da file for the area you have in mind, locate the reward event line where you want the gem given out, and add the items.2da row label number of your new row to the Item column. If a number already exists here you can add several separated by commas.

Non-standard effects
I wanted my gem to grant a new type of damage shield, similar to the Cyclone gem but with another visual and doing other damage. I wanted it to use the blue cloud and halo effect used to symbolize the Open Palm instead of a whirling particle cloud, and wanted it to drain some Chi from the victim as well.

To do this:
  1. Add a line to DamageArmor.2da:
    • The Duration column does not seem to matter for this purpose since gem effects are permanent duration.
    • Set the Health, Chi and Focus columns to how much of that type to drain from the attacker when hit.
    • Set the DurationVFX column to a row label number from visualcrusts.2da for the visual to play while the effect is active.
    • Set the ImpactVisualEffect column to a row label number from visualeffects.2da of a visual to play when the attacker gets wounded by the shield.
  2. On the line for the gem in gems.2da set one of the Effect# columns to 60 (DamageArmor effect) and the Parameter column to the line number in DamageArmor.2da you added for the new damage shield. Make sure the CombatOnly column is set to 1 for your line so the shield only will be active while in combat.

The result in-game:


In general the 2da column in effects.2da determine what the effect parameter values are used for. The numbers in this column are line numbers from 2das.2da, which tell the game the name of a 2da file to either look up your parameter in, or specify more closely what the effect should do (see below).

If the row column in effects.2da is set to **** your parameter value is the line number in the 2DA file indicated by 2das.2da.

If the row column is set to a value in effects.2da that value is the line number in the 2DA file indicated by 2das.2da, and your parameter is usually just a number that determines how much bonus or penalty the effect should grant.


How to make a new technique
Fairly similar to how to make a new spirit gem, though somewhat more limited since it can only grant two effects, and is limited in what effects it can grant.
  1. Add two new entries to dialog.tlk, one with the name and one with the description.
  2. Add a new line to the improvements.2da - set the columns:
    • Set the effect0 column to a row label number from effects.2da for the effect to grant. Note that only Body/Mind/Spirit, Health/Chi/Focus, Charm/Intuition/Intimidate modifiers seem to work well to grant with techniques. Other types of effects seem to often be lost as soon as you load a savegame.
    • Set the parameter0 column to the magnitude of the effect set in effect0. This is usually how much bonus to grant.
    • Set the storewarningstrref column to a dialog.tlk StrRef of a string to show in a confirm dialog if this technique grants both bonuses and penalties to allow the the player to undo gaining it. StrRef 106958 is usually used for this.
    • Repeat for effect1/parameter1 if you want the technique to grant two effects.
  3. Add a new line to items.2da - set the columns:
    • Set the TYPE column to improve (makes it use improvements.2da)
    • Set the ID column to the row label in improvements.2da of your new line for your technique.
    • Set the COST column to its base silver value when the technique is bought.
    • Set the ICON column to the name of a TXB or TGA file with an icon to be used on the Techniques screen.
    • Set the STRREF_NAME column to the StrRef of the new dialog.tlk entry holding the name you added.
    • Set the STRREF_DESC column to the StrRef of the new dialog.tlk entry holding the description you added.
    • Set the SCRIPT column to j99_improvement. This is a standard script that applies the technique effects when the technique is gained.
  4. To add the technique as a reward in-game, find the ar_*.2da file for the area you have in mind, locate the reward event line where you want the technique given out, and add the items.2da row label number of your new row to the Item column. If a number already exists here you can add several separated by commas.

* * *

I'll post some more of what I've figured out later if anyone has any interest in reading it. I've successfully added some "new" (re-using existing animations, but behaving differently) martial and magic styles that works fine when used in game.

If anyone has figured out how other things fit together, please post about it and describe how.

Last edited by stoffe; 05-24-2007 at 03:09 PM.
stoffe is offline   you may: quote & reply,
Old 05-22-2007, 06:56 PM   #46
Maian
Lurker
 
Join Date: May 2007
Posts: 6
Posted some game data stuff here:

http://jade.bioware.com/forums/viewt...&sp=75#5015452
Maian is offline   you may: quote & reply,
Old 05-22-2007, 07:50 PM   #47
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by Maian

Ooh, very nice. That must have taken some time to write up, thank you for posting it. Filled in some gaps about things I hadn't figured out yet. Now I won't have to put more work into a tutorial about how to add new styles, you covered pretty much all of it and more.

stoffe is offline   you may: quote & reply,
Old 05-23-2007, 02:10 PM   #48
Maian
Lurker
 
Join Date: May 2007
Posts: 6
I haven't covered harmonic combos (synergy.2da), though the system looks simple. I got sidetracked into trying to decipher JE's MDL format. I've been making some progress on that, but the best I can do is just provide a structural layout of the format since I'm not a modeler (or have modeling software).
Maian is offline   you may: quote & reply,
Old 05-23-2007, 07:36 PM   #49
Maian
Lurker
 
Join Date: May 2007
Posts: 6
Well, I also mean the synergy-related columns in the as 2das, not just synergy.2da
Maian is offline   you may: quote & reply,
Old 05-23-2007, 07:52 PM   #50
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by Maian
I haven't covered harmonic combos (synergy.2da), though the system looks simple. I got sidetracked into trying to decipher JE's MDL format. I've been making some progress on that, but the best I can do is just provide a structural layout of the format since I'm not a modeler (or have modeling software).
The Harmonic combo data seems to follow the same pattern as the other files.... An effect column that references effects.2da to say what happens when the combo triggers, and a parameter column that specifies what 2DA line is used in the definition 2DA for that effect type. The screenshake column points to a line in visualeffects.2da. The other columns seem unused. Seems to work fine to add new rows here as well when making new styles to give them unique HC behaviors.

The relevant styleAS.2da columns seem to be:

synergyprestate - Set to 1 for the martial style attacks that can finish the Harmonic Combo. Usually only the power attack has this set, but it works on any attack.

synergystart - Set to a row number in synergy.2da for the effect that should happen when the Harmonic Combo triggers. This is set in the support/magic style that initiates the HC timer.

synergyduration - Seems to be a delay before the harmonic combo countdown initiates, in seconds.

The synergyeffect column appear to be unused from what I can tell.

If you set a synergystart and synergyprestate on the same attack the harmonic combo will trigger immediately whenever that attack is made, unless the synergyduration column is set to a value higher than 0, in which case another attack is needed to trigger the combo.

(I did this on my "Flame Strike" martial style where the power attack initiates an Immolation Harmonic Combo countdown after a 10 second delay, which then can be triggered with another power attack from the same style. )

I'm afraid I can't offer any insight into the Jade Empire MDL/MDX format since I know very little about modeling.

Edit: Made some changes to fix incorrect assumptions and add some other things discovered.

Last edited by stoffe; 06-13-2007 at 11:48 AM.
stoffe is offline   you may: quote & reply,
Old 05-26-2007, 06:27 AM   #51
Maian
Lurker
 
Join Date: May 2007
Posts: 6
MDL and MDX structural layout

After many days of labor, here's a very rough structural layout of an MDL file. It's incomplete and I'd need to sift through many more MDL files to find all the other structures. And right now, I no longer have the time to continue doing that...

I say "structural layout" since I can't (easily) check what that non-structural data (e.g. vertices, normals, texture info, etc.) does. I pieced all this info just by looking at the hex of MDL files and using the following two sites as reference:

http://home.comcast.net/~cchargin/kotor/mdl_info.html (documents KoToR 1/2's MDL format)
http://web.archive.org/web/200410210...nwndata_binmdl (documents NWN1's MDL format)

The result is that although I can guess at the data types and structures that MDL contains, I can't tell what what those structures are exactly for, unless that structure is very similar to a structure from the old MDL formats. For example, I can tell if something is a floating point value, but I may have no clue what that FP value is for.

---------------------------------------------------------------

- unless otherwise noted, number of bytes per item is 4
- item numbers and floating point numbers are given in decimal
- all other numbers are given in hex (which means "a" is 10, "10" is 16, etc.)
- if x is a model ptr, it refers to offset (x + 14); null model ptr = 00000000
- short and long values are given in big-endian form
- all numbers in big-endian form are always written as 8 digits
- tree of nodes are in pre-order
- floats, longs, null ptrs all have the same 0 value: 00000000
- function ptrs are the memory addresses (datatype long) of functions once the game's binary code is loaded into memory

MDL file
1) file header
2) model header
3) animation blocks; number of blocks is model header data's item 4
4) model nodes
5) unknown array 1 (if it exists)

file header
loc 0
1) 00008700
2) offset to raw data or end of file if no raw data (torlack); never seen any raw data
4) MDX part 1 size
5) MDX part 2 size (item 4 + item 5 = MDX total size)
6) 00000000?
size 14

model header
loc 14
1) geometry header block
2) model header data block
3) names array
size dc (items 1 to 2)

model header data
loc 64
1) long? does torlack's info apply here?
2) 00000000?
3) model ptr to animation ptr array
4) number of animations
5) same as item 4
6) long or float? seen 0, (cb90020 or 2.85e-31)
7) bounding box min x? (cchargin)
8) bounding box min y? (cchargin)
9) bounding box min z? (cchargin)
10) bounding box max x? (cchargin)
11) bounding box max y? (cchargin)
12) bounding box max z? (cchargin)
13) radius? (cchargin)
14) long? seen values of 1 and 2 so far
15) float? animation scale? (torlack)
16) supermodel name (20-len null-terminated string) (cchargin)
17) model ptr to a node, typically but not always the model root node
18) 00000000?
19) same as file header item 4
20) same as file header item 5
21) 00000000?
22) model ptr to names array
23) number of names
24) same as item 23
25) long? seen 0, 80100, cdcdcd00 (probably junk)
26) model ptr to unknown array 1 (or end of file if block doesn't exist?)
27) number of items in array specified at item 26
28) same as 27
size 8c

geometry header
1) function ptr
2) function ptr
3) model/animation name (20-len null-terminated string)
4) model ptr to model/animation's root node
5) number of nodes in model/animation (recursively includes nodes in super model + 1)? (torlack)
6) 6 00000000's?
7) reference count? seen only 0 (torlack)
8) geometry type (char) (torlack)
9) 3 chars padding? (torlack)
size 50

names array
loc f0
1) model ptrs to the strings in item 2; number of model ptrs is model header data's item 27
2) strings delimited by null chars; number of model ptrs is model header data's item 27

animation ptr array
1) model ptrs to animation headers; number of model ptrs is model header data's item 4

animation block
1) animation header block
2) event array
3) animation nodes

animation header
1) geometry header block
2) animation length (float)? (cchargin)
3) trans time (float)? (cchargin)
4) short? seen only 0, 101, 1
5) model name or part name (20?-len null-terminated string)
6) padding (short)? seen 4, 0
7) model ptr to event array or null if no events
8) number of events
9) same as item 8
10) 00000000?
size (items 1 to 10) 8c
size (items 2 to 10) 3c

event array
1) events; number of events is animation header's item 8

event
1) activation time? (float) (cchargin)
2) event name (20-len null-terminated string (cchargin)
3) 00000000?
size 28

node
1) node header block
2) subheader block (depends on node header's item 1 and apparently also node header's item 2?); can be nonexistent
3) data (depends on node header's item 1); can be nonexistent
4) child node array (if any children)

node header
1) node type (short) (torlack)
2) super node number (short)? (cchargin)
3) node/part number (short)? (cchargin) all values are unique within a model geometry/animation geometry block, generally increasing
4) n where node is n-th node of model node tree laid out in pre-order; if two different node header's have the same item 3, they also have the same item 4 (this applies for both model and animation node trees)
5) model ptr to parent animation header or null if no such parent
6) model ptr to parent node or null if no such parent
7) position X? (float) (cchargin)
8) position Y? (float) (cchargin)
9) position Z? (float) (cchargin)
10) rotation W? (float) (cchargin)
11) rotation X? (float) (cchargin)
12) rotation Y? (float) (cchargin)
13) rotation Z? (float) (cchargin)
14) model ptr to array of child node ptrs (or end of node if no children)
15) number of child nodes
16) float? seen 1.0
17) float? usually 1.0e10, seen 10.0, 30.0
size 3c

child node array
1) model ptrs to nodes; number of model ptrs is node header's item 15

mesh node subheader (type 0021)
1) 3 00000000's?
2) a floats
3) 00000000?
4) long? seen 10
5) 20 bytes that seem to vary in format (not sure what determines format):
5a) 10 shorts?
5b) 8 floats
5c) 10-len null-terminated string + 4 floats
6) if item 7 is not 0, number of items in array specified at item 7; otherwise, some long? seen 2e8, 321, f72, 954 (can't be model ptr since it can be larger than mdl file size)
7) 00000000 or model ptr to mesh node data array
8) -1 (long) if item 7 is 0?; otherwise, seen 61 and 62 (can't be index into array since it can be larger than array size)
9) long? seen 3 and 4
10) c bytes that seem to vary in format (not sure what determines format):
10a) 1 long and 4 shorts? or 6 shorts?
10b) 3 floats
11) long? seen 1c, 20, 24, 10, 34
12) long? seen 6b, 63, 27, 21, 823
13) 00000000?
14) long? seen c
15) long? seen 10, -1
16) long? seen 14, 10, -1
17) long? seen 18, -1
18) long? seen 1c, -1
19) long? seen -1
20) long? seen -1
21) long? seen -1
22) long? seen -1
23) long? seen -1
24) long? seen -1, 10
25) long or 2 shorts?? seen 2083d, 1017a, 11099, 10229, 2002e, 18, 10270 (can't be model ptr or offset in MDX file since it can be too large)
26) long?? seen 0, 7088, 43cb, 740, 180 (can't be model ptr since it can be larger than mdl file size)
27) long or 2 shorts?? seen 91fa0f8, 7690178, 76adc08, 76833a8, 76834d8, 0, abbcb10
28) long?? seen 3ccd, 3922, 3920, 4a92, 391c, -1, 443a (can't be model ptr since it can be larger than mdl file size)
29) long? seen 1
30) float? seen 0.0, 1.0
31) float? seen 0.0, 1.0
32) float? seen 0.0, 1.0
30) float; seen 1.0, 0.9
31) 00000000?
32) long or 2 shorts?? seen 91f7fe8, 7684fa0, 859ffc8, 7684b30, 0, c0affc8; difference between item 27 and 32 is relatively small (probably same "type")
33) offset in MDX file; either 0 or always past MDX part 1 (greater than MDX part 1 size); seen MDX part 1 size
34) offset from item 33?; always less than MDX part 2 size; seen MDX part 2 size
size e4

mesh node data array (type 0021)
(exists only have mesh node subheader's item 7 is not 0)
1) shorts; number of shorts is mesh node subheader's item 6

skin mesh node subheader (type 0061)
1) mesh node subheader block
2) 00000000?
3) 00000000?
4) 00000000?
5) long? seen 1c
6) long? seen 2c
7) model ptr to skin mesh node array 1 (cchargin)
8) number of items in array specified at item 7
9) model ptr to skin mesh node array 2
10) number of items in array specified at item 9
11) same as 10
12) model ptr to skin mesh node array 3
13) number of items in array specified at item 12
14) same as 13
15) model ptr to skin mesh node array 4
16) number of items in array specified at item 15
17) same as 16
18) 2c shorts? (number of shorts is same as item 6, but could be coincidence)
19) float? seen 1.0
20) float? seen 1.0
size (items 2 to 17) 74
size (items 2 to 20) d4
size (items 1 to 17) 158
size (items 1 to 20) 1b8

skin mesh node array 1
1) shorts? number of shorts is skin mesh node subheader's item 8

skin mesh node array 2
1) skin mesh node array 2 blocks; number of blocks is skin mesh node subheader's item 10

skin mesh node array 2 block
1) float?
2) float?
3) float?
4) float?
size 10

skin mesh node array 3
1) skin mesh node array 3 blocks; number of blocks is skin mesh node subheader's item 13

skin mesh node array 3 block
1) float?
2) float?
3) float?
size c

skin mesh node array 4
(only seen this array have 0 len, so don't know its structure)

light node subheader (type 0003)
1) 10 00000000's (torlack has info but I can't verify)
2) light priority (torlack)
3) ambient only flag (torlack)
4) dynamic type (torlack)
5) affect dynamic flag (torlack)
6) shadow flag (torlack)
7) generate flare flag (torlack)
8) fading light flag (torlack)
9) float? b/w 0 and 1?
10) float? b/w 0.0 and 1.0?
11) float? b/w 0.0 and 1.0?
12) float? b/w 0.0 and 1.0?
13) float? b/w 0.0 and 1.0?
14) float? seen 0.0
15) float? seen 0.0 and 1.0
16) float? seen 0.0 and 1.0
17) float? seen 0.0 and 1.0
18) float? seen 2000.0 and 500.0
19) float? seen -1.0
20) float? seen 0.0
21) float? seen 1.0
22) float? b/w 0.0 and 1.0?
23) float? b/w 0.0 and 1.0?
24) float? b/w 0.0 and 1.0?
size 9c

unknown node type 1 subheader (type 1001)
1) long? seen 0, 1
2) float? seen 0.0
3) float? seen 0.0
4) float? seen 0.0
5) float? seen 1.0
6) float? seen 1.0
7) float? seen 1.0
size 1c

unknown node type 2 subheader (type 0001 + super node 0002)
1) float?
2) float?
3) float?
4) float?
5) float?
6) float? seen 2.4138735e-9
7) float?
8) float?
9) float?
10) 00000000?
11) 00000000?
12) 00000000?
13) 00000000?
14) 00000000?
15) model ptr to array of child node ptrs or next node? same as node header's item 14?
16) same as node header's item 15? only seen 00000000 and the nodes had no children
17) 00000000?
18) 00000000?
size 48

unknown node type 3 subheader (type 0001 + super node 0004)
1) node type of corresponding node under model geometry (there's a node with the same node number in the node tree whose root's offset is specified in model header's geometry header's item 4)? (short)
2) model ptr to controller array or null if no controllers
3) number of controllers
4) same as item 3
5) model ptr to unknown node type 3 array 1 or null if no array
6) number of items in array specified at item 5; = sum of all controller's item 3's (i.e. total number of time keys)?
7) model ptr to controller data array or null if no controller data
8) number of controller data items
9) long? seen 6, 15, 16, 17
size 24

controller array?
1) controller blocks; number of blocks is unknown node type 3 subheader's item 3

controller?
1) controller type (long)? seen 8 (position), 14 (orientation)
2) short? = item 1 + 8?? seen 10, 1c
3) number of rows (and hence, number of time keys) (short)?
4) index into array specified at unknown node type 3 subheader's item 5? sum of all previous controller's # rows (item 3) or 0 if no previous controllers
5) index into controller data array (short)? sum of all previous controller's [# rows (item 3) * (# columns (derived from item 6) + 1)] or 0 is no previous controllers
6) column type (char)? seen 2 (2 columns), 5 (1 columns), 4 (0 columns)
7) char? seen 5, b3
8) short? seen 12, 4c (both multiples of 12...)
size 10

unknown node type 3 array 1
1) shorts that are related to time keys? number of shorts is unknown node type 3 subheader's item 6; seen values uniformly b/w 0 and 155 (larger values no doubt exist); typically x0, x5, or xa, where x is any digit(s)

controller data array?
1) the array is partitioned into controller data blocks that correspond to each controller; number of blocks is number of total floats/4-bytes is unknown node type 3 subheader's item 8;

controller data block
1) time keys? number of keys is controller's # rows (controller's item 3) (not sure if this is just another column since unknown node type 3 array 1 seems to contain integral versions of the time keys
2) controller data block items; number of items is controller's # rows * # columns; item data type seems to depend on unknown node type 3 subheader's item 1

controller data block item?
1) float? all 4 bytes almost always non-00, but the numbers can be extremely small or large (e.g. -1.9581039E22, 2.1989652E-16, even 4.0277763E-38)

controller data array item (controller node type (unknown node type 3 subheader's item 1) = 1001 and last 10 bytes of controller data)??
1) 2 shorts?
(when I see node type is 1001 with column type 5, the controller always has 2 rows, and the controller data always looks like this: 00020080 00001000 00020080 00001000; I also see this if node type is 1001 and no controllers are specified)

unknown array 1
1) unknown array 1 blocks; number of blocks is unknown node type 3 subheader's item 6

unknown array 1 block
1) model ptr to a node; denote as node A
2) model ptr to a node; denote as node B
3) 7 floats? 7 = node B's part number - node A's node's part number?

MDX file
1) MDX part 1
2) MDX part 2

MDX part 1
?

MDX part 2
1) function ptr?
2) long? seen 5 and 6 so far
3) 0018?
4) char?
5) char? usually 4x or 5x where x is any digit
6) array of shorts, adjacent values are usually have very small difference
7) 00000000?
8) 00000000?

Last edited by Maian; 05-31-2007 at 04:12 AM.
Maian is offline   you may: quote & reply,
Old 05-26-2007, 05:38 PM   #52
Maian
Lurker
 
Join Date: May 2007
Posts: 6
I found out how to get nwnnsscomp working without a NWN installation. nwnnsscomp doesn't actually use an NWN files - it just does a crude check to see if you have NWN installed. This is easy to bypass (with a bit of technical knowhow). Here's how:

1) Create a new txt file. Paste the following into it:

Code:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\BioWare\NWN]
[HKEY_LOCAL_MACHINE\SOFTWARE\BioWare\NWN\Neverwinter]
"Location"="D:\\Games\\Jade Empire"
Change the "D:\\Games\\Jade Empire" to whatever your Jade Empire directory is. Make sure each back-slash is doubled as shown above.

2) Rename this txt file to install.reg, or any other name that ends with the extension reg. Make sure you uncheck "hide extensions for known file types" in Windows Explorer's Tools->Folder Options->View, or else you'd actually be renaming it to install.reg.txt.

3) Right-click this reg file and click Merge. It should ask you have you really want to merge the reg file with the Windows registry - click yes. Then it should inform you that the operation was successful.

4) Create a new txt file in your Jade Empire directory called chitin.key. Again, make sure you uncheck "hide extensions for known file types", or else you'd get chitin.key.txt.

That's it. nwnnsscomp should now work without requiring a NWN installation. Saved me 1.5gb on my puny laptop HD
Maian is offline   you may: quote & reply,
Old 05-28-2007, 12:44 PM   #53
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by Maian
I found out how to get nwnnsscomp working without a NWN installation. nwnnsscomp doesn't actually use an NWN files - it just does a crude check to see if you have NWN installed.
(snip)
That's it. nwnnsscomp should now work without requiring a NWN installation. Saved me 1.5gb on my puny laptop HD
You can also use one of the nwnnsscomp variants adapted for modding Knights of the Old Republic along with the nwscript.nss file from Jade Empire. Works fine to compile JE scripts with as well, from what I've noticed (not had any problems with malfunctioning scripts so far), and does not require any NWN or KOTOR game installations.
stoffe is offline   you may: quote & reply,
Old 05-29-2007, 04:49 AM   #54
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
Nice goin guys! It's very helpful (the ones I can comprehend that is) but I still got the same problem as wurzelp****(sorry) which is headless pc. I only messed with the 'appearance.2da' and some .rim files up until now anyway and I need a help on a few things.

1. I've checked all (If I'm remembering it correctly) the .rim and .mod in /data and I found that only a few names has all extensions required in the same name (the 'h_*'s and 'n_*'s in .mdl, .mdx, and .txb) and DAMN I forgot to note them down (and DAMN I can't even find any .erf files). I think there's got to be something/file that configures or lists which head use which body or vice versa. Can anyone help me on this please?

2. I was wondering if it's possible for stoffe's 'tsl patcher' to be used as 'je patcher' instead. Both games uses the same system right?

3. If I wanted to create my own pc, then I'm gonna need all those .mdl, .mdx, and .txb pairs (and maybe the answer to my 1st question too) right? I've found the .tga to .txb converter but I can't find anything to edit the .mdl's and .mdx's. I don't know if 3ds Max or Maya (I only know those two) will do but I do know that I don't have enough free space for neither one of them. Any software (though I'd prefer freeware) suggestion?

Thanks for noticing a noob.
croma is offline   you may: quote & reply,
Old 05-29-2007, 07:36 PM   #55
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Since the data files are so spread out I've made a quick search utility that allows you to search for files with a specified name within all the game's MOD and RIM files. It is listing all matches in a sortable list along with in what MOD/RIM archive they were found. It also has an extraction feature where it can extract the selected files from the search result to a folder on your hard drive.

You can use wildcards in a limited way within the filename, for example to search for all files of a specific type ("*.2da" to find all 2DA files), or a match against a sub-pattern of a file name within a specific type ("p_ling*.txb" to find all TXB files with "p_ling" as part of the name, or "p_li*h01.txb" to find all TXB files with names containing "p_li", potentially followed by something else and then followed by "h01").

Wildcards do not work within the file extension itself ("*.md*" for example) at the moment, and may sometimes behave in a bit weird way when used in the middle of a filename pattern. Hopefully those bugs should be fixed in the next version when I have the time to do it properly.

It seems to work from what I've tested, though it's not considered complete yet. As said above the search works in a somewhat peculiar manner currently, which I hope to make more logical in later versions. Future plans include adding support for searching in the KEY/BIF data files as well as the override folder so that all data can be searched.

If anyone wants it, you can downoad it from the link in the first post in this thread.

Last edited by stoffe; 05-31-2007 at 09:16 AM.
stoffe is offline   you may: quote & reply,
Old 05-29-2007, 07:57 PM   #56
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by croma
1. I've checked all (If I'm remembering it correctly) the .rim and .mod in /data and I found that only a few names has all extensions required in the same name (the 'h_*'s and 'n_*'s in .mdl, .mdx, and .txb) and I forgot to note them down. I think there's got to be something/file that configures or lists which head use which body or vice versa. Can anyone help me on this please?
Keep in mind that I'm by no means an expert on this since I haven't done much in the way of character substitution so this is mostly guesswork, but from what I have seen it seems like the head is part of the body model, but has a separate texture for most human models.

I haven't been able to find any 2DA that sets the name of the texture (except for when you're a spirit), so I'd assume it's either set in the Model files, or uses a naming convention hardcoded in the game engine.

The head texture seems to be named the same as the body texture but with a "h" added on (P_Li01 --> P_Lih01) for the player character models. For NPC models it seems to be named the same as the body texture but with a h_ prefix instead of the n_ prefix the body textures tend to have (n_silk01 --> h_silk01).

Quote:
Originally Posted by croma
2. I was wondering if it's possible for stoffe's 'tsl patcher' to be used as 'je patcher' instead. Both games uses the same system right?
Not in its current form. Some of the data files have different formats in Jade Empire (the dialog.tlk file, some 2DA files, slight changes to the ERF/RIM format etc). A version could be made with those adaptations, if anyone would have any interest in it. Could be a fair bit of work involved making those adaptations though, I'm not sure. Depends on how lazy I was when I made TSLPatcher.

Quote:
Originally Posted by croma
3. If I wanted to create my own pc, then I'm gonna need all those .mdl, .mdx, and .txb pairs (and maybe the answer to my 1st question too) right? I've found the .tga to .txb converter but I can't find anything to edit the .mdl's and .mdx's.
MDL files are model files, MDX are paired with MDL files containing extra model data that has been added on, TXB are compressed textures. MAB files seem to contain material data of some kind.

There is currently no MDL/MDX converter that works with Jade Empire. Maian seems to be working on figuring out how some of it works, but it might be too early to tell where that leads.
stoffe is offline   you may: quote & reply,
Old 05-30-2007, 01:15 AM   #57
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
What about that MDLOps in starwarsknights.com (I think)? Wouldn't it be easier to just mess err.... 'study' that and make the JE version? I like that JEFindRes by the way. Thanks, stoffe.
croma is offline   you may: quote & reply,
Old 05-30-2007, 01:37 AM   #58
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
I'm interested on "How to make a new technique" guide by stoffe and I wondered:
1. If it's possible for us to make a new weapon/martial arts style move sets
2. If characters or .mdl and .mdx from other Bioware games (say TSL or SWKOTOR1) can be altered in such way that it's usable in JE

I'm a noob but if anyone can show me the way then I'll walk the line.
croma is offline   you may: quote & reply,
Old 05-30-2007, 01:55 AM   #59
tk102
Well past expiration date
 
tk102's Avatar
 
Join Date: Jan 2004
Posts: 5,765
Current Game: Watch_Dogs
Forum Veteran Helpful! Notable contributor 
I just got a look at the V4.0 TLK file tonight and updated K-GFF to interpret the TLK file strings correctly. K-GFF v1.2.0 has been uploaded to http://www.starwarsknights.com/tools.php

@croma: I believe Maian is using MDLOps as a base.
tk102 is offline   you may: quote & reply,
Old 05-30-2007, 10:17 AM   #60
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by croma
I'm interested on "How to make a new technique" guide by stoffe and I wondered:
1. If it's possible for us to make a new weapon/martial arts style move sets
2. If characters or .mdl and .mdx from other Bioware games (say TSL or SWKOTOR1) can be altered in such way that it's usable in JE
You can add new weapon/martial/support/magic styles that behave differently, but you'll have to re-use the animations the characters play from a pre-existing style since, as mentioned above, there is currently no way of creating new MDL/MDX files that works with Jade Empire.
stoffe is offline   you may: quote & reply,
Old 05-30-2007, 09:57 PM   #61
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
Ooh how I wish I could do some programming myself. I feel bad just relying on you guys. Then again, I'll just wait and try to figure out these ccreature.cpp failure message myself I guess. Thanks again guys!


"Three keys in learning are: creative, prideful, and masochism." -someone I knew-
croma is offline   you may: quote & reply,
Old 05-31-2007, 04:26 AM   #62
Maian
Lurker
 
Join Date: May 2007
Posts: 6
Well, I'm not sure if I'm qualified or want to extend MDLOps to support JE mdl/mdx files. As I said before, I'm not a modeler, I don't have modeling software, and I don't really know much about the format that's needed to import into that modeling software. I'm also new to Perl, which MDLOps is programmed in. I think I'll leave that up to someone more qualified.

I was only using MDLOps source code to help understand the format of mdl/mdx files. I planned to edit the files by hand, but after seeing how complex the format is and how many values there are which purpose eludes me, I'm not sure I can do that (and it would take a while).
Maian is offline   you may: quote & reply,
Old 05-31-2007, 06:41 AM   #63
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by croma
I'll just wait and try to figure out these ccreature.cpp failure message myself I guess.
Have you moved all the relevant model and texture data files into the override folder for the appearance you try to change your player into? The player data in players.mod appear to be always loaded, but many other NPC appearances seem to be stored within the module(s) where a character using that appearance exist. Those resources would not be found if you are in another area unless you put it in the override folder where it can always be found.


For example, to use the Princess Sun Lian appearance instead of Unmasked Silk Fox for SF from Chapter 4 and onward I had to put the files h_prnces01.txb, n_prnces01.txb, n_prnces_.mdl and n_prnces_.mdx in the override folder for it to work. They were previously found in the a300/City Core module files only.


* * *

A completely unrelated question:
Do anyone know which .GUI file handles the quick key/style mapping display that pops up in the lower left corner of the screen when you enter combat mode?

I already know what my keys are mapped to and that big interface element is taking up space needlessly, so I'd like to make it invisible (set the ALPHA field to 0).

I seem to have trouble finding which file it is that handles it though. I'm finding pretty much everything else instead when modified some of the files with names that seemed likely.

Edit: Nevermind, I figured it out. Turns out it was one of the files I had checked, though the method I used to make it invisible didn't work since the game apparently already used the Alpha value to hide/unhide it when entering and leaving combat mode. Resizing it did the trick instead.

Last edited by stoffe; 06-07-2007 at 04:46 PM.
stoffe is offline   you may: quote & reply,
Old 05-31-2007, 09:35 AM   #64
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Minor update...

I've uploaded a minor update to my Jade Empire data file search tool (JEFindRes v0.2.0a), see the first post in this thread for a download link.

Version v0.2 has the Txb2Tga converter integrated, allowing it to automatically convert any TXB files it extracts to TGA format if you check a checkbox.

This version should also make using wildcard characters (*) in the file name (resref) part of the search string more reliable. It now works like wildcards usually do in a search:

No wildcard characters used: Only files whose name exactly matches what you type will be found.

No file extension set: Files of any type matching the name you type in will be found.

Wildcards at the beginning and/or end of search string: Your search string can be found anywhere within the filename.

Wildcards inside the search string: Allow any (or none) characters to exist in that position of the file name and only match the rest of what you type.

For example:
Code:
Search string  Result
-------------- ----------------------------
p_li01         Files of any type with the name "p_li01".
p_li01.*       Same as above
p_li01.txb     All TXB files with the name "p_li01.txb"
*p_li          Files of any type that ends with "p_li", e.g. "j00_c_app_li.ncs"
*p_li.ncs      All NCS files that ends with "p_li", e.g. "j00_c_app_li.ncs"
p_li*          Files of any type that starts with "p_li", e.g. "p_li01.txb" and "P_Ling_.mdl".
p_li*.txb      TXB files where the name starts with "pi_li", e.g. "p_li01.txb" and "p_lingh01.txb"
*p_li*         Files of any type containing "p_li" somewhere in the name, e.g. "j01p_lion_altar.pla" and "p_li01.txb"
p_li*01        Files of any type starting with "p_li" and ending with "01", e.g. "p_li01.txb", "p_lih01.txb" and "p_lingx01.txb"
p_li*01.txb    Same as above, but only finds TXB files.
p_li*h*01      Files starting with "p_li", followed by anything, then an "h", followed by anything and then ending with "01", e.g. "p_lih01.txb" and "p_lingh01.txb".
*.2da          All files of the 2DA file type, regardless of name
*.*            All files in the game data (might take some time to list, there are many)

Last edited by stoffe; 05-31-2007 at 11:21 AM.
stoffe is offline   you may: quote & reply,
Old 06-01-2007, 06:39 AM   #65
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
Quote:
Originally Posted by stoffe
Have you moved all the relevant model and texture data files into the override folder for the appearance you try to change your player into? The player data in players.mod appear to be always loaded, but many other NPC appearances seem to be stored within the module(s) where a character using that appearance exist. Those resources would not be found if you are in another area unless you put it in the override folder where it can always be found.
I did but what I'm trying to do is switching Blossom with Crimson Khana. The problem is that there's no mercf sets (the n_*'s and h_*'s) available with the same name (the head was h_mercf01 but the body was n_mercf if I remember correctly). I converted to TGA and renamed it, renamed the TXB, edit the original TGA and put the other TGA part per part above it, but it all failed. Hell I even made "appearance_override.2da" and add "appearance_override" line under JE.ini's [DEBUG] line and of course, it failed and I laughed to myself (I still am, seriously). I can't figure out how to persuade the system to use another head I want (I bought you damnit!!).

It's not that bad though. The "Face Off" operation explained on page one can really amuse me anyway. I made some tiger-ish tattoo on (of course) TigerShen and ProdigyLu looks like Monkey King (looks cool with Monkey Paw style) which reminds me, is it possible to make Monkey Paw style able to finish harmonic combo or to choose it from the first time we choose the character? I would've mess with the .2da myself if it weren't for the roof leak which blast my power supply off.


God has a weird sense of humor. I never get it nor like it.
croma is offline   you may: quote & reply,
Old 06-01-2007, 07:06 AM   #66
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by croma
I did but what I'm trying to do is switching Blossom with Crimson Khana.
Do you want to replace the Blossom player appearance with Crimson Khana, or do you want to make Crimson Khana (the NPC in the arena) use Blossom's appearance? If it's the latter it would be quicker to change the appearance number in the relevant .CRE files to point to Blossom's line in appearance.2da. Open the CRE files with k-gff 1.2 and change the Appearance field (under the Looks struct).

If it's the former, the problem seems to be that Crimson Khana's appearance is one where the head and body are set separately (so they can re-use the body model with a variety of different heads). The body used is line 104 in appearance.2da and the head is line 22 in heads.2da.

This is problematic since all the standard player models have the head and body as a single model where you can't swap out the head. Thus I don't know how you'd tell the game to use a particular head along with the body for the player appearance, since you only pick an appearance and not a head.


Quote:
Originally Posted by croma
ProdigyLu looks like Monkey King (looks cool with Monkey Paw style) which reminds me, is it possible to make Monkey Paw style able to finish harmonic combo or to choose it from the first time we choose the character?
Open the monkeypawas.2da file and on line 7 (Slam) change the value in the synergyprestate column from **** to 1. This will make the Monkey Paw power attack able to finish a harmonic combo.

To make it a starting style open stylesuperlist.2da and on line 22 (C_Monkey_paw) change the value in the StartingStyle column from 0 to 1. This should make the style pickable when creating a new character. You'll most likely need to remove one of the standard styles though (by setting the same column to 0 on its line) to make room for it, since the list of available styles already is full.
stoffe is offline   you may: quote & reply,
Old 06-02-2007, 12:35 AM   #67
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
Quote:
Originally Posted by stoffe
If it's the latter it would be quicker to change the appearance number in the relevant .CRE files to point to Blossom's line in appearance.2da. Open the CRE files with k-gff 1.2 and change the Appearance field (under the Looks struct).
Actually, my problem was the former but to hell with that. Until now I thought k-gff deals only with .gff files, I don't know if it deals with .cre too. By the way, which relevant .cre file is it?
croma is offline   you may: quote & reply,
Old 06-02-2007, 10:08 AM   #68
tk102
Well past expiration date
 
tk102's Avatar
 
Join Date: Jan 2004
Posts: 5,765
Current Game: Watch_Dogs
Forum Veteran Helpful! Notable contributor 
GFF stands for "generic file format" which is basically just a way to arrange the data within the file. Many files in the Bioware/Obsidian games are GFF formatted though they have a variety of extensions. CRE files are one of those types.

I didn't add CRE files as a known GFF file type in KGFF (in the File: Open dialog, "GFF Files" filter) because CRE aren't used in KotOR or TSL. You should still be able to choose File: Open and set the filter to All Files or simply associate CRE files to open with KGFF.
tk102 is offline   you may: quote & reply,
Old 06-03-2007, 07:48 AM   #69
Ghost Down
Senior Member
 
Ghost Down's Avatar
 
Join Date: Sep 2005
Location: The Netherlands
Posts: 1,024
Are there any Jade Empire modding sites?

- Ghost Down


Ghost Down is offline   you may: quote & reply,
Old 06-03-2007, 11:28 AM   #70
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by Ghost Down
Are there any Jade Empire modding sites?
Not that I am aware of. There is this thread here, and a modding thread on Bioware's Jade Empire forums, but I don't know of anything else.
stoffe is offline   you may: quote & reply,
Old 06-05-2007, 12:04 AM   #71
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
There's also http://gulbsoft.de/doku.php/games/jade/jade. There's a downloadable character mod and some tutorials down there but I don't know how to upload your files there. I think Georg Zwoller (or something, sorry if I'm sucks with names) owns it. He's in a site somewhere around the site links in his site...... yeah that's it.

Edit: Stoffe, where did you get that avatar pic? I think it looks like Radiant Jen Zi with a different hair and skin tone AND in 3D. Just curious, really.

Last edited by RedHawke; 06-05-2007 at 01:51 AM. Reason: Combining double post...
croma is offline   you may: quote & reply,
Old 06-05-2007, 06:30 AM   #72
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by croma
Stoffe, where did you get that avatar pic? I think it looks like Radiant Jen Zi with a different hair and skin tone AND in 3D. Just curious, really.
It's a screenshot from the game using a quick re-skin I've made of the Radiant Jen character, which I'm currently playing as:


Last edited by stoffe; 06-09-2007 at 05:31 AM.
stoffe is offline   you may: quote & reply,
Old 06-05-2007, 08:12 AM   #73
Ghost Down
Senior Member
 
Ghost Down's Avatar
 
Join Date: Sep 2005
Location: The Netherlands
Posts: 1,024
Which sword is that stoffe?

- Ghost Down


Ghost Down is offline   you may: quote & reply,
Old 06-05-2007, 08:29 AM   #74
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Quote:
Originally Posted by Ghost Down
Which sword is that stoffe?
The Demon Sword, which you can find in the first area of the Spirit Realm you arrive in (the "Follow my light" area). If you head in the opposite direction of the blue pillar of light across the battlefield you'll eventually come across a cannon and some bodies. The sword can be looted from one of the bodies.
stoffe is offline   you may: quote & reply,
Old 06-05-2007, 04:19 PM   #75
stoffe
Network Caretaker
 
stoffe's Avatar
 
Status: Administrator
Join Date: Apr 2002
Posts: 5,833
Helpful! 10 year veteran! Notable contributor 
Another update...

I've uploaded another version (0.3a) of the JEFindRes search utility. This version will look inside the KEY/BIF files as well (in addition to the MOD/RIM files like before), along with the override folder for completeness. It can extract resource from all locations it finds them, and convert TXB files to TGA+TXI files when extracting them, if desired.

See the first post in this thread for the download link if you're interested.


I put together a minimal readme file with this version as well:
Quote:
Originally Posted by The ReadMe

JE - Resource Search utility (v0.3a)
-----------------------------------

This simple tool will allow you to search for filenames and filetypes within the game resource of the game Jade Empire by Bioware.

The first time you do a search the utility will ask for the location of your Jade Empire game folder. This is the folder where the JadeEmpire.exe file is located. The location will then be saved in a file named "jefindres.ini" in the same folder this utility is located in. If you need to change the installation path of the game you may delete the "jefindres.ini" file to cause the utility to ask for the game folder location again.

This utility will look for resources of matching name and type inside the BIF, MOD and RIM files in the data folder, along with the content of the override folder for completeness. Matching resources are listed, and you can choose to extract the resources you select in the result list. The result list can also be sorted by name, filetype and source file/folder by clicking on the respective column headers.

When extracting TXB files you can choose to make the utility convert them to TGA+TXI files by checking the checkbox under the Extract button.

When searching you may use * as a wildcard character to make partial matches against the name of the resources. This should work like most wildcard searches tend to do elsewhere. Note that partial matches against file type is currently not supported: you'll gave to search for either one file type or all of them matching the specified name. A few examples:

Search for: p_li01
Result: Files of any type with the name "p_li01".

Search for: p_li01.*
Result: Same as above

Search for: p_li01.txb
Result: All TXB files with the name "p_li01.txb"

Search for: *p_li
Result: Files of any type that ends with "p_li", e.g. "j00_c_app_li.ncs"

Search for: *p_li.ncs
Result: All NCS files that ends with "p_li", e.g. "j00_c_app_li.ncs"

Search for: p_li*
Result: Files of any type that starts with "p_li", e.g. "p_li01.txb" and "P_Ling_.mdl".

Search for: p_li*.txb
Result: TXB files where the name starts with "pi_li", e.g. "p_li01.txb" and "p_lingh01.txb"

Search for: *p_li*
Result: Files of any type containing "p_li" somewhere in the name, e.g. "j01p_lion_altar.pla" and "p_li01.txb"

Search for: p_li*01
Result: Files of any type starting with "p_li" and ending with "01", e.g. "p_li01.txb", "p_lih01.txb" and "p_lingx01.txb"

Search for: p_li*01.txb
Result: Same as above, but only finds TXB files.

Search for: p_li*h*01
Result: Files starting with "p_li", followed by anything, then an "h", followed by anything and then ending with "01", e.g. "p_lih01.txb" and "p_lingh01.txb".

Search for: *.2da
Result: All files of the 2DA file type, regardless of name

Search for: *.*
Result: All files in the game data (might take some time to list, there are many)
stoffe is offline   you may: quote & reply,
Old 06-09-2007, 12:35 AM   #76
RedHawke
Shadow Lord Of The Sith™
 
RedHawke's Avatar
 
Status: Moderator
Join Date: Mar 2004
Location: Stormreach CA.
Posts: 9,184
Current Game: DDO, Stormreach
Since ChAiNz stickied tk102's tool thread to keep it from getting 'lost' I'm sticky-ing this one as it is also a tool thread. One that I don't want to see 'lost'.

I will install this darned game someday... someday! Curses DDO!


"Beware the form-fitting black armor-clad Drow hottie with twin Mineral II Greensteel Khopeshes!"
"Liella d'Orien says, '"You're the fool, Devil. -- Witness the power of this fully ARMED and OPERATIONAL Titan!"'"
----------------------------------------------------------------------
RedHawke is offline   you may: quote & reply,
Old 06-10-2007, 03:48 AM   #77
croma
Rookie
 
croma's Avatar
 
Join Date: May 2007
Posts: 13
Lightbulb

At last, the power supply replaced. No more internet via mobile phone.

Quote:
Originally Posted by stoffe
It's a screenshot from the game using a quick re-skin I've made of the Radiant Jen character, which I'm currently playing as:
So it's just re-skinning? I thought I saw ponytail there. My bad eyes.

Anyway, I've replayed through both of my SWKotOR and tried to mod it myself (succesfully though not much, yay) instead of dnloading pre-existed ones just to get more grasp on those wonderful tools. Now I have theories:
1. It seems like everything can be hexed. I never tried though, never knew it, never had it.
2. The .txi files can override some .2da entry.
3. If theory 2 is true, maybe the .mdx files can do the same.

Anyone can help me on this? Any clarification, confirmation, comments, or curses are very much appreciated.

Last edited by croma; 06-12-2007 at 11:39 AM. Reason: Just better than posting another reply.
croma is offline   you may: quote & reply,
Old 06-14-2007, 09:01 PM   #78
tk102
Well past expiration date
 
tk102's Avatar
 
Join Date: Jan 2004
Posts: 5,765
Current Game: Watch_Dogs
Forum Veteran Helpful! Notable contributor 
If anyone would like to test drive an alpha version of DLGEditor for Jade Empire, you can download it here: http://www.starwarsknights.com/forum...itor_230a2.rar

Please note, unlike KotOR dialogs, Jade Empire relies exclusively on the dialog.tlk file for its conversations. Thus you will want to download stoffe's TLKEd program to do any custom editing.

If you do download this, please take the time to tell about the bugs you find. I don't have Jade Empire, so if there's a particular dialog that has trouble, send me a copy in an email (address is in Help: About JE DLGEditor).
tk102 is offline   you may: quote & reply,
Old 06-15-2007, 04:57 PM   #79
Gargoyle King
Veteran
 
Gargoyle King's Avatar
 
Join Date: Apr 2007
Location: In My Own Little World!
Posts: 895
Quote:
Originally Posted by stoffe
It's a screenshot from the game using a quick re-skin I've made of the Radiant Jen character, which I'm currently playing as:

Is there any chance you could release that skin Stoffe, it looks awesome! So JE modding has finally begun, only a matter of time really; i hope it eventually becomes as diverse as K1 & TSL modding has!
Gargoyle King is offline   you may: quote & reply,
Old 06-23-2007, 12:25 PM   #80
Aash Li
Speak nerdy to me! ;P
 
Aash Li's Avatar
 
Join Date: Jul 2005
Location: Some boring hole in Michigan..
Posts: 1,918
Current Game: LotRO, EQ2 & RoM
Hot Topic Starter 
Id like to have Stoffe's skin of her too.
Aash Li 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 > Knights of the Old Republic > Community > The Outlander Club > Jade Empire modding (see first post for info summary)

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 10:03 PM.

LFNetwork, LLC ©2002-2011 - All rights reserved.
Powered by vBulletin®
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.