February
19
2021

ORK 2.31.0 is here with 145 new features, changes and fixes!

Head to the download page and grab the latest version or buy a copy in the Unity Asset Store!

This update adds sound channels, performance improvements throughout all features of ORK, async ORK project loading for game starters, custom choice positions, a new top down 2D player control, global horizontal plane setup, advanced value selections for ranges in move AIs and ability/item use ranges, new formula and event nodes, directional target selection, multi-mode for battle menus (i.e. keep previous GUI boxes open when opening sub-menus), 3 new menu screen parts (and other menu screen updates), updates for HUDs and many other new features, changes and fixes.

This version is available for Unity 5.6Unity 2017 and Unity 2018/2019/2020. Please note that ORK’s update policy changed – you can learn more about it here.

If you’re enjoying the updates, tutorials and support I provide, please consider supporting me on patron.com – every little bit helps!

New

  • Performance Improvements
    There have been performance improvements throughout the entire framework. Depending on your usage of ORK’s features you’ll benefit more or less from those improvements.
  • Sound Channels
    Similar to music channels, you can now use separate sound channels with their own volume. Adds sound channel settings across the framework, e.g. for ‘Sound Volume’ options, menu audio settings, etc.
  • Sound Channel Component
    ‘Sound Channel’ component available. Links a selected ‘AudioSource’ component with a sound channel, driving the audio source’s volume using the sound channel’s volume. Use this component to control various audio sources in your game via ORK’s sound channels.
  • Game Starter
    ‘Load Async’ option available when using ‘Use Asset Bundle’ option. Optionally load the asset bundle and ORK project asset using async operations. You can get the loading progress via the ‘AsyncProgress’ float property on the ‘Game Starter’ component, e.g. for custom a loading bar UI.
  • Game Starter
    ‘Load Main Menu Scene’ setting available. Loads the main menu scene (defined in ‘Menus > Main Menu’) after initializing ORK.
  • Choices
    ‘Use Custom Position’ settings available. Optionally define a custom position (and optional size) of individual choices/buttons defined across the framework. E.g. available in battle menu items, individual ‘Button List’ and ‘Menu List’ items, choice dialogues, etc.
  • Text Codes
    New text codes available to display the player group’s size, battle group size, max battle group size, reserve size and max reserve size. In the text editor, they can be found in the ‘Secial’ text codes.
  • Editor Settings
    ‘Set Help Text Color’ and ‘Set Text Area Color’ settings available. Defining a help text or text area color is now optional. If not used, they’ll use the current light/dark skin’s default text color.
  • Game Controls: Player Controls: Top Down 2D
    ‘Top Down 2D’ player control type available. A simple 2D control for top down games, moving the player on X/Y axis using a ‘Rigidbody 2D’ component. Includes settings for horizontal/vertical flipping and sprinting.
  • Game Controls: Click Interaction
    ‘Start Type’ setting available. Defines if click interactions are started upon ‘Down’ or ‘Up’ mouse/touch input. Defaults to ‘Up’ (previous behaviour).
  • Game Controls: Click Interaction
    ‘In Parent’ setting available. Optionally use interactions attached to parent objects of the clicked game object.
  • Game Controls, GUI Boxes: Menu Controls
    ‘Use Choice Scroll’ settings available. Optionally use input keys to scroll up/down to the next choice block (selecting a new choice). The next choice block begins at the first not fully visible choice.
  • Game Controls: Camera Controls: Top Down Border
    ‘Use Transition’ setting available for the panning center key. Optionally use the camera target transition when centering back on the player using the center key.
  • Game Controls: Custom Controls
    ‘On Parent Object’ setting available. Optionally search for the custom control component on parent objects of the used game object.
  • Control Maps: Control Key: Action Settings
    ‘Game Event’ type available. Start a game event when using a control key, uses the combatant as ‘Event Object’ and ‘Starting Object’ actor.
  • Game Settings: Game Over
    ‘Load Main Menu Scene’ setting available when not using ‘Show Choice’ settings. Loading the main menu scene after the wait time is now optional. E.g. disable this option if you want to handle anything further via custom scripts or the event system. By default enabled (loading the main menu scene).
  • Combatant/Menu Scopes
    ‘Group Battle Sorted’ type available. Uses all members of a group, but first listing the battle members, followed by battle reserve and finally the rest of the members. E.g. available in ‘Combatant’ menu screen parts or the ‘Select Combatant’ selected data nodes in events or formulas.
  • Formulas: Field Value
    ‘Field Value’ node available. Uses the value of an int or float field/parameter either from a ‘Static’ class, a combatant’s component or a component stored in selected data.
  • Formulas: Function Value
    ‘Function Value’ node available. Uses the return value of called function either from a ‘Static’ class, a combatant’s component or a component stored in selected data. The function must use 1 parameter to pass on the ‘FormulaCall’ used to calculate the formula, which gives you access to user/target, current value and local variables/selected data, e.g. public void YourFunction(FormulaCall call).
  • Formulas: Distance, Check Distance
    ‘Horizontal Plane’ setting available. Optionally use a different horizontal plane than the default defined in ‘Game > Game Settings’ for distance calculations.
  • Music
    ‘Start Time’ settings available. Define the time or PCM the music should start from. Defaults to 0 (previous behaviour).
  • Shop Layouts: Combatant Change Keys
    ‘Change Battle Sorted’ setting available when not using ‘Only Battle Group’. Optionally change the shop user in battle-sorted order, i.e. first listing the battle group members, followed by the battle reserve and finally the remaining non-battle members. Otherwise, the combatants are used in the order they joined the group.
  • Combatant Requirements: Ability Type
    ‘Ability Type’ status requirement available. Checks if a combatant has or hasn’t an ability (or attack, counter, etc.) of a defined ability type or it’s sub types.
  • Combatant Requirements: AI Type
    ‘Use Sub-Types’ setting available. Optionally check for the sub-types of the defined AI type.
  • Combatant Requirements: Armor Item Type, Weapon Item Type
    ‘Use Sub-Types’ setting available. Optionally check for the sub-types of the defined item type.
  • Combatant Requirements: Combatant Type
    ‘Use Sub-Types’ setting available. Optionally check for the sub-types of the defined combatant type.
  • Abilities
    ‘Game Event Settings’ available in the ability’s ‘Level Settings’ (i.e. per level definition). Optionally use a game event when adding (e.g. learning it, getting it from equipment abilities, etc.) or removing (e.g. forgetting it, unequipping the equipment, etc.) an ability to/from a combatant or group. The combatant (or group leader for group abilities) is available as ‘Starting Object’ actor, the ability as selected data with the key ‘action’. The add game event will also be used when leveling up an ability.
  • Abilities, Items: Target Settings
    ‘Only Group’ setting available when using ‘Ally’ target type. Optionally limit possible targets to members of the user’s group instead of all combatants of allied factions. Please note that adding individual combatants to battles (e.g. instead of using combatant groups) will keep them in their individual single-combatant groups, i.e. they’ll not be able to target allies with this setup.
  • Battle Range Templates, Abilities, Items
    ‘Range’ and ‘Threshold’ of range settings now allow advanced value selections. E.g. use a formula based on the user’s status to influence the use/affect ranges. Not available for grid shapes.
  • Abilities, Status Effects: Absorb Damage
    ‘To Other Status Value’ settings available. Optionally absorb damage to a different status effect, e.g. converting HP damage to MP.
  • Inventory Settings
    ‘Block Unequip’ setting available when using ‘Space Limit’ and ‘Block Adding’ settings. Optionally block unequipping weapons/armor if the inventory doesn’t have enough space for it.
  • Weapons, Armors: Random Status Value Bonuses
    ‘Set In’ setting available. Optionally set the bonus in percent of the current random/added status value bonus of the equipment. Please note that this doesn’t include any bonuses from the ‘Bonus Settings’.
  • Combatants: Status Settings
    ‘Random Status Value Bonuses’ settings available. Optionally add random status value bonuses to status values when initially creating a combatant.
  • Combatants
    ‘Battle Group Size Change’ setting available. Adding a combatant to the player’s battle group can change the maximum battle group size. Positive numbers increase the size, negative numbers decrese the size. You can also use floating point values, e.g. 2 combatants adding 0.5 will increase the size by 1. Only used by player groups.
  • Combatants: Description
    New text codes available in combatant descriptions to show combatant short name, icon and class information.
  • Combatants: Auto Attack
    Auto attacks can now also use counter attacks and an ability from a shortcut slot. The prevoius settings have been adjusted and replaced with a selection popup.
  • Move AI
    ‘Range’ and ‘Threshold’ of range settings now allow advanced value selections. E.g. use a formula based on the user’s status to influence the ranges (like detection range).
  • Move AI: Enemy Detection
    ‘Use Group Detection’ setting available. Optionally use the combatants detected by the user’s group members.
  • Move AI: Enemy Detection: Move Detection
    ‘Additional Range Check’ setting available. Using a separate range check than the base detection range is now optional. Like before, the range can’t exceed the base detection range. By default disabled (not using a different check), old settings will be automatically updated to use an additional check with the previous setup.
  • Research Trees
    ‘Quest’ research item type available. Adds a quest to the player’s quest list.
  • Battle Settings
    ‘Count Type’ setting available when using ‘Enemy Counter’. Either count enemy combatants by matching combatant ID/index of name. Defaults to ID (previous behaviour).
  • Battle Settings, Battle Components: Auto Join Settings
    ‘Join Turn Order’ setting available when using ‘Join Running Battle’. Adds the joining combatant to a running ‘Turn Based’ or ‘Phase’ battle’s turn order, allowing the combatant to perform an action in the current turn. Please note that the current state of the battle and if joining the battle is animated can still lead to the combatant’s first action being in the next turn.
  • Target Settings: Target Selection, Group/Individual Targets
    ‘Directional Selection’ settings available. Optionally use directional keys (up, down, left, right, or horizontal and vertical axes) to select targets based on screen-space directions from the current target. E.g. pressing up would select a target above the current selected target (in screen space).
  • Turn Based Battles
    ‘Use Secondary Check’ settings available. Optionally use a 2nd formula calculation to determine the order when 2 combatants have the same turn value.
  • Phase Battles
    ‘Use Secondary Check’ settings available when using ‘Calculate Order’ in the ‘Combatant Order’ settings. Optionally use a 2nd formula calculation to determine the order when 2 combatants have the same value.
  • Battle End: Loot Dialogue: Simple
    ‘Battle Gains First’ setting available when using ‘Show Battle Gains’. Showing the battle gains before combatant and level up notifications is now optional. By default enabled (previous behaviour).
  • Battle Menus
    ‘Use Multi Mode’ setting available. Optionally keep the previous GUI box open while opening the next sub-menu GUI box. Using multi mode also allows using offset, relative offset and GUI layout to place the individual sub-menu GUI boxes.
  • Battle AI: Check Distance, Get Weighted Group
    ‘Horizontal Plane’ setting available. Optionally use a different horizontal plane than the default defined in ‘Game > Game Settings’ for distance calculations.
  • Battle Grid Settings
    ‘Horizontal Plane’ setting available. Defines the horizontal plane used by grid generation and other grid related features (e.g. grid height difference checks). Use ‘XY’ for 2D top down scenes. By default uses the global default horizontal plane defined in ‘Game > Game Settings’.
  • Battle Grid Settings: Combatant Placement
    ‘Use Whole Group’ setting available when using ‘Select Battle Group’. Uses all members of the player group for placement, otherwise only uses the battle group and battle reserve (if no battle reserve is used, it’ll be the same as using the whole group). By default enabled (previous behaviour).
  • Battle Grid Highlights: Available Targets, Use Range, Affect Range, Selecting Combatant
    ‘For Tooltips’ settings available. Optionally show the cell highlights when the cursor is over an ability/item with a tooltip (e.g. over a shortcut slot in a ‘Combatant’ HUD).
  • Menu Settings: Drag/Drop Settings
    ‘In Parent’ setting available. Optionally use drop interactions attached to parent objects of the used game object.
  • Menu Settings: Drag/Drop Settings
    ‘Drop Give Player’, ‘Drop Give Allies’ and ‘Drop Give Enemies’ settings available. Giving an item to a combatant via drag+drop can now be blocked based on faction states. By default all allowed.
  • Main Menu: Base Settings
    ‘Screen Fade Out’ and ‘Screen Fade In’ settings available for the main menu scene. Optionally fade out/in the screen when loading the main menu scene (e.g. when exiting the game). By default enabled.
  • Main Menu, Menu Screens, Value Input Dialogues
    ‘Use Character Limit’ settings available in ‘String’ type variable input fields. Optionally limit the number of characters that can be used in a text input field.
  • Main Menu: Menu Options
    ‘Block Focus’ setting available. Blocking the focus on the main menu GUI box is now optional. By default enabled.
  • Save Game Menu: File Settings
    ‘Save File Name’ setting available. Defines how a save file’s name is displayed in the file info text (using the ‘%’ text code). Defaults to displaying the save slot number (previous behaviour).
  • GUI Boxes: Choice Settings
    ‘Is Max Columns’ setting available when using more than 1 ‘Choice Columns’. Optionally use the defined number of choice columns as the maximum number of columns, reducing the columns iff fewer choices than defined columns are displayed.
  • GUI Boxes: Choice Settings
    ‘Own Icon Alignment’ settings available. Vertical alignment of the title/content icon can now be separated from the text’s vertical alignment (only used if ‘Align Icons’ is disabled).
  • Menu Screens: Combatant Settings: User Change
    ‘Change Battle Sorted’ setting available when not using ‘Only Battle Group’. Optionally change the menu user in battle-sorted order, i.e. first listing the battle group members, followed by the battle reserve and finally the remaining non-battle members. Otherwise, the combatants are used in the order they joined the group.
  • Menu Screens: Combatant Settings: User Change
    ‘Alive User’ and ‘No Hidden User’ settings available. Optionally only allow alive or non-hidden combatants when changing users.
  • Menu Screens: Manager
    ‘Manager’ menu part available. Allows changing the default action or displayed types of other menu parts, shortcut slot assignments and other things.
  • Menu Screens: Teleport
    ‘Teleport’ menu part available. Displays available teleport locations. The teleports can be separated by their area type.
  • Menu Screens: Menu User
    ‘Menu User’ menu part available. Displays status information of the currently active menu user or the group available for user change (when the menu screen allows it). Has options to limit the displayed combatants as well as placing the current user at a fixed index or e.g. at the center of the list.
  • Menu Screens: Equipment
    ‘Unavailable Button’ settings available in ‘Part Box Settings’. Optionally use a separate content for displaying unavailable equipment parts (when displaying them via ‘Show All Parts’). Otherwise the ‘Empty Button’ will be used.
  • Menu Screens: Information
    ‘Update By Group’ setting available. Optionally update the content when the player’s group changes, e.g. changes to the battle group.
  • Menu Screens: Button List
    ‘Game Event’ type available. Start a game event using the menu’s user as ‘Event Object’ and ‘Starting Object’ actor.
  • Menu Screens: Button List
    ‘Check Timeout’ setting available. Defines the time in seconds between 2 requirement checks for menu items.
  • Menu Screens: Button List, Menu List
    ‘Status Requirements’ and ‘Variable Conditions’ settings available. Optionally check the user’s status or global/object variables to determine if a menu item is available.
  • Menu Screens: Ability, Equipment, Inventory: Sub Menu
    ‘Use Single Slot’ settings available in ‘Assign Shortcut’ type sub menu items. Optionally use a single shortcut slot instead of opening a shortcut menu.
  • Menu Screens: Group
    ‘Show Hidden Members’ setting available for ‘Transfer’, ‘Screen’ and ‘Game Event’ menu items using the whole group. Optionally include hidden members in the displayed combatants. By default disabled.
  • HUDs: Interaction
    ‘HUD Placement’ setting available. Defines how the HUD is placed, either using the bounds of the used ‘GUI Box’, a ‘GUI Layout’ or at the position of the ‘Interaction’ or ‘Player’ game object. This setting replaces the previous ‘Use GUI Layout’ and ‘At Interaction Position’ settings.
  • HUDs: Combatant: Display Conditions
    ‘Is Targeted’ settings available. Optionally only display a ‘Combatant’ type HUD if the combatant is currently targeted, i.e. during the regular target selection (e.g. in the battle menu) or being a group/individual target of the player (separate settings for all 3 target types). E.g. use this to show information about a target or highlight it using an ‘Individual’ combatant HUD.
  • HUDs: Combatant, Turn Order, Latest Turn: Status Value
    ‘Defined’ selection available in ‘List Status Values’ setting. Shows a number of defined status values instead of listing all of a type (e.g. ‘Consumable’) or status type. Use this setup to quickly list status values of your choice instead of having to define individual HUD elements for each status value.
  • HUDs: Combatant, Turn Order, Latest Turn: Equipment
    ‘Use Unavaiable Part’ settings available when not using ‘Only Available’ setting. Optionally use a separate name for an unavailable part instead of using the ‘Empty Part’ name. Like the empty part name, this will be used instead of the (not equipped) equipment on the part via the ‘%n’ text code.
  • HUDs: Combatant, Turn Order, Latest Turn: Click Action
    ‘Game Event’ click type available. Start a game event using the combatant as ‘Event Object’ and ‘Starting Object’ actor.
  • HUDs: Combatant, Turn Order
    ‘None’ multi-box layout selection available. Uses the GUI boxes as they are defined without any layout changes.
  • HUDs: Information
    ‘Update By Group’ setting available. Optionally update the HUD when the player’s group changes, e.g. changes to the battle group.
  • HUDs: Information: Click Action
    ‘Game Event’ click type available. Start a game event using the player as ‘Event Object’ and ‘Starting Object’ actor.
  • Shortcut Settings
    ‘Show Unavailable’ setting available when using ‘Keep Unavailable’. Optionally show unavailable shortcuts (e.g. not yet learned abilities or after using the last of an item) instead of displaying an empty slot for them. Unavailable shortcuts will be displayed using the ‘Inactive Slot’ settings (i.e. like shortcuts that can’t be sued, e.g. due to use costs).
  • Event System: Wait For Input, Wait For Input Fork
    ‘Store Input Time’ settings available. Optionally store the time it took the player to press the input (from start of the node) into a float variable.
  • Event System: Select Shortcut Slot
    ‘Select Shortcut Slot’ node available in ‘Event > Selected Data’ nodes. Uses a combatant’s or group’s shortcut slots (e.g. assigned abilities, items, etc.) as selected data.
  • Event System: Play Sound (Channel)
    ‘Play Sound (Channel)’ node available in ‘Animation + Audio > Audio’ nodes. Plays a sound using a sound channel’s ‘AudioSource’ component.
  • Event System: Stop Sound (Channel)
    ‘Stop Sound (Channel)’ node available in ‘Animation + Audio > Audio’ nodes. Stops a sound currently playing on a sound channel’s ‘AudioSource’ component.
  • Event System: Respawn Combatant
    Respawn Combatant’ node available in ‘Combatant > Combatant’ nodes. Respawns a combatant’s group that was spawned by a ‘Combatant Spawner’ component. The respawn only happens if the spawn conditions are still valid and after the defined respawn time of the component.
  • Event System: Call Menu Screen
    ‘Item Box’ options available when using ‘Inventory Exchange’ menus. Optionally use a defined item box via ‘Box ID’.
  • Event System: Is Shop Data Stored
    ‘Is Shop Data Stored’ node available in ‘Game > Shop’ nodes. Checks if a shop’s data has already been stored (using the shop’s ‘Scene ID’).
  • Event System: Check Max Battle Group
    ‘Include Changes’ setting available. Optionally include the changes coming from the player group’s battle members (see new ‘Battle Group Size Change’ setting for combatants) in the check. If not used, checks the global battle group size limit. By default disabled.
  • Event System: Player Grid Placement
    ‘Cancel Reset’ setting available (when using ‘Allow Cancel’). Resetting the placed combatants to the previous battle group is now optional when cancelling the grid placement, i.e. you can now stop placement and keep the already placed combatants. By default enabled (previous behaviour).
  • Event System: Player Grid Placement
    ‘Needs 1 Placed’ setting available (when not using ‘Cancel Reset’). Placement can only be cancelled after at least 1 combatant has been placed.
  • Event System: Change Menu User
    ‘Change Menu User’ node available in ‘UI > Menu’ nodes. Changes the current user (combatant) of all open menu screens or shops.
  • Event System: Join Battle
    ‘Join Turn Order’ setting available. Adds the joining combatant to a running ‘Turn Based’ or ‘Phase’ battle’s turn order, allowing the combatant to perform an action in the current turn. Please note that the current state of the battle and if joining the battle is animated can still lead to the combatant’s first action being in the next turn.
  • Event System: Grid Cell Event
    ‘Use Event Next Slot’ setting available. Optionally use a separate ‘Next’ slot when a grid cell event was used.
  • Event System: Camera Control Target
    ‘Target Type’ setting available. Replaces the ‘Reset’ setting and allows targeting a defined game object, resetting to the player and (new) resetting the current target (i.e. transition back to it).
  • Event System: Use Ability Calculation
    ‘Use Selected Data’ settings available. Optionally use the calculations of abilities stored in selected data instead of a defined ability. Will use all abilities that are stored in the defined selected data key.
  • Event System: Use Item Calculation
    ‘Use Selected Data’ settings available. Optionally use the calculations of items stored in selected data instead of a defined item. Will use all items that are stored in the defined selected data key.
  • Event System: Use Battle Action
    ‘Selected Data’ action origin available. Use an action (ability, item, defend, escape or none/end turn) stored in selected data.
  • Event System: Spawn Player
    ‘Last Position’ spawn target available. Spawns the player at the last known position. The last position is set when the player’s game object is destroyed. If the player is still spawned it’ll respawn at the current position.
  • Event System: Spawn Combatant
    ‘At Last Position’ setting available. Spawns the combatant at the last known position. The last position is set when the combatant’s game object is destroyed. If the combatant is still spawned it’ll respawn at the current position.
  • Event System, Formulas: Check Equipment
    ‘Any Equipment Part’ setting available. Optionally check all of the combatant’s equipment parts if any of them matches the defined equipment.
  • Event System, Formulas: Check Equipment
  • ‘Level’ setting available. Define the level of the equipment that’ll be checked for. Defaults to level 1.
  • Interaction Components: Drop
    ‘Any Item’, ‘Any Ability’ and ‘Any’ drop type selections available. Start the interaction by dropping any item, any ability or generally anything on it.
  • Battle Events: Use Damage Zone
    ‘Use Damage Zone’ node available. Uses a ‘Damage Zone’ component on a game object (e.g. found via a raycast) and deals damage as if it where hit by a ‘Damage Dealer’ component.
  • Battle Components
    ‘Use Chance Selection’ setting available when not using ‘All Groups/Combatants’. Optionally select the participating combatant/group based on defined chance values instead of randomly selecting one of them. Similar to the ‘Random Battle Area’ component’s chance selection.
  • Battle Components
    ‘Use Faction Groups’ setting available when using ‘All Groups/Combatants’. Combines groups/combatants of the same faction into a single group.
  • Battle Components
    ‘No Battle Sets Scene ID’ setting available. Set the battle’s scene ID if starting the battle failed (e.g. due to no enemy combatants being in battle).
  • Battle Grids: Editor
    ‘Use Blocked Layer Mask’ and ‘Use Empty Layer Mask’ raycast settings available. Optionally do an additional raycast (using a spherecast with a defined % of the cell size) check to determine if a cell is normal, blocked or empty when generating battle grids.
  • Damage Dealers: Always On
    ‘Consume Costs’ setting available when using ‘Always On’ damage dealers. Optionally consume the costs of the ability each time the damage dealer causes damage. The damage dealer will no longer be used when the use costs exceed the available resources.
  • Damage Dealers: Damage Settings
    ‘Damage Zone From Children’ setting available. Optionally allow using ‘Damage Zone’ components on child game objects of the object that caused the trigger/collision instead of only on the game object itself.
  • Damage Dealers: Damage Settings
    ‘Damage Zone From Parent’ setting available. Optionally allow using ‘Damage Zone’ components on parent game objects of the object that caused the trigger/collision instead of only on the game object itself.
  • Damage Zones
    ‘Flying Text At Object’ setting available. Optionally display flying texts (e.g. from status value changes) that are used by hitting the damage zone on the zone’s game object instead of the combatant’s game object (i.e. usually a child of the combatant’s game object).
  • No Player Control
    ‘No Player Control’ component available. Similar to the ‘No Camera Control’ component, this component prevents ORK from automatically adding a player control to the player’s game object.
  • Editor: Formulas
    ‘Selected Data’ settings available when testing the formula. Optionally use an ability or item (also equipment, currency, etc.) as ‘action’ selected key in the formula test.
  • Scripting
    You can now replace the battle loot handler by deriving from the ‘BattleLoot’ class and setting the used handler to an instance of your custom class (‘ORK.Battle.Loot = yourHandlerInstance;’).
  • Scripting: Access Handler
    New access handler functions available. Please note that some old functions have been changed as well.

