Users browsing this thread: 1 Guest(s)
Targem Engine (Crossout) .mdl/.mdl load module released
#1
I have finished my Targem Engine (Crossout) .mdl/.mdl load module.

I have released the following program:
- 3D Object Converter v10.004 (Windows)

How to get the 3D Object Converter v10.004:
Download the 3D Object Converter from http:// http://3doc.i3dconverter.com and install it or download and use the portable version (if you don’t have it yet).
(Or just use the Help/Check for updates... function to get the v10.004.)
Reply
Thanked by:
#2
Nice to see Crossout finally get some support though I have been encountering a few issues with loading the .mdls
Primarily being that the module seems to only be able to load basic static meshes and fails to load more complex models; it loads most world/map objects fine though can't load the vast majority of vehicle parts (pretty much anything with rigging?)
Unsure if this is related to using the trial version of the program or perhaps the module was created with files from an older version of the game?

Another thing worth bringing up is textures, I saw that the program comes with a texture converter, do you have plans to add support for Crossout's textures as well? or do you perhaps know of another means of getting the textures?
Reply
Thanked by:
#3
(04-09-2023, 01:19 PM)tetTris Wrote: Nice to see Crossout finally get some support though I have been encountering a few issues with loading the .mdls
Primarily being that the module seems to only be able to load basic static meshes and fails to load more complex models; it loads most world/map objects fine though can't load the vast majority of vehicle parts (pretty much anything with rigging?)
Unsure if this is related to using the trial version of the program or perhaps the module was created with files from an older version of the game?

The demo limitation is not related for the importer modules.

I have extracted dozens of .grp files and I did not find unloadable .mdl files when I tested this loader module,

Can you tell me which .grp file has rigged .mdl files?
Reply
Thanked by:
#4
(04-10-2023, 01:50 AM)KZ_3D Wrote:
(04-09-2023, 01:19 PM)tetTris Wrote: Nice to see Crossout finally get some support though I have been encountering a few issues with loading the .mdls
Primarily being that the module seems to only be able to load basic static meshes and fails to load more complex models; it loads most world/map objects fine though can't load the vast majority of vehicle parts (pretty much anything with rigging?)
Unsure if this is related to using the trial version of the program or perhaps the module was created with files from an older version of the game?

The demo limitation is not related for the importer modules.

I have extracted dozens of .grp files and I did not find unloadable .mdl files when I tested this loader module,

Can you tell me which .grp file has rigged .mdl files?

Further investigation shows that it's mostly functional parts, some examples being "models_constructor_cabins_sep.grp", "models_constructor_chassis_tracks.grp", "models_weapons_nail_gun.grp" and (while not functional parts) "models_constructor_structure_orakul.grp" and "assets_props_oracle_gates.grp"
Reply
Thanked by:
#5
(04-10-2023, 02:27 PM)tetTris Wrote: Further investigation shows that it's mostly functional parts, some examples being "models_constructor_cabins_sep.grp", "models_constructor_chassis_tracks.grp", "models_weapons_nail_gun.grp" and (while not functional parts) "models_constructor_structure_orakul.grp" and "assets_props_oracle_gates.grp"

As I know every .mdl file has 5 LOD models.
If the Tools/Options/Import/Load the first LOD only parameter has turned off, it loads the first LOD (best detailed) only.
Reply
Thanked by:
#6
(04-11-2023, 12:18 PM)KZ_3D Wrote:
(04-10-2023, 02:27 PM)tetTris Wrote: Further investigation shows that it's mostly functional parts, some examples being "models_constructor_cabins_sep.grp", "models_constructor_chassis_tracks.grp", "models_weapons_nail_gun.grp" and (while not functional parts) "models_constructor_structure_orakul.grp" and "assets_props_oracle_gates.grp"

As I know every .mdl file has 5 LOD models.
If the Tools/Options/Import/Load the first LOD only parameter has turned off, it loads the first LOD (best detailed) only.

Load the first LOD only is on by default, having the parameter enabled or not does not make a difference and still fails to load the .mdls either way.
I can provide sample files if that will help with identifying the problem, perhaps the method I used to extract the contents of the .grps has produced slightly different results to yours.
Reply
Thanked by:
#7
(04-12-2023, 01:19 PM)tetTris Wrote: Load the first LOD only is on by default, having the parameter enabled or not does not make a difference and still fails to load the .mdls either way.
I can provide sample files if that will help with identifying the problem, perhaps the method I used to extract the contents of the .grps has produced slightly different results to yours.

I used the QuickBMS script below to extract the .grp files.
Unfortunately it does not work correctly on some .grp files (I have got zero filled files!).



# Dagor Engine GRP2 Archives: War Thunder, Crossout
# script for QuickBMS http://quickbms.aluigi.org

Comtype ZSTD
IDString "GRP2"

Get grp2Size Asize

Get dataHeaderSize Long
Get dataHeaderSize Long
Get dataSize Long

Get offsetStrings Long
Get numStrings Long
Get unknown Long
Get unknown Long

Get offsetTables Long
Get numTables Long
Get unknown Long
Get unknown Long

Get offsetTables2 Long
Get numTables2 Long
Get unknown Long
Get unknown Long

For I = 1 to numStrings
GoTo offsetStrings
Get offsetName Long
SavePos offsetStrings

GoTo offsetName
Get nameFile String
PutArray 0 I nameFile
Next I

GoTo offsetTables
For I = 1 to numTables
Get unknown Short
Get unknown Short
Get offset Long
Get nameId Short
Get unknown Short

Math nameId + 1
PutArray 1 I offset
PutArray 2 I nameId
Next I

For I = 1 to numTables
GetArray offset 1 I
GetArray nameId 2 I
GetArray nameFile 0 nameId

if I < numTables
XMath nextTableId "I + 1"
GetArray nextOffset 1 nextTableId
XMath size "nextOffset - offset"
else
XMath size "grp2Size - offset"
endif

Log MEMORY_FILE offset size

Get sign Long MEMORY_FILE
if sign == 0xFD2FB528
Log nameFile 0 size MEMORY_FILE
else
Log nameFile 0 size MEMORY_FILE
endif
Next I
Reply
Thanked by:
#8
(04-13-2023, 12:01 PM)KZ_3D Wrote: I used the QuickBMS script below to extract the .grp files.
Unfortunately it does not work correctly on some .grp files (I have got zero filled files!).

-cut-

I see, I tried that script too and also found it doesn't work on most .grp files.
I instead used a Python script I found on XeNTaX (download in second last post) that was able to extract all the .grp files without error.
Reply
Thanked by:


Forum Jump: