Steam Workshop Collection Manager

A Python GUI application for extracting Steam Workshop mod IDs from RimWorld mod collections with configurable settings.

Features

  • Dark themed Windows-style GUI
  • Configurable collection URLs via .env file
  • Automatic workshop path derivation from RimWorld game path
  • ModsConfig.xml integration for active mod tracking
  • Real-time output display with scrollable text areas
  • Local mod folder listing and comparison

Installation

  1. Make sure you have Python 3.6+ installed
  2. Install required dependencies:
    pip install -r requirements.txt
    

Configuration

The application uses a .env file for configuration. You can modify the default settings:

# Default Collection URLs
CORE_COLLECTION_URL=https://steamcommunity.com/workshop/filedetails/?id=3521297585
CONTENT_COLLECTION_URL=steam://openurl/https://steamcommunity.com/sharedfiles/filedetails/?id=3521319712
COSMETICS_COLLECTION_URL=steam://openurl/https://steamcommunity.com/sharedfiles/filedetails/?id=3637541646

# ModsConfig.xml Path Template
MODSCONFIG_PATH_TEMPLATE=%USERPROFILE%\AppData\LocalLow\Ludeon Studios\RimWorld by Ludeon Studios\Config\ModsConfig.xml

Usage

  1. Run the application:

    python steam_workshop_gui.py
    
  2. Set RimWorld Path:

    • Right-click RimWorld in Steam → Manage → Browse local files
    • Copy and paste that path into the "RimWorld Game Folder" field
    • The workshop path will automatically derive to steamapps\workshop\content\294100
  3. ModsConfig.xml:

    • The path is automatically detected
    • You can manually edit if needed
    • Click "Load Active Mods" to see currently enabled mods
  4. Collection Analysis:

    • Modify collection URLs or use defaults from .env
    • Click "Extract Workshop IDs" to process collections
    • See which mods are [INSTALLED] or [MISSING]
  5. Local Mod Management:

    • Click "List Local Mod Folders" to see downloaded workshop mods
    • Compare with collection requirements and active mods

File Structure

  • steam_workshop_gui.py - Main application
  • .env - Configuration file
  • requirements.txt - Python dependencies
  • README.md - This file

URL Formats Supported

  • Standard Steam Workshop URLs: https://steamcommunity.com/workshop/filedetails/?id=XXXXXXXXX
  • Steam protocol URLs: steam://openurl/https://steamcommunity.com/sharedfiles/filedetails/?id=XXXXXXXXX

Notes

  • All paths are editable in the GUI
  • Configuration URLs are loaded from .env file on startup
  • Workshop path auto-derives from RimWorld path (steamapps\common\RimWorld → steamapps\workshop\content\294100)
  • Processing may take a few seconds depending on collection size
  • Workshop IDs are extracted from HTML content of collection pages
Description
No description provided
Readme MIT 256 KiB
Languages
Python 100%