A comprehensive production planning tool for the PC game Satisfactory, featuring an interactive visual interface for complex factory planning.
Major Milestone: Visual Production Planner Complete!
✅ What works:
- Interactive Visual Interface - Full Avalonia UI with MVVM architecture
- Flow Graph Visualization - Drag-and-drop production nodes with dynamic connection lines
- Multi-Target Production Planning - Handle multiple production chains simultaneously
- Real-time Calculations - Live updates of building counts and production rates
- Complete Game Data Integration - 400+ items, 300+ recipes, 50+ buildings, 50+ milestones
- Milestone Management - Research progression tracking and unlock status
- Advanced Production Algorithms - Dependency resolution and resource optimization
- Clean Modern UI - Professional interface with debugging console (toggle-able)
🚧 In Development:
- Visual icons for buildings and items
- Output item nodes for clearer multi-target visualization
- Enhanced production chain analysis
- Save/load functionality for production plans
- SatisfactoryPlanner.Core - Domain models and basic repository interfaces
- SatisfactoryPlanner.GameData - Game data loading, JSON parsing, icon system
- SatisfactoryPlanner.App - Console application (mainly for testing backend functionality)
- SatisfactoryPlanner.Tests - Unit tests
- SatisfactoryPlanner.Tools - Utilities for data scraping/processing
- .NET 9.0 - Target framework
- Avalonia UI - Planned for cross-platform GUI (not implemented yet)
- MSTest - Unit testing
- JSON - Game data storage format
- .NET 9.0 SDK - Download here
- Visual Studio 2022 or VS Code (recommended for development)
- Git (for cloning the repository)
# Clone the repository
git clone https://github.com/yourusername/SatisfactoryPlanner.git
cd SatisfactoryPlanner
# Build all projects
dotnet build
# Restore NuGet packages (if needed)
dotnet restore# Run the main Avalonia UI application
dotnet run --project SatisfactoryPlanner.AvaloniaFeatures Available:
- Production Planning: Add production targets and see the complete production chain
- Visual Flow Graph: Drag nodes around to arrange your factory layout
- Milestone Manager: Track research progression and building unlocks
- Real-time Updates: Connection lines follow nodes as you move them
- Multi-chain Support: Plan multiple production targets simultaneously
dotnet run --project SatisfactoryPlanner.AppThe console app demonstrates backend functionality and is primarily used for testing core algorithms.
# Run all tests
dotnet test
# Run tests with detailed output
dotnet test --verbosity normal
# Run specific test project
dotnet test SatisfactoryPlanner.TestsThis project is in early development. The console application currently just loads game data and displays some basic information to verify the backend is working correctly.
- Full Avalonia UI Implementation - Modern cross-platform interface
- Interactive Production Flow Graphs - Visual drag-and-drop node system
- Dynamic Connection Lines - Real-time updates as nodes are moved
- Multi-target Production Chains - Support for complex factory planning
- Advanced Production Algorithms - Dependency resolution and flow optimization
- Milestone Integration - Research progression affects available recipes
- MVVM Architecture - Clean separation of concerns with data binding
- Comprehensive Debug System - Toggle-able debug console for development
- Visual Icons - Building and item icons for enhanced clarity
- Output Item Nodes - Dedicated nodes for final products
- Enhanced UI Polish - Improved styling and user experience
- Save/Load System - Persist production plans between sessions
- Factory Layout Tools - Spatial planning and optimization features
The project follows a clean layered architecture with MVVM pattern:
- SatisfactoryPlanner.Avalonia - Main UI application with interactive visual planning
- SatisfactoryPlanner.GameData - JSON loading, game data models, and repositories
- SatisfactoryPlanner.Core - Domain logic, production algorithms, and business rules
- SatisfactoryPlanner.App - Console application for testing and debugging
- SatisfactoryPlanner.Tests - Comprehensive unit test coverage
- ViewModels - MVVM data binding with CommunityToolkit.Mvvm
- Production Graph Builder - Advanced dependency resolution algorithms
- Flow Graph Positioning - Automatic layout of production chains
- Dynamic Connection System - Real-time visual connections between nodes
- Milestone System - Research progression and recipe unlocking
The project includes data for:
- ~400 items (raw materials, products)
- ~300 recipes (standard and alternate)
- ~50 buildings (production facilities)
- ~50 milestones (research progression)
MIT License - see LICENSE file for details.