WARNO
Not enough ratings
WARNO modding guide
By SuperBiscotCOT and 1 collaborators
-WIP- WE ARE LOOKING FOR CO-CONTRIBUTORS WHO WOULD BE INTERESTED IN COMPLETING THIS GUIDE WITH US
If you are interested in helping us please reach out in the comments !

This guide will go through all the main steps in modding for WARNO. Either you want to simply modify an existing configuration or create something from scratch such as a unit, weapon, etc.
   
Award
Favorite
Favorited
Unfavorite
Introduction
-WIP- WE ARE LOOKING FOR CO-CONTRIBUTORS WHO WOULD BE INTERESTED IN COMPLETING THIS GUIDE WITH US
If you want to help, please reach out in the comments! (there is no small contribution)

This guide will go through all the main steps in modding for WARNO. Either you want to simply modify an existing configuration or create something from scratch such as a unit, weapon, etc.

The different parts will be progressively filled in the next months. If certain topics are not yet covered and you would like them to be, please leave a comment and we will take it into consideration.


Tools
To mod WARNO you will need some tools to edit .ndf files. This format is proper to Eugen Systems.
All in one solution
The modding tool Warno Mod Editor (WME) regroups all the needed editing tools with an integrated GUID generator for required unique IDs.
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2940069336
Alternatives
If you prefer other tools you will need ...
A text editing software, such as :
- Sublime Text
- NotePad++
- Etc.

A GUID generator.
GUID are random IDs that allow each element to have an unique identification.
https://www.guidgenerator.com/

Useful links
WARNO Data
This WIKI gives a description of all major attributes and mechanics available in the .ndf files of WARNO.
While we will go through all the data in this tutorial step by step, this WIKI is always useful to have a reminder on what means what.
https://github.com/Dreamfarer/WARNO-DATA/wiki

WARNO Armory
A recap of all units statistics from the base game. Useful to learn all the different data and what they mean in context. You can also use the armory to give yourself an idea of how unit are balanced.
https://warno-armory.com/

WARYES
Similarly to the previous link, you can take a look at the data of all game units and have a look at some hidden values not viewable in game.
https://war-yes.com/units
Initial Setup - Create your mod
In this part we will go through the initial creation process of your mod. Those steps are also available in the modding manual provided by Eugen Systems.

First go to the "Mods" folder in the game files of WARNO on your computer:
X:\SteamLibrary\steamapps\common\WARNO\Mods

Inside you will find two PDFs we highly recommend you to read :
- the "Modding Manual", that gives a first look on how to mod the game (we will go through all the steps more in detail but if you want to speedrun modding with a surface explanation the guide provided by Eugen Systems is for you)
- the "NDF Reference Manual", as explained previously you will go through .ndf files that is the text based language developed by Eugen and used in all scripts, this document gives you a basic understanding on how the language can be understood.

Creating a new mod
This part is mostly taken from the modding Guide provided by Eugen Systems.

Go to the game installation directory (in steam: Library → WARNO → Properties → Local Files →
Browse Local Files), and enter the Mods subdirectory.

Open a console in the Mods directory (either by using cd <path_to_Mods_directory> or by shift + right-click in windows explorer > "open console here" or by typing cmd in the path bar of the file explorer while in the folder) and run CreateNewMod.bat with the mod name as argument.

Example:
CreateNewMod.bat MyAwesomeMod

The name must be unique ; it will not work if a directory already exists with that name. If all goes well, you should see a message indicating that the mod was created, and a new directory named
MyAwesomeMod has appeared. It should contain the following directories:
• CommonData
• GameData
and the following files:
• base.zip
• CreateAssetDefinitionFiles.bat
• CreateModBackup.bat
• GenerateMod.bat
• RetrieveModBackup.bat
• UpdateMod.bat
• UploadMod.bat

These 7 files (base.zip and the 6 .bat) are part of the modding tools, please do not modify them or
you will likely compromise your mod.

If something is missing, try to delete the mod directory and recreate it.
Create a weapon
Create a Unit
Depictions and Apparances
The front facing of your units how it : looks in deployment, in-game, as a cadaver, in the armory (showroom), how it sounds, etc.

In the UniteDescriptor you can see we have different descriptors and link files to modify/create :
ApparenceModel
- Depiction
- ReferenceMesh
- BlackHoleIdentifier
TCadavreGeneratorModuleDescriptor
- CadavreDescriptor
TShowRoomEquivalenceModuleDescriptor
- ShowRoomDescriptor



