0.1.0 - Networking

CarbonField is no longer a solo affair. The 0.1.0 milestone brings full multiplayer networking, Steam integration, and a completely rebuilt menu system. You can now host a game, invite friends through Steam, and play together with deterministic lockstep keeping everything in sync.
Steam Integration
The game now runs on Steam via GodotSteam. A full Steam manager handles authentication, friends lists, and profile data. Player profiles show up in-game with animated avatars - GIF and APNG support means animated Steam profile pictures render correctly in menus and lobbies. You can browse friends, view profiles, and invite players directly from the game.
Multiplayer Networking
Networking was built in phases, starting from the foundations up. The simulation now runs on a fixed timestep with a seeded deterministic RNG, ensuring every client computes identical results. All player actions flow through a command abstraction layer - move, build, train, gather - that serializes cleanly over the wire.
On top of that sits a lockstep protocol: clients exchange commands in synchronized ticks, with checksum verification to catch desync immediately. The network transport layer handles connection management, and a Godot-side network bridge ties it all together. A shared game seed ensures every match starts from the same state.
P2P voice chat rounds it out - players can talk to each other in lobbies and during matches via Steam networking.
Menu System
The main menu was rebuilt from the ground up with a modular panel architecture. The server browser lets you find and join public games. Skirmish setup gives you control over player slots, team assignments, and game settings before launching. The game lobby shows connected players with their Steam profiles and handles ready-state and launch flow. A settings panel covers audio, video, and input configuration.
Game Systems
A new harvesting system adds dedicated resource-gathering logic with building type definitions for farms, mills, mines, and conscription centers - each with their own icons in the build menu. Terrain tile smoothing received a correctness fix that resolved incorrect interpolation at tile boundaries.
Performance & Polish
Selection handling was optimized to reduce unnecessary work. Godot warnings were cleaned up across all scripts. The build menu now correctly handles the expanded set of building types.
What is Next
With networking in place, the next milestone focuses on core RTS gameplay - unit combat, tech trees, and deeper base building - bringing CarbonField closer to a playable public release.