Mods

Les mods ne sont pas encore supportés par IoD, cependant le développeur a donné sont accord pour partager les instructions permettant d'accéder aux fichiers du jeu.

IoD a été créé via Unity, et donc, certains outils de modding non-officiels fonctionnent.

## Outils

Téléchargez la dernière version d'Unity Assets Bundle Extractor de DerPopo

Vous pouvez l'extraire où vous le souhaitez et le faire tourner.

Pour accéder aux ressources d'IoD :

Les fichiers **.assets** se situent ici : **C:\Program Files (x86)\Steam\steamapps\common\Instruments of Destruction\Instruments\_Data\**

Il y a seulement quatre fichiers **.asset** pour le moment :

* *globalgamemanagers.assets*
* *resources.assets*
* *sharedassets0.assets*
* *sharedassets1.assets*

Les trois derniers sont ceux qui contiennent la majorité des ressources du jeu.

## Fichiers importants

### resources.assets

Ce fichier contient une importante partie des données du jeu.

* La logique et les métadatas des cartes sont stockées comme fichiers "**MonoBehavior**"
* Les effets sonores et les musiques sont stockées en temps que fichiers "**AudioClip**"
* Les textures sont stockées dans "**Texture2D**" et "**Material**". Le premier est l'image bitmap et le second correspond aux 'paramétrages' de ces textures.
* Les données de collision sont stockées dans "**BoxCollider**", "**Mesh**", "**MeshCollider**", "**MeshFilter**", "**MeshRenderer**", "**RigidBody**" et "**SphereCollider**".
* Les localisations et fichier IODV sont stockés dans "**TextAsset**".

### sharedassets0.assets

Contient la majorité des scriptes du jeu, ainsi que certaines textures (bitmap) et les données des shaders.

* Les scriptes sont stockés en temps que fichiers "**MonoScript**".

### sharedassets1.assets

Ce fichier semble contenir les mêmes choses que **ressources.asset**s**.**

**levels** et **structures**

Ces deux dossiers, apparus avec la version 0.115, contiennent respectivement les fichiers IODL et IODS.

## Comment extraire les données

Extraire des données avec ce logiciel tierce non-supporté peut être dangereux pour votre ordinateur ou vos fichiers. Vous devriez proceder à cela uniquement si vous savez ce que vous faites et avez suffisamment de sauvegardes du jeu.

### Exemple : Extraire les designs des véhicules de showcase IODV

1. Ouvrir "ressource.assets" avec UABE
2. Cliquer sur le haut de la colonne "Type" pour trier les fichiers par ordre alphabétique d'extension
3. Chercher les fichiers "TextAsset". *Les IODV' de showcase ont tous le paterne de nom suivant : {Emplacement#}\_iodv\_showcase*
4. Selection l'un d'eux ou tous les fichiers IODVs , Et cliquez sur le bouton "**Plugin**"
5. Choisissez "**Export as .txt**" (*"Exporter en temps que .txt"*) et appuyez sur "OK"
6. Choisissez un emplacement et appuyez sur "OK" . *Vous devriez maintenant avoir un fichier texte pour chaque véhicule que vous avez extrait. Pour utiliser ces véhicules dans le jeu, il va falloir faire un peu de renommage.*
7. Renommer les extensions .txt en .iodv et confirmer l'avertissement à propos du changement d'extension
8. Copier ce fichier dans "**C:\Utilisateurs\<*NomD'Utilisateur>*\AppData\LocalLow\Radiangames\Instruments**"
9. Vérifiez qu'il n'occupe pas le même **emplacement #** qu'un autre fichier
10. Lancez le jeu, Ouvrez le menu Véhicule (touche : V) puis appuyez sur "Charger le véhicule" et cherchez dans votre librairie "hors-ligne" le véhicule que vous venez d'extraire.
11. Amusez vous!

### Exemple : Extraire les données de localisation

1. Ouvrir le fichier *resources.assets* file Avec UABE
2. Appuyez sur le haut de la colonne "Type" pour trier alphabétiquement par type.
3. Cherchez les fichiers "TextAsset"
4. Trouvez le language que vous shouhaitez éditer, par exemple "français"
5. Selectionnez le et cliquez sur le bouton "**Plugins**"
6. Choisissez "**Export to .txt**" et appuyez sur OK
7. Choisissez un emplacement pour sauvegarder le dossier et appuyez sur OK

Un problème est que cet outil ne réinjecte par correctement les fichiers modifées, et va faire se geler le jeu au démarrage (testé avec le fichier 'english' en modifiant le texte "Play", puis en le sauvegardant et en le réimportant "raw" dans UABE).