Depiction
"Depicition" is the list of all sounds, FX, meshes, etc. to be assigned on your unit
Files to modify vary depending on the type of units :
- For a vehicle, detailed in the following parts
- For a plane and helicopters, similar to vehciles but some separate .ndf files in \GameData\Generated\Gameplay\Gfx\Depictions\.... with "Aerial" in the name
- For infantry, similar to other but files can be found in \GameData\Generated\Gameplay\Gfx\Infanterie
- For towable

Note : If you don't have any 3D model for now and/or want to use an already existing in-game model, there is a lot you can simply re-reference. However, depictions include sounds and other variables per attached weapons. If you modify a units' weapons you should create the associated depiction to ensure no crashes or bug.

The following parts detail the process for vehicles. Their are variations of files for the different types of units listed bu the logic is similar.

In the \GameData\Generated\Gameplay\Gfx\Depictions\DepictionVehicles.ndf file, you can copy a similar vehicle on which you can base yourserlf to start.

You should have :
- first, one DescriptionOperator per weapon used on the unit
- then the export of the unit (which includes and "Action" array that details all the weapons sounds).

Some vehicles may have SubDepicitionGenerators referenced. This can correspond to missile carriage as described in the \GameData\Generated\Gameplay\Gfx\MissileCarriageDepiction.ndf file.

Also some vehicles may have SubDepicitions, that can correpond to presence of visible humans (drivers or shooters on an open turret for example) as described in the \GameData\Generated\Gameplay\Gfx\Depiction\GeneratedDepictionHumans.ndf file (be careful this file is in two part a descriptor and below at the bottom of the file an array).


ReferenceMesh
It's the 3D mesh (.fbx file) to be used by the unit.

Note : If you don't have any 3D model for now and/or want to use an already existing in-game model, simply put in the UniteDescriptor their other unit ReferenceMesh (not readable publicly). However still follow the step below to add Alternatives Depictions.

In GameData/Gameplay/Gfx/DepictionRessources/...
In any folder crerate a new .NDF file in which you add the following structure. In the end you should have one .NDF file per unit, and in it's strcuture have the reference to three .fbx 3D models for each level of quality (low, mid, high).

export Modele_GBC_180_supply_FR is ModelDescriptor ( FileName = 'GameData:/Assets/3D/Units/FRA/LOG/GBC_180_supply_FR_high.fbx' ) export Modele_GBC_180_supply_FR_MID is ModelDescriptor ( FileName = 'GameData:/Assets/3D/Units/FRA/LOG/GBC_180_supply_FR_mid.fbx' ) export Modele_GBC_180_supply_FR_LOW is ModelDescriptor ( FileName = 'GameData:/Assets/3D/Units/FRA/LOG/GBC_180_supply_FR_low.fbx' )

Note : All your .fbx files and textures used on them should be put in the GameData/Assets/... folder and then together in any organisation you want as long as your models are correctly referenced in the new .NDF file we created. It's recommended having one folder per unit with everything required in it for the 3D.

Note : You can reference the three same models for the three levels of quality but note that it can have an impact on performances the more units you integrate in your mod if you only use high poly versions.

In \GameData\Generated\Gameplay\Gfx\Depictions\DepictionAlternatives.ndf
Create a new alternative array for your mesh :

Alternatives_GBC_180_supply_FR is [ DepictionDescriptor_LOD_High( MeshDescriptor = $/GFX/DepictionResources/Modele_GBC_180_supply_FR ), DepictionDescriptor_LOD_Mid( MeshDescriptor = $/GFX/DepictionResources/Modele_GBC_180_supply_FR_MID ), DepictionDescriptor_LOD_Low( MeshDescriptor = $/GFX/DepictionResources/Modele_GBC_180_supply_FR_LOW ), ]

Note : If you don't have any 3D model for now and/or want to use an already existing in-game model, simply copy the content of another Alternatives.

BlackHoleIdentifier
The "Black Hole Identifier" is a key for the GhostDepiction which is the white transparent version of the model used in deployment.

In \GameData\Generated\Gameplay\Gfx\Depictions\DepictionMimeticGhosts.ndf
Enter a new value in the array to add your BlackHoleIdentifier and a GhostDepiciton corresponding.

( 'GBC_180_supply_FR', GhostDepiction_GBC_180_supply_FR ),

In \GameData\Generated\Gameplay\Gfx\Depictions\GeneratedDepictionGhosts.ndf
Add the new depiction you refrenced in the Mimetic file and put in it the alternative you use.

GhostDepiction_GBC_180_supply_FR is GhostVehicleDepictionTemplate ( Alternatives = Alternatives_GBC_180_supply_FR Selector = SpecificVehicleDepictionSelector )

Cadavre
"Cadavre", french for Cadaver is your unit once destroyed.

Note : If you don't have any 3D model for now and/or want to use an already existing in-game model, simply copy the reference to another unit's CadavreDescriptor and don't create a new one.

In the UniteDescriptor TCadavreGeneratorModuleDescriptor reference a new CadavreDescriptor.
Then create it in the \GameData\Generated\Gameplay\Gfx\Depictions\UnitCadavreDescriptor.ndf

You can copy the one of a similar unit and simply change the diffrent refrences to correspond to your unit.

ShowRoom
The ShowRoom correpsonds to the armory in-game and associated depictions are how the unit are represented inside it.

Note : If you don't have any 3D model for now and/or want to use an already existing in-game model, simply copy the reference to another unit's ShowRoomDescriptor and don't create a new one.

In the UniteDescriptor TShowRoomEquivalenceModuleDescriptor reference a new ShowRoomDescriptor.
Then create it in the \GameData\Generated\Gameplay\Gfx\Depictions\GeneratedDepictionVehiclesShowroom

export Gfx_GBC_180_supply_FR_Showroom is ShowroomVehicleDepictionTemplate ( Alternatives = Alternatives_GBC_180_supply_FR Selector = SpecificVehicleDepictionSelector )

Some vehicles may have SubDepicitionGenerators referenced. This can correspond to missile carriage as described in the \GameData\Generated\Gameplay\Gfx\MissileCarriageDepiction.ndf file.

Also some vehicles may have SubDepicitions, that can correpond to presence of visible humans (drivers or shooters on an open turret for example) as described in the \GameData\Generated\Gameplay\Gfx\Depiction\GeneratedDepictionHumans.ndf file (be careful this file is in two part a descriptor and below at the bottom of the file an array).


Create a Division
Army General unit editing, a basic guide.
Below is a link to a google doc with basic instruction for editing units in Army General for Warno

https://docs.google.com/document/d/1dt79IkOtqvXRB9h9z-Yc0m16J1incVRi/edit?usp=sharing&ouid=103362550607364932527&rtpof=true&sd=true
13 Comments
SuperBiscotCOT  [author] 5 Apr @ 7:14am 
Not if you don't have the source files
miss me 4 Apr @ 4:44am 
is it possible to edit an existing mod?
SuperBiscotCOT  [author] 1 Mar @ 9:39am 
Currently spending few hours in the depictions so I'm starting to better understand them but it remains a bit of a mess :D

High, Mid, Low are three LOD levels, something common in 3D assets for games (optimisation). You can take a look at the "Alternatives" file but you also have to create one .ndf file from scratch per unit in GameData\Gameplay\Gfx\DepictionResources in which you put what's detailed in the guide.


For now we haven't integrated custom 3D models so I haven't written down this part as I don't want to get something wrong. I hope to be able to write that down after testing it this month.


For the 2D unit cards you simply have a string to change called "Texture" something in the UniteDescriptor.ndf
Will see if I have time to detail that here.
RomeoJeff 22 Feb @ 9:10am 
Great work so far in structuring this modding guide, but if you can, can you give a little more details on the depictions resource dealing with uploading mesh; I don't quit understand the High.fbx, Mid.fbx, and Low.fbx is this refencing that it should be 3 different fbx module/mesh that should have different poly designs when applying the mesh...pls advise on this topic, and also how do you display/apply the 2D image in the armory of the newly created unit?
SuperBiscotCOT  [author] 18 Jan @ 1:44am 
Eugene's Discord has a channel for modding and a lot of answers and knowledge are there.
Killerbannana_1 16 Jan @ 10:56pm 
Is there a community modding discord? If not yall should make one, someplace to concentrate knowledge and people to ask questions and work together would be nice.
Free Mustache Rides  [author] 15 Jan @ 3:18pm 
Just added a link to the AG modding guide
SuperBiscotCOT  [author] 11 Jan @ 6:16am 
Added !
Free Mustache Rides  [author] 9 Jan @ 12:27pm 
Sure that would be cool!
SuperBiscotCOT  [author] 7 Jan @ 3:08am 
@freebirdjcb I can even add you as a contributor here if you want :o