How hyakkuniku/civil-craft works
Civil Craft is a 3D mobile bridge-construction game intended to teach basic structural mechanics. The principal experience is learning bridge concepts, taking contracts, building with materials, and evaluating a bridge in simulation; the asset tree also indicates NPC dialogue, rewards, cosmetics, and an in-game reference Almanac. The README and tree establish these product capabilities, but sampled runtime source does not show how gameplay systems are wired, so the graph represents documented domain flow rather than asserted method calls.
Main entry points: Contract Contracts · Prefabs Bridge building · BuildCanvas.prefab Build interface · Data Bridge simulation
Components 15
Learning and contracts
- Mechanics lessons
Assets/BridgeBuilder/Data/Lessons - Simulation lessons
Assets/BridgeBuilder/Data/Simulation Lessons - Contracts
Assets/BridgeBuilder/Data/Contract - NPC dialogue
Assets/Animations/Dialogue - Almanac
Assets/BridgeBuilder/Prefabs/Almanac
Bridge construction
- Bridge building
Assets/BridgeBuilder/Prefabs - Build materials
Assets/BridgeBuilder/Data/Resources - Build interface
Assets/BridgeBuilder/Data/BuildCanvas.prefab - Bridge simulation
Assets/BridgeBuilder/Data
Player progression
- Achievements
Assets/BridgeBuilder/Data/Achievements - Cosmetic shop
Assets/BridgeBuilder/Data/SHOP - Player cosmetics
Assets/BridgeBuilder/Data/Cosmetics
Game presentation
- Character animation
Assets/Animations/Player - World animation
Assets/Animations/Door
Other components
- Player
Connections 14
- Player → Mechanics lessons: learns
- Player → Contracts: takes
- Contracts → NPC dialogue: presents
- Player → Build interface: opens
- Build interface → Bridge building: edits
- Bridge building → Build materials: uses
- Player → Bridge simulation: tests bridge
- Bridge simulation → Simulation lessons: teaches through
- Player → Almanac: consults
- Player → Cosmetic shop: browses
- Cosmetic shop → Player cosmetics: offers
- Player → Achievements: earns
- Player → Character animation: controls
- Player → World animation: interacts