Files
gregWiki/docs/reference/fmf-hooks-catalog.md
Marvin ee3f30e502 docs: update sidebar and documentation to include greg hooks registry
- Added new items to the sidebar for 'greg-hooks-and-events' and 'greg-hooks-registry' under the Framework and Reference categories, respectively.
- Enhanced the documentation layout by including references to the greg hooks registry in various guides and topics, improving accessibility to hook-related information.
- Updated descriptions in the documentation to clarify the purpose and usage of the greg hooks and their registry.

This commit aims to improve the visibility and usability of the greg hooks registry within the documentation.
2026-04-10 03:36:30 +02:00

112 lines
7.2 KiB
Markdown

---
id: fmf-hooks-catalog
title: FMF hooks catalog
slug: /reference/fmf-hooks-catalog
description: Auto-generated catalog of hook strings and event id mappings from FrikaMF sources.
---
<!-- AUTO-GENERATED by tools/Generate-FmfHookCatalog.ps1 - DO NOT EDIT BY HAND -->
# FMF hooks catalog
This page is **generated** from `gregCore/FrikaMF/HookNames.cs` and `gregCore/FrikaMF/EventIds.cs`.
Regenerate after hook changes: `./tools/Generate-FmfHookCatalog.ps1`
**Generated:** 2026-04-10 01:36:21 UTC
## Hook string constants
| C# field | Hook string |
|----------|-------------|
| ``CustomerContractOnSigned`` | ``greg.Customer.Contract.OnSigned`` |
| ``CustomerReputationOnChanged`` | ``greg.Customer.Reputation.OnChanged`` |
| ``CustomerSlaOnBreached`` | ``greg.Customer.SLA.OnBreached`` |
| ``CustomerSlaOnRestored`` | ``greg.Customer.SLA.OnRestored`` |
| ``EconomyBalanceOnChanged`` | ``greg.Economy.Balance.OnChanged`` |
| ``EmployeesStaffOnHired`` | ``greg.Employees.Staff.OnHired`` |
| ``EmployeesStaffOnTerminatedCustom`` | ``greg.Employees.Staff.OnTerminated`` |
| ``FrameworkHooksOnBridgeInstalled`` | ``greg.Framework.Hooks.OnBridgeInstalled`` |
| ``FrameworkHooksOnBridgeTriggered`` | ``greg.Framework.Hooks.OnBridgeTriggered`` |
| ``GameLoadOnCompleted`` | ``greg.Game.Load.OnCompleted`` |
| ``GameSaveOnCompleted`` | ``greg.Game.Save.OnCompleted`` |
| ``GameSaveOnRequested`` | ``greg.Game.Save.OnRequested`` |
| ``GameTimeOnDayChanged`` | ``greg.Game.Time.OnDayChanged`` |
| ``GameTimeOnMonthChanged`` | ``greg.Game.Time.OnMonthChanged`` |
| ``GameXpOnGained`` | ``greg.Game.XP.OnGained`` |
| ``NetworkCableOnConnected`` | ``greg.Network.Cable.OnConnected`` |
| ``NetworkCableOnConnectedSuppress`` | ``greg.Network.Cable.OnConnected.Suppress`` |
| ``NetworkCableOnDisconnected`` | ``greg.Network.Cable.OnDisconnected`` |
| ``NetworkCableOnDisconnectedSuppress`` | ``greg.Network.Cable.OnDisconnected.Suppress`` |
| ``NetworkCableOnLinkDown`` | ``greg.Network.Cable.OnLinkDown`` |
| ``NetworkCableOnLinkUp`` | ``greg.Network.Cable.OnLinkUp`` |
| ``NetworkTrafficOnThresholdExceeded`` | ``greg.Network.Traffic.OnThresholdExceeded`` |
| ``ObjectsDeviceOnDegraded`` | ``greg.Objects.Device.OnDegraded`` |
| ``ObjectsDeviceOnEOL`` | ``greg.Objects.Device.OnEOL`` |
| ``ObjectsDeviceOnPoweredOff`` | ``greg.Objects.Device.OnPoweredOff`` |
| ``ObjectsDeviceOnPoweredOn`` | ``greg.Objects.Device.OnPoweredOn`` |
| ``ObjectsDeviceOnRepaired`` | ``greg.Objects.Device.OnRepaired`` |
| ``ObjectsRackOnDevicePlaced`` | ``greg.Objects.Rack.OnDevicePlaced`` |
| ``ObjectsRackOnRemoved`` | ``greg.Objects.Rack.OnRemoved`` |
| ``ObjectsServerOnClientAssigned`` | ``greg.Objects.Server.OnClientAssigned`` |
| ``ObjectsServerOnClientUnassigned`` | ``greg.Objects.Server.OnClientUnassigned`` |
| ``StoreCartOnCheckedOut`` | ``greg.Store.Cart.OnCheckedOut`` |
| ``StoreCartOnItemAdded`` | ``greg.Store.Cart.OnItemAdded`` |
| ``StoreCartOnItemRemoved`` | ``greg.Store.Cart.OnItemRemoved`` |
| ``WorldRoomOnExpanded`` | ``greg.World.Room.OnExpanded`` |
## Event id to hook mapping
| 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` |
## Fallback
Unknown event ids resolve to ``greg.Framework.Unknown.OnEvent`` in `HookNames.Resolve`.
## 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 & event runtime](/wiki/framework/greg-hooks-and-events)