ORK 2.27.0 is here: release notes
This massive update adds a lot of new features throughout the framework, so be sure to check out the release notes for all details!
Some of the highlights are:
- new Object
type HUD for adding HUDs to game objects in your scenes (similar to the individual combatant HUDs), e.g. to mark quest objects or display the name of an NPC (from scene object component)
- you can define a short name
in addition to the standard name of things like items, combatants or abilities, there are new text codes to add them to HUDs, dialogues, etc. (e.g. have a status value named Health Points
and short name HP
- you can define custom text codes, which can be also be defined for combatants and scene objects, e.g. defining catch-phrases and using them in dialogues
- new manager components to handle enabling/disabling components and game objects, so there's now finally a way to let quest-related game objects appear in the same scene as the quest state was changed :)
A game changing new feature is using game objects in status value and status effects, as this allows for setting up complex systems that where not possible before.
Status values can automatically use them when they're changed (e.g. use an event when HP takes damage). There are optional conditions that can be used, as well as limiting them to be used when e.g. changes come from abilities or status effects.
Status effects can use them similar to the status conditions, e.g. using an event when the effect is applied or every X seconds while the effect is active.
Also, I've finally found a way to get the duration of an animation when using Mecanim - although you'll have to define the name of the animation clip for that to work.
Additionally, animation wait times in events received an update! You can now wait based on normalized time (i.e. a value between 0 and 1, 0 being no time and 1 being full time). You can e.g. wait for half of the animation (0.5 normalized time) before continuing the event. You can also store the animation's duration into a float variable (again also using normalized time), so you can e.g. wait for 25% of the animation and store the remaining 75% of the time into a variable to wait after doing other stuff (like using a Calculate
node or spawn some prefabs).
Finally, there's a new feature called the Access Handler
. The access handler funnels function calls in ORK through central, overridable classes, e.g. creating a combatant or adding something to an inventory. While it's probably not really relevant for many of you, it allows you to interject some of ORK's functionality with custom functionality.
I'll write a how-to on this topic in the next days :)
Edit: Here's a how-to
including an custom access handler example for you to build upon.Warning
: There have been changes in all parts of the framework, especially value checks (e.g. used in variable conditions or status requirements) could potentially cause issues. While your data should be compatible with the changes, there is no 100% guarantee that it is – proceed with caution
and make a backup of your project!