NDS File Information

One special file here apart from the rest :::weapon.nds ::: controls weapons stats etc…

These are nation files. This file type deserves a good look into. They are text format files and editable with any text editors.(notepad/wordpad)
They have several entries. The following examples are taken from AUSTRIA.NDS

1. Sections

[MEMBERS]
This entry refers to the units and building available for that nation. The left hand column is the intrinsic name of those members that will be called later in the NDS files. It does not matter what name you specify for this, as long as the ending in the brackets is appropriate for that nation, eg. (AU) for Austria. The right hand column refers to the actual unit name as defined in the corresponding MD file, under NAME entry for that unit.
Eg. in AUSTRIA.NDS :
Kreposnoi_pruss(au) Kreposnoi_pruss  refers to member called Kresposnoi_pruss(au) using stats from unit named Kreposnoi_prus, as defined in KRP.MD file.(This is the Austrian Peasant)
These entries also defines the order in which units and buildings show up in the selection menu. So if you put a musketeer first in the list it will show up first when you select control + A in game ( cfr. Turkish Bedouin)

[FIXED_PRODUCE]
This entry states what can build/produce what and where the icons are to be located. Looking at the first line under [FIXED_PRODUCE] of AUSTRIA.NDS, the first line says :
Kreposnoi_pruss(au) 18
This means that the member called Kresposnoi_pruss(au) can build 18 things. The next 18 lines under this therefore describes what can be built. Looking at the first line immediately under this, it says :
Center_Austria(au) 2 2 H
This means the townhall can be built by the peasant. The townhall icon will be placed in Column 2 (the first number 2) and Row 2 (the second number 2) of the peasant build menu. The letter H refers to the category of the building/unit.

[ENABLED]
This entry specifies which units are enabled by default at the start of the game without any further requirements. This would for example, includes a 17th barracks but not an 18th barracks.

[UPGRADES] 
This is a huge entry specifying the various upgrades for that nation. Do not worry about where these upgrades are made, as this is specified in the next section. A typical line would be
Pikiner_evro(au)ATTACK ATAKA1 #POSITION 0 1 #LEVEL 2 Pikiner_evro(au)ATTACK #COST 2 FOOD 200 GOLD 50 #TIME 500 DAMAGE WEAPONKIND PIKA Pikiner_evro(au) +1

Breaking this down,
Pikiner_evro(au)ATTACK = upgrade member name,
ATAKA1 = icon for this member,
#POSITION 0 1 = position of the icon at column and row number,
#LEVEL 2 = level of the upgrade,
Pikiner_evro(au)ATTACK = translation of the member as defined in COMMENT.TXT file,
#COST 2 FOOD 200 GOLD 50 = unit has 2 required resources FOOD & GOLD and the amount,
#TIME 500 = time taken to complete the upgrade,
DAMAGE WEAPONKIND PIKA Pikiner_evro(au) = effect of the upgrade,
+1= quantity of the upgrade effect.
For more upgrade effects see part 2 on this page.

[UPGRADEPLACE]
This entry specifies the place where the upgrades are to take place. It again follows a similar format to [FIXED_PRODUCE] entry, in that it first specifies the unit/building with the number of upgrades following that. The following lines then would specify the upgrades for that building/unit. Eg.
PorE(au) 5
This specifies that at the Austrian ship yard, there are 5 upgrades. The upgrades are then specified immediately following that.

[UPGRADEENABLE] 
This entry is a simple one as it just specifies upgrade which are enabled at the start of the game without any further requirements.

[UPGRADELINKS]
This entry is also relatively easy. It controls which upgrades are enabled after a certain upgrade is made. The most complicated one would be
MAINAU 13 Kirasir(au)ATTACK Kirasir(au)SHIELD Gusar_evro(au)ATTACK Gusar_evro(au)SHIELD Dragun_18(au)ATTACK Dragun_18(au)SHIELD KUZ04AU Melnica(au)GETRES2 shahta(au)INSIDE5 shahta(au)INSIDE6 shahta(au)INSIDE7 AKA25AU PRS(au)INSIDE.
This means that there are 13 upgrades enabled after MAINAU(Progress to 18th century) is completed. Most of the others are just 1 following another.

[DISABLED_UPGRADES]
This entry is for upgrades that you have enabled but want its button greyed out until certain conditions are met. A good example is MAINAU (18th century upgrade), which is greyed out at the start of the game until the requirements of 18th century upgrade are met.

