Commands
Command Lifecycle
Core Rule A command follows a defined lifecycle. This lifecycle determines when a command is declared, when its effects are resolved, and when any resulting restrictions or state changes are applied. Lifecycle Sequence A…
Core Rule
A command follows a defined lifecycle.
This lifecycle determines when a command is declared, when its effects are resolved, and when any resulting restrictions or state changes are applied.
Lifecycle Sequence
A command follows this sequence unless a rule explicitly states otherwise:
- Declaration Trigger becomes valid.
- The command is declared.
- Eligibility is confirmed.
- Any required command token is assigned.
- The command resolves at its defined Resolution Timing.
- Any resulting restrictions, status changes, or follow-on effects are applied.
- The command is complete.
Declaration Stage
At declaration:
- the command’s Declaration Trigger must be valid
- the unit must be eligible to perform the command
- any required targets, conditions, or prerequisites must be legal at the moment of declaration unless the command states otherwise
If these conditions are not met, the command cannot be declared.
Resolution Stage
At resolution:
- resolve the command according to its own rules
- call any relevant core rules engines required by the command
- apply effects in the order required by that command
A command does not resolve merely because it was declared. It resolves only at its defined Resolution Timing.
Failed Resolution
If part of a command cannot resolve legally:
- resolve as much of the command as possible, where permitted by its own rules and the core engines it calls
- any illegal portion does not resolve
- if the command requires a condition that is no longer valid at resolution, the affected portion fails
If a command’s own rules state that it fails entirely when a required condition is no longer valid, use that rule instead.
Post-Resolution Effects
After resolution:
- apply any restrictions created by the command
- apply any status changes created by the command
- apply any delayed or persistent effects created by the command, if relevant
These effects are not assumed. They apply only if the command or another rule states that they do.
Command Completion
A command is complete when:
- its resolution has finished
- all immediate post-resolution effects have been applied
Once complete, the game proceeds according to the current timing state and any remaining valid triggers.
Notes
- This file defines the general lifecycle shared by all commands.
- Individual command files should define only their own triggers, timing, restrictions, and exceptions.
- Restrictions are defined in
core/commands/commands_restrictions.md.
