A brief overview on where you can find what you’re looking for when accessing ORK Framework’s data.

The ORK class

Everything you need is accessible through the ORK class. It holds references to all data and handlers for an easy and centralized access point.

The data you set up in the ORK Framework editor can be accessed through the various settings – some examples:

  • ORK.StatusEffects
    The Status Effect settings, a single effect can be accessed through ORK.StatusEffects.Get(int index).
  • ORK.Items
    The Item settings, a single item can be accessed through ORK.Items.Get(int index).
  • ORK.Abilities
    The Ability settings, a single ability can be accessed through ORK.Abilities.Get(int index).

As you can see, the data access is straight forward, ORK.X gives access to the settings of X, to access a single instance, you can use ORK.X.Get(int index) – of course, X represents some kind of data, like CombatantsEquipment Parts or Formulas.

The handlers are used to manage some part of a running game –  some examples:

  • Game Handler: ORK.Game
    The Game Handler manages all in-game related data, e.g. the player group, game variables, factions, game time, language, difficulty, etc.
  • Player Group: ORK.Game.ActiveGroup
    The active player group is the group currently controlled by the player.
    The player combatant can be accessed directly through 
    ORK.Game.ActiveGroup.Leader.
  • Variable Handler: ORK.Game.Variables
    The Variable Handler manages all global game variables.
  • Combatant Handler: ORK.Game.Combatants
    The Combatant Handler manages all available combatants of a scene.
    It offers various functions to get a certain group of combatants, e.g. all enemies of the player currently in battle.
  • Save Games: ORK.SaveGame
    The Save Game Handler manages saving and loading the game.

The Combatant class

The Combatant class manages the instance of a combatant in the running game.

The different parts (e.g. abilities) are separated into different classes – some examples:

  • combatant.Setting
    The settings of the combatant (as they’ve been made in the ORK Framework editor).
  • combatant.Inventory
    The Inventory of the combatant or the combatant’s group (depends on whether individual inventories are used).
  • combatant.Group
    The Group the combatant is a member of.
    The group can be used to access other members of the combatant’s group.
  • combatant.Abilities
    Manages the abilities of the combatant.
  • combatant.Actions
    Manages battle actions and the combatant’s battle status.
    E.g.: combatant.Actions.InAction is true while the combatant is performing an action.
  • combatant.Status
    Manages the combatant’s status values, status effects and attack/defence attributes.
    You can get direct access to a status value through combatant.Status[int index], where index is the ID of the status value.
  • combatant.Equipment
    Manages the combatant’s equipment.
    You can get direct access to an equipment part through combatant.Equipment[int index], where index is the ID of the equipment part.

There are a lot of other things to access through the combatant class, e.g. combatant.Dead is true when the combatant is dead.

The IShortcut interface

The IShortcut interface is used for instances of abilities, items, equipment and other things.

Every ability of a combatant is an AbilityShortcut, every item in the inventory is an ItemShortcut and every equipment (equipped or in the inventory) is an EquipmentShortcut.

The interface offers functions to access certain data (e.g. name, description or icon) of the underlying instance and quick access functions, e.g.  to check if it’s useable in a certain situation or to use it on targets.