You must be logged in to post messages.
Please login or register

Scenario Design
Moderated by Yeebaagooon, nottud

Hop to:    
loginhomeregisterhelprules
Bottom
Topic Subject: Patch 2.8 Scenario Guide (Updated for patch 2.8.2)
posted 26 May 2020 04:37 PM EDT (US)   

Patch 2.8 For Scenario Designers


Patch Overview


This patch introduces a wide range of fixes from performance to sync errors. It also brings a few new features and changes that I will highlight below. Please note that due to the patch being a BETA it is possible that things will change. This is especially true with the added functionality – don’t be surprised if a command is changed or removed before the BETA and your map will need to be updated.

General improvements/Bug Fixes


Render Updates


The renderer has been updated – in particular with particle effects. There are 4 main changes I have observed:
  • The effects no longer appear washed out. You will notice there is more “colour” in the effects.
  • The effects look more detailed and less “compressed”.
  • Rendering of effects at the map edge has been fixed. Effects will now appear properly at the map edge.
  • Shiny objects such as battle boars now correctly render.

    Multiplayer animation/rendering updates


    Animations should now run a lot smoother in multiplayer due to changes and improvements in the rendering timings and animations. If you notice performance issues after updating I advise you toggle your vsync settings and try again. The internal game behaviour internally regarding this has changed and you may find one is a lot smoother than the other.

    Restored missing graphics


    A few remaining missing graphics such as birds flying around Gaia have been restored.

    Camera improvements


    The zFar distance for rendering has been increased. This means you can view objects further away. It also has the side effect of fixing Sky Boxes for a 4k display. In addition the terrain caching has been drastically increased - this means you can zoom much further out without getting the dreaded lag spike!

    Scaling fixes


    Units now scale correctly regarding attach points. No more head decapitation! In addition objects now appear correctly in fog of way and don't jump back to their original scale.

    Scenario Lobby Settings fix


    Changing a scenario as a game type allows lobby settings to be changed properly that were incorrectly disabled. This includes things like handicap, difficulty, titans, and day and night cycle.

    Transform trigger crash fixes


    Crashable units from the transform/mutate trigger no longer crash! They now work properly.

    New Commands


    Several new commands have been added to the game. From these I have produced a trigger pack adding some exciting new functionality for you to use! (http://aom.heavengames.com/downloads/showfile.php?fileid=11491) Below I describe some of the exciting new functionality this brings.

    Changing Player’s Major God


    You can now change the god a player has picked during a game. The main use for this is to override the chosen god at the game start to ensure that players pick a certain god for a map or change which god Mother Nature is. This may be to ensure players can use the Kronos time shift ability or allow players to build monuments with their priests. Additionally can be used to improve the aesthetics of a city by ensuring AI players are the right god. And I am sure there are plenty of interesting uses from allowing changing god part way through a game… The trigger also allows you to randomise between all gods, or gods within a culture, or even become the god Nature which is usually impossible. Another bizarre thing you can do is mix civs and cultures around so you can worship Kronos but be the civ Egyptian!

    Better God Power Manipulation


    There is now more control available regarding the managing of god powers. You can count how many god powers of a type you have, when a god power is last cast, or how long a power has left to recharge. More excitingly you can now mess with the recharge time of god powers. You can grant god powers without a recharge time, change the recharge time of an existing god powers, or even add recharge time for a god power that didn’t previously have it (Although the UI doesn’t handle this very well visually).

    Ingame terrain and elevation manipulation


    Terrain and elevation manipulation is now properly supported without the used of my hacky z triggers and fully works online. It is now possible to freely paint terrain and set the elevation during a game. Additionally, you can choose if the game should update the obstruction data or not – e.g. if newly painted cliff should block units from travelling. I have supported using both a rectangular or a circular brush. In addition I have also included support for terrain replacement – that is swapping one terrain type for another. There are lots of exciting use cases for this: You can have a map that randomises the theme, make secret areas using passable cliff, have lava terrain chasing you, have a god power create cliff to trap units, have an even changing maze, or have players create a map layout ingame!
    Additionally there is now also support for terrain and elevation detection at a location. This allows you to apply for terrain based effects – e.g. make buildings on sand take damage slowly or burn up units that enter lava.

    Individual Unit Mutation


    You can now use the transform trigger for a single unit. This prevents bugs and interference e.g. attach trigger messed with existing relics on the map. Couple this with say y search and it is now possible to do previously impossible things such as having a different projectile unit for each player.

    Cloud manipulation


    As well as a better command for changing the sun inclination and rotation you can now freely control the cloud effect seen ingame. You can set the size, speed and intensity but you can also change the cloudd to another texture!

    Advanced Unit Manipulation


    You can now set the scale, stretch, and full orientation ingame. This also means there is now an online working trigger to set orientation. This also means that random map scripters can now create units of different scales and can rotate units properly hurray!

    Other functionality


    Don’t forget you are not restricted by what I have provided in this trigger pack specifically, you can use the newly added commands to build your own additional triggers. I have already done this with adding support for circular brush, terrain replace, and changing the elevation using relative heights. Below is a full list of added commands:
  • void trPaintTerrain(int x0, int y0, int x1, int y1, int type, int subType, bool updateObstruction)
  • int trGetTerrainType(int x, int y)
  • int trGetTerrainSubType(int x, int y)
  • void trChangeTerrainHeight(int x0, int y0, int x1, int y1, float height, bool updateObstruction)
  • float trGetTerrainHeight(int x, int y)
  • void trSetCivAndCulture(int player, int civ, int culture)
  • string trGetUnitScenarioName(int id)
  • int trGetUnitScenarioNameNumber(int id)
  • int trGetNextUnitScenarioNameNumber()
  • void trCoverTerrainWithWater(int height, int depth, string water)
  • float trGetWaterHeight(int x, int y)
  • void trSetGPData(int playerID, int type, int slot, int data)
  • int trGetGPData(int playerID, int type, int slot)
  • void trMutateSelected(int newunittype)
  • float xsSqrt(float value)
  • float xsSin(float value)
  • float xsCos(float value)
  • float xsAtan(float value)
  • float xsAtan2(float y, float x)
  • float xsPow(float base, int power)
  • float xsFloor(float value)
  • float xsCeil(float value)
  • float xsRound(float value)
  • float xsClamp(float value, float min, float max)
  • float xsMin(float first, float second)
  • float xsMax(float first, float second)
  • float xsAbs(float value)
  • int xsStringLength(string value)
  • string xsSubString(string value, int length, int pos)
  • int xsFindString(string value, string findValue, int position)
  • void trSetSunPosition(float inclination, float rotation, bool relative),
  • void trSetCloudData(float intensity, float scaleX, float scaleZ, float speed, float directionX, float directionZ)
  • void trSetCloudMap(string texture)
  • void trSetSelectedScale(float scaleX, float scaleY, float scaleZ)
  • void trSetSelectedHeight(float height)
  • void trSetSelectedUpVector(float stretchX, float stretchY, float stretchZ)
  • void trSetSelectedUnitOrientation(vector mX, vector mY, bool immediate)
  • int xsStringToInt(string value)

    A note about a couple of commands:

  • trGetUnitScenarioNameNumber – This returns the unit name of a unit given the unit id. This is the reverse of kbGetBlockID which has been requested by scenario designers for a long time.
  • trGetNextUnitScenarioNameNumber – This returns the unit name of the next object to be created by the game. This can be used to get hold of the unit name of a unit that is about to appear such as with army deploy.

    Fixes to triggers not working in multiplayer


    A few of the existing triggers that did not work at all in multiplayer have been changed to function.

    Set animation


    Bring on new exciting effects using the animations that were produced for the cinematic in your scenarios for the first time ever! This trigger is now fully working for multiplayer scenarios.

    Unit Teleport


    Units will now teleport rather than doing nothing. No more using immediate garrison workarounds to teleport units yippee!

    Unit Heading (Kind of)


    The Unit Heading trigger has been enabled for multiplayer but from testing does not have the intended effect. Instead of turning a unit it will make it invisible! Obviously not what was intended but I am sure there will be some interesting scenario use cases. Note now I have added a trigger to set the unit heading via an alternative command that DOES work in a multiplayer game.

    DLC Prompt Checking Changes


    For multiplayer games players who do not own the DLC they will no longer be prompted to purchase the DLC. This prevents issues where casting Traitor on a Chinese unit would cause a prompt. More importantly this means that people who own the DLC do not need to worry about making maps containing DLC units when playing multiplayer games!

    Random Map transfer Fix


    Random maps received from another player will now appear in your list allowing you to host them. Hurrah! This should hopefully allow exciting Random Maps to propagate easier online.

    Workshop Scenario transfer Fix


    Scenarios can now be hosted from the mods folder or a sub folder

    Potential Breaking Changes


    There are not many that I know of but one thing to note that the Hero Polyphemus unit has been changed how its special attack operates as it now only knocks myth units and does it essentially instant kill style. This means it will no longer knock soldiers of hero Atlantean villagers. If you have a map relying on this behaviour (I have a couple) they will break. You will need to replace them with equivalent functionality.

    Summary


    As you can see there are lots of exciting changes, additions, and fixes. Remember that all changes and added functionality will only work on the 2.8 patch BETA and beyond. Also be away that because the patch is a BETA commands may potentially change. Please let me know if you run into and issues and I will try and fix. Also feel free to ask me any question about the new functionality and triggers and I will do my best to answer.

    Credits


    I would like to thank the developers of the FE Team in particular: WarriorMario, MasterOfFreedom, and p2t5r for providing these fixes and additional functionality.

    [This message has been edited by nottud (edited 06-08-2020 @ 06:34 PM).]

  • Replies:
    posted 26 May 2020 05:44 PM EDT (US)     1 / 21  
    Wow just seen the patch and all the scripts and thought nottud will be all over this, but you've already done a trigger pack . Did you have some sort of hand in doing the scripts?

    Exciting stuff.
    You can now use the transform trigger for a single unit.

    ______________________________________ Yeebaagooon ______________________________________
    ____________________ AoMH Seraph ____________________
    "You can't trust yeebaagooon to lead a rebelion, He would send everyone to steal mirrors so he could bask in his own brilliance." - Out Reach
    "Yeebaagooon had never seen a more handsome man in all his life. He couldn't control himself, He needed to act. Gripping the mirror in his strong arms he kissed the figure before him..." - Out Reach
    AoMH: Unfinished Scenarios|Singleplayer: Codename Ripto|Multiplayer: Minigames Z|CSC 7
    Ex Seraphs Dictator, Spore Heaven Seraph
    posted 26 May 2020 06:24 PM EDT (US)     2 / 21  
    I’m surprised and pleased by this. Some of these changes have been requested for so long.
    posted 26 May 2020 06:54 PM EDT (US)     3 / 21  
    I can't say much other than that I may have had something to do with some of the additions. Current triggers in the pack:

    CONDITIONS
    Terrain Type at Loc
    Terrain Type at Loc Manual
    Terrain Sub Type at Loc
    Terrain Sub Type at Loc Manual
    Terrain Type Name at Loc
    Terrain Type Name at Loc Manual
    Terrain Height at Loc
    Terrain Height at Loc Manual
    Water Height at Loc
    Water Height at Loc Manual
    God Power Data Matches
    God Power Immediate Count at Position
    God Power Recharge Count at Position
    God Power Count at Position
    God Power Cast at Position
    God Power Cast Time at Position
    God Power Recharge Time at Position
    God Power Name Immediate Count
    God Power Name Recharge Count
    God Power Name Count
    God Power Name Cast
    God Power Name Cast Time
    God Power Name Recharge Time

    EFFECTS
    Paint Terrain in Area
    Paint Terrain in Area Manual
    Paint Terrain Name in Area
    Paint Terrain Name in Area Manual
    Paint Terrain Name in Circle Area
    Paint Terrain Name in Circle Area Manual
    Replace Terrain Name in Area
    Replace Terrain Name in Area Manual
    Replace Terrain Name in Circle Area
    Replace Terrain Name in Circle Area Manual
    Set Terrain Elevation in Area
    Set Terrain Elevation in Area Manual
    Set Terrain Elevation in Circle Area
    Set Terrain Elevation in Circle Area Manual
    Update Terrain Passability
    Cover Map with Water
    Player Set Civ and Culture
    Player Set Civ and Culture By Name
    Player Set Major God
    Mutate Unit Type
    Set God Power Data at Position
    Set God Power Immediate Count at Position
    Set God Power Recharge Count at Position
    Set God Power Recharge Time at Position
    Set God Power Name Immediate Count
    Set God Power Name Recharge Count
    Set God Power Name Recharge Time
    Grant God Power No Recharge
    Grant God Power No Recharge at Position

    The transform single unit is the "Mutate Unit Type" trigger. Not yet done but you can trivially make a y search version and do things like have a different projectile for each player and other madness.

    [This message has been edited by nottud (edited 05-26-2020 @ 07:03 PM).]

    posted 26 May 2020 07:10 PM EDT (US)     4 / 21  
    TELEPORT IN MULTIPLAYER TELEPORT IN MULTIPLAYER TELEPORT IN MULTIPLAYER TELEPORT IN-

    [This message has been edited by Zenophobia (edited 02-29-2094 @ 10:60 AM).]
    posted 26 May 2020 08:24 PM EDT (US)     5 / 21  
    This is really awesome and exciting stuff.

    ||||||||||||||||My Videos||||||||||||||||
    Roxas, his heart was human, yet because of his status as a being his fate was sealed since he was born. How many times must humanity judge others like that as well without giving them a fair chance?

    "It would be very irresponsible of me to give you my thoughts as you are clearly incapable of handling the ones you already have" ~some guy in OD
    posted 27 May 2020 03:06 AM EDT (US)     6 / 21  
    Does this mean we can now create shallow water like in AoE I and II? Have it land and then change the tile the boat is on as it passes through. Path finding might get a bit weird.
    posted 27 May 2020 04:09 AM EDT (US)     7 / 21  
    In theory yes but I agree pathing will probably get really confused.
    posted 27 May 2020 04:11 PM EDT (US)     8 / 21  
    I really hope that some day they will restore the animal bored animations as well.

    I discovered that this code is breaking the bored animations:

    <initialresource resourcetype="Food">200.0000</initialresource>

    The issue cant be fixed with modding, and I am really curious if they can actually patch this issue. Because the initialresource is needed for the hunting to work. It's possible that the animations were disabled by devs.

    I can fix the Set animals, because they don't really need the food, but I can't really do anything about the real animals which is sad.

    It probably won't happen but I really wish that they would let us change some of the hard-coded stuff via text files. Cultures, Major Gods, Pop Cap, usable column 4 for the villagers and buildings etc.
    I am so happy with the release of the new triggers, but they are not as versatile in random maps, and after playing AOM for almost 20 years I really want to do more to spice things up.

    [This message has been edited by WinterGod (edited 05-27-2020 @ 07:17 PM).]

    posted 27 May 2020 06:49 PM EDT (US)     9 / 21  
    Shallows are finally possible? Sick.

    Now fix the Bridge

    𝓎𝑒𝓈, 𝒾 𝓁𝒾𝓀𝑒 𝓅𝑒𝓅𝑒
    posted 28 May 2020 03:38 AM EDT (US)     10 / 21  
    The bridge works just fine with a few little vector tricks, look out for it in my competition entry .

    ______________________________________ Yeebaagooon ______________________________________
    ____________________ AoMH Seraph ____________________
    "You can't trust yeebaagooon to lead a rebelion, He would send everyone to steal mirrors so he could bask in his own brilliance." - Out Reach
    "Yeebaagooon had never seen a more handsome man in all his life. He couldn't control himself, He needed to act. Gripping the mirror in his strong arms he kissed the figure before him..." - Out Reach
    AoMH: Unfinished Scenarios|Singleplayer: Codename Ripto|Multiplayer: Minigames Z|CSC 7
    Ex Seraphs Dictator, Spore Heaven Seraph
    posted 08 June 2020 05:02 AM EDT (US)     11 / 21  
    Hey guys - with patch 2.8.2 I got some new exciting additions. In addition I have updated the main post with known improvements. Here is the new trigger list:

    CONDITIONS
    Terrain Type at Loc
    Terrain Type at Loc Manual
    Terrain Sub Type at Loc
    Terrain Sub Type at Loc Manual
    Terrain Type Name at Loc
    Terrain Type Name at Loc Manual
    Terrain Height at Loc
    Terrain Height at Loc Manual
    Water Height at Loc
    Water Height at Loc Manual
    God Power Data Matches
    God Power Immediate Count at Position
    God Power Recharge Count at Position
    God Power Count at Position
    God Power Cast at Position
    God Power Cast Time at Position
    God Power Recharge Time at Position
    God Power Name Immediate Count
    God Power Name Recharge Count
    God Power Name Count
    God Power Name Cast
    God Power Name Cast Time
    God Power Name Recharge Time

    EFFECTS
    Paint Terrain in Area
    Paint Terrain in Area Manual
    Paint Terrain Name in Area
    Paint Terrain Name in Area Manual
    Paint Terrain Name in Circle Area
    Paint Terrain Name in Circle Area Manual
    Replace Terrain Name in Area
    Replace Terrain Name in Area Manual
    Replace Terrain Name in Circle Area
    Replace Terrain Name in Circle Area Manual
    Set Terrain Elevation in Area
    Set Terrain Elevation in Area Manual
    Set Terrain Elevation in Circle Area
    Set Terrain Elevation in Circle Area Manual
    Update Terrain Passability
    Cover Map with Water
    Player Set Civ and Culture
    Player Set Civ and Culture By Name
    Player Set Major God
    Unit Mutate Type
    Army Mutate Type
    Set God Power Data at Position
    Set God Power Immediate Count at Position
    Set God Power Recharge Count at Position
    Set God Power Recharge Time at Position
    Set God Power Name Immediate Count
    Set God Power Name Recharge Count
    Set God Power Name Recharge Time
    Grant God Power No Recharge
    Grant God Power No Recharge at Position
    Set Sun Inclination and Rotation
    Set Cloud Data
    Set Cloud Map
    Unit Set Scale
    Army Set Scale
    Unit Set Flying Height Offset
    Army Set Flying Height Offset
    Unit Set Stretch
    Army Set Stretch
    Unit Set Orientation
    Army Set Orientation
    Unit Set Heading Radians
    Army Set Heading Radians
    Unit Set Heading Degrees
    Army Set Heading Degrees
    Unit Set Heading and Tilt Radians
    Army Set Heading and Tilt Radians
    Unit Set Heading and Tilt Degrees
    Army Set Heading and Tilt Degrees
    Camera Set Position Radians
    Camera Set Position Degrees
    Camera Set Position From To
    Camera Set Position Look At Radians
    Camera Set Position Look At Degrees

    The y trigger pack has now been updated: http://aom.heavengames.com/downloads/showfile.php?fileid=11495

    [This message has been edited by nottud (edited 06-08-2020 @ 07:56 AM).]

    posted 08 June 2020 12:06 PM EDT (US)     12 / 21  
    WAT

    WE CAN STRETCH THINGS IN-GAME?

    Edit: Time for a youtube tutorial?

    [This message has been edited by Zenophobia (edited 02-29-2094 @ 10:60 AM).]

    [This message has been edited by Zenophobia (edited 06-08-2020 @ 12:06 PM).]

    posted 08 June 2020 01:33 PM EDT (US)     13 / 21  
    Indeed you can enjoy! (Oh and turn objects inside out) I do intent to make a video outlining some of the new features when I get the chance but might be a few days as currently pretty occupied.

    EDIT: I have released hotfix to triggers as an internal command got renamed.

    [This message has been edited by nottud (edited 06-08-2020 @ 03:30 PM).]

    posted 08 June 2020 04:02 PM EDT (US)     14 / 21  
    Player Set Civ and Culture

    Does this mean you can override mid game? So you start as geek but end as Egyptian? Or is it more a case of you start as Zeus but can end with Poseidon?

    ||||||||||||||||My Videos||||||||||||||||
    Roxas, his heart was human, yet because of his status as a being his fate was sealed since he was born. How many times must humanity judge others like that as well without giving them a fair chance?

    "It would be very irresponsible of me to give you my thoughts as you are clearly incapable of handling the ones you already have" ~some guy in OD
    posted 08 June 2020 05:50 PM EDT (US)     15 / 21  
    Both cases - you can change the player's civilisation and culture mid game. They don't even need to be compatible with each other. E.g. You can have Egyptian worship Kronos to gain timeshift power.

    EDIT: I will be updating the trigger packs in a moment to add the override animation effects using an internal command that crept in with a hotfix to the public branch. This allows you to override a units main animation type and variation midgame freely. It doesn't support animation paths directly sadly though.

    EDIT2: Meant to add that units that crash from the transform trigger are now fixed!

    [This message has been edited by nottud (edited 06-08-2020 @ 06:35 PM).]

    posted 08 June 2020 06:40 PM EDT (US)     16 / 21  
    Great thanks nottud

    ||||||||||||||||My Videos||||||||||||||||
    Roxas, his heart was human, yet because of his status as a being his fate was sealed since he was born. How many times must humanity judge others like that as well without giving them a fair chance?

    "It would be very irresponsible of me to give you my thoughts as you are clearly incapable of handling the ones you already have" ~some guy in OD
    posted 11 June 2020 05:18 AM EDT (US)     17 / 21  
    New feature added - you can now set an arbitrary animation on a unit! This means you do do things like have buildings of mixed cultures, ages and technologies. The new trigger is Unit/Army Override Animation Path.

    It take a comma separated list of indexes which is based off the selectors in the animation file. In the trigger itself I show an example for setting an age 1 Egyptian house by setting the values to all 0.

    In order to make things easier I have created an "Animation Viewer" scenario to help out: http://aom.heavengames.com/downloads/showfile.php?fileid=11496

    EDIT: I have created a video about the new triggers: https://www.youtube.com/watch?v=okBzy4Ema30

    [This message has been edited by nottud (edited 06-11-2020 @ 02:24 PM).]

    posted 11 June 2020 03:22 PM EDT (US)     18 / 21  
    Honestly....

    these videos are amazing and so useful! It's really nice to be able to see what can be done, without having to sometimes understand how it's been written.

    ||||||||||||||||My Videos||||||||||||||||
    Roxas, his heart was human, yet because of his status as a being his fate was sealed since he was born. How many times must humanity judge others like that as well without giving them a fair chance?

    "It would be very irresponsible of me to give you my thoughts as you are clearly incapable of handling the ones you already have" ~some guy in OD
    posted 11 June 2020 05:17 PM EDT (US)     19 / 21  
    Glad you found them useful - I am covering topics in two forms. Either something I want to make known to people as I feel there is underuse or in response to common questions or things that I notice people want to do.

    If you got a particular topic you would like covered let me know.
    posted 11 June 2020 05:26 PM EDT (US)     20 / 21  
    Having only just come back to AOM after years, I'm really behind as to all the changes and dsicovering that have happened. I am slowly trawlinmg the forums and reading around, but seeing stuff is great so literally anything .

    Maybe one day a video tutorial series?

    I did have a question about change terrain trigger. How does it work with Gaia Lush? Are the properties kept, does it then override the base terrain undernearth too?

    ||||||||||||||||My Videos||||||||||||||||
    Roxas, his heart was human, yet because of his status as a being his fate was sealed since he was born. How many times must humanity judge others like that as well without giving them a fair chance?

    "It would be very irresponsible of me to give you my thoughts as you are clearly incapable of handling the ones you already have" ~some guy in OD

    [This message has been edited by Roxas (edited 06-12-2020 @ 08:34 AM).]

    posted 04 July 2020 06:03 PM EDT (US)     21 / 21  
    Sorry I meant to answer this ages ago - I admit I have no idea what the interaction is with the Gaia lush. I suspect it will only interact with the underlying terrain but certainly worth messing around with.
    Age of Mythology Heaven » Forums » Scenario Design » Patch 2.8 Scenario Guide (Updated for patch 2.8.2)
    Top
    You must be logged in to post messages.
    Please login or register
    Hop to:    
    Age of Mythology Heaven | HeavenGames