[ACCESSCONTROL]
This entry specifies requirements that must be met before the upgrades/units are available for use. For example,
MAINAU 7 Kuznica(au) Konushnia_Swesair(au) akademia_E(au) Kazarma_evro(au) Cercov_Poland(au) Rinok(au) artileri_depo(au)
means that before you can use the 18th century button MAINAU, you must have 7 buildings built. These buildings are specified after the number 7.

[UNITLOCK]
This entry controls units that are to be produced in limited quantity. For example,
PERES_KOR(au) 10 PERES_KOR(au) means that after 10 ferries are produced, you can not build any more ferries.

[CANSETDEST]
Members specified under this entry will have a rally point button. Should be used for buildings only.

[PRIVATE]
This entry means that the upgrades specified here will only affect a single unit/building that has the upgrade. This is used for upgrades of mines and towers.

[SPECIAL_UPGRADE] and [SPECIAL_UNIT] 
These 2 entries are applicable only to TAoW and BTW. This is to set flags for the various game modes such as 18 century games, no wall no tower games etc. Units or upgrades specified here let the game engine know whether to exclude them under certain game condition or not.

[COUNTRY] 
This entry is mainly for the editor. It contains the units for that country, grouped under various headings such as buildings, cavalry, artillery etc.

[OFFICERS]
This entry specifies requirements for formations. It should be self explanatory if you have been reading this far. 


2. NDS Upgrade's
 
ATTPAUSE
 USAGE: to increase/decrease pause between attacks
 EXAMPLE: ATTPAUSE WEAPONKIND VISTREL GRP 2 UnitFuz(FR) UnitVol(FR) -35%
 EXPLANATION: Decreases the pause between 2 shots (VISTREL) for 2 units, the fusilier and the Voltiger. This can be usedfor any kind of unit or building as long as you define the WEAPONKIND correctly. For the different type's of WEAPONS i refer to WEAPON.NDS or NRES.DAT
 
ATTRANGE
 USAGE: to increase/decrease the range of attack
 EXAMPLE: ATTRANGE ATTINDEX 0 GRP 1 ArtPus4(FR) +5%
 EXPLANATION: This will increase the range of the french cannon by 5%.This can be used for both units as buildings who have weapons.
 
BUILD
 USAGE: to increase/decrease the speed of production/construction.
 EXAMPLE:BUILD GRP 2 BldBlg(FR) BldTow(FR) -50%
 EXPLANATION: This will increase the build speed for the blockhouse and the tower by half.
 
COST
 USAGE: to increase/decrease the cost of production/construction.
 EXAMPLE: COST BldCen(FR) WOOD -85%
 EXPLANATION: This will decrease the cost for a townhall by 85% less wood. Usable on both units and buildings. Again, you can also use the GRP code for multiple units or buildings, or various resources, eg: COST BldFor(FR) GRP 3 GOLD -10% IRON -15% COAL -20% given that these resources are applicable and also defined in the ~.MD file(s)
 
DAMAGE
 USAGE:to increase/decrease the damage done by a particular (group of) weapon(s)
 EXAMPLE:DAMAGE WEAPONKIND VISTREL UnitGre(FR) +5
 EXPLANATION: This will increase the damage done by the Grenadiers rifle by 5. You could ofcourse use a % . Again applicable to all WEAPONKINDS
 
EFFECT_FOOD
 USAGE: to increase/decrease the food procurement
 EXAMPLE: EFFECT_FOOD 150
 EXPLANATION: Adds 150 to the procurement of food. Notice that you don't need to define the peasant here nor the mill. This is automatically applied to the resource gatherers. And this on its turn is defined in the ~.MD file's by the line PEASANT or for fishing boats ( insert ).Do pay attention with these, as researching a 150 food upgrade after a 200 upgrade will cancel out the previous upgrade its effect. This is well known by Cossacks I player's for the stone upgrades, but not so well for the food upgrades. So either chill out on the food upgrades or make them in a logical order by giving them level numbers and increasing prices so a player does not research one before another unintentedly.
 
EFFECT_STONE
 USAGE: to increase/decrease the stone procurement
 EXAMPLE: EFFECT_STONE 400
 EXPLANATION: Adds 400 to the procurement of stone.

 
EFFECT_WOOD
 USAGE: to increase/decrease the wood procurement
 EXAMPLE:EFFECT_WOOD 200
 EXPLANATION: Adds 200 to the wood procurement.
 
