October
07
2022

ORK 3.8.0 is here with 57 new features, changes and fixes (and 16 more in the also included Makinom 2.9.0)!

This update adds secondary types to most typed settings (e.g. items, equipment, abilities, etc.) to list content in multiple types in menus or shops, a new single slot equipment menu part, an item type item selection to get a random item/equiment/etc. of a defined type and many other new features, changes and fixes.

This version contains Makinom 2.9.0 with 16 additional new features, changes and fixes. Most promimently – copy/paste context menu in the editor to copy settings.

Download the latest version of ORK Framework here.

If you’re enjoying the updates, tutorials and support I provide, please consider leaving a review in the Unity Asset Store and supporting me on patron.com – every little bit helps!

New

  • Item Selections: Item Type: ‘Item Type’ item selection type available (e.g. used in loot tables, item collectors, quest task requirements, etc.). Uses a random item, equipment, currency, crafting recipe, AI behaviour or AI ruleset of a defined item type. Depending on where it’s used, it’ll generate a random item, get a random item of the type from an inventory, check for an item of the type being in an inventory, etc.
  • Status Values: Bonus Display: ‘Bonus Display’ settings available in the ‘Information Overrides’ settings. Optionally override how status value bonuses are displayed in bonus texts (using the ‘<bonus>’ text code, e.g. in an equipment’s description).
  • Status Effects: Bonus Display: ‘Bonus Display’ settings available in the ‘Information Overrides’ settings. Optionally override how status effect bonuses are displayed in bonus texts (using the ‘<bonus>’ text code, e.g. in an equipment’s description).
  • Attack Modifiers, Defence Modifiers: Attributes: Bonus Display: ‘Bonus Display’ settings available in the individual modifier attributes. Optionally override how attribute bonuses are displayed in bonus texts (using the ‘<bonus>’ text code, e.g. in an equipment’s description).
  • Ability Types, Item Types: Use Range: ‘Use Range’ settings available. Ability/item types can optionally override the default use range for all abilities/items using them as their primary type. Abilities/items can override the type’s and default use range.
  • Abilities, Equipment: Levels: Override Content: ‘Override Content’ settings available. Optionally override the name, short name or icon (in addition to the already available description override) of an ability/equipment per level.
  • Abilities, Equipment: Levels: Override Portraits: ‘Override Portraits’ settings available. Optionally override the ability/equipment’s portraits per level. If the portrait type isn’t defined for a level, it’ll fall back to the ability/equipment’s original portraits.
  • Abilities, Items: Status Changes: ‘Move Range’ status change type available. Changes the grid move range of the user or target of the status change.
  • Currencies, Items, Equipment, AI Types, Crafting Types, Ability Types, Classes, Combatant Types, Quest Types: ‘Secondary Item Type’ settings available. Optionally add secondary item types to list items under multiple item types in menus/shops or other type checks. The primary item type (regular ‘Item Type’ setting) is the actual type the items belong to and is also used for the item type text codes.
  • Abilities: ‘Secondary Ability Type’ settings available. Optionally add secondary ability types to list abilities under multiple ability types in menus or other type checks. The primary ability type (regular ‘Ability Type’ setting) is the actual type the ability belongs to and is also used for the ability type text codes.
  • Crafting Recipes: ‘Secondary Crafting Type’ settings available. Optionally add secondary crafting types to list recipes under multiple crafting types in menus or other type checks. The primary crafting type (regular ‘Crafting Type’ setting) is the actual type the recipe belongs to and is also used for the crafting type text codes.
  • AI Behaviours, AI Rulesets: ‘Secondary AI Type’ settings available. Optionally add secondary AI types to list behaviours/rulesets under multiple AI types in menus or other type checks. The primary AI type (regular ‘AI Type’ setting) is the actual type the behaviour/ruleset belongs to and is also used for the AI type text codes.
  • Quests: ‘Secondary Quest Type’ settings available. Optionally add secondary quest types to list quests under multiple quest types in menus or other type checks. The primary quest type (regular ‘Quest Type’ setting) is the actual type the quest belongs to and is also used for the quest type text codes.
  • Quest Tasks: Requirements: Enemy Kills: ‘Allow Secondary Types’ setting available when using combatant types. Optionally also count combatants with the defined combatant type as secondary type.
  • Logs: ‘Secondary Log Type’ settings available. Optionally add secondary log types to list logs under multiple log types in menus or other type checks. The primary log type (regular ‘Log Type’ setting) is the actual type the log belongs to and is also used for the combatant type text codes.
  • Combatants: ‘Secondary Combatant Type’ settings available. Optionally add secondary combatant types to list combatants under multiple combatant types in menus or other type checks. The primary combatant type (regular ‘Combatant Type’ setting) is the actual type the research tree belongs to and is also used for the research type text codes.
  • Research Trees: ‘Secondary Research Type’ settings available. Optionally add secondary research types to list research trees under multiple research types in menus or other type checks. The primary research type (regular ‘Research Type’ setting) is the actual type the research tree belongs to and is also used for the research type text codes.
  • Battle System: Active Time: ‘Action Blocks Choosing’ setting available. Performing actions can optionally block combatants from starting to select actions. This doesn’t prevent already choosing combatants from continuing to do so.
  • AI Rulesets: Rules: Block Ability, Block Item: ‘Use Sub-Types’ setting available. Optionally also block sub-types of the defined ability/item types.
  • Loot: Loot Tables: Level Check Settings: Advanced ‘Level Check Settings’ available, replacing the previous level range. You can now use a regular value check for the base/class level instead of a fixed level range check. Additionally, the level check is now optional. Previous settings will be updated automatically to work as before.
  • Loot: Loot Tables: Chance: ‘Chance’ settings available. Optionally use a chance check to determine if a loot table is used or not.
  • Menu Screens: Equipment (Single Slot): ‘Equipment (Single Slot)’ menu part available. Displays a list of equipment that can be equipped on a single, defined equipment slot. The current equipped equipment can be added and highlighted. E.g. use this menu part to create an equipment quick selection menu for a single slot (e.g. weapon switching).
  • Menu Screens: Status Value Distribution: New text codes available. Use ‘<startvalue>’ to add the original/start value (from opening the menu screen) and ‘<change>’ to add the change (to the start value) in value inputs.
  • Menu Screens: Sub Menus: Unequip: ‘Unequip’ menu action available. Unequips an equipment, AI behaviour or AI ruleset. Only used for things already equipped (e.g. when listing the equipped equipment in an equipment menu part.
  • Menu Screens: Sub Menus: Use: ‘Allow Unequipping’ setting available. Optionally allow using the ‘Use’ action for already equipped equipment, AI behaviours or AI rulesets. Will display the ‘Unequip’ button (when not using ‘Own Button Content’) and unequip the equipped content.
  • Menu Screens, Battle Menus, Shop Layouts: Description: New text code available for ‘General Description’. Use ‘<additionalcontent=KEY>’ to add additional content of the selected input to the description display. ‘KEY’ needs to be replaced with the ‘Content ID’ of the additional content that should be added.
  • Text Display Settings: Bonus Display: ‘Status Value Bonus Display (Combined)’ settings available. Add a combined value+percent bonus display using the ‘<statuscombined>’ text code. Each status value will list it’s value and percent bonus before the next status value is listed. Uses the change texts of the regular ‘Value’ and ‘Percent’ status value bonus displays (or the status value’s overrides).
  • Text Display Settings: Bonus Display: Status Values, Attack Modifiers, Defence Modifiers: New text code available. Use ‘<changeabs>’ to show the value change as an absolute value (i.e. no negative value, e.g. changin -5 to 5).
  • Battle Grid Highlights: Custom Highlights: ‘Custom Highlights’ settings available. Define 5 custom grid highlights that can be used by the ‘Highlight Grid Cell’ node in schematics.
  • Schematics: Highlight Grid Cell: ‘Highlight Grid Cell’ node available in ‘Battle > Grid Highlight’ nodes. Start or stop highlighting grid cells with a defined cell highlight.
  • Schematics: Change Grid Cell Type: ‘Change Grid Cell Type’ node available in ‘Battle > Grid Cell’ nodes. Changes or resets the grid cell type of a cell (or combatant’s cell). If the cell’s prefab is shown, the prefab will be destroyed and the new prefab is spawned.
  • Schematics: Reset Grid Cell Types: ‘Reset Grid Cell Types’ node available in ‘Battle > Grid Cell’ nodes. Resets all grid cell type overides of the current battle’s grid or a grid on a defined game object.
  • Schematics: Select Combatant Battle Spot: ‘Select Combatant Battle Spot’ node available in ‘Value > Selected Data’ nodes. Uses a combatant’s battle spot (game object) to change selected data.
  • Schematics: Store Combatant Count: ‘Use Int Variable’ setting available. Optionally store the count as an int variable instead of a float variable.
  • Inspectors: Move AIs: Having a game object with a move AI selected will now show the detection ranges/angles in the scene.
  • Unity UI: ORK HUD Status Text Content: Ability, Equipment, Class, Combatant Information: New text code available. Use ‘<bonus>’ text code to show the displayed content’s status bonuses (same as using them in the content’s description).
  • Unity UI: HUD List Components: ‘Separator Prefab’ setting available in all HUD list components (e.g. ‘HUD Status Value List’). Optionally use a prefab to create separator elements between two listed HUD elements. The separator will only be spawned between two elements, i.e. not before the first or after the last listed element.
  • HUD Conditions: Status Value Preview Change: ‘Status Value Preview Change’ condition type available. Checks if the HUD user is a status value with a positive/negative preview change or no change (requires a status value).
  • HUD Conditions: Attack Modifier Attribute Preview Change: ‘Attack Modifier Attribute Preview Change’ condition type available. Checks if the HUD user is an attack modifier attribute with a positive/negative preview change or no change (requires an attack modifier attribute).
  • HUD Conditions: Defence Modifier Attribute Preview Change: ‘Defence Modifier Attribute Preview Change’ condition type available. Checks if the HUD user is a defence modifier attribute with a positive/negative preview change or no change (requires a defence modifier attribute).
  • HUD Conditions: Is In Bestiary: ‘Is In Bestiary’ condition type available. Checks if the HUD user is added to the bestiary (requires a combatant).
  • HUD Conditions: Is Bestiary Complete: ‘Is Bestiary Complete’ condition type available. Checks if the HUD user’s bestiary entry is complete (requires a combatant).

Changes

  • Combatants: Object Variables: Using object variables now initializes them with the combatant’s status instead of when first using them (or spawning the combatant).
  • Status Effects: Status Value Changes: A combatant being killed by a status effect now sets the effect’s user (the combatant that added the effect) as the killer of the combatant.
  • HUD Conditions: Status Preview Blink: The ‘Status Preview Blink’ HUD condition no longer requires any HUD user and only checks the overall preview blink state. Previously the condition required a combatant as HUD user.
  • Schematics: Grid Nodes: The ‘Battle > Grid’ nodes’ have been split into ‘Battle > Grid’, ‘Battle > Grid Cell’ and ‘Battle > Grid Highlight’ nodes.

Fixes

  • Battle System: Active Time: Fixed an issue where not using the full timebar for actions could lead to the used timbar being wrong, blocking other actions.
  • Turn Based Battles, Phase Battles: Fixed an issue where the ‘None’ action didn’t end the combatant’s turn.
  • Battle Menus: User Highlights: Fixed an issue where the user highlights wheren’t removed when using an action from a sub battle menu (via ‘Battle Menu’ option to call another battle menu).
  • Menu Screens: Equipment: Sub Menu: Fixed an issue where the ‘Use’ sub menu item would duplicate an already equipped equipment (when it’s listed with the rest of the equipment). The ‘Use’ item can’t be used when called on an already equipped equipment.
  • HUDs: Turn Order: Fixed an issue where the turn order could become mixed up.
  • Schematics: Refresh Menu Screen: Fixed an issue where only certain menu parts where refreshed instead of all parts of a menu screen.
  • Unity UI Components: Added an automatic workaround for Unity UI components going missing when a project’s library is rebuild.
  • Move AIs: Detection: Fixed an issue where ‘Movement’ detection not limiting to only horizontal speed checks was only checking vertical speed.
  • Groups: Regeneration: Fixed an issue where regenerating the group could cause an error (e.g. via the ‘Regenerate’ node in schematics).
  • Cursor Settings: Target Selection Cursor: Fixed an issue where using ‘Over Origin Shortcut’ setting could cause an error.
  • Bestiary: Fixed an issue where status change previews could add attack modifier bestiary information.