- Joined
- Feb 11, 2021
- Messages
- 45
My Red Dragon and Green Dragon respectively have the abilities Fire Breath (based on Flame Strike) and Corrosion Breath (based on Acid Bomb). Both have Weapon Type Missile Splash for Attack 1 (ground units) and Missile for Attack 2 (air units).
Initially, I wanted these abilities to be based on Burning Oil for Fire Breath and Envenomed Weapons or Corrosion Breath (from Chimaeras) for the custom Corrosion Breath. For Burning Oil, I wanted a trigger that would give it a chance to activate. However, Envenomed Weapons did not work with the Green Dragon's Missile Splash weapon type, as it seems incompatible. The Chimaeras' Corrosion Breath also doesn't work on units other than Structures, even when I change the Targets Allowed. A trigger might be needed to force the Chimaeras' Corrosion Breath to work on other units.
As an alternative, I created a trigger that gives a chance for a Dummy to cast Fire Breath or Corrosion Breath on the primary unit hit by the dragons' attack. However, the trigger produced an undesired behavior: the Dummy casts Flame Strike, for instance, randomly on different locations and units around the primary target when there are many units nearby, instead of focusing solely on the primary target.
I've already adjusted the Cast Range fields to see if anything changes, but it hasn't helped. I really want to use the dragons with Missile Splash, but I suspect this might be causing some sort of conflict.
I am a beginner with triggers, so there are things I will definitely need help with.

Initially, I wanted these abilities to be based on Burning Oil for Fire Breath and Envenomed Weapons or Corrosion Breath (from Chimaeras) for the custom Corrosion Breath. For Burning Oil, I wanted a trigger that would give it a chance to activate. However, Envenomed Weapons did not work with the Green Dragon's Missile Splash weapon type, as it seems incompatible. The Chimaeras' Corrosion Breath also doesn't work on units other than Structures, even when I change the Targets Allowed. A trigger might be needed to force the Chimaeras' Corrosion Breath to work on other units.
As an alternative, I created a trigger that gives a chance for a Dummy to cast Fire Breath or Corrosion Breath on the primary unit hit by the dragons' attack. However, the trigger produced an undesired behavior: the Dummy casts Flame Strike, for instance, randomly on different locations and units around the primary target when there are many units nearby, instead of focusing solely on the primary target.
I've already adjusted the Cast Range fields to see if anything changes, but it hasn't helped. I really want to use the dragons with Missile Splash, but I suspect this might be causing some sort of conflict.
I am a beginner with triggers, so there are things I will definitely need help with.
-
Fire Breath
-
Events
-
Unit - A unit Takes damage
-
-
Conditions
-
(Unit-type of (Damage source)) Equal to Red Dragon
-
((Triggering unit) belongs to an enemy of (Owner of (Damage source)).) Equal to True
-
(Random integer number between 1 and 100) Less than or equal to 15
-
-
Actions
-
Set VariableSet FireBreathPoint = (Position of (Triggering unit))
-
Unit - Create 1 Dummy (New) for (Owner of (Damage source)) at FireBreathPoint facing Default building facing degrees
-
Unit - Add Burn (Dummy) to (Last created unit)
-
Unit - Order (Last created unit) to Human Blood Mage - Flame Strike FireBreathPoint
-
Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
-
Custom script: call RemoveLocation(udg_FireBreathPoint)
-
-
-
Corrosive Breath
-
Events
-
Unit - A unit Takes damage
-
-
Conditions
-
(Unit-type of (Damage source)) Equal to Green Dragon
-
((Triggering unit) belongs to an enemy of (Owner of (Damage source)).) Equal to True
-
-
Actions
-
Set VariableSet CorrosionBreathPoint = (Position of (Triggering unit))
-
Unit - Create 1 Dummy (New) for (Owner of (Damage source)) at CorrosionBreathPoint facing Default building facing degrees
-
Unit - Add Corrosion to (Last created unit)
-
Unit - Order (Last created unit) to Neutral Alchemist - Acid Bomb (Triggering unit)
-
Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
-
Custom script: call RemoveLocation(udg_CorrosionBreathPoint)
-
-