Changes

  • Game Settings: Horizontal Plane
    The ‘Default Horizontal Plane’ setting is now used as the global default horizontal plane. All other horizontal plane settings now offer a ‘Default’ option in addition to the ‘XZ’ and ‘XY’ options, using the default horizontal plane. All other horizontal plane settings have been changed to ‘Default’.
  • HUDs: Interaction
    ‘HUD Placement’ setting repalces ‘Use GUI Layout’ and ‘At Interaction Position’ settings.
  • Editor: Menu Screens
    Changed the order and grouping of some menu screen settings (not menu parts).
  • Menu Screens
    Menu screens called outside a running game (e.g. in the main menu scene via the event system) are now supported. They can only be called via events or custom code, i.e. calling via their call keys is not supported.
  • Status Values: Experience
    ‘Count To Value’ now fades the value over the level’s max value upon level up, restarting fading at the min value once going over max value.
  • Combatants: Auto Attack
    Using an ability will now use the ability from the combatant’s abilities. If the ability isn’t available, the auto attack will create an instance of it for the attack (i.e. not upgradeable, etc.).
  • Scripting: Save Games
    You can now get the ‘DataObject’ of a saved game via ‘ORK.SaveGame.LoadFile(int index)’.
  • Event System: Use Battle Action
    ‘Action Origin’ setting replaced ‘Use Battle AI’ setting. Previous settings will be updated automatically.
  • Menu Settings: Drag/Drop Settings
    Dropping things on combatants now uses the drag/drop settings (i.e. ‘From Root’, ‘In Children’ and ‘In Parent’) to find a combatant on a game object. Previously it always searched from the game object’s root, which could cause issues with drop interactions (and other things) when a combatant was parented on something.
  • Music
    Changed how music loops are handled to using scheduled playback. This should lead to more precise looping.
  • Event Interactions: Drop
    The dropped ability/item is now available in the started event as selected data via the ‘action’ selected key.
  • Event System
    The ‘Spawn Combatants’ node (spawning combatants participating in battle) has been renamed to ‘Spawn Battle Combatants’ to better differentiate it from the ‘Spawn Combatant’ node (spawning a combatant at a position).
  • HUDs: Turn Order
    Using ‘Classic’ turn based battle mode no longer displays the last combatant that selected actions while the actions are performed.
  • Game Controls: Camera Controls: Top Down Border
    Using ‘XY’ horizontal plane (i.e. 2D mode) now uses negative heights (Z-axis positions) to show the scene from the correct side.
  • Move AIs: Enemy Detection
    The first timeout between detection checks is now randomized (between 0 and the defined detection timeout). This improves performance due to not all combatants (with the same timeout) performing checks at the same time and creates a more random detection across combatants.

