AoMX Changes: Scenario Editor

The Scenario Editor has been hugely improved with AoMX. Several new editing features, AI scripts, and what all scenario editors are dying for: new trigger conditions and effects. With all of these improvements to AoM’s scenario editor, designers should be able to use the editor to its full potential by making some of the best scenarios and campaigns we’ve ever seen.

Screenshots

You can check out a number of the changes to the scenario editor in our gallery.

And for the full list of changes and additions to the editor, here’s the list:

Advanced Editing Features

  • Animation Viewer: Alt-A will bring up an animation viewing dialog. Use this dialog to view the various animations that a unit has in more detail. Please note that overriding animations with this dialog will not be saved out in a scenario. Use the “Set Animation” trigger effect to override animations in an actual playable scenario. The animation viewer can also be accessed through the “Cinematics” menu in the editor.
  • Camera Controls: Hitting Alt-Shift-C in the editor will disable the usual locked camera controls. Once you have unlocked the camera, you can zoom in and out beyond the normal limits. In addition, you can use PageUp / PageDown to move the camera height, and the A / Z keys to pitch the camera up and down. Control-uparrow and Control-downarrow will also pitch the camera. While you cannot use these alternative camera views in gameplay proper, you can use this to capture a wider range of camera positions when making cinematics, or just to get a better view of your scenario.
  • Aligning Units: The “Align Selection” option, under the “Objects” menu in the editor, will snap the selected objects position to the grid. This is of particular note when placing unclaimed Settlements by hand, because only properly aligned settlements can be used by the computer player AI for building new Town Centers.
  • Scaling Units: K and Shift-K can be used in the editor to scale objects up and down. This can give you some unique and interesting effects. Note however that objects with attachments (like soldiers with swords) will not scale their attachment positions properly, so use with care.
  • AI Debugging: In order to engage the AI debugger, you must first put “+aiDebug +showAIEchoes +logAIErrors” on the command line when running AOM: The Titans Expansion. When playing a scenario with AI players, you can use Alt-Shift-D to bring up the ai debugger. The AI debugger is a complex tool with many options that are beyond the scope of documentation here, but should be familiar to anyone who is familiar with source level code debuggers. With those options on the command line, when playing a game with AI players, some extra hotkeys will bring up AI diagnostic windows. Alt-W will bring up an AI info dialog for a specific unit, and Control-Alt-W will bring up an info dialog that will continually change based on the currently selected unit. Control-Alt-I will bring up a menu to view the “brain” of the AI (its, plans, goals, and the like). Alt-Q will toggle the AI output window.
  • Setting AI Players: In order to use the new AI scripts and personalities in your own scenarios, when choosing an AI script via the “AI” button in Scenario > Player Data, use any of the following scripts:
    • aomxailoaderaggboom.xs (Conqueror personality)
    • aomxailoaderbalanced.xs (Standard personality)
    • aomxailoaderboom.xs (Builder personality)
    • aomxailoaderdefboom.xs (Protector personality)
    • aomxailoaderdefrush.xs (Defender personality)
    • aomxailoaderecorush.xs (Unused personality, quick jump to heroic age)
    • aomxailoaderrush.xs (Attacker personality)
    • aomxailoader.xs (Random personality)
  • Trigger Copy: Trigger effects, trigger conditons, and entire triggers can now be copied. Press the “copy” button in the trigger editing UI panel.
  • Variations: When in the editor, Control-Alt-V can be used to toggle between variations of units. For example, this can be used to change between types of trees or switch villagers between male and female versions. Cinematic objects from the single player campaign often represent completely different objects with different variations. This is the same as right-clicking when placing down a unit in the editor.
  • Condition Logic: When viewing the conditions of a trigger, you can now chose “OR” and “NOT” from the trigger editing UI panel. If “OR” is checked it will cause the trigger to fire when any individual condition is true. If “NOT” is checked it will cause the trigger condition logic to be negated. Here is a quick table showing the logical states of a trigger, assuming it has two conditions, A and B.
    • nothing checked: A && B ; both A and B must be true for the condition to fire
    • OR checked: A || B ; either A or B must be true for the condition to fire
    • NOT checked: ! (A && B) ; if either A or B is false, the condition will fire
    • OR, NOT checked: ! (A || B ) ; A and B must both be false for the condition to fire
  • Using God Powers: When invoking God Powers in a scenario from player zero, you are no longer required to grant that God Power first.

