A short Tutorial, how to import Meshes/Textures from TQ:IT to Grim Dawn
Recommended only for experienced modder, who knows what I want to say and who knows how to realize that!
I wouldn’t mind if someone could provide a better tutorial, because my English language knowledge is limited!
!!! Make a full backup of your Grim Dawn Installation Folder !!!
So let’s begin…
…and don’t be afraid; it looks worse than it is
Info:
TQ:IT meshes (files with the suffix .msh in their names) exists in two different formats.
The one I will talk about has the header (first 4 bytes of the file) 'MSH" + the version number 0x0B
If you change the version number to 0x02 then GD can treat those meshes as GD meshes.
Simple, isn’t it?
All needed tools are freely downloadable.
Now follow these steps exactly in this order:
-
Extract the GD Game Files (AssetManager: menu “Tools->Extract Game Files”
(You surely have done that already) -
Create a new mod called GDTQ (we need the mod later to compile a fresh database.arz)
-
Goto your TQ:IT\database folder
-
Extract the database.arz with the tool ArzExtractor.exe
-
Download the file templates.arc for TQ:IT and copy it to your [TQ:IT Dir]\database folder
-
Extract the templates.arc with the tool ArcExplorer.exe
-
Copy the extracted folder [TQ:IT Dir]\database\records to [GrimDawn Dir]\database\records
IMPORTANT: We only want the new files from TQ:IT, so don’t override any existing files
in the destination folder during the copy process. -
Copy the extracted folder [TQ:IT Dir]\database emplates to [GrimDawnDir]\database emplates
Again, don’t override any files during copy process, only copy new ones. -
Goto [TQ:IT Dir]\resources
-
Extract all *.arc files with the tool ArcExplorer.exe into separated folders
i.e. Creatures.arc must be extracted to [TQ:IT Dir]\resources\Creatures
… and so on -
Copy all extracted folders in [TQ:IT Dir]\resources to [GrimDawn Dir]\resources
Again, don’t override any files during copy process, only copy new ones. -
Copy ArchiveTool.exe and zlibwapi.dll from your [GrimDawn Dir] to [GrimDawn Dir]\database
-
Copy ArchiveTool.exe and zlibwapi.dll from your [GrimDawn Dir] to [GrimDawn Dir]\resources
-
open a command prompt, cd to [GrimDawn Dir]\database and type in:
archivetool templates.arc -update . templates 6
(this will create the templates.arc) -
Copy the folder [GrimDawn Dir]\database\records to your mods folder [GrimDawn Dir]\mods\GDTQ\database\records
-
Start the AssetManager, select the mod GDTQ, click on the tab “Database”, rightclick on GDTQ/database and click build
This takes a while…! -
Close the AssetManager, goto [GrimDawn Dir]\Mods\GDTQ\database, rename the newly created GDTQ.arz to database.arz
and copy this file to [GrimDawn Dir]\database (overwrite the existing one)
(you can delete the mod GDTQ now, we don’t need it anymore) -
Create a batch file with the name UpdateArcs.bat in [GrimDawn Dir]\resources
-
copy/paste following commands into the UpdateArcs.bat:
archivetool conversations.arc -update . conversations 6
archivetool Creatures.arc -update . Creatures 6
archivetool Effects.arc -update . Effects 6
archivetool fonts.arc -update . fonts 6
archivetool FX.arc -update . FX 6
archivetool InGameUI.arc -update . InGameUI 6
archivetool Items.arc -update . Items 6
archivetool “Level art.arc” -update . “Level art” 6
archivetool Levels.arc -update . Levels 6
archivetool Lights.arc -update . Lights 6
archivetool Menu.arc -update . Menu 6
archivetool Music.arc -update . Music 6
archivetool Particles.arc -update . Particles 6
archivetool Quests.arc -update . Quests 6
archivetool SceneryBabylon.arc -update . SceneryBabylon 6
archivetool SceneryEgypt.arc -update . SceneryEgypt 6
archivetool SceneryGreece.arc -update . SceneryGreece 6
archivetool SceneryOlympus.arc -update . SceneryOlympus 6
archivetool SceneryOrient.arc -update . SceneryOrient 6
archivetool Scripts.arc -update . Scripts 6
archivetool Shaders.arc -update . Shaders 6
archivetool Sound.arc -update . Sound 6
archivetool Sounds.arc -update . Sounds 6
archivetool System.arc -update . System 6
archivetool TerrainTextures.arc -update . TerrainTextures 6
archivetool “Terrain Textures.arc” -update . “Terrain Textures” 6
archivetool Text_EN.arc -update . TEXT_EN 6
archivetool UI.arc -update . UI 6
archivetool Underground.arc -update . Underground 6
archivetool XPack.arc -update . XPack 6
@pause -
execute UpdateArcs.bat
this will create all necessary arc files -
Now we are at the point where we will patch a TQ:IT mesh file, so it can be used in the world editor
If we want to patch only a few meshes, we could use a hex-editor for simplicity.
Patching all ~4000 meshes would requires a more efficient way;
a tool that is able to scan recursively through the resources folder, find all meshes
with the header ‘MSH’+0x0B and patch it on the fly…Someone here who can code it? ^^ EDIT: Elfe made it
Update: The attachment contains an updated version of Elfe’s MeshConverter, which now can convert all TQ meshes.
- We now patch the camel.msh
Launch a hex-editor, open the file [GrimDawn Dir]\resources\creatures\ambient\camel\camel01.msh
Change the 4th byte from 0x0B to 0x02
Save it, exit the hex-editor - Goto [GrimDawn Dir]\resources and execute the UpdateArcs.bat
This will update the camel01.msh in the related Creature.arc
Now we are able to use the mesh! - Launch the world editor, open an existing mod (or create a new one)
go to the Editor Mode and select the Camel (records\creatures\ambient\camel01
and click somewhere on the terrain…there it is…phew…ready!
EDIT: if you can’t see a patched mesh model in the editor/viewer,
launch the hex-editor again, open the mesh file and change byte 5
to hex 0x0D, if it isn’t there.
ie. 4D 53 48 02 00 -> change it to 4D 53 48 02 0D
That's it!
TL;DR
copy all (extracted) game files from your TQ:IT installation folder to the associated Grim Dawn folders
and rebuild the database.arz, templates.arc and all other *.arc files, so that the *.arc files combines
all TQ:IT and Grim Dawn game files.
Update 09.09.2017
-added a simple MIF data text editor
NB: Always make a backup of your mesh/mif data you’re working on!
Regards,
GlockenGerda