Waves

Wave Effects

An unused weapon effect (present in the game code but disabled) has been enabled. It is similar in appearance to the old laser beam or the old Disruptor wave from previous games. For now it is referred to as Laser.

[Weapon]►Wave.IsLaser= (boolean)
Should the Laser effect be applied to this weapon?
[Weapon]►Wave.IsBigLaser= (boolean)
Should the BigLaser effect be applied to this weapon?

Wave.IsLaser and Wave.IsBigLaser produce two different effects, however their naming was established before the effects were fully tested: Wave.IsLaser appears to actually render a wider beam! See the image below, left unit is using Wave.IsLaser, the right one is using Wave.IsBigLaser:

Effects of Wave.Is(Big)Laser

New in version 0.1.

The following flags are applicable to all Wave effects; the aforementioned Wave.Is(Big)Laser=yes as well as IsSonic=yes and IsMagBeam=yes.

Wave Coloring

Color is a constant addition not depending on the original pixel color. Intensity on the other hand is multiplied with the original values before being added to the original pixel component, thus, the darker a color is, the smaller the effect. If a value is larger though, the effect is larger, more quickly approaching 255.

[Weapon]►Wave.Color= (list of 3 integers)
The value added to the color component of the wave independent of the original pixel color. Supports negative values to darken the wave. Default value is different depending on the type of the wave.
[Weapon]►Wave.Intensity= (list of 3 integers)
The value added to the color component of the wave with respect to the original pixel color. Supports negative values to darken the wave. 0,0,0 means no change by intensity. Default value is different depending on the type of the wave. If Wave.Color is set, the default is 0,0,0.
[Weapon]►Wave.IsHouseColor= (boolean)
If this is set to yes then the wave will be drawn in the firing unit’s house color instead of the color specified by Wave.Color.

Wave colors in Ares default to the same values as the original game. The intensity default value is cleared to mimic the behavior of Ares 1.0 and earlier, though. If this is not desired, set Wave.Intensity to the appropriate default value from the Defaults list.

Wave Color and Intensity Defaults
Wave Type Wave.Color Wave.Intensity Remarks
Laser 64,0,96 0,0,0 Red/blue tint
Sonic 0,0,0 0,256,256 Green/blue light
Magnetron 0,0,0 128,0,1024 Cold blue-ish light

It is possible to use hexadecimal notation for color and intensity like 40h,0h,60h. It is also possible to use negative values like -64,0,-96.

Each of the three component values can be considered as 1/256th, thus 64 representing 0.25. Then, the resulting value for a color component is calculated using the original pixel color component 0 <= c <= 255 and a value determined by the game 0.0 <= x < 1.0 by the formula: c + color * x + c * intensity * x.

New in version 0.1.

Changed in version 2.0.

Wave Direction

Waves are drawn in different directions (from firer to target or vice versa) depending on the type of wave and the circumstances. This direction can now be customized in several ways. The following flags all default to no unless otherwise specified.

[Weapon]►Wave.ReverseAgainstVehicles= (boolean)
Whether or not the wave will be drawn from the target to the firer when the target is a VehicleType. Defaults to yes if IsMagBeam=yes is set on the weapon.
[Weapon]►Wave.ReverseAgainstBuildings= (boolean)
Whether or not the wave will be drawn from the target to the firer when the target is a BuildingType.
[Weapon]►Wave.ReverseAgainstInfantry= (boolean)
Whether or not the wave will be drawn from the target to the firer when the target is an InfantryType.
[Weapon]►Wave.ReverseAgainstAircraft= (boolean)
Whether or not the wave will be drawn from the target to the firer when the target is an AircraftType.
[Weapon]►Wave.ReverseAgainstOthers= (boolean)
Whether or not the wave will be drawn from target to firer when the target is anything not covered by the other ReverseAgainst flags (i.e. trees, overlays, empty cells, etc.).

New in version 0.1.

Wave Ambient Damage

All waves can now deal disruptor-style damage to objects that they pass through, a feature that was previously limited to Sonic Waves only. As a reminder, the flags that control this are:

[Weapon]►AmbientDamage= (integer)
How much damage the wave deals to objects it passes through. Defaults to zero.
[Weapon]►Warhead= (WarheadType)
The warhead used to deal ambient damage as well as normal damage.

New in version 0.1.