Combat
Designed around collaboration of two or more characters, player or otherwise.
Note Dump#
- What challenges and progression does combat offer the player?
- Real skill and timing rewarded.
- Difficult encounters point toward rewarding directions.
- Offer visual and auditory cues for players to learn from, make them meaningful and useful for getting better at the game.
- Reward using the environment to your advantage.
The Circles of Combat#
- Benefits of implementing combat as circles of design:
- Simplify design and guarantee that the minimum amount of work.
- If game design stops at the first circle, the combat is still enjoyable.
Table of Contents#
- Note Dump
- The Circles of Combat
- Table of Contents
First Circle - Fundamentals of Ticks, Intent, and Actions#
Position Intent, Actions, Facing, and Tick System
Written Design of the First Circle#
Introduce Positioning System#
- Entities are positioned on a hexagonal graph.
- The graph can be flat or pointy oriented.
- Entities can traverse around the node graph in combat.
- Entities are able to traverse to any adjacent node. (See intention system.)
- Nodes occupied by another entity may prevent traversal into that node.
- Some nodes are occupied by impassible objects and cannot be occupied by an entity.
Introduce Facing System#
- Entities have two facing states:
- Facing an adjacent node.
- Facing a target node.
- An entity may intend to turn to face any adjacent node.
- An entity may intend to turn to face any node, if an entity is present within it. (See intention system.)
- An entity need not face the node they are intending to move to.
- An entity may face the average direction of two nodes if multiple opponent entities are adjacent.
Introduce Tick System#
- Encounters are sliced into ticks.
- Ticks are in real time, counted in milliseconds, and are individually perceivable.
- All entity controllers, AI or human, are simultaneous.
- All participants share the same tick and do not take turns.
- An action or intent chosen in one tick is activated in the following tick.
- Ticks can be defined at various rates, for difficulty scaling.
While there is no specific rates, here are some for example.
- 667ms (90bpm)
- 500ms (120bpm)
- 462ms (130bpm)
- 375ms (160bpm)
- 333ms (180bpm)
- 300ms (200bpm)
- As rates approach 300ms the difficulty of keeping up increases exponentially.
Introduce Action System#
- An AI or a Player may execute an action during a tick.
- If no action is triggered, entity does nothing.
- An action is built of three phases
- Each action phase has a defined tick cost.
- Recover phase cost only applies if perform was unsuccessful.
- The following actions are available to all entities:
strike- Effect Apply damage to an entity..
- Cost (1,1,1)
- Description
- Prepare.
- If not interrupted, strike.
- If not blocked, enter prepare phase of next action.
- If blocked, enter recover phase.
- If interrupted, waste perform phase, then enter recover phase.
block- Effect Reduce damage applied by an entity.
- Cost (0,1,1)
- Description
- Perform.
- If intercept, enter prepare phase of next action.
- If no intercept, recover.
- Perform.
Introduce Telegraphing System#
- Any action or intent may have telegraphing associated with it.
- The telegraphing system is present on all entities, and is the primary way of players and AI determining what they should do for the next ticks.
- Some actions or intents may have extended
prepare,perform, andrecoverphases. The longer the phase the longer the telegraph. - An example: hefting a sword / pulling arm back to strike.
Introduce State System (Replaces Health System)#
- Entities no longer have health points.
- Entities no longer accrue damage.
- Entities can enter the following states:
- If an entity is struck while stumbled or stunned, the entity becomes fallen.
- If an entity is struck while fallen, the entity dies.
Introduce Intention System#
- More than two entities may now be present in combat.
- Entities may perform an intent and an action at the same time.
- Entities have weight and inertia.
- Entities may now face any direction.
- An entity may act to parry, cancelling a strike and striking in return if a strike is intercepted.
- Entities may express intent:
- Intent to
moveforward into a position. - Intent to
movebackward into a position. - Intent to
movelaterally into a position. - Intent to
holdposition. (Default) - Intent to
facea node. - Intent to
facea target. (Default)
- Intent to
- Any intent can be paired with an action:
StrikeBlockParry
Design of Intent#
Intent is meant to give meaning to fighting entities of different weights and sizes. Fighting an aggressive and heavy opponent with a “forward” or “holding” intent isn’t going to work if you weight less than them. (You’ll be steamrolled.)
Intent adds a mechanical reason to parry or position yourself around the opponent.
Examples#
NPC Intention
Moveinto a player entity’s node, andstrike.Player Response
Moveinto NPC node with aparryaction.
- Entities swap positions, the NPC takes damage, the player entity is facing the NPC, the NPC is facing away.
Holdandblock.
- Takes some damage.
Holdandstrike.
- Stunned, takes major damage, strike does not land.
Movebackward or adjacent andparry.
- May stumble / dodge, if dodge very next strike has less
preparetime.
Third Circle - Collaboration#
Collaborative Action Intent
- Actions may have collaborative intent.
- One entity can parry an NPC strike for another entity.
- Some NPCs might be too quick for you to handle,
collaborating would allow
parry,block, orstunchaining.
Fourth Circle#
Ranged, Projectiles, Long Strikes
uncertain about where telegraphing should live, as I feel like it is very relevant to decision making during combat
- Attacks can span more than a single node.
- Weapons may be thrown or projected.
- May pass through nodes
- May arc over nodes.
- Weapons may have length and strike through multiple nodes.
- Strikes may have extended
recovertimes, leaving openings.- Strikes may be interrupted, causing stun.
- Strikes may have extended telegraphing, making it easier to perceive what is going to occur.
prepare action phase(Optional) Telegraphs to entities with perception, including players, that an action is about to be performed. ↩︎perform action phase(Required) Part of the action that applies effect to an entity. ↩︎recover action phase(Optional) Cooldown before the entity may prepare for another action. ↩︎stumbled stateApplies when the intention to move is defeated. ↩︎stunned stateApplies when struck during preparing, recovering, or when interrupted during a strike. ↩︎preparing stateApplies whileprepare action phaseis active. ↩︎striking stateApplies while theperform action phaseof the strike action is active. ↩︎recovering stateApplies whilerecover action phaseis active. ↩︎bunkering stateApplies whileperform action phaseof the defend action is active. ↩︎fallen stateApplies if an entity is struck while stumbled or stunned. ↩︎