Solo Teams is a Factorio 2.0 multiplayer mod where every player gets their own independent force - your own tech tree, your own factory, your own pace - all on the same shared map. Players start in cease-fire so you can't damage each other's builds, but you can opt into friendship to cooperate. A Landing Pen lets everyone wait together before spawning, with an optional buddy system to start on the same planet. Built-in GUI panels let you compare research progress, production stats, and player lo
Scenarios, maps, and puzzles.
Version: 0.2.17
Date: 2026-04-08
Features:
- Players in the Landing Pen are now assigned the spectator permission group, preventing building or griefing in the pen area
Changes:
- Update README: remove Space Block references, add Platformer and VoidBlock links, remove installation section, fix command references
- Update info.json description
Version: 0.2.16
Date: 2026-04-08
Features:
- Spectate now focuses on the target player's live position (or their saved position if they are away spectating someone else), instead of always starting at surface origin
- Returning from spectate restores the player to their exact pre-spectate surface and position, with collision avoidance to prevent getting stuck in structures built by bots
- Character remains vulnerable (destructible) while spectating, preventing players from using spectate mode to escape enemy attacks
Changes:
- Rename gui/platforms.lua to gui/surfaces.lua (internal variable: surfaces_gui)
Bugfixes:
- Players in the Landing Pen can no longer see or use the "request friend" option for spawned players
Version: 0.2.15
Date: 2026-04-07
Changes:
- Extract shared compat utilities (planet_display_name, process_pending_teleports, setup_player_surface) into compat_utils.lua to reduce duplication between vanilla and VoidBlock modules
Bugfixes:
- Fix spectator mode not exiting when spawning from the Landing Pen
Version: 0.2.14
Date: 2026-04-06
Features:
- VoidBlock mod compatibility: each player gets their own Nauvis with void-island terrain
- Pre-generate chunks around spawn so players never see default terrain flash
Changes:
- Stats GUI: active category and time period buttons use green_button style for visibility
Version: 0.2.13
Date: 2026-04-06
Features:
- "Allow Friendship" admin flag: disabling dissolves all friendships and hides checkboxes
- Per-player "show offline" toggle in Players panel (hidden by default)
- Players in the Landing Pen are excluded from Research and Stats GUIs
Changes:
- Codebase reorganized into gui/, compat/ folders with shared helpers.lua
- All module variables renamed from M/H to descriptive names
- Extracted force_utils.lua, surface_utils.lua, gui/friendship.lua,
gui/research_diff.lua, gui/landing_pen_terrain.lua for smaller files
- Vanilla surface naming changed from "st-<index>-<planet>" to "<force>-<planet>"
- Spectator exit always teleports player home (prevents god-mode stranding)
- Stats GUI refreshes on player spawn (not just connect/disconnect)
- Widened Players panel and Stats name column to prevent layout shifts
Bugfixes:
- Fix spectator bounce failing in Platformer god mode (force lookup used
spectator force instead of effective force)
- Fix landing pen player colors: use chat_color consistently instead of
hardcoded yellow for self and grey for spawned players
Version: 0.2.12
Date: 2026-04-05
Features:
- Spectator system: view other players' surfaces via a dedicated spectator force
- Spectate button (magnifying glass) on each player's platform/surface row
- Friend-view: friends bypass spectator force and get direct remote view
- Mutual friendship: both sides must agree to activate, either side can break
- Friendship request states: request friend (blue), pending (yellow), friends (green)
- Chat prefix shows "[on X's base][spectator]" or "[on X's base][friend]" context
- Admin flag: "Spectate Notifications" to toggle spectation announcements
- Admin flag changes now broadcast to all players
- Crafting queue freezes while spectating, resumes on exit
- "Stop spectating" button shows "(crafting paused)" when crafting queue is active
- Surface visibility: other players' surfaces hidden from map sidebar unless friends
Changes:
- GPS ping buttons replaced with spectate buttons in Players GUI
- Friendship is now mutual (requires both sides) instead of one-directional
- Friend/unfriend downgrade: losing friendship while viewing switches to spectator mode
- Spectator force hidden from all player-facing GUIs (Players, Research, Stats)
- Players GUI uses effective force for all comparisons (correct during spectation)
- Vanilla surface naming changed from "st-<index>-<planet>" to "<force>-<planet>"
Bugfixes:
- Fix player color showing as white when spectating (now uses game.get_player lookup)
Version: 0.2.11
Date: 2026-04-04
Features:
- Announce friend/unfriend actions to all players with mutual status indicator
Bugfixes:
- Fix players being stranded on foreign surfaces after exiting GPS remote view
- Fix landing-pen players being moved to foreign surfaces via GPS tag clicks
Version: 0.2.9
Date: 2026-04-03
Features:
- Landing Pen visual overhaul: lab-dark-2 island, water moat, grass ring, ground text
- Add "Buddy Join" admin feature flag (off by default) to gate buddy request system
- New branding: "Solo by design. Legendary by choice."
Changes:
- Replace quality sync polling (every 30 ticks) with event-driven sync on research finished
- Landing Pen chunks now handled via on_chunk_generated (no more grass outside the void)
Bugfixes:
- Fix nav bar buttons not working after server restart / save transfer
- Fix welcome screen crash when on_player_created and on_player_joined_game both fire
Version: 0.2.8
Date: 2026-04-02
Features:
- Research GUI: collapsible player rows (1 row default, expand to see all)
- Research GUI: "You both have researched" section in diff view
- Research GUI: click any tech icon to open it in the tech tree
- Research GUI: Escape navigates back from diff to overview before closing
- Welcome window: added close button and About tab selected by default
- Welcome window: Discord tab uses full logo image
- Admin panel now visible to all admins, not just the host
- Add GitHub Actions workflow to package mod zip on version tags
Changes:
- Remove all periodic GUI polling; all updates are now purely event-driven
- Platforms and admin frames use clear() instead of destroy+recreate (fixes drag jitter)
- Nav bar buttons doubled in size (56x56)
- Landing Pen window positioned below top bar, above Players panel
- Research play time now shows elapsed since spawn, not absolute game time
- Remove em-dashes from About page and README
Bugfixes:
- Fix Players panel reappearing after closing (5-second poll was recreating it)
- Fix admin and Players windows feeling jittery while dragging
Version: 0.2.7
Date: 2026-04-01
Features:
- Add Landing Pen: new players wait in a shared pre-game lobby before spawning
- Add buddy system: pen players can request to join an active player's force
- Add vanilla surface support: each player gets their own nauvis surface
- Add admin panel with runtime feature flags (Landing Pen toggle)
- Add per-player clock tracking (time since spawn)
- Add research comparison panel with tech icon grid and 1-on-1 diff view
- Show Platforms GUI to players in the Landing Pen
Changes:
- Rename Platforms GUI to Players GUI
- Include vanilla surfaces in the player list as "<name>'s base on <Planet>"
- Disabling Landing Pen mid-session immediately spawns all waiting players
Bugfixes:
- Fix landing pen surface shape: out-of-map tiles outside the circle
- Fix spawn button double-fire and duplicate platform creation
- Fix cutscene skip: exit_cutscene() before teleport
- Fix solo force being reset by scenario after cutscene
- Fix teleport retry: keep pending entry until teleport succeeds
Version: 0.2.6
Date: 2026-03-31
Bugfixes:
- Fix Stats button width in Platforms title bar
Version: 0.2.5
Date: 2026-03-31
Features:
- Add per-player production stats GUI with five categories (Ores, Plates, Intermediates, Science, Custom)
- Categories built dynamically from game prototypes; works with overhaul mods
- 12 choose-elem-button columns per category; players can swap any item
- Time range selector: 1m / 10m / 1h / 10h / All time
- Per-player column overrides persisted across sessions
Changes:
- Online/offline status updates instantly via events (no tick delay)
Version: 0.2.4
Date: 2026-03-30
Features:
- Add Platformer mod compatibility: per-player space platform creation and deferred teleport
- Add "Return to my base" button when visiting a foreign surface
Changes:
- Hide the default "player" force from the platforms GUI
- Declare optional dependency on Platformer for correct load ordering
Version: 0.2.3
Date: 2026-03-29
Changes:
- Remove GPS ping button from player name rows; GPS buttons now only appear on platform rows
Version: 0.2.2
Date: 2026-03-29
Changes:
- Remove all hub collision detection hacks (use /unstuck instead)
Version: 0.2.1
Date: 2026-03-29
Bugfixes:
- Fix hub collision fix and /unstuck to use physical_surface/position
- Fix remote view (GPS clicks) incorrectly triggering the collision fix
Version: 0.2.0
Date: 2026-03-29
Changes:
- Remove automatic hub collision repositioning (caused issues with GPS pings)
- Document /unstuck command as the manual alternative
Version: 0.1.1
Date: 2026-03-28
Changes:
- Add thumbnail image for mod portal
- Add homepage URL to info.json
Version: 0.1.0
Date: 2026-03-28
Features:
- Separate forces: each player gets their own force with independent research
- Quality unlocks and space platform access copied from default force
- Neutral diplomacy: players start in cease-fire with all others
- Per-player friend toggle via the Platforms GUI
- Cross-force chat: normal messages broadcast to all forces
- Draggable, collapsible Platforms GUI with live GPS locations
- /platforms command with colored names and clickable GPS pings
- /unstuck command to eject from vehicles and teleport to safety