2026-02-04 15:48:36 +08:00
2026-02-04 15:48:36 +08:00
2026-02-04 13:54:25 +08:00
2026-02-04 11:56:23 +08:00
2026-02-04 12:46:58 +08:00
2026-02-04 13:27:43 +08:00
2026-02-04 15:48:36 +08:00
2026-02-04 09:00:07 +08:00
2026-02-04 15:48:36 +08:00
2026-02-04 13:54:25 +08:00
2026-02-04 13:27:43 +08:00
2026-02-04 15:32:32 +08:00

FCP Mod Updater

A command-line tool for managing Fallout Collaboration Project RimWorld mods. Features both interactive and automated workflows for discovering, updating, installing, and managing FCP mods.

Features

  • Auto-discover RimWorld installation across Steam, GOG, and Lutris on Windows, Linux, and macOS
  • Interactive mode with rich terminal UI for browsing, updating, and managing mods
  • Batch update mode for automation scripts
  • Install new mods directly from the FCP GitHub organization
  • Convert local mods (ZIP downloads) to Git repositories for easy updates
  • Branch/commit switching for testing specific mod versions
  • Status overview showing update availability, local changes, and sync state

Requirements

  • .NET 10.0 Runtime or later (Except for Self-Contained Releases)
  • Git installed and available in PATH

Installation

Pre-Compiled Releases

Releases will be uploaded to the releases tab periodically, versions suffixed with selfcontained don't require .NET 10 to be installed, while other versions are smaller in size but do require .NET 10.

Build from Source

git clone https://github.com/FalloutCollaborationProject/FCPModUpdater.git
cd FCPModUpdater
dotnet build

Usage

Interactive Mode (Default)

dotnet run -- scan

Launches the interactive menu where you can:

  • View status of all installed FCP mods
  • Update mods with available changes
  • Install new mods from FCP
  • Uninstall mods
  • Convert local (non-git) mods to git repositories
  • Switch mod versions (branches/commits)

Batch Update Mode

dotnet run -- update

Non-interactive mode that updates all FCP mods with available changes. Ideal for automation and scheduled tasks. Returns exit code 0 on success, 1 if any updates fail.

Options

Both commands accept:

  • -d, --directory <path> — Path to RimWorld Mods folder (auto-discovers if omitted)
dotnet run -- scan --directory "/path/to/RimWorld/Mods"
dotnet run -- update -d "C:\Games\RimWorld\Mods"

Environment Variables

Variable Description
GITHUB_TOKEN Optional. GitHub personal access token to increase API rate limit from 60 to 5000 requests/hour

How Mods Are Identified

FCP mods are identified by:

  1. Git remote URL containing github.com/FalloutCollaborationProject/
  2. Folder name matching an FCP repository (supports ZIP downloads with branch suffixes like -main)

Only repositories tagged with the rimworld-mod topic are included.

Status Icons

Icon Status Description
Up to Date No updates available
Behind Updates available
Ahead Local commits not on remote
Diverged Both behind and ahead
~ Modified Has uncommitted local changes
Not Git Local folder (not a git repo)
Error Git operation failed
S
Description
No description provided
Readme
691 KiB
Languages
C# 93%
Shell 3.9%
Batchfile 3.1%