Fixes

  • Turn Based Battles
    Fixed an issue where status effects killing the last enemy combatant at the end of the combatant’s turn could prevent the battle from ending when not using ‘Death Immediately’.
  • Components: Add Combatants, Combatant Spawners
    Fixed an issue that printed errors in the Unity console when stopping the game in the editor while having the ORK Framework editor open.
  • GUI Boxes: Choice Icon
    Fixed an issue where choice icon wasn’t affected by inactive colors when using the new UI.
  • Scene Changes
    Changing scenes (e.g. using ‘Scene Changer’ components or new game scene loading) didn’t continue fading in and spawning the player when defining the scene name with the folder the scene was in (e.g. ‘Folder/SceneName’ instead of just ‘SceneName’).
  • Abilities, Items: Status Changes
    Absorbing damage (either from status effects or from the status change itself) increased the target’s status value instead of the user’s.
  • Scene Objects, Combatants
    Fixed an issue where cursor changes from scene object components where not used when attached to a combatant’s game object.
  • Battle Grids: Square
    Fixed an issue where grid movement didn’t prioritize straight paths when allowing diagonal movement, leading to strange paths.
  • Event System: Rotate To
    Fixed an issue where fading to a position was locked to only fade the Y-axis rotation.
  • Menu Settings: Drag/Drop Settings
    The ‘In Children’ setting wasn’t used by drop interactions, using the same setting from ‘Click Interactions’ (in the game controls) instead.
  • Formulas
    Using ‘Use Minimum Value’ and ‘Use Maximum Value’ at the same time lead to only using the minimum value check.
  • Items, Weapons, Armors, Abilities: Variables
    Fixed an issue where in certain situations the variables of the instance didn’t use the ‘Update Variables’ when a variable changed.
  • Inventory Settings: Space Limit
    Fixed an issue where not using ‘Block Adding’ still blocked adding items when reaching the inventory space limit.
  • Equipment
    Fixed an issue where switching one equipment for another could lead to the unequipped weapon/armor disappearing when the inventory limit was reached.
  • Menu Screens: Game Events
    Fixed an issue where using a ‘Close Game Event’ with ‘Wait (Close)’ and not ‘After Fading’ caused the menu screen to wait for the event indefinitely.
  • Crafting Recipes
    Fixed an issue where critical outcome could add the crafted items twice.