Waves



  Weapons; IsLaser and IsBigLaser wave effect
  Waves; IsLaser and IsBigLaser effect

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:

 /images/wave_lasers.png
  :alt: Effects of Wave.Is(Big)Laser
  :align: center

 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.



  Weapons; Wave colors and intensity
  Waves; Colors and intensity

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.

 0.1
 2.0



  Weapons; Wave drawing direction
  Waves; Direction the wave is drawn in

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.). 

 0.1



  Weapons; Wave ambient damage
  Waves; Ambient damage for all types

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.

 0.1
