docs: flatten player sidebar; rename WorkshopManager to GregModManager

Made-with: Cursor
This commit is contained in:
Marvin
2026-04-10 03:55:28 +02:00
parent af20f95965
commit 9f37e5d6ef
13 changed files with 68 additions and 80 deletions

View File

@@ -15,7 +15,7 @@ These folders typically sit **next to each other** in a developer workspace (see
| Area | Path (on disk) | Role | | Area | Path (on disk) | Role |
|------|----------------|------| |------|----------------|------|
| **Framework core** | `gregCore/` | Runtime, hooks, Harmony, bridge — main project `gregCore/framework/FrikaMF.csproj`; templates under `gregCore/Templates/` | | **Framework core** | `gregCore/` | Runtime, hooks, Harmony, bridge — build **`gregCore/FrikaMF.sln`**; main project **`gregCore/framework/FrikaMF.csproj`**; templates under `gregCore/Templates/` |
| **Mods (split repos)** | `gregMod.<Name>/` (directly under `gregFramework/`) | Standalone gameplay mods (`FMF.*` assemblies); **not** nested under a `gregMods/` umbrella | | **Mods (split repos)** | `gregMod.<Name>/` (directly under `gregFramework/`) | Standalone gameplay mods (`FMF.*` assemblies); **not** nested under a `gregMods/` umbrella |
| **Extensions / framework plugins (split repos)** | `gregExt.<Name>/` (directly under `gregFramework/`) | FFM framework plugins (`FFM.Plugin.*`); **not** under legacy `StandaloneMods/` paths | | **Extensions / framework plugins (split repos)** | `gregExt.<Name>/` (directly under `gregFramework/`) | FFM framework plugins (`FFM.Plugin.*`); **not** under legacy `StandaloneMods/` paths |
| **Documentation** | `gregWiki/` ([`mleem97/gregWiki`](https://github.com/mleem97/gregWiki)) | **This site**: Docusaurus app at repo root, all authored pages under `docs/` | | **Documentation** | `gregWiki/` ([`mleem97/gregWiki`](https://github.com/mleem97/gregWiki)) | **This site**: Docusaurus app at repo root, all authored pages under `docs/` |
@@ -32,7 +32,7 @@ These folders typically sit **next to each other** in a developer workspace (see
| Concern | Where to look | | Concern | Where to look |
|---------|----------------| |---------|----------------|
| Framework `.csproj` | `gregCore/framework/FrikaMF.csproj` | | Framework `.csproj` | `gregCore/framework/FrikaMF.csproj` (see `gregCore/FrikaMF.sln`; a root `gregCore/FrikaMF.csproj` may exist for alternate layouts) |
| Plugins (`FFM.Plugin.*`) — authoring | `gregExt.<Name>/` (e.g. `gregExt.AssetExporter/`) | | Plugins (`FFM.Plugin.*`) — authoring | `gregExt.<Name>/` (e.g. `gregExt.AssetExporter/`) |
| Plugins — optional mirrors | `gregCore/plugins/FFM.Plugin.*` | | Plugins — optional mirrors | `gregCore/plugins/FFM.Plugin.*` |
| Mod sources (`FMF.*`) | `gregMod.<Name>/` | | Mod sources (`FMF.*`) | `gregMod.<Name>/` |
@@ -45,21 +45,21 @@ Documentation is maintained in this repository under `docs/`; historical GitHub
## .NET projects on disk (`*.csproj`) ## .NET projects on disk (`*.csproj`)
- **Framework:** `gregCore/framework/FrikaMF.csproj` (solution `gregCore/FrikaMF.sln` when present). - **Framework:** `gregCore/framework/FrikaMF.csproj` via **`gregCore/FrikaMF.sln`**.
- **Plugins:** primary checkouts **`gregExt.<Name>/`** (assembly `FFM.Plugin.*.dll`); duplicates under `gregCore/plugins/` for all-in-one builds. - **Plugins:** primary checkouts **`gregExt.<Name>/`** (assembly `FFM.Plugin.*.dll`); duplicates under `gregCore/plugins/` for all-in-one builds.
- **Mods:** **`gregMod.<Name>/`** at workspace root (`FMF.*.csproj` names vary). - **Mods:** **`gregMod.<Name>/`** at workspace root (`FMF.*.csproj` names vary).
- **WorkshopManager:** `gregModmanager/WorkshopUploader.csproj` (separate from the MelonLoader framework solution). - **GregModManager:** `gregModmanager/WorkshopUploader.csproj` (separate from the MelonLoader framework solution).
## Build status (framework project) ## Build status (framework project)
- `gregCore/framework/FrikaMF.csproj` does not compile the WorkshopManager app; that builds from `gregModmanager/WorkshopUploader.csproj`. - `gregCore/framework/FrikaMF.csproj` does not compile GregModManager; that builds from `gregModmanager/WorkshopUploader.csproj`.
- `dotnet build` on the framework solution (when present under `gregCore/`) builds core + optional `gregCore/plugins/*`**not** split-repo `gregExt.*` / `gregMod.*` folders unless you add them to the solution. - `dotnet build` on the framework solution (when present under `gregCore/`) builds core + optional `gregCore/plugins/*`**not** split-repo `gregExt.*` / `gregMod.*` folders unless you add them to the solution.
## `FrikaMF.sln` drift (action items) ## `FrikaMF.sln` drift (action items)
1. **Mods outside solution**: Standalone mod projects under `gregMod.*` are usually **not** in `FrikaMF.sln`; build them per repo or add them if you want one `dotnet build` for everything. 1. **Mods outside solution**: Standalone mod projects under `gregMod.*` are usually **not** in `FrikaMF.sln`; build them per repo or add them if you want one `dotnet build` for everything.
2. **Templates in `framework/FrikaMF.csproj`**: Template sources under `Templates/` may fail `dotnet build framework/FrikaMF.csproj` with `CS0122` if `Core` visibility does not match template expectations — treat templates as **samples** until the project graph is cleaned up. 2. **Templates vs framework visibility**: Template projects under `gregCore/Templates/` may fail `dotnet build` with `CS0122` if internal API visibility does not match template expectations — treat templates as **samples** until the project graph is aligned.
## Documentation (Docusaurus) ## Documentation (Docusaurus)
@@ -71,9 +71,9 @@ Documentation is maintained in this repository under `docs/`; historical GitHub
## Hook / event sources of truth (code) ## Hook / event sources of truth (code)
- String constants: [`gregCore/framework/FrikaMF/HookNames.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/HookNames.cs) (`FFM.*` hook IDs today). - **Runtime strings + id map:** [`gregCore/framework/FrikaMF/HookNames.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/HookNames.cs) and [`EventIds.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/EventIds.cs) — see [FMF hooks catalog](../reference/fmf-hooks-catalog.md).
- Numeric IDs: [`gregCore/framework/FrikaMF/EventIds.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/EventIds.cs). - **Canonical `greg.*` registry (JSON):** `gregCore/gregFramework/greg_hooks.json` — regenerate with [`scripts/Generate-GregHooksFromIl2CppDump.ps1`](https://github.com/mleem97/gregFramework/blob/main/gregCore/scripts/Generate-GregHooksFromIl2CppDump.ps1); overview [Greg hooks & event runtime](../framework/greg-hooks-and-events.md).
- Generated wiki mirror: run [`tools/Generate-FmfHookCatalog.ps1`](https://github.com/mleem97/gregFramework/blob/main/tools/Generate-FmfHookCatalog.ps1) → [`fmf-hooks-catalog`](../reference/fmf-hooks-catalog.md). - **Wiki catalog generator:** [`gregCore/tools/Generate-FmfHookCatalog.ps1`](https://github.com/mleem97/gregFramework/blob/main/gregCore/tools/Generate-FmfHookCatalog.ps1) → updates [`fmf-hooks-catalog`](../reference/fmf-hooks-catalog.md) when run from a workspace that includes **gregWiki** next to **gregCore**.
## Debugging (MelonLoader, IL2CPP, Unity) ## Debugging (MelonLoader, IL2CPP, Unity)

View File

@@ -10,7 +10,7 @@ description: Technical documentation for mod authors, plugin authors, and repo c
Use this hub if you **build mods or plugins**, work on **framework** code, or contribute to **repositories and docs**. Use this hub if you **build mods or plugins**, work on **framework** code, or contribute to **repositories and docs**.
**Players** should start with **[Play & mods](/wiki/guides/players/overview)** (sidebar above) — install, Workshop, troubleshooting. **Players** should use the **short list at the top of the sidebar** (starting with [End users](/wiki/guides/players/overview)) — install, Workshop, troubleshooting.
**Architecture:** read **[System architecture & documentation principles](/wiki/meta/system-architecture-principles)** first — canonical **ModManager → Framework → Plugins → Mods** model, priorities (stability, maintainability, DX), and wiki writing rules. **Architecture:** read **[System architecture & documentation principles](/wiki/meta/system-architecture-principles)** first — canonical **ModManager → Framework → Plugins → Mods** model, priorities (stability, maintainability, DX), and wiki writing rules.
@@ -23,6 +23,7 @@ Use this hub if you **build mods or plugins**, work on **framework** code, or co
## Framework ## Framework
- [Architecture](/wiki/framework/architecture) - [Architecture](/wiki/framework/architecture)
- [Greg hooks & event runtime](/wiki/framework/greg-hooks-and-events)
- [FMF hooks](/wiki/framework/fmf-hooks) - [FMF hooks](/wiki/framework/fmf-hooks)
- [Hexmod](/wiki/framework/hexmod) - [Hexmod](/wiki/framework/hexmod)
@@ -57,7 +58,7 @@ Use this hub if you **build mods or plugins**, work on **framework** code, or co
- [FMF hook naming](/wiki/reference/fmf-hook-naming) - [FMF hook naming](/wiki/reference/fmf-hook-naming)
- [FMF hooks catalog](/wiki/reference/fmf-hooks-catalog) - [FMF hooks catalog](/wiki/reference/fmf-hooks-catalog)
- [MCP server](/wiki/reference/mcp-server) - [MCP server](/wiki/reference/mcp-server)
- [Release channels](/wiki/reference/release-channels) — also linked under **Play & mods** - [Release channels](/wiki/reference/release-channels) — same page is linked next to the other player-facing entries
- [Reference data files](/wiki/reference/reference-data-files) - [Reference data files](/wiki/reference/reference-data-files)
- [Modding language requirement](/wiki/reference/modding-language-requirement) - [Modding language requirement](/wiki/reference/modding-language-requirement)

View File

@@ -6,10 +6,10 @@ description: "Split-repo workspace: gregFramework layout, building the core, and
The workspace is **multi-repo** with a local `gregFramework/` folder containing standalone repositories. **Logical stack:** **ModManager → framework / SDK → plugins → mods** — see [System architecture & documentation principles](/wiki/meta/system-architecture-principles). The workspace is **multi-repo** with a local `gregFramework/` folder containing standalone repositories. **Logical stack:** **ModManager → framework / SDK → plugins → mods** — see [System architecture & documentation principles](/wiki/meta/system-architecture-principles).
- `gregCore/` — core SDK (`gregCore/framework/FrikaMF.csproj`), MCP server under `gregCore/mcp-server/` - `gregCore/` — core SDK: build **`gregCore/FrikaMF.sln`** (main project **`gregCore/framework/FrikaMF.csproj`**); MCP server under `gregCore/mcp-server/`
- `gregMod.<Name>/` — gameplay mods (`FMF.*`), **flat** next to `gregCore/` (legacy umbrella `gregMods/` is deprecated) - `gregMod.<Name>/` — gameplay mods (`FMF.*`), **flat** next to `gregCore/` (legacy umbrella `gregMods/` is deprecated)
- `gregExt.<Name>/` — framework plugins (`FFM.Plugin.*`), same flat layout (legacy `gregExtensions/` deprecated) - `gregExt.<Name>/` — framework plugins (`FFM.Plugin.*`), same flat layout (legacy `gregExtensions/` deprecated)
- `gregModmanager/`**Gregtools Modmanager** (WorkshopManager; `WorkshopUploader.csproj`) - `gregModmanager/`**GregModManager** / **Gregtools Modmanager** (`WorkshopUploader.csproj`)
- `gregDataCenterExporter/` — exporter, templates, hook JSON mirrors - `gregDataCenterExporter/` — exporter, templates, hook JSON mirrors
- `gregWiki/` — this documentation site - `gregWiki/` — this documentation site
@@ -25,11 +25,12 @@ dotnet build gregCore/FrikaMF.sln -c Release
Or open `gregCore/FrikaMF.sln` in your IDE. Or open `gregCore/FrikaMF.sln` in your IDE.
## Hook naming ## Hooks and registries
- **Target convention:** `FMF.<DOMAIN>.<Event>` (see [`CONTRIBUTING.md`](https://github.com/mleem97/gregFramework/blob/main/CONTRIBUTING.md)). - **Docs / policy:** target public identifiers **`FMF.<DOMAIN>.<Event>`** — [FMF hook naming](/wiki/reference/fmf-hook-naming) and [`CONTRIBUTING.md`](https://github.com/mleem97/gregFramework/blob/main/CONTRIBUTING.md).
- **Registry (example path in workspace):** [`gregDataCenterExporter/FrikaModFramework/fmf_hooks.json`](https://github.com/mleem97/gregFramework/blob/main/gregDataCenterExporter/FrikaModFramework/fmf_hooks.json) (exact copy may exist in other repos). - **Runtime string table + numeric `EventIds`:** [`gregCore/framework/FrikaMF/HookNames.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/HookNames.cs) and [`EventIds.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/EventIds.cs) — today these resolve the Rust/game pipeline to **`FFM.*`** literals; see [FMF hooks catalog](/wiki/reference/fmf-hooks-catalog).
- **Legacy runtime strings** may still use `FFM.*` in [`HookNames.cs`](https://github.com/mleem97/gregFramework/blob/main/gregCore/framework/FrikaMF/HookNames.cs) until migrated. - **Canonical `greg.*` registry (JSON v2):** `gregCore/gregFramework/greg_hooks.json` — Il2Cpp-driven list for codegen and MCP; regenerate with **`gregCore/scripts/Generate-GregHooksFromIl2CppDump.ps1`**. Overview: [Greg hooks & event runtime](/wiki/framework/greg-hooks-and-events).
- **Optional legacy declarative file:** `fmf_hooks.json` (e.g. under `gregDataCenterExporter/FrikaModFramework/`) for older tooling — see [MCP server](/wiki/reference/mcp-server).
## Start a mod ## Start a mod

View File

@@ -19,10 +19,10 @@ This folder is the **single source of truth** for the public Docusaurus site. Th
| **Framework** | [`framework/`](../framework/architecture.md) | Architecture, hooks, Hexmod. | | **Framework** | [`framework/`](../framework/architecture.md) | Architecture, hooks, Hexmod. |
| **Plugins** | [`plugins/`](../plugins/index.md) | `FFM.Plugin.*` assemblies; repos `gregExt.*` on disk. | | **Plugins** | [`plugins/`](../plugins/index.md) | `FFM.Plugin.*` assemblies; repos `gregExt.*` on disk. |
| **Mods** | [`mods/`](../mods/index.md) | Gameplay mods (`FMF.*`); repos `gregMod.*` on disk. | | **Mods** | [`mods/`](../mods/index.md) | Gameplay mods (`FMF.*`); repos `gregMod.*` on disk. |
| **Tools** | [`tools/`](../tools/workshop-uploader.md) | Workshop uploader and related. | | **Tools** | [`tools/`](../tools/workshop-uploader.md) | GregModManager (Gregtools Modmanager / `WorkshopUploader` project). |
| **Guides** | [`guides/`](../guides/players/overview.md) | Role-based paths (players, mod developers, contributors, sponsors). | | **Guides** | [`guides/`](../guides/players/overview.md) | Role-based paths (players, mod developers, contributors, sponsors). |
| **Releases** | [`releases/`](../releases/index.mdx) | Per-artifact release notes. | | **Releases** | [`releases/`](../releases/index.mdx) | Per-artifact release notes. |
| **Reference** | [`reference/`](../reference/wiki-mapping.md) | Naming, catalogs, [`greg_hooks` registry](../reference/greg-hooks-registry.md), MCP, release channels. | | **Reference** | [`reference/`](../reference/wiki-mapping.md) | Naming, catalogs, MCP, release channels. |
| **Contributors** | [`contributors/`](../contributors/repo-inventory.md) | Repo inventory, Docusaurus workflow, design system. | | **Contributors** | [`contributors/`](../contributors/repo-inventory.md) | Repo inventory, Docusaurus workflow, design system. |
| **Roadmap** | [`roadmap/`](../roadmap/unified-roadmap.md) | Planning docs. | | **Roadmap** | [`roadmap/`](../roadmap/unified-roadmap.md) | Planning docs. |
| **Topics hub** | [`topics/`](../topics/index.md) | Cross-cutting overviews (assets, multiplayer, security, …). | | **Topics hub** | [`topics/`](../topics/index.md) | Cross-cutting overviews (assets, multiplayer, security, …). |

View File

@@ -1,22 +1,22 @@
--- ---
id: contributor-workshop id: contributor-workshop
title: Contributor Guide — WorkshopManager title: Contributor Guide — GregModManager
sidebar_label: Contributor Guide sidebar_label: Contributor Guide
description: Development setup, building, publishing workflow, and release process for the WorkshopManager. description: Development setup, building, publishing workflow, and release process for GregModManager.
sidebar_position: 20 sidebar_position: 20
tags: tags:
- audience:contributor - audience:contributor
- workshop - workshop
--- ---
# Contributor Guide — WorkshopManager # Contributor Guide — GregModManager
This guide covers the development workflow for the WorkshopManager and how to publish mods to the Steam Workshop. This guide covers the development workflow for **GregModManager** and how to publish mods to the Steam Workshop.
## Prerequisites ## Prerequisites
- **Visual Studio 2022** with **.NET Multi-platform App UI** and **Windows App SDK** workloads. - **Visual Studio 2022** with **.NET Multi-platform App UI** and **Windows App SDK** workloads.
- **.NET 9 SDK** (for the WorkshopManager MAUI app). - **.NET 9 SDK** (for the GregModManager MAUI app).
- **.NET 6 SDK** (for framework, plugins, and mods targeting MelonLoader). - **.NET 6 SDK** (for framework, plugins, and mods targeting MelonLoader).
- **Steam** with Data Center installed (App ID 4170200). - **Steam** with Data Center installed (App ID 4170200).
@@ -26,10 +26,10 @@ Paths are relative to the **`gregFramework/`** workspace root (split repos clone
| Path | Purpose | | Path | Purpose |
|------|---------| |------|---------|
| `gregCore/framework/FrikaMF.csproj` | Core MelonLoader framework DLL | | `gregCore/framework/FrikaMF.csproj` (via `gregCore/FrikaMF.sln`) | Core MelonLoader framework DLL |
| `gregExt.*/` | FFM framework plugins (`FFM.Plugin.*` assemblies — one repo per plugin) | | `gregExt.*/` | FFM framework plugins (`FFM.Plugin.*` assemblies — one repo per plugin) |
| `gregMod.*/` | Standalone gameplay mods (`FMF.*` assemblies) | | `gregMod.*/` | Standalone gameplay mods (`FMF.*` assemblies) |
| `gregModmanager/WorkshopUploader.csproj` | WorkshopManager MAUI app | | `gregModmanager/WorkshopUploader.csproj` | GregModManager MAUI app |
| `gregFramework/scripts/Deploy-Release-ToWorkshop.ps1` | Package all builds into Workshop folders (when present in your clone) | | `gregFramework/scripts/Deploy-Release-ToWorkshop.ps1` | Package all builds into Workshop folders (when present in your clone) |
| `gregFramework/scripts/Deploy-Release-ToDataCenter.ps1` | Deploy to game for local testing | | `gregFramework/scripts/Deploy-Release-ToDataCenter.ps1` | Deploy to game for local testing |
@@ -50,7 +50,7 @@ dotnet build gregMod.HexLabelMod/FMF.HexLabelMod.csproj -c Release
dotnet build gregMod.LangCompatBridge/FMF.JoniMLCompatMod.csproj -c Release dotnet build gregMod.LangCompatBridge/FMF.JoniMLCompatMod.csproj -c Release
``` ```
### Build WorkshopManager only ### Build GregModManager only
```bash ```bash
dotnet build gregModmanager/WorkshopUploader.csproj -c Release dotnet build gregModmanager/WorkshopUploader.csproj -c Release
@@ -96,7 +96,7 @@ This script:
### GUI (recommended) ### GUI (recommended)
1. Run the WorkshopManager app. 1. Run the GregModManager app.
2. Open a project from the **Projects** tab. 2. Open a project from the **Projects** tab.
3. Edit title, description, tags, visibility, and preview image. 3. Edit title, description, tags, visibility, and preview image.
4. Write **change notes** describing what changed. 4. Write **change notes** describing what changed.
@@ -135,4 +135,4 @@ The `SteamWorkshopService` in `gregModmanager/Services/SteamWorkshopService.cs`
1. Create the mod as a split repo folder `gregMod.<Name>/` under the gregFramework workspace (or clone an existing `gregMod.*` repo). 1. Create the mod as a split repo folder `gregMod.<Name>/` under the gregFramework workspace (or clone an existing `gregMod.*` repo).
2. Add it to the `$mods` array in `Deploy-Release-ToWorkshop.ps1`. 2. Add it to the `$mods` array in `Deploy-Release-ToWorkshop.ps1`.
3. Run the deploy script. 3. Run the deploy script.
4. Open the new workshop project in the WorkshopManager and publish. 4. Open the new workshop project in the GregModManager and publish.

View File

@@ -39,7 +39,7 @@ The following components are built and packaged for Steam Workshop distribution:
| FMF.HexLabelMod | `FMF.HexLabelMod.dll` | `content/Mods/` | modded, melonloader, mod | | FMF.HexLabelMod | `FMF.HexLabelMod.dll` | `content/Mods/` | modded, melonloader, mod |
| FMF.JoniMLCompatMod | `FMF.JoniMLCompatMod.dll` | `content/Mods/` | modded, melonloader, mod | | FMF.JoniMLCompatMod | `FMF.JoniMLCompatMod.dll` | `content/Mods/` | modded, melonloader, mod |
### Gregtools Modmanager (WorkshopManager) ### Gregtools Modmanager (GregModManager)
| Version | Component | Target | Description | | Version | Component | Target | Description |
|---------|-----------|--------|-------------| |---------|-----------|--------|-------------|
@@ -51,7 +51,7 @@ The following components are built and packaged for Steam Workshop distribution:
1. Install **MelonLoader** (IL2CPP) for Data Center. 1. Install **MelonLoader** (IL2CPP) for Data Center.
2. Start the game once, then close it. 2. Start the game once, then close it.
3. Subscribe to mods via the **WorkshopManager** Mod Store or the [Steam Workshop](https://steamcommunity.com/app/4170200/workshop/). 3. Subscribe to mods via the **GregModManager** Mod Store or the [Steam Workshop](https://steamcommunity.com/app/4170200/workshop/).
4. Start the game. 4. Start the game.
### Manual installation ### Manual installation

View File

@@ -1,27 +1,27 @@
--- ---
id: enduser-workshop id: enduser-workshop
title: End-User Guide — WorkshopManager title: End-User Guide — GregModManager
sidebar_label: End-User Guide sidebar_label: End-User Guide
description: How to browse, install, and manage Data Center mods using the WorkshopManager. description: How to browse, install, and manage Data Center mods using GregModManager (Gregtools Modmanager).
sidebar_position: 10 sidebar_position: 10
tags: tags:
- audience:enduser - audience:enduser
- workshop - workshop
--- ---
# End-User Guide — WorkshopManager # End-User Guide — GregModManager
This guide is for players who want to **install and manage mods** for Data Center using the WorkshopManager desktop app. This guide is for players who want to **install and manage mods** for Data Center using **GregModManager** — the Gregtools desktop app (executable on disk is still `WorkshopUploader.exe`; sources live under **`gregModmanager/`**).
## What you need ## What you need
- **Data Center** installed via Steam. - **Data Center** installed via Steam.
- **Steam** running and logged in. - **Steam** running and logged in.
- **WorkshopManager** (`WorkshopUploader.exe`) — either built from source or provided as a release. - **GregModManager** (`WorkshopUploader.exe` in release builds) — either built from source or installed from a release.
## Installation ## Installation
You can run WorkshopManager from **any folder you prefer** (for example `Program Files`, Desktop, Downloads, or a folder next to the game). **Source code** for the app lives in the repo folder **`gregModmanager/`** (release ZIPs ship `WorkshopUploader.exe` / **Gregtools Modmanager**). You can run GregModManager from **any folder you prefer** (for example `Program Files`, Desktop, Downloads, or a folder next to the game). **Source code** for the app lives in the repo folder **`gregModmanager/`** (release ZIPs ship `WorkshopUploader.exe` / **Gregtools Modmanager**).
### Option A — Installer setup (recommended) ### Option A — Installer setup (recommended)
@@ -31,7 +31,7 @@ You can run WorkshopManager from **any folder you prefer** (for example `Program
### Option B — Portable / ZIP build ### Option B — Portable / ZIP build
1. Download or build the WorkshopManager files. 1. Download or build the GregModManager files.
2. Extract/copy the folder to any location you want. 2. Extract/copy the folder to any location you want.
3. Launch `WorkshopUploader.exe` directly from that folder. 3. Launch `WorkshopUploader.exe` directly from that folder.

View File

@@ -12,9 +12,9 @@ description: Help for Data Center players using mods — install, Workshop, trou
## Players — start here ## Players — start here
1. **[End users](/wiki/guides/players/overview)** — install, update, troubleshooting 1. **[End users](/wiki/guides/players/overview)** — install, update, troubleshooting
2. **[WorkshopManager guide](/wiki/guides/players/enduser-workshop)** — browse and install mods 2. **[GregModManager (players)](/wiki/guides/players/enduser-workshop)** — browse and install mods
3. **[Release channels](/wiki/reference/release-channels)** — Steam Workshop vs GitHub 3. **[Release channels](/wiki/reference/release-channels)** — Steam Workshop vs GitHub
4. **[WorkshopManager (tool)](/wiki/tools/workshop-uploader)** — desktop app for Workshop content 4. **[GregModManager (full tool reference)](/wiki/tools/workshop-uploader)** — MAUI app: Mod Store, uploads, metadata
[**Mod catalog**](/mods) lists modules with links to docs and downloads. [**Mod catalog**](/mods) lists modules with links to docs and downloads.
@@ -26,4 +26,4 @@ Everything for **building mods**, **FFM plugins**, hooks, CI, and **contributing
Technical docs follow one stack model: **ModManager (MAUI) → framework / SDK → plugins → mods** — explained in **[System architecture & documentation principles](/wiki/meta/system-architecture-principles)**. Technical docs follow one stack model: **ModManager (MAUI) → framework / SDK → plugins → mods** — explained in **[System architecture & documentation principles](/wiki/meta/system-architecture-principles)**.
Do not use the sidebars technical sections unless you are developing — the default view stays short on purpose. Do not open **Developers & contributors** unless you are building or maintaining code — the first entries in the sidebar stay short on purpose.

View File

@@ -1,12 +1,12 @@
--- ---
title: WorkshopManager title: GregModManager
sidebar_label: WorkshopManager sidebar_label: GregModManager
description: Windows desktop app for managing Steam Workshop content, browsing mods, and publishing for Data Center (FrikaMF). description: Windows desktop app (Gregtools Modmanager) for Steam Workshop content, browsing mods, and publishing for Data Center.
--- ---
# WorkshopManager # GregModManager
**WorkshopManager** is a **.NET MAUI** desktop app for **Windows** that serves as a full-featured Steam Workshop client for *Data Center*. It combines content authoring (publish/update), a **Mod Store** for browsing and installing community mods, and a **Mod Manager** for dependency health checks. **GregModManager** (Gregtools Modmanager; project `WorkshopUploader.csproj`, executable **`WorkshopUploader.exe`**) is a **.NET MAUI** desktop app for **Windows** that serves as a full-featured Steam Workshop client for *Data Center*. It combines content authoring (publish/update), a **Mod Store** for browsing and installing community mods, and a **Mod Manager** for dependency health checks.
## Features ## Features

View File

@@ -10,10 +10,10 @@ The **gregFramework** folder groups several repositories (split layout). Use thi
| Area | Folder | Role | | Area | Folder | Role |
|------|--------|------| |------|--------|------|
| **Framework core** | `gregCore/` | MelonLoader host (`gregCore/framework/FrikaMF.csproj`), templates, **`gregCore/mcp-server/`**, optional `gregCore/plugins/` mirrors | | **Framework core** | `gregCore/` | MelonLoader host: **`gregCore/FrikaMF.sln`** / **`gregCore/framework/FrikaMF.csproj`**, templates, **`gregCore/mcp-server/`**, optional `gregCore/plugins/` mirrors |
| **Gameplay mods** | `gregMod.<Name>/` | Standalone mods (`FMF.*`) — **directly under `gregFramework/`** (the `gregMods/` umbrella is deprecated) | | **Gameplay mods** | `gregMod.<Name>/` | Standalone mods (`FMF.*`) — **directly under `gregFramework/`** (the `gregMods/` umbrella is deprecated) |
| **Framework plugins** | `gregExt.<Name>/` | FFM plugins (`FFM.Plugin.*`) — **directly under `gregFramework/`** (the `gregExtensions/` umbrella is deprecated) | | **Framework plugins** | `gregExt.<Name>/` | FFM plugins (`FFM.Plugin.*`) — **directly under `gregFramework/`** (the `gregExtensions/` umbrella is deprecated) |
| **ModManager (MAUI)** | `gregModmanager/` | **Gregtools Modmanager** — UI for managing mods/plugins; `WorkshopUploader.csproj`, **`WorkshopUploader.exe`**. See [Architecture principles](/wiki/meta/system-architecture-principles). | | **GregModManager (MAUI)** | `gregModmanager/` | **Gregtools Modmanager** — UI for managing mods/plugins; `WorkshopUploader.csproj`, **`WorkshopUploader.exe`**. See [Architecture principles](/wiki/meta/system-architecture-principles). |
| **Data Center exporter / assets** | `gregDataCenterExporter/` | Templates, exporter tooling, `FrikaModFramework/fmf_hooks.json` (among copies) | | **Data Center exporter / assets** | `gregDataCenterExporter/` | Templates, exporter tooling, `FrikaModFramework/fmf_hooks.json` (among copies) |
| **Documentation** | `gregWiki/` | This Docusaurus site (`docs/`) | | **Documentation** | `gregWiki/` | This Docusaurus site (`docs/`) |
| **Mod store / web (if cloned)** | `gregStore/` | Private Next.js modstore stack (`web/`, …) — optional sibling repo | | **Mod store / web (if cloned)** | `gregStore/` | Private Next.js modstore stack (`web/`, …) — optional sibling repo |

View File

@@ -2,16 +2,13 @@
const sidebars = { const sidebars = {
docs: [ docs: [
'intro', 'intro',
{ 'guides/players/overview',
type: 'category', 'guides/players/enduser-workshop',
label: 'Play & mods', 'guides/players/audiences-overview',
collapsed: false, 'guides/players/newbies',
items: [ 'guides/players/intermediates',
'guides/players/overview', 'guides/players/professionals',
'guides/players/enduser-workshop', 'reference/release-channels',
'reference/release-channels',
],
},
'tools/workshop-uploader', 'tools/workshop-uploader',
{ {
type: 'category', type: 'category',
@@ -63,30 +60,19 @@ const sidebars = {
{ {
type: 'category', type: 'category',
label: 'Tools & operations', label: 'Tools & operations',
items: [ items: ['meta/Steam-Workshop-and-Tooling', 'meta/devserver-betas', 'meta/IDEA_BACKLOG'],
'meta/Steam-Workshop-and-Tooling',
'meta/devserver-betas',
'meta/IDEA_BACKLOG',
],
}, },
{ {
type: 'category', type: 'category',
label: 'Guides', label: 'Guides',
items: [ items: [
{
type: 'category',
label: 'Players (extra)',
items: [
'guides/players/audiences-overview',
'guides/players/newbies',
'guides/players/intermediates',
'guides/players/professionals',
],
},
{ {
type: 'category', type: 'category',
label: 'Mod developers', label: 'Mod developers',
items: ['guides/mod-developers/overview', 'guides/mod-developers/greg-hooks-showcase'], items: [
'guides/mod-developers/overview',
'guides/mod-developers/greg-hooks-showcase',
],
}, },
{ {
type: 'category', type: 'category',
@@ -146,7 +132,6 @@ const sidebars = {
'reference/wiki-mapping', 'reference/wiki-mapping',
'reference/mod-store-vision', 'reference/mod-store-vision',
'reference/fmf-hook-naming', 'reference/fmf-hook-naming',
'reference/greg-hooks-registry',
'reference/fmf-hooks-catalog', 'reference/fmf-hooks-catalog',
'reference/mcp-server', 'reference/mcp-server',
'reference/reference-data-files', 'reference/reference-data-files',

View File

@@ -20,8 +20,8 @@ export const en: HomepageContent = {
featureTitles: ['Play with mods', 'Workshop & updates', 'Clear docs', 'Community'], featureTitles: ['Play with mods', 'Workshop & updates', 'Clear docs', 'Community'],
featureDescriptions: [ featureDescriptions: [
'Step-by-step paths for installing and troubleshooting — no repo jargon on day one.', 'Step-by-step paths for installing and troubleshooting — no repo jargon on day one.',
'WorkshopManager and release channels explain where builds come from.', 'GregModManager and release channels explain where builds come from.',
'Player pages are short; author pages stay under one Developers section.', 'A few flat player pages up top; author pages stay under Developers.',
'Discord and GitHub for help — framework internals only when you need them.', 'Discord and GitHub for help — framework internals only when you need them.',
], ],
comingSoon: 'Coming soon', comingSoon: 'Coming soon',

View File

@@ -9,8 +9,8 @@ export const sharedKnowledgeLinksEn: HomepageDocLink[] = [
link: '/wiki/guides/players/overview', link: '/wiki/guides/players/overview',
}, },
{ {
title: 'WorkshopManager', title: 'GregModManager',
description: 'Browse and install Workshop mods.', description: 'Browse, install, and manage Workshop mods (Gregtools desktop app).',
link: '/wiki/guides/players/enduser-workshop', link: '/wiki/guides/players/enduser-workshop',
}, },
{ {
@@ -62,7 +62,8 @@ export const homepageShellEn: Pick<
workflowSectionTitle: 'Authors & contributors', workflowSectionTitle: 'Authors & contributors',
codeSectionTitle: 'Building on gregFramework', codeSectionTitle: 'Building on gregFramework',
codeSectionLead: codeSectionLead:
'C# mods on MelonLoader, FFM plugins, and optional Rust bridges — details for authors are under Developers.', 'C# mods on MelonLoader, Harmony hooks in gregCore, and optional Rust bridges — author details are under Developers.',
codeSnippetCaption: 'Random sample from gregCore',
ctaDiscordTitle: 'Community', ctaDiscordTitle: 'Community',
ctaDiscordLead: 'Questions about playing or building — ask in Discord.', ctaDiscordLead: 'Questions about playing or building — ask in Discord.',
ctaDiscordButton: 'Join Discord', ctaDiscordButton: 'Join Discord',