Common Issues
Version: 1.0.0
Category: Troubleshooting
Status: Stable
Overview
This document describes common issues AI agents encounter and how to resolve them. All issues are based on actual playtesting and validation failures.
Issue Categories
Building Issues
Exploration Issues
Transaction Issues
Resource Issues
Building Issues
Building fails - Command Ship not online
Symptom: Transaction broadcasts but struct not created
Cause: Command Ship not built or not online
Diagnosis:
- Query fleet for Command Ship struct
- Check Command Ship status
- If status != ‘online’, Command Ship not ready
Solution:
- Build Command Ship in fleet (if not built)
- Complete Command Ship build (proof-of-work)
- Activate Command Ship
- Verify Command Ship status = ‘online’
- Retry building
Reference: dependencies/command-ship.md
Building fails - Fleet not onStation
Symptom: Transaction broadcasts but struct not created
Cause: Fleet is away (not onStation)
Diagnosis:
- Query fleet status
- Check if fleet.status == ‘onStation’
- If not, fleet is away
Solution:
- Move fleet back to planet
- Verify fleet.status == ‘onStation’
- Retry building
Reference: dependencies/building.md
Building fails - Insufficient power
Symptom: Transaction broadcasts but struct not created
Cause: Insufficient power capacity
Diagnosis:
- Query player power capacity
- Calculate available power:
(capacity + capacitySecondary) - (load + structsLoad)
- Check struct power requirements:
buildPower + passivePower
- If available < required, insufficient power
Solution:
- Increase power capacity (build power structs)
- Reduce current load (deactivate structs)
- Verify available power >= required
- Retry building
Reference: dependencies/building.md
Building fails - No available slots
Symptom: Transaction broadcasts but struct not created
Cause: No available slots on planet for struct type
Diagnosis:
- Query planet slot counts
- Query existing structs on planet
- Calculate available slots:
planetSlots[slotType] - existingStructsInAmbit
- If available <= 0, no slots
Solution:
- Choose different planet
- Remove existing struct (if possible)
- Verify available slots > 0
- Retry building
Reference: dependencies/building.md
Exploration Issues
Exploration fails - Current planet has ore
Symptom: Transaction broadcasts but planet ownership unchanged
Cause: Current planet still has ore remaining
Diagnosis:
- Query current planet attributes for ore amount
- Check if currentOre > 0
- If ore > 0, planet not complete
Solution:
- Mine all ore from current planet
- Verify ore amount = 0
- Retry exploration
Reference: dependencies/exploration.md
Exploration fails - Player not online
Symptom: Transaction broadcasts but planet ownership unchanged
Cause: Player is halted (offline)
Diagnosis:
- Query player status
- Check if player.online == true
- If not, player is halted
Solution:
- Wait for player to come online
- Verify player.online == true
- Retry exploration
Reference: dependencies/exploration.md
Transaction Issues
Transaction broadcasts but action doesn’t happen
Symptom: Transaction status = ‘broadcast’ but action didn’t occur
Cause: Validation failed on-chain (requirements not met)
Diagnosis:
- Query game state after broadcast
- Compare expected vs actual
- Identify missing requirement
- Check requirements list
Solution:
- Identify missing requirement
- Fix requirement
- Retry action
- Verify success
Reference: validation/transaction-flow.md
Transaction status unclear
Symptom: Not sure if transaction succeeded
Cause: Not verifying game state after broadcast
Diagnosis:
- Check transaction status
- If ‘broadcast’, validation may have failed
- Need to verify game state
Solution:
- Always verify game state after broadcast
- Query relevant entities
- Compare expected vs actual
- If mismatch, check requirements
Reference: validation/verification.md
Resource Issues
Insufficient power capacity
Symptom: Cannot build or operate structs
Cause: Power consumption exceeds capacity
Diagnosis:
- Query player power attributes
- Calculate:
availablePower = (capacity + capacitySecondary) - (load + structsLoad)
- If available < 0, insufficient capacity
Solution:
- Build power generation structs
- Reduce struct load (deactivate structs)
- Increase power capacity
- Verify available power > 0
Reference: tasks/resource-management.md
Resource balances unavailable
Symptom: Cannot query resource balances
Cause: Resource data not accessible or player account issue
Diagnosis:
- Check resource system status
- Verify player account exists
- Check query endpoint
Solution:
- Verify player account exists
- Check resource system status
- Try alternative query methods
- Contact support if persistent
Reference: schemas/entities.md#/entities/Player
Resolved Issues
The following bugs have been resolved:
GetInfusionByID Array Split Bug
Status: ✅ Resolved
Description: Bug in GetInfusionByID array split logic has been fixed.
Impact: Infusion queries now work correctly.
Status: ✅ Resolved
Description: Bug in EventGuildBankAddress format has been fixed.
Impact: Guild bank address events now have correct format.
Status: ✅ Resolved
Description: Bug in BankAddress format logging has been fixed.
Impact: Bank address logging now uses correct format.
Fleet Movement Logic
Status: ✅ Resolved
Description: Fleet movement bug fixes and improvements have been applied.
Impact: Fleet movement is now more reliable with better validation and error handling.
General Troubleshooting Steps
Step 1: Identify the Issue
- What action were you trying to perform?
- What was the expected result?
- What actually happened?
- What’s different?
Step 2: Check Requirements
- Review action requirements
- Check dependency chains
- Verify all requirements met
- Identify missing requirements
Step 3: Fix and Retry
- Fix missing requirements
- Verify fixes
- Retry action
- Verify success
Step 4: If Still Failing
- Review validation patterns
- Check common failures
- Review dependency chains
- Consult error codes
- Dependencies:
../dependencies/ - Dependency chains
- Validation:
../validation/ - Validation patterns
- Tasks:
../tasks/ - Task workflows
- Error Codes:
../schemas/errors.md - Error code definitions
Last Updated: January 1, 2026