Version: 1.1.0
Last Updated: January 16, 2026
Purpose: Quick reference guide for AI agents performing game actions
This guide provides a quick reference for all game actions available to AI agents. For complete action definitions, see schemas/actions.md and reference/action-index.md.
All actions are submitted as transactions to: POST /cosmos/tx/v1beta1/txs
See: protocols/action-protocol.md for complete transaction flow
Build Struct:
struct-build-initiate - Start building (first step)struct-build-complete - Complete building (requires proof-of-work)Requirements:
See: reference/action-index.md#struct-build-initiate
Activate/Deactivate:
struct-activate - Activate struct (bring online)struct-deactivate - Deactivate struct (take offline)struct-stealth-activate - Activate with stealthstruct-stealth-deactivate - Deactivate stealthMove/Defense:
struct-move - Move struct to new locationstruct-defense-set - Set defense modestruct-defense-clear - Clear defense modeRequirements:
Attack:
struct-attack - Attack another structRaid:
planet-raid-complete - Complete planet raid (requires proof-of-work)Requirements:
Mining:
struct-ore-miner-complete - Complete ore mining (requires proof-of-work)struct-ore-refinery-complete - Complete ore refining (requires proof-of-work)Power:
reactor-infuse - Infuse reactor with resources (produces energy). Also handles validation delegationreactor-defuse - Defuse reactor (remove resources). Also handles validation undelegationreactor-begin-migration - Begin redelegation process for reactor validation stakereactor-cancel-defusion - Cancel undelegation process for reactor validation stakesubstation-create - Create substationsubstation-player-connect - Connect player to substationreactor-allocate (use allocation system instead)substation-connect (use MsgSubstationAllocationConnect instead)Reactor Staking:
reactor-infuse for delegation, reactor-defuse for undelegationreactor-begin-migration to begin redelegationreactor-cancel-defusion to cancel undelegationRequirements:
Providers:
provider-create - Create energy providerAgreements:
agreement-open - Open energy agreement (create)agreement-create (use agreement-open instead)Mining/Refining:
struct-ore-miner-complete - Complete ore mining (requires proof-of-work)struct-ore-refinery-complete - Complete ore refining (requires proof-of-work)ore-mining (use struct-ore-miner-complete instead)ore-refining (use struct-ore-refinery-complete instead)Generators:
struct-generator-infuse - Infuse generator with Alpha Matter (produces energy)generator-allocate (use struct-generator-infuse instead)Requirements:
Planet Exploration:
planet-explore - Explore a planetRequirements:
Fleet Movement:
fleet-move - Move fleet (on station ↔ away)Requirements:
Guild Management:
guild-create - Create guildguild-membership-join - Join guildguild-membership-kick - Remove member from guildguild-membership-leave (use guild-membership-kick instead)Guild Bank:
guild-bank-mint - Mint guild tokensguild-bank-redeem - Redeem guild tokensRequirements:
The following actions are deprecated and should not be used. Use the replacement actions instead:
| Deprecated Action | Replacement | Reason |
|---|---|---|
reactor-allocate |
Use allocation system (MsgAllocationCreate) |
Message type does not exist. Energy allocation handled via allocation system. |
substation-connect |
MsgSubstationAllocationConnect |
Message type does not exist. Use allocation-based connection. |
agreement-create |
agreement-open (MsgAgreementOpen) |
Message type does not exist. Use MsgAgreementOpen instead. |
ore-mining |
struct-ore-miner-complete (MsgStructOreMinerComplete) |
Message type does not exist. Use struct-based mining completion. |
ore-refining |
struct-ore-refinery-complete (MsgStructOreRefineryComplete) |
Message type does not exist. Use struct-based refining completion. |
generator-allocate |
struct-generator-infuse (MsgStructGeneratorInfuse) |
Message type does not exist. Use struct-based generator infusion. |
guild-membership-leave |
guild-membership-kick (MsgGuildMembershipKick) |
Message type does not exist. Use kick action for removing members. |
See: reference/action-index.md for complete list with replacement details and code references.
Player Online:
GET /structs/player/{id} → player.halted === falseSufficient Resources:
Sufficient Charge:
GET /structs/struct/{id} → struct.charge >= requiredActivateCharge is 1 for all struct types (genesis default)Sufficient Power:
Command Ship Online:
Fleet Status:
Valid Location:
Valid Target:
Use Case: Simple action, no dependencies
Flow:
Example: struct-activate, struct-deactivate
Use Case: Action requires two steps
Flow:
Examples:
struct-build-initiate → struct-build-completeUse Case: Action requires proof-of-work computation
Flow:
Examples:
struct-build-completeplanet-raid-completestruct-ore-miner-completestruct-ore-refinery-completeSee: protocols/action-protocol.md#proof-of-work for proof-of-work details
Use Case: Action depends on game state
Flow:
Example: Attack only if target is valid and attackable
{
"flow": [
{
"step": 1,
"action": "Get account info",
"endpoint": "GET /cosmos/auth/v1beta1/accounts/{address}"
},
{
"step": 2,
"action": "Build transaction",
"message": "Action message (e.g., MsgStructBuild)"
},
{
"step": 3,
"action": "Sign transaction",
"method": "Sign with private key"
},
{
"step": 4,
"action": "Submit transaction",
"endpoint": "POST /cosmos/tx/v1beta1/txs"
},
{
"step": 5,
"action": "Wait for confirmation",
"check": "Transaction status"
},
{
"step": 6,
"action": "Verify action occurred",
"method": "Query game state"
}
]
}
See: protocols/action-protocol.md for complete details
⚠️ IMPORTANT: Transaction status broadcast does NOT mean action succeeded!
Validation happens on-chain after broadcast:
Example:
{
"scenario": "Build struct without sufficient resources",
"result": {
"transaction": "broadcast",
"action": "failed",
"reason": "Insufficient resources (validated on-chain)"
},
"verification": "Query struct - struct not created"
}
Player Halted (code: 6):
Insufficient Funds (code: 2):
Insufficient Charge (code: 7):
Invalid Location (code: 8):
Invalid Target (code: 9):
See: api/error-codes.md for complete error catalog
Construction:
struct-build-initiatestruct-build-completeCombat:
struct-attackplanet-raid-completeResource:
struct-ore-miner-completestruct-ore-refinery-completereactor-infuse (validation delegation)reactor-defuse (validation undelegation)substation-createEconomic:
provider-createagreement-openagreement-create (use agreement-open instead)ore-mining (use struct-ore-miner-complete instead)ore-refining (use struct-ore-refinery-complete instead)Exploration:
planet-exploreFleet:
fleet-moveGuild:
guild-createguild-membership-joinguild-bank-mintRequires Proof-of-Work:
struct-build-completeplanet-raid-completestruct-ore-miner-completestruct-ore-refinery-completeRequires Charge:
struct-activatestruct-attackstruct-ore-miner-completestruct-ore-refinery-completeRequires Command Ship:
fleet-moveplanet-raid-completeTwo-Step Process:
struct-build-initiate → struct-build-completeAction Definitions:
schemas/actions.md - Complete action schemasreference/action-index.md - Action index with metadataProtocols:
protocols/action-protocol.md - Complete action protocolprotocols/gameplay-protocol.md - Gameplay interaction patternsprotocols/error-handling.md - Error handlingPatterns:
patterns/workflow-patterns.md - Multi-step workflow patternspatterns/retry-strategies.md - Retry patterns for failed actionsExamples:
examples/workflows/ - Workflow examplesexamples/errors/ - Error examplesLast Updated: January 1, 2026