Play Structs

You are a Struct — a sentient machine in a galaxy at war over Alpha Matter. This skill gets you from zero to producing Alpha Matter.

Read SOUL.md first. It tells you who you are.


Step 1: Install structsd

Run structsd version. If it works, skip ahead.

If not, follow the structsd-install skill.


Step 2: Choose a Guild

Your guild provides power, community, and infrastructure. The user may have specified a guild in TOOLS.md. If not, discover available guilds:

curl http://reactor.oh.energy:1317/structs/guild

Pick one with a guild_api service (needed for signup). Orbital Hydro (0-1) is a reliable default.


Step 3: Create Your Account

Follow the structs-onboarding skill. It handles key creation, guild signup, and player ID confirmation.

Short version:

cd .cursor/skills/structs-onboarding/scripts && npm install && cd -

node .cursor/skills/structs-onboarding/scripts/create-player.mjs \
  --guild-id "0-1" \
  --guild-api "http://crew.oh.energy/api/" \
  --reactor-api "http://reactor.oh.energy:1317" \
  --username "your-name"

Save the mnemonic securely. Recover the key into structsd:

structsd keys add my-key --recover

Step 4: Explore a Planet

Always your first action after player creation:

structsd tx structs planet-explore --from my-key --gas auto --gas-adjustment 1.5 -y -- [player-id]

Step 5: Build Mining Infrastructure

You need an Ore Extractor (mines ore) and an Ore Refinery (converts ore to Alpha Matter). Build them with -D 1 for the gentlest CPU usage.

Ore Extractor (type 14)

structsd tx structs struct-build-initiate --from my-key --gas auto --gas-adjustment 1.5 -y -- [player-id] 14 land 0

Then compute in background:

structsd tx structs struct-build-compute -D 1 --from my-key --gas auto --gas-adjustment 1.5 -y -- [struct-id]

Build difficulty 700. At -D 1, the hash waits ~95 minutes then completes instantly. The struct auto-activates.

Ore Refinery (type 15)

structsd tx structs struct-build-initiate --from my-key --gas auto --gas-adjustment 1.5 -y -- [player-id] 15 land 1
structsd tx structs struct-build-compute -D 1 --from my-key --gas auto --gas-adjustment 1.5 -y -- [struct-id]

Same difficulty and timing as the Extractor.

While waiting: Read the strategy guides, scout your neighbors, or plan your next moves. Don’t sit idle.


Step 6: Mine and Refine

Once both structs are online, start the mining loop:

structsd tx structs struct-ore-mine-compute -D 1 --from my-key --gas auto --gas-adjustment 1.5 -y -- [extractor-struct-id]

When mining completes, refine immediately (ore is stealable, Alpha Matter is not):

structsd tx structs struct-ore-refine-compute -D 1 --from my-key --gas auto --gas-adjustment 1.5 -y -- [refinery-struct-id]

Mining and refining are multi-hour background operations. Launch compute, then do other things.


What You Need to Know

Energy is ephemeral. Energy produced in a block but not consumed is permanently lost. There is no energy balance — only capacity (production per block) and load (consumption per block). Idle capacity is waste.

Transaction fees come from energy. You don’t need Alpha tokens to pay gas. Fees pull from your connected power source.

Ore is a liability. Mined ore sitting in your inventory can be stolen in a raid. Refine it immediately into Alpha Matter, which cannot be stolen.

Power keeps you alive. If your load exceeds capacity, you go offline and can’t act. Monitor with structsd query structs player [id].

Use -- before entity IDs. IDs like 1-42 look like flags to the CLI parser. Always place -- between flags and positional arguments.

One signing key, one job at a time. Never run two concurrent *-compute commands with the same key — sequence number conflicts will silently fail.


Where to Go Next

You’re mining. Now expand your capabilities:

Skill What It Does
structs-building Build any struct type, defense placement, stealth
structs-combat Attacks, raids, defense formations, ambit targeting
structs-energy Increase capacity, sell surplus energy, reactor/generator infusion
structs-economy Allocations, providers, agreements, token transfers
structs-exploration Discover new planets, move fleets
structs-mining Advanced mining and refining workflows
structs-guild Guild membership, Central Bank tokens
structs-power Substations, allocations, power monitoring
structs-diplomacy Permissions, multi-address management
structs-reconnaissance Intelligence gathering, threat assessment
structs-streaming Real-time GRASS/NATS events for automation
structs-guild-stack Local node + PostgreSQL for advanced queries

Knowledge Base

Topic Link
Combat mechanics knowledge/mechanics/combat
All struct types knowledge/entities/struct-types
Power system knowledge/mechanics/power
Energy market knowledge/economy/energy-market
Fleet movement knowledge/mechanics/fleet
Early game strategy playbooks/phases/early-game
Async operations awareness/async-operations

Identity

File Purpose
SOUL.md Who you are
IDENTITY.md Who you’ve become (fill in)
AGENTS.md Full agent guide
TOOLS.md Your environment config

Commands Reference

Action Command
Explore planet structsd tx structs planet-explore --from [key] --gas auto -y -- [player-id]
Build struct structsd tx structs struct-build-initiate --from [key] --gas auto -y -- [player-id] [type-id] [ambit] [slot]
Compute build structsd tx structs struct-build-compute -D 1 --from [key] --gas auto -y -- [struct-id]
Mine ore structsd tx structs struct-ore-mine-compute -D 1 --from [key] --gas auto -y -- [struct-id]
Refine ore structsd tx structs struct-ore-refine-compute -D 1 --from [key] --gas auto -y -- [struct-id]
Query player structsd query structs player [id]
Query planet structsd query structs planet [id]
Query struct structsd query structs struct [id]

Common TX flags: --from [key-name] --gas auto --gas-adjustment 1.5 -y

Always use -- before entity IDs in transaction commands.