- Enemy Units Killed
Effect:
-Fire event- Trigger 2
-Fire event- Trigger 3
Trigger 2: active - looped – immediate
Condition:
-timer ms- ~500
Effect:
-Teleport UnitsTrigger 3: active – not looped – immediate
Condition:
-units in area/distance to unit- choose the area where your teleported unit should appear
Effect:- Disable Trigger- Trigger 2
-Change Unit Type (Cinematic block)
-Chang Unit Type (your normal unit)
(otherwise the unit try to move to the position before the unit teleports)
-additional effects3.2 Q: My units don’t go through the door. They stand in front of it or search other ways.(RPG Bug) Why this happens: If u convert this door from a neutral or enemy player your units sometimes think it belong still to them
(enemy or neutral player). You can solve it by adding two effects to your converting trigger (after the convert effect, of course)
1.Change Unit Type (CinematicBlock)
2.Change Unit Type (CWallGate)When you change the unit type it will forget the information about the player who controlled it. 2nd step is to change it again to a gate.
(CWallGate is the normal gate that u can build in game)4. Faulty Trigger: 4.1 Conditions: - Chat Contains
- Unit Selected by Player
- Vector Conditions
4.2 Effects
- Modify Protounit (most parts of it)
- Activate Trigger
- Render Sky
- Teleport Units (they walk to their position
before teleporting)- Vector stuff
- partly Sims Tools (SimsTools Grant Ressources …)
- XS-Stuff work but it need another input more informations about this you find in the doc folder from your dl.
5.Tips and Tricks 5.1 Clean up your objective window: If you have tons of objectives it is usefull to show not all at the beginning and even the text “Objective isn’t discovered” fill space.
So here is a guide to clean up your objective window.
If u needn’t them show the objectives at the beginning u can uncheck “objective visible” and “objective discovered”
And if you need this objective in the game you need to do this trigger:Trigger1: active-not looped-…
Conditions:
-Your task :P cause they are different from scenario to scenario
Effects:
-Objective: Discover
-Objective Show
-Additional Effects like Fire Event (Trigger2)Now after they appear we want to complete the objective Trigger2: either active or not active (you activate it later e.g. with trigger1)-not looped- run immediate
Condition:
-the condition to complete your objective e.g. distance to unit/Player Unit Count/Player Resource count/…
Effect:
-Objective: Complete
-maybe you want them give also a bonus for complete it- (Set Tech status/ Grant Resources/…)
-Fire Event- Trigger3
Trigger3 let the objective disappear. To save space in the objective window Trigger3: not active- not looped-…
Condition:
-Timer- e.g. 10
Effect:
-Objective: HideYou`ll notice that if you haven’t a current objective you won`t find the objective window on your screen.
But if you get a new one the window will appear.
Quoted from Invent00r:
"Also, on[AoE3] you can color and underline the text of objectives using:
Where naturally, rgb stand for Red Green Blue. Using paragraphs is also possibile by typing on an external app - like notepad -,<
color=r,g,b> < /color>
[u] Underlined text[ /u]
then just pasting over the objective."5.2 Q: How to forbid the regroup of the enemy units (RPG) Most Player solve it with “ SetPlayerDefeat”
Instead of Set Player Defeat you can also use this:<
Effect name="Auto Formations">
<Param name = "On" dispName = "Use Auto Formations" varType = "bool"> false< /Param>
<Command> if (%On%) config("RegroupUnits");< /Command>
<Command> else config("-RegroupUnits");< /Command>
</Effect> The advantages of using this are - You can set Animations on the player you normally defeat
- You can give the enemy everytime an AI
- Some other effects only work if the enemy isn’t defeated
5.3 Q: How to improve the unit stats of only one unit type First of all we can`t use Modify Protounit for improving Unit Attack. So let`s use SetTechStatus. My example is for the xBow: Trigger 1: active – not looped – immediate
Condition:
-Always
Effect:-SetTechStatus - VeteranCrossbowman
- unobtainable
-SetTechStatus- VeteranCrossbowman
- activ
-Modify Protounit- Crossbowman
- hitpoints
- amount= -20)
Effect # 1 simulate that the Tech wasn’t used before. Effect # 2 give the crossbowman 20% of the and 20% of the base hitpoints. That mean for my example the crossbowman would gain 3 attack points and 20 hp.base attack
Effect # 3 bring the hitpoints to the state before u used the tech. That’s possible because this increase the base amount.
Guard and Imperial Upgrades would have the same affect only with higher %-rate (30%;50%).
We can also loop this effect. We want have this effect now 5 times!Trigger 2: active – looped – immediate
Condition:
-QuestVarCheck- QVname= boost
- amount = 5
- Operator “<
”)
-timer (depending if it laggs or not)
Effects:
-SetTechStatus- VeteranCrossbowman
- unoptionable
-SetTechStatus- VeteranCrossbowman
- activ
-Modify Protounit- Crossbowman
- hitpoints
- amount= -20)
-QuestVarModify- QVname= boost
- amount=+1
If you need to boost all your units u can use HCCards. Remember you can stack them without making them unobtainable. 5.4 A rax that train bears
You wish to do an animal scenario but just a few units train animals. So we need to do a little trick.
We just change the unit type of xbows that u can train from the rax to bears.Trigger1: -activ-looped-run immediate- very high priority
Condition:
-units in area- center unit=a CinematicBlock
- Player1
- radius =1000
- unit=xbow
- operator=” >
=” - count=1
-timer- e.g. 2(depending on the training rate and the lag)
Effect:
-Change All Units in Area- Center Unit=the cinematic block
- Radius= 1000
- Unit ID=303 (that`s the ID of the xbow
- Player1
- Protounit= Petbear
It doesn’t change the avatar in the rax but after the xbows are trained they directly change into bears. Remember Change all units in Area (Center Unit) is a custom Effect. You`ll find it in Random22`s Trigger Pack 6. Additional Stuff 6.1 Setting Priorities: Is a really important factor for create a good scenario. A high priority can make it even more lag because the triggers will work
at the same time. If u choose a low priority the trigger will work at the moments when the scenario haven’t to work on a high amount of triggers
at the same time otherwise it will wait until it found such a moment.Low priority: advantages and disadvantages
++reduce lag cause it split the trigger in different time periods
--some times really bad timing. The trigger fire sometimes after 5 mins after the condition is filled
especially if it is a laggy game
--if you loop this trigger the condition can be filled twice time while you want for example just create
one unit
--more oos dangerI prefer making high priorities because of the bad timing a low priority will do. 6.2 Sound Filename vs. Music Filename
To choose the correct music effect can be important for your scenario. Most people just take the “Sound Filename” because it work most
comfortable and you haven’t gaps during your music in the game because you can fire the next track with a trigger exact after the old one ends.
But this trigger even has some disadvantages.Sound Filename and Sound Play Paused
++no gaps between the sound files
++really comfortable
--You aren`t able to fade it out. If you fire one while
another plays you hear both at the same time
--Sound Filename load the songs during the loading time of
the whole scenario.
->the more Songs you do with it the longer loading
times you get
->often “failed to load” if you link in CSO like 4+
Songs with Sound Filename
Music Filename
++It doesn’t affect on the loading times
++You are able to fade out. If you start a new one the old will fade out
--You need to work with timers (and Fire Event)
--gaps between your music files (If the old track ends and the new doesn’t start yet it fill the gap with normal music[same music as “Music Play”]) I prefer Music Filename. If I take Sound Filename I get 3 times as long loading times (if I do all my songs with it).
For CSO I recommend use not more as 2 sound files that u fire with” Sound Filename” or “Sound Play Paused”6.3 Dealing with the death-Part 1 Problem: -I work on a RPG were the horse should follow a unit. Later the unit can become a rider etc.
For the horse I use a “Move to Unit” Trigger. And of course I use such a life system like Mèrs just with units that can die.
But if my unit is dead I can`t do a “Unit Create”-Trigger because the horse wouldn’t have anymore a target unit…
Solution: We use the time of the dieing animation and change the unit type to an explorer or a SPC Unit.Trigger1: active-not looped-run immediate-very high priority
Condition:
-is dead- e.g. my Samurai
-timer- =2s
Effect:
-Change Unit Type- Samurai->
Explorer
-Fire Event- Trigger2
-Fire Event - Trigger3
-[if you have a life system you need also Send Chat and Grant Resources (amount=-1)] Trigger2: not active-not looped-run immediate
Condition:
-timer- (e.g. 10 s)
-is alive
Effect:
-Change Unit Type- Explorer->
Samurai (ypKensei)
-Fire Event- Trigger1 (if he die again this will
work again)TRIGGER 3 IS ONLY NEEDED IF YOU WANT HIM TELEPORT TO A GRAVE Trigger3: not active- not looped- run immediate- very high priority
Condition:
- timer ms/timer/(always)
Effect:
-Teleport UnitsYou will notice that he hasn’t full health. For doing that u can either use Mèrs`s healing System from Zellda 2,
do at the space where u teleport him a SPC HEALING Object or try out sth. new…
6.4 Working with ID`s:
In Random22`s Trigger Set and the Advanced Trigger Set often are Effects that include All Units in Area e.g. Kill All Units In Area and
Flash All Units in Area. This trigger work with an ID
Not all units can be chosen by this ID`s so here is a tip on how to find out:
You needReyk`s editor Mod to do this
1st: Press: AI Unit Info ->The blue window will appear
2nd: Select an object like the cinematic block
3th: If there is only one line and u have selected the current Player then you aren’t able to select it via ID with a Trigger
But if you select the e.g. AITargetBlockWeak you will see much information appear in the blue box. If this is the case u can select it by ID6.5 Dealing with the death-Part 2
So our current problem is that if a blackpowderwagon dies we normally just can do that he kill the units we have in our kill trigger
(fall of Russia). But for other scenarios this must be a flexible kill trigger. (e.g. FFA were the player control the blackpowderwagons ...).
So we need an ID Trigger.Basic Trigger: This trigger makes damage to every player if a blackpowderwagon is killed
Condition:
- units in area- TargetBlockWeak
- choose a player which stay the whole game
[if the player resigns the whole trigger dont work anymore] - a radius which cover the whole map
Effect:
-Damage Units in areas- ID=845(This is the ID of the Target Block Weak)
- Select units from player=the player which stay the whole game
- Player=the player which should get the damage
- Radius+ Damage+ Unit Type should be clear
-This effect you repeate for all players which could get damage from any blackpowder wagon
-Destroy units in area- Radius must cover the whole map
- ID=845
- Player=your staying Player
Trigger2:
Condition
-is killed- blackpowderwagon
Effect
-unit create at unit:- AI Target Block Weak
- choose the wagon from your “is killed”-condition
- player=the player which stay the whole game
This effect you copy for all your wagons.
To select new trained wagons isn`t possible but you can use your knowledge of Part1 to recreate the wagon.
The current way we see the animation of the dieing blackpowder wagon. If we would convert the unit like in Part 1 we would miss the explosion.
This is the way the latest versions of Gang Warfare uses (still the bug if a player resigns the whole blackpowderwagons don’t work
since I unluckily haven’t choose at this time a player which stay the whole game). If you want that the killed blackpowderwagon
don`t kill the units of the player who controls it you have to make a various basic trigger and trigger2…
(change the staying player to the player who controls the unit+ kill the damage units in areas effect where this player is the target)6.6 Write an "xxx All Units In Area" Our example is the Flare at All Units in Area (center Unit) <
Effect name="Kill All Units in Area (Center Unit)">
<Param name="Object" dispName="Center Unit" varType="unit"> default< /Param>
<Param name="Dst" dispName="Radius" varType="string"> 10.0< /Param>
<Param name="UnitId" dispName="Unit Type ID (Optional)" varType="string"> -1< /Param>
<Param name="FromPlayer" dispName="From Player or 99 for ALL" varType="string"> 99< /Param> - Trigger 2
You like to avoid graphic bugs,
You like to get a better playability for your scenario or
You just want to inform you about bugs in existing scenarios...
then you are at the right place
1.Usefull Bugs (Colosseum Bug)
2.Avoid Bugs (Lanternbug)
3.Fixing Bugs
3.1 fix the teleport Trigger
3.2 My units don’t go through the door. They stand in front of it or search other ways
4. Faulty Trigger
5. Tips and Tricks
5.1 Clean up your objective window
5.2 A possible solution to avoid regroup of units
5.3 How to improve the unit states of just one unit type
5.4 A rax that train bears
6. Additional Stuff
6.1 Setting Priorities
6.2 Sound Filename vs. Music Filename
6.3 Dealing with the death-Part 1
6.4 Working with ID`s
6.5 Dealing with the death-Part 2
6.6 Write an "xxx All Units In Area"
6.7 A goldmine with an endless amount of gold
7. Presentling some of my self-written effects/ conditions
8. List of Must haves
advantage. The best example you can find in the most hosted CSO at ESO – The Colosseum.
Except the false linked units there is a bug for skipping a level. At the third island. It is a small invisible gap in the wall that u can pass.
Result: You can get the reach the next level even if you have 600 kills instead of 800 ->
This bug you can find in all fliger based colosseums.
For Example Lord_of_Evil can`t play Gang Warfare because of the Lanterns. Every time if the SPCCityStreets have a lantern his graphic card
is spinning around and he see a mysterious light that make it unplayable. Later he killed the lanterns in my scenario so he was able to play it.
->
We need 3 triggers to solve it.
Condition:
e.g. State Value