fix(docs): update documentation for clarity and structure

- Revised the `getting-started.md` and `documentation-layout.md` files to improve clarity and organization of content.
- Enhanced descriptions and added tables for better readability in the `getting-started.md` file.
- Updated the `greg-hooks-registry.md` to reflect changes in the hook mapping and clarify the role of `greg_hooks.json`.
- Adjusted the `fmf-hook-naming.md` and `fmf-hooks-catalog.md` to emphasize the transition from legacy naming conventions to the new `greg.*` format.

This commit aims to improve the overall clarity and usability of the documentation, ensuring users have a better understanding of the framework and its components.
This commit is contained in:
Marvin
2026-04-10 04:34:18 +02:00
parent 58c0df760b
commit 9605741570
9 changed files with 143 additions and 216 deletions

View File

@@ -1,111 +1,36 @@
---
id: fmf-hooks-catalog
title: FMF hooks catalog
title: FMF hooks catalog (legacy)
slug: /reference/fmf-hooks-catalog
description: Auto-generated catalog of hook strings and event id mappings from FrikaMF sources.
description: Redirect — native EventId → greg.* mapping now lives in GregNativeEventHooks; see greg hooks catalog.
---
<!-- AUTO-GENERATED by tools/Generate-FmfHookCatalog.ps1 - DO NOT EDIT BY HAND -->
<!-- Former auto-generated page; content replaced — do not restore old HookNames tables. -->
# FMF hooks catalog
# FMF hooks catalog (legacy)
This page is **generated** from `gregCore/framework/FrikaMF/HookNames.cs` and `gregCore/framework/FrikaMF/EventIds.cs`.
Regenerate after hook changes: `./tools/Generate-FmfHookCatalog.ps1`
Die frühere, aus **`HookNames.cs`** generierte Tabelle wurde **entfernt**. Die Laufzeit mappt numerische **`EventIds`** heute zentral über **`GregNativeEventHooks`** auf kanonische **`greg.*`**-Strings (siehe auch **`GregCompatBridge`** für veraltete Schreibweisen).
**Generated:** 2026-04-10 01:36:21 UTC
## Aktuelle Quellen
## Hook string constants
| Thema | Wo |
|--------|-----|
| **EventId → `greg.*` (FFI / natives Pipeline)** | [greg hooks catalog](./greg-hooks-catalog.md) — generiert aus `gregCore/framework/src/Sdk/GregNativeEventHooks.cs` und `EventIds` in `EventDispatcher.cs` |
| **Il2Cpp-Hook-Registry (JSON)** | `greg_hooks.json` im Repo-Root; Kopie neben `FrikaModdingFramework.dll` beim Build |
| **Doku-Politik `FMF.*`** | [FMF hook naming](./fmf-hook-naming.md) — Namenskonvention für neue *Dokumentations*-IDs (nicht 1:1 jedes Runtime-Strings) |
| C# field | Hook string |
|----------|-------------|
| ``CustomerContractOnSigned`` | ``FFM.Customer.Contract.OnSigned`` |
| ``CustomerReputationOnChanged`` | ``FFM.Customer.Reputation.OnChanged`` |
| ``CustomerSlaOnBreached`` | ``FFM.Customer.SLA.OnBreached`` |
| ``CustomerSlaOnRestored`` | ``FFM.Customer.SLA.OnRestored`` |
| ``EconomyBalanceOnChanged`` | ``FFM.Economy.Balance.OnChanged`` |
| ``EmployeesStaffOnHired`` | ``FFM.Employees.Staff.OnHired`` |
| ``EmployeesStaffOnTerminatedCustom`` | ``FFM.Employees.Staff.OnTerminated`` |
| ``FrameworkHooksOnBridgeInstalled`` | ``FFM.Framework.Hooks.OnBridgeInstalled`` |
| ``FrameworkHooksOnBridgeTriggered`` | ``FFM.Framework.Hooks.OnBridgeTriggered`` |
| ``GameLoadOnCompleted`` | ``FFM.Game.Load.OnCompleted`` |
| ``GameSaveOnCompleted`` | ``FFM.Game.Save.OnCompleted`` |
| ``GameSaveOnRequested`` | ``FFM.Game.Save.OnRequested`` |
| ``GameTimeOnDayChanged`` | ``FFM.Game.Time.OnDayChanged`` |
| ``GameTimeOnMonthChanged`` | ``FFM.Game.Time.OnMonthChanged`` |
| ``GameXpOnGained`` | ``FFM.Game.XP.OnGained`` |
| ``NetworkCableOnConnected`` | ``FFM.Network.Cable.OnConnected`` |
| ``NetworkCableOnConnectedSuppress`` | ``FFM.Network.Cable.OnConnected.Suppress`` |
| ``NetworkCableOnDisconnected`` | ``FFM.Network.Cable.OnDisconnected`` |
| ``NetworkCableOnDisconnectedSuppress`` | ``FFM.Network.Cable.OnDisconnected.Suppress`` |
| ``NetworkCableOnLinkDown`` | ``FFM.Network.Cable.OnLinkDown`` |
| ``NetworkCableOnLinkUp`` | ``FFM.Network.Cable.OnLinkUp`` |
| ``NetworkTrafficOnThresholdExceeded`` | ``FFM.Network.Traffic.OnThresholdExceeded`` |
| ``ObjectsDeviceOnDegraded`` | ``FFM.Objects.Device.OnDegraded`` |
| ``ObjectsDeviceOnEOL`` | ``FFM.Objects.Device.OnEOL`` |
| ``ObjectsDeviceOnPoweredOff`` | ``FFM.Objects.Device.OnPoweredOff`` |
| ``ObjectsDeviceOnPoweredOn`` | ``FFM.Objects.Device.OnPoweredOn`` |
| ``ObjectsDeviceOnRepaired`` | ``FFM.Objects.Device.OnRepaired`` |
| ``ObjectsRackOnDevicePlaced`` | ``FFM.Objects.Rack.OnDevicePlaced`` |
| ``ObjectsRackOnRemoved`` | ``FFM.Objects.Rack.OnRemoved`` |
| ``ObjectsServerOnClientAssigned`` | ``FFM.Objects.Server.OnClientAssigned`` |
| ``ObjectsServerOnClientUnassigned`` | ``FFM.Objects.Server.OnClientUnassigned`` |
| ``StoreCartOnCheckedOut`` | ``FFM.Store.Cart.OnCheckedOut`` |
| ``StoreCartOnItemAdded`` | ``FFM.Store.Cart.OnItemAdded`` |
| ``StoreCartOnItemRemoved`` | ``FFM.Store.Cart.OnItemRemoved`` |
| ``WorldRoomOnExpanded`` | ``FFM.World.Room.OnExpanded`` |
## Katalog neu erzeugen
## Event id to hook mapping
Im **gregCore**-Repo (gregWiki-Checkout liegt typischerweise **nebendran**):
| Event id (uint) | EventIds name | Resolves to field | Hook string |
|-----------------|---------------|---------------------|-------------|
| 213 | `CableCleared` | `StoreCartOnCheckedOutCleared` | `greg.Store.Cart.OnCheckedOut` |
| 204 | `CableConnected` | `NetworkCableOnConnected` | `greg.Network.Cable.OnConnected` |
| 211 | `CableCreated` | `NetworkCableOnConnected` | `greg.Network.Cable.OnConnected` |
| 205 | `CableDisconnected` | `NetworkCableOnDisconnected` | `greg.Network.Cable.OnDisconnected` |
| 212 | `CableRemoved` | `NetworkCableOnDisconnected` | `greg.Network.Cable.OnDisconnected` |
| 215 | `CableSfpInserted` | `NetworkCableOnConnected` | `greg.Network.Cable.OnConnected` |
| 216 | `CableSfpRemoved` | `NetworkCableOnDisconnected` | `greg.Network.Cable.OnDisconnected` |
| 214 | `CableSpeedChanged` | `NetworkTrafficOnThresholdExceeded` | `greg.Network.Traffic.OnThresholdExceeded` |
| 1001 | `CustomEmployeeFired` | `EmployeesStaffOnTerminatedCustom` | `greg.Employees.Staff.OnTerminated` |
| 1000 | `CustomEmployeeHired` | `EmployeesStaffOnHiredCustom` | `greg.Employees.Staff.OnHired` |
| 400 | `CustomerAccepted` | `CustomerContractOnSigned` | `greg.Customer.Contract.OnSigned` |
| 401 | `CustomerSatisfied` | `CustomerSlaOnRestored` | `greg.Customer.SLA.OnRestored` |
| 402 | `CustomerUnsatisfied` | `CustomerSlaOnBreached` | `greg.Customer.SLA.OnBreached` |
| 300 | `DayEnded` | `GameTimeOnDayChanged` | `greg.Game.Time.OnDayChanged` |
| 601 | `EmployeeFired` | `EmployeesStaffOnTerminated` | `greg.Employees.Staff.OnTerminated` |
| 600 | `EmployeeHired` | `EmployeesStaffOnHired` | `greg.Employees.Staff.OnHired` |
| 702 | `GameAutoSaved` | `GameSaveOnRequested` | `greg.Game.Save.OnRequested` |
| 701 | `GameLoaded` | `GameLoadOnCompleted` | `greg.Game.Load.OnCompleted` |
| 700 | `GameSaved` | `GameSaveOnCompleted` | `greg.Game.Save.OnCompleted` |
| 1100 | `HookBridgeInstalled` | `FrameworkHooksOnBridgeInstalled` | `greg.Framework.Hooks.OnBridgeInstalled` |
| 1101 | `HookBridgeTriggered` | `FrameworkHooksOnBridgeTriggered` | `greg.Framework.Hooks.OnBridgeTriggered` |
| 100 | `MoneyChanged` | `EconomyBalanceOnChanged` | `greg.Economy.Balance.OnChanged` |
| 301 | `MonthEnded` | `GameTimeOnMonthChanged` | `greg.Game.Time.OnMonthChanged` |
| 900 | `NetWatchDispatched` | `NetworkTrafficOnThresholdExceeded` | `greg.Network.Traffic.OnThresholdExceeded` |
| 208 | `RackUnmounted` | `ObjectsRackOnRemoved` | `greg.Objects.Rack.OnRemoved` |
| 102 | `ReputationChanged` | `CustomerReputationOnChanged` | `greg.Customer.Reputation.OnChanged` |
| 207 | `ServerAppChanged` | `ObjectsServerOnClientUnassigned` | `greg.Objects.Server.OnClientUnassigned` |
| 201 | `ServerBroken` | `ObjectsDeviceOnDegraded` | `greg.Objects.Device.OnDegraded` |
| 206 | `ServerCustomerChanged` | `ObjectsServerOnClientAssigned` | `greg.Objects.Server.OnClientAssigned` |
| 203 | `ServerInstalled` | `ObjectsRackOnDevicePlaced` | `greg.Objects.Rack.OnDevicePlaced` |
| 200 | `ServerPowered` | `ObjectsDeviceOnPoweredOn` | `greg.Objects.Device.OnPoweredOn` |
| 202 | `ServerRepaired` | `ObjectsDeviceOnRepaired` | `greg.Objects.Device.OnRepaired` |
| 502 | `ShopCartCleared` | `StoreCartOnCheckedOutCleared` | `greg.Store.Cart.OnCheckedOut` |
| 500 | `ShopCheckout` | `StoreCartOnCheckedOut` | `greg.Store.Cart.OnCheckedOut` |
| 501 | `ShopItemAdded` | `StoreCartOnItemAdded` | `greg.Store.Cart.OnItemAdded` |
| 503 | `ShopItemRemoved` | `StoreCartOnItemRemoved` | `greg.Store.Cart.OnItemRemoved` |
| 209 | `SwitchBroken` | `NetworkCableOnLinkDown` | `greg.Network.Cable.OnLinkDown` |
| 210 | `SwitchRepaired` | `NetworkCableOnLinkUp` | `greg.Network.Cable.OnLinkUp` |
| 800 | `WallPurchased` | `WorldRoomOnExpanded` | `greg.World.Room.OnExpanded` |
| 101 | `XPChanged` | `GameXpOnGained` | `greg.Game.XP.OnGained` |
```powershell
./tools/Generate-GregHookCatalog.ps1
```
## Fallback
Aktualisiert `gregWiki/docs/reference/greg-hooks-catalog.md`.
Unknown event ids resolve to ``FFM.Framework.Unknown.OnEvent`` in `HookNames.Resolve`.
## Siehe auch
## See also
- [FMF hook naming](./fmf-hook-naming.md)
- [EventIds source](https://github.com/mleem97/gregFramework/blob/main/gregCore/FrikaMF/EventIds.cs)
- [HookNames source](https://github.com/mleem97/gregFramework/blob/main/gregCore/FrikaMF/HookNames.cs)
- [greg hooks catalog](./greg-hooks-catalog.md)
- [Greg hooks & event runtime](/wiki/framework/greg-hooks-and-events)
- [Greg hooks registry](./greg-hooks-registry.md)