ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.

Weapons

From ModEnc
Revision as of 12:57, 15 June 2007 by DCoder (talk | contribs) (Reverted edits by 62.231.243.137 (Talk); changed back to last version by Blackmask0)
Jump to navigation Jump to search

Weapons are essential to CnC, even more than harvesting. A Weapon is a combination of Weapon-specific data, warhead, and projectile.

If a weapon gets fired, the game first checks for the animation & sound set in the weapon to display them;
The warhead is then delivered to it's target by the projectile;
On impact, the game reads the rules for the impact from the warhead, and then calculates the damage inflicted, basing on the Damage= value supplied in the weapon.

Making new weapons (by DCoder)

New weapons are easy to create, as long as you know these facts:

When a unit is ordered to fire, it moves towards the target until it is in Range=, then fires the weapon. It travels through the air (directed by the Projectile=), impacts and deals a certain % of weapon's Damage= (directed by the Warhead=).

Enough theory, let's make a new weapon, projectile and warhead to replace the Destroyer's cannon with a RA1 style missile launcher. So set [DEST] Primary=OldMissile, then create this section:

[OldMissile]
Damage=60 ;how much damage points to deliver
ROF=60 ;how often (in frames) to fire
Range=8 ;how far (in cells) can the weapon fly?
Projectile=HeatSeekingMissile ;our new projectile
Warhead=HeatMissileWH ;our new warhead
Speed=25 ; how fast does the weapon fly?

Report=AegisAttack ;the sound of aegis missile launcher

But the [HeatSeekingMissile] does not exist yet. So create it:

[HeatSeekingMissile]
High=yes ;fly in an arc (IFV missile like) instead of straight (cannon like)
Shadow=no ;don't draw shadow on the ground (the missile is too small)
AA=yes ;can it hit air targets?
AG=yes ;can it hit ground targets?
Image=MEDUSA ;this is the image that Aegis missile uses
ROT=20 ;(not zero means it can 'home in' on the target)
SubjectToCliffs=no ;can cliffs mess up the targeting (we're in the water, no cliffs here)
SubjectToElevation=no ;does the weapon get a range bonus if fired from a high place downwards?

SubjectToWalls=no ;can the walls stop it?

The [HeatMissileWH] also doesn't exist. So we need to create it as well:

[HeatMissileWH]
CellSpread=.3 ;in map cells, how far can you still feel the impact
PercentAtMax=1 ;at the edge of the area effected (determined by cellspread) this is the percent of damage done.
Verses=100%,100%,100%,100%,100%,100%,0%,0%,0%,100%,100% ;(see armor types tutorial)
InfDeath=3 ;which infantry death to use when infantry is killed by this weapon?
AnimList=EXPLOSML ;what animations to play at impact point?

ProneDamage=100% ;% damage to deal to infantry that is prone (deployed counts as prone)

Now, add the HeatMissileWH to the [Warheads] list. I haven't seen anything wrong when I don't put it there, but since the list exists, it can be necessary for something.