A quick overview over the components that are available in ORK Framework.
Since ORK Framework is an editor extension for Unity, this documentation assumes that you’ll know the basics of Unity, e.g. about components. If you’re looking for tutorials and learning materials on Unity, head over to their website.
Generally, you can find ORK Framework’s components under ORK Framework in the component menu.
Makinom also adds a wide range of components – see Makinom’s component overview for details.
Battle #
Battle related components are found in: ORK Framework > Battle
Battle #
Set up battles in your scene. You can optionally override the default battle system, use game objects in the scene as battle spots or use different battle start/end schematics.
You can also set up Battle components to be used by others (e.g. Combatant Spawners or Random Battle Areas) to define places for battles to take place. For this, don’t set up any start types in the battle component.
Learn more about Battle components in this documentation.
Battle Grid #
Sets up a battle grid that can be used by battles.
Cursor Prefab Components #
Combatants and target selections can be highlighted using cursor prefabs – i.e. a prefab that’s placed on a highlighted combatant or at the position of a raycast (for raycast targeting).
These prefabs can use components (implementing different cursor prefab interfaces) to use the highlighted combatant or information about the selected action for different things, e.g. scaling the cursor prefab based on the combatant’s radius or the use range of an action.
See this documentation for more details and examples.
Damage Dealer #
Can cause damage when hitting/entering a Damage Zone. Needs a collider (either as collider or trigger, depending on the damage dealer’s setup) to be able to damage something.
Damage dealers have to have an action set and be activated (e.g. via schematics animating an action) and enough time before getting deactivated to actually hit something.
Damage Zone #
Can receive damage when hit/entered by a Damage Dealer.
A damage dealer needs to be attached to a combatant in order to deal damage to it. The combatant has to either be on the damage dealer’s game object or on one of it’s parent game objects.
Random Battle Area #
Start random battles while the player moves within the area of this component.
The area is defined using a collider (with Is Trigger enabled).
Learn more about Random Battle Area components in this documentation.
Real Time Battle Area #
Fight real time battles while being in the scene or optional limited area (via collider with Is Trigger enabled).
Regular Battle components create arena battles with battle spots, battle start/end events and defined combatants. A real time battle area doesn’t use battle spots or battle start/end events – all combatants (set up for real time battle) within the area or scene will participate in the battle.
Learn more about Real Time Area components in this documentation.
Camera Control #
Camera control components are found in: ORK Framework > Camera Control
Usually, ORK will automatically add the control components with your setup (defined in Base/Control > Game Controls) to the camera. You can also manually add controls and use other camera related components.
Learn more about camera controls in this documentation.
Camera Border #
Camera borders are used by the Top Down Border camera control and can be used to create areas within which the camera will follow the player.
These areas are defined by colliders (used with Is Trigger enabled).
First Person Camera #
Uses the First Person camera control.
The camera is linked to the player (or a child object). It can be moved horizontally/vertically (e.g. by mouse).
No Camera Control #
Blocks ORK from automatically adding a camera control. Only used when attached to the scene’s main camera.
Smooth Follow Camera #
Uses the Follow camera control.
The camera will follow behind the player.
Smooth Look At Camera #
Uses the Look camera control.
The camera will look at the player.
Top Down Border Camera #
Uses the Top Down Border camera control.
The camera follows the player until the he crosses a border. The border can optionally be defined using a Camera Border component in the scene.
Mouse Camera #
Uses the Mouse camera control.
The camera will follow the player. Height and rotation can be changed by mouse/touch control.
Combatant #
Combatant components are found in: ORK Framework > Combatant
Combatant Animation Events #
Add this component to the prefab of a combatant to be able to use it’s functions in animation events.
Has the following functions available:
- CalculateCurrentAction()
Calculates the combatant’s current action outcome.
Same as using a Calculate Action node. - CalculateCurrentAction(float damageFactor)
Calculates the combatant’s current action outcome with the provided damage factor.
Same as using a Calculate Action node. - ActivateDamageDealers()
Activates all Damage Dealer components on the combatant.
The damage dealers need to have an action set before activation (e.g. via Set Damage Dealer Action node used in a schematic animating an ability or item). - DeactivateDamageDealers()
Deactivates all Damage Dealer components on the combatant. - CurrentActionActivateDamageDealers()
Activates all Damage Dealer components of the combatant’s current action (have to be set up for auto activation). - CurrentActionDeactivateDamageDealers()
Deactivates all Damage Dealer components of the combatant’s current action (have to be set up for auto activation).
Add Combatant #
Adds a combatant to the game object. The game object will be used as the combatant’s game object.
Block Combatant Spawn #
Blocks Combatant Spawners from spawning combatants within the game object’s area. The area is defined by a collider with Is Trigger enabled.
Can also be used if the component’s game object or it’s child objects where hit by the raycast finding the spawn position. E.g. add the component at the root of your level’s blocking architecture to prevent combatants from spawing there (game objects still need colliders on them to be able to hit them with the raycast).
Combatant Despawner #
Despawns non-player combatants in the scene, either when being out of range of the player or after time (or both).
Combatant Spawner #
Spawns combatants in the scene. The combatants can be spawned at the game object’s position, a number of defined game objects or at random positions within a defined area (via a collider with Is Trigger enabled).
Learn more about Combatant Spawner components in this documentation.
Combatant Trigger #
Keep track of combatants while they’re within the game object’s collider (with Is Trigger enabled). Add tags to combatant triggers to define different triggers on a combatant.
Combatant triggers can e.g. be used by the battle AI or move AI to determine targets. Must be added to a combatant’s game object or it’s child objects.
Learn more about combatant triggers in this documentation.
Equipment Viewer #
Used to display equipment on a combatant’s game object.
The equipment viewer will keep track of the equipment of it’s defined equipment slot and spawn it’s viewer prefab (or use the viewer material).
Interaction #
Interaction components are found in: ORK Framework > Interaction
Item Collector #
Used to collect items or interact with item boxes.
The UI of item collectors/boxes is set up in Inventory > Inventory Settings.
Shop Interaction #
Opens a shop when interacting with the game object.
Shops are set up in Inventory > Shops.
Move AI #
Move AI components are found in: ORK Framework > Move AI
Move AI Area #
Used to define areas in which the move AI can or can’t be used in the field and/or in battle.
The area is defined by a collider (with Is Trigger enabled).
No Random Patrol #
Used to define areas where the move AI can’t perform random patrols. Use it to keep combatants from strolling into areas they shouldn’t go. The area is defined by a collider (with Is Trigger enabled).
Can also be used if the component’s game object or it’s child objects where hit by the raycast finding the random patrol position. E.g. add the component at the root of your level’s blocking architecture to prevent combatants from patroling there (game objects still need colliders on them to be able to hit them with the raycast).
Point Of Interest #
Points of interest can be detected by combatants moving via move AI while being in Idle mode (e.g. randomly patrolling).
When a combatant detects a POI, it’ll move to it and can optionally start a defined schematic.
Player Control #
Player control components are found in: ORK Framework > Player Control
Usually, ORK will automatically add the control components with your setup (defined in Base/Control > Game Controls) to the player. You can also manually add controls and use other control related components.
Learn more about player controls in this documentation.
Button Controller #
Uses the Button player control.
Keyboard/joystick controls are used to move the player, using a Character Controller component.
Mouse Controller #
Uses the Mouse player control.
Mouse/touch controls are used to move the player.
No Click Move #
Blocks an area from being the target of the Mouse player control. The area is defined using colliders (must be on a layer that’s included in the control’s raycast settings).
Can also be used if the component’s game object or it’s child objects where hit by the raycast finding the position. E.g. add the component at the root of your level’s blocking architecture to prevent player from moving there (game objects still need colliders on them to be able to hit them with the raycast).
No Player Control #
Blocks ORK from automatically adding a player control. Only used when attached to the player’s game object.
Top Down 2D Controller #
Uses the Top Down 2D player control.
Simple top down controls for 2D, moving on X/Y axis using a Rigidbody 2D component.
UI #
UI components are found in: ORK Framework > UI
Most of the UI components are related to the Unity UI module, check out the Unity UI documentation for details. I’ll only list non-Unity UI components.
Object HUD #
Adds an Object type HUD to a game object.
The game object will be used as the user of the HUD, e.g. displaying a HUD at the game object’s position on screen.
Zone #
Zone components are found in: ORK Framework > Zone
Area #
Adds an area to the scene.
The game’s area information will change to the defined area when the player interacts according to the component’s Start Settings (e.g. enters the trigger).
Level Zone #
Adds a level zone to the scene or a limited area (using a collider with Is Trigger enabled).
Level zones can be used by battles, combatant spawners and other combatant creations (e.g. via schematics) to control the levels of newly created combatants. This is a convenient way to control levels within a scene without having to change level settings of each individual battle or combatant spawner.