Update: Feb 3, 2015
The tilt has now officially ended, and I have sent the combined payment off to GamingIsLove! A huge, huge thank you to everybody who contributed towards this project. We couldn't have done it without you.
-Alex
Hello everyone!
This thread is for discussing the commission and implementation of a grid-based battle system à la Final Fantasy Tactics, Tactics Ogre, Fire Emblem, and Fallout in ORK.
If you would like to see this feature become a reality, please contribute here:
https://www.tilt.com/tilts/grid-battle-system-for-the-ork-framework
(You can contribute even if your country isn't specified, that list is for only people running a Tilt!)
Over the past month or so, I've taken the role of representative from the previous thread, which can be found here.
I'm a professional game designer myself, and used my experience to write up a design document clarifying how each feature should work, and also adding lots of features that I felt were missing in the original proposal, which you can read here. (Keep in mind that this is not a final feature list but a good read if you would like a more comprehensive idea of what the feature would work in relation to the feature notes below and how it will function.)
GiL and I spoke about how to implement each requested feature in said doc, and here is a quick (hah!) summary of the finalized features that the base implementation of the Grid Battle System would bring:
<blockquote>
The grid battle system will be available for all battle types, i.e. if there's a grid in the scene, battles will use them (unless set to not use a grid).
Development time 1-2 months
Grid Settings
New grid settings, either in the Battle Settings or in a new grid settings sub-section in the Battle System section.
Cell size (e.g. 1 for 1 world unit) would define the distance between the cells.
Grid type: Support for square and hexagonal grids.
Grid highlighting: Prefab and blinking settings (similar to target selection), the prefab can either be just placed on the grid cell or hide the grid cell's current prefab.
Highlighting for move target cells, use range (ability/item), affect range (ability/item).
Grid Cell Types
Adding a new sub-section in the Battle System section to define cell types.
Cell types will be used in the scene setup of a grid.
Set Prefab for Cells with offset and scale settings.
Move costs (for implementing different terrains), blocked option (i.e. not possible to move on/through).
Deployment cell option (for player unit placement at the beginning of battles)
Adding abilities and events to be used on combatants > selection for when to use them (moving over a cell, moving to a cell, ending a turn on a cell)
Grid Scene Setup
New grid component that handles the grid in the scene.
Defines width/height of the grid. Clicking on a button will create the grid (Raycasting can also determine the individual cell positions based on the level architecture)
Each grid cell is an empty game object, i.e. you can move the around (e.g. up/down for height mechanic) if needed.
Cell type selection for each grid cell.
Additional ability/event settings (like in cell types).
Battles (Battle component) can optionally select a grid in the scene that will be used, otherwise they use the first grid found in the scene, or don't use grid mechanic (optional).
Move Command
New move command in battle menus (for moving across the grid.)
Move range setting for combatants (usual value, formula, etc. selection).
Move range bonus in the bonus settings.
1 Move range equals 1 move cost of a cell.
Highlights all cells the combatant can move to.
Other commands can be used before and after the move command.
Battle AI: move commands to move toward a found target or move away from it. (Found targets being either Combatants or a specified Cell Type.)
-'Move Through' options for combatants/factions. i.e Your units can move through each other and allied units on the grid without penalty, but enemy combatants will block their movement (and vice-versa for Enemy units).
Turn End Orientation
Optional, probably best in the grid settings
Player controlled combatants: select the orientation through input keys or clicking somewhere on the grid.
AI controlled combatants: orientation based on AI settings (e.g. nearest enemy, etc)
Situational Commands (as seen in the doc)
This should already be possible through the temporary abilities introduced in ORK 2.5.8!
Player Unit Placement
Happens in the battle start event.
New node for unit placement.
Dialogue to select combatant (and optionally end placement).
Selecting a combatant allows placing it on the grid (deployment cells), through click/touch or input keys (moving cursor on grid).
Available combatants are either battle group or whole group (option).
Target Confirmation Prompt
This would be available for all target selections (not just in grid battles).
Either displayed as additional information in the target menu where a target is selected or as an additional confirmation step after target selection.
Displays information about user and target, hit chance, damage (probably using combatant HUDs).
Grid Highlighting/Telegraph System
Highlight shapes are defined by selecting which cells are used (around the target, e.g. a combatant or cursor).
Shapes can be stored and used (e.g. like storing colors for later use in Unity's color picker)
Event step for highlighting cells.
Highlights for move targets, use ranges, affect ranges according to the settings in the grid settings.
Abilities/Items
Use range > optional grid settings (defining a shape), otherwise just uses the cells according to the defined ranges.
Affect range (AoE) > optional grid settings (defining a shape), otherwise just uses the cells according to the defined ranges.
None target > grid cell option for targeting an empty (no combatant) grid cell.
Examining Combatants
Settings in the grid settings.
Select a combatant > click/touch or cursor; maybe also like tooltip (i.e. mouse over)
Show combatant info (bestiary info).
Show combatant move range (i.e. moveable cells), optional including attack range (i.e. use range of their base attack).
Event System
- New steps for grid movement (e.g. Combatants/Objects move to cell, etc)
- New steps for Grid highlighting.
Other Features
Turn ended idle animation type (like the wait/cast idle types).
Turn Ended status requirement.
Height mechanic should be already doable through moving the individual grid cells (scene setup), there are steps for using positions, cell height, etc. in formulas.
</blockquote>
This is a very ambitious and exciting feature extension to ORK, and GiL has proven himself over the years to be a fantastic dev with constant support, bug fixes and new features to ORK and Makinom. It will be a public feature added to ORK, which means that it will be available to everybody using ORK, and updated with new features as the current ORK does.
So let's help make this feature a reality. :)