ENABLE
 USAGE: to enable units/buildings that were previously unavailable
 EXAMPLE: ENABLE UNITS GRP 1 UnitGre(FR)
 EXPLANATION: This will enable the production of the grenadier. Notice you could very well use the [ACCESSCONTROL] section to achieve a similar effect, but we are discussing upgrade's here.
 
FISHING
 USAGE: to increase fishing effect
 EXAMPLE: FISHING Lodka(au) +100%
 EXPLANATION: will double the fishing effect for the Lodka ( fishboat)
 
GEOLOGY
 USAGE: to reveal mine's on the minimap
 EXAMPLE: GEOLOGY
 EXPLANATION: on Cossacks I and AC, this works very well, however on CII, it's lacking the graphics to display on the minimap. It give's no error on using, but without the needed graphics it make's no sense to use this.
 
HEALING
 USAGE: to heal units
 EXAMPLE: HEALING GRP 3 UnitFuz(FR) UnitVol(FR) UnitGre(FR)
 EXPLANATION: this is supposed to heal a group of units, but Cossacks I players know very well that all the healing upgrades ( artillery, units, victoria) are problematic and don't work. It is possible that it needs a parameter to define its healing percentage. I'll test but 99% sure this is a failing string
 
INSIDE
 USAGE: to increase/decrease the number of units that can enter a group of buildings/transports/ships
 EXAMPLE: INSIDE BldBlg(FR) +5
 EXPLANATION: Increase the amount of units that a blockhouse can contain by 5. Notice its sister upgrade is the SINGLE_INSIDE upgrade.(see below)
 
PROTECTION
 USAGE: to increase protection against a particular type of weapon(s)
 EXAMPLE: PROTECTION GRP 3 MECH STRELA PIKA UnitFuz(FR) +4
 EXPLANATION: this increases the protection of the french fusilier against 3 types of weapons : sword, rifle & pike with 4 points.
 
RAZBROS
 USAGE: to increase /decrease the (in)accuracy
 EXAMPLE: RAZBROS GRP 2 ArtPus(FR) ArtGau(FR) -35%
 EXPLANATION: this will decrease the inaccuracy of these 2 french cannons by 35%. Or increase the accuracy by 35%, all depends on wether your an pessimist or optimist. "Is the glass half-full or half-empty?" Evidently, you should only define units here that also have the RAZBROS n string in their ~.MD file's.
 
SINGLE_INSIDE
 USAGE: to increase the amount of people this particular building , transport, ship can have inside
 EXAMPLE: SINGLE_INSIDE BldRudGold(FR) +5
 EXPLANATION: increase the amount of units in this particular mine by 5 . Notice that for these SINGLE_XXXX effects you should also define the applicable buildings under the section [PRIVATE] or you will research this upgrade and the upgrade will be no longer available in the other mine's, yet only this mine will have the effect of the upgrade.
 
SINGLE_ATTPAUSE
 USAGE: to increase the attack pause of this particular unit/building
 EXAMPLE: SINGLE_ATTPAUSE ATTINDEX 0 BldTow(FR) 80
 EXPLANATION: This set's the attack pause for this french tower to 80 (GT). The sister upgrade's or the whole set of buildings/ units is ATTPAUSE
 
SHAR
 USAGE: balloon
 EXAMPLE: SHAR BldCen(FR)
 EXPLANATION:This would enable the balloon from the townhall, if there was such a graphic file.The animation and strings are present in the game, it just lacks the balloon graphic. I gotta test this with the balloon from CI.
 
SHIELD
 USAGE:
 EXAMPLE:
 EXPLANATION:
 
SPEED
 USAGE: to increase the speed of a particular unit
 EXAMPLE: SPEED GRP 2 ArtPus(FR) ArtGau(FR) 140%
 EXPLANATION: this upgrade would increase the speed of these 2 french cannons by 140%. This is not the same as the production speed for which BUILD is used

UNITS
 USAGE: used to define Units
 EXAMPLE:ENABLE UNITS GRP2 UnitKri(FR) UnitSap(FR)
 EXPLANATION:used in combination with ENABLE for example
 
UNITS&UPGRADES
 USAGE: used to define units & upgrades
 EXAMPLE:
 EXPLANATION:used in combination with ENABLE for example 
 
UPGRADES
 USAGE: used to define upgrades
 EXAMPLE:
 EXPLANATION:used in combination with ENABLE for example
 
[END OF UPGRADES EFFECTS]
 

Note: some economy or military upgrades can be used mixed. It all depends what unit or building you want to upgrade.
If you want to make your own upgrades, it is advisable to write a few things down on paper before you even start.