New Trigger Content

  • Condition – Unit on Lush: This condition will activate when Gaia Lush is underneath the selected unit.
  • Condition – Unit Is Garrisoned In: This condition is used to check when a specific unit has been garrisoned into another unit of an appropriate type. So for example setting this on a relic and setting the Container Type to “Temple” will ensure that it only fires when the relic is contained in a Temple, not when a Hero picks it up.
  • Condition – Chat Contains: This conditon will activate when a string matching the trigger’s string appears in the player’s chat area. Note that it can be fooled by Spoofed Chats. Use in conjunction with the Clear Chat History trigger effect if you want to use this on a looping trigger.
  • Condition – Stat Value: This condition allows you to activate based on a number of different gameplay statistics. These are generally the same sort of statistics as appear in the postgame screens. Use the Echo Stat Value trigger effect to get a sense of how these values fluctuate.
  • Condition – God Power Active: This condition will activate when the given god power is currently “going off”, and only during the duration of that God Power. Be aware that some God Powers are “active” for a different amount of time than their UI countdown.
  • Condition – God Power Used: This condition will activate once the given god power has been actually used.
  • Condition – Quest Var Check: This condition will activate when a Quest Var (a sort of temporary variable) meets the desired values. These Quest Vars are typically set with the Quest Var Set, Quest Var Modify, and Quest Var Randomize trigger effects. Quest Vars which have not been yet set all have a value of zero.
  • Condition – Quest Var Compare: Like Quest Var Check, but is used to compare one Quest Var to another directly.
  • Effect – Damage Unit Percent: This effect will damage a unit based on the chosen % of it’s maximum hitpoints. So 100% is always guaranteed to kill a unit. You can do negative damage to a unit to heal it.
  • Effect – Damage Unit: This is like Damage Unit Percent but does an absolute value of HP adjustment.
  • Effect – Damage Units in Area: This is like the above Damage Unit triggers, but applies to all units in an area, as represented by a reference unit and a radius. It can be modified to affect only a specific type of units.
  • Effect – Change Units in Area: This effect will cause all the matching type units in an area to transform into the selected alternative unit. It can be used to switch players at the same time.
  • Effect – Change Name: This effect will override the name of the selected unit. It does not affect other units of that same type.
  • Effect – Move From Area: This effect will cause all the units in the selected area to move to a chosen destination It can be filtered on type (to move, say, all Priests only).
  • Effect – Forbid And Disable Unit: This effect is the missing converse of the existing Unforbid and Enable unit trigger, and does a similar effect to manually choosing a Forbidden unit in the editor.
  • Effect – Set Civilization Name: This effect will override the “major god” name of a player. It does not affect any actual gameplay.
  • Effect – Grant GP at Position: This effect can be used to give a GP in a specific “slot” in the UI. Note that there cannot ever be “empty” GP slots, so if you try to grant in slot 3 while slot 2 is still empty, it will fill the first empty slot.
  • Effect – Send Chat to Player: This is just like the Send Chat effect, but only goes to a specific player.
  • Effect – Send Spoofed Chat to Player: This is just like the Send Spoofed Chat effect, but only goes to a specific player.
  • Effect – Clear Chat History: This effect will erase all the chat lines. It is mainly used in conjunction with the “Chat Contains” condition, but can also be used to clean up after complex chat sequences.
  • Effect – Echo Stat Value: This effect allows you to monitor the stat values used in the “Stat Value” condition.
  • Effect – Disable GP Blocking: This effect an be used to disable gameplay systems that would otherwise block God Powers from going off.
  • Effect – Show Image: This effect will pop up a dialog with the chosen piece of artwork, and a subtitle.
  • Effect – Choice Dialog: This effect will pop up a dialog that gives the player the choice of two options. The specified triggers will fire based on the player’s selection.
  • Effect – Modify Protounit: This effect will let you make global modifications to all units of a given type, for a specific player.
  • Effect – Overlay Text: This effect will let you create floating text onscreen. It is best suited for use in cinematics.
  • Effect – Quest Var Set: This effect lets you set a named Quest Var to a specific numeric value.
  • Effect – Quest Var Copy: This effect will copy the value of one Quest Var into another.
  • Effect – Quest Var Modify: This effect will perform basic arithmetic operations on a Quest Var.
  • Effect – Quest Var Modify 2: This effect will perform basic arithmetic operations on a Quest Var, using another Quest Var as a parameter.
  • Effect – Quest Var Randomize: This effect will allow you to set a Quest Var to a randomly chosen value. The range specified is inclusive, so choosing from 1 to 10 will include both 1 and 10 as valid possible values. Setting the “Round” checkbox will cause only integer values to be chosen.
  • Effect – Quest Var Echo: This effect will simply chat the current value of a Quest Var, and is useful for debugging complex Quest Var sequences.
  • Effect – Gaia Lush: This effect can be used on a pre-placed Gaia building to cause it to project Lush terrain as if it were built normally by a Gaia player.