Mirrors uMod's Rust game API into docs/modules/rust/ so the upcoming module-rust can be designed against it without a round trip upstream. - HOOKS.md: all 477 hooks in 20 categories, scraped verbatim from umod.org/documentation/games/rust. Each entry keeps its description, its return contract, its tags and every C# overload uMod publishes. Opens with a category table and a full alphabetical index (name -> category -> return contract). - DEFINITIONS.md: 678 items (short name, item id, display name) and 2,590 workshop skin ids across 104 items. - README.md: why the reference exists, how an Oxide hook actually binds (by name and arity, by reflection - a typo is silently never called), the four return contracts, and how the bridge invariants restate against Oxide. Records provenance and the exact refresh procedure: the hooks JSON endpoint is not Cloudflare-gated even though the HTML page is, and the definitions page has to come out of a browser. The mirror is reference only - uMod stays upstream and normative, and nothing here is a Runic Gateway contract. Rust wipes monthly, so both files carry their capture date (2026-09-15) and a re-capture note. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016wDDVXWMDz82WqE1i969r4
246 KiB
Rust Oxide/uMod hook reference
Every hook the uMod Rust game extension raises — 477 hooks across 20 categories — with its description, its return contract and the C# signature to declare in a plugin.
Scraped verbatim from
umod.org/documentation/games/ruston 2026-09-15. This is a mirror for reference, not a specification we own: uMod is upstream and wins any disagreement. SeeREADME.mdfor what it is for and how to refresh it.
How to read an entry
Each hook gives three things:
-
What it is called for — the game moment that raises it.
-
Return behaviour — the hook's contract, and the only part that is load-bearing. Oxide reads the value your method returns and one of four things is true:
Contract Meaning No return behavior The hook is a notification. Return void; nothing you return is read.Returning a non-null value overrides default behavior The hook is a veto with a payload. Declare it object; returnnullto let the game proceed, anything else (conventionallytrue/false) to cancel the default action.Returning true or false overrides default behavior A veto. Declare it object; returnnullto abstain — returningfalseis not the same as abstaining.Returning a string will kick… (and similar) The returned value is consumed as data, not just as a veto. -
Signature — the exact method to declare. Oxide binds hooks by name and arity, by reflection, at runtime: there is no interface to implement and no compile-time check. A typo in the name, or the wrong parameter types, means the method is silently never called.
Two cautions that apply to the whole table. (1) Never return a non-
nullvalue from a hook whose contract is no return behavior — on some hooks Oxide will still treat it as a veto. (2) When several plugins hook the same veto, the first non-nullreturn wins and the remaining plugins are not consulted; abstain withnullunless you mean to decide.
Categories
| Category | Hooks | What it covers |
|---|---|---|
| Server | 17 | Process lifecycle, the tick/frame loop, save and restart, RCON and console commands. |
| Player | 138 | Everything a connected human does: connect, chat, command, craft, loot, build, die, respawn. The largest surface alongside Entity. |
| Entity | 140 | The generic BaseEntity graph — spawn, kill, damage, mount, loot, flags. Anything in the world that is not specifically an item. |
| Item | 43 | Item stacks and containers: add, remove, split, stack, move, repair, research, craft, use. |
| Resource | 12 | Gathering and node dispensers — ore, trees, corpses, collectibles, quarries. |
| Structure | 15 | Building blocks: placement, upgrade, demolish, rotate, stability, doors and locks. |
| Terrain | 1 | Terrain/map topology. |
| Vending | 16 | Vending machines and the shop/trade flow, including the marketplace and drone deliveries. |
| Weapon | 16 | Firing, reloading, throwing, melee swings, projectile and trap behaviour. |
| Vehicle | 22 | Boats, cars, horses, helicopters, trains, submarines — fuel, engines, mounting, pushing. |
| Team | 12 | Rust's built-in team/party system: create, invite, join, leave, promote, disband. |
| World | 1 | World-level generation events. |
| Fishing | 4 | The fishing minigame. |
| Electronic | 2 | The electricity graph. |
| Clan | 7 | The first-party clan system (distinct from Team). |
| Plugin | 4 | Plugin lifecycle inside Oxide itself — Loaded, Unload, and compilation. |
| Sign | 3 | Sign painting, updating and locking. |
| TechTree | 4 | Tech tree node unlocks and their prerequisites. |
| Phone | 12 | In-game telephones: dialling, answering, voicemail, directory. |
| Permission | 8 | uMod's own permission/group system (Covalence) — grants, revokes, group membership. |
| Total | 477 |
Alphabetical index
| Hook | Category | Returns |
|---|---|---|
CanAcceptItem |
Item | Returning CanAcceptResult value overrides default behavior |
CanAdministerVending |
Vending | Returning true or false overrides default behavior |
CanAffordToPlace |
Player | Returning true or false overrides default behavior |
CanAffordUpgrade |
Player | Returning true or false overrides default behavior |
CanAssignBed |
Player | Returning a non-null value overrides default behavior |
CanBeTargeted |
Player | Returning true or false overrides default behavior |
CanBeWounded |
Player | Returning true or false overrides default behavior |
CanBradleyApcTarget |
Entity | Returning true or false overrides default behavior |
CanBuild |
Player | Returning a non-null value overrides default behavior |
CanBypassQueue |
Player | Returning true will bypass the queue, returning nothing will by def… |
CanCatchFish |
Fishing | Returning true or false overrides default behavior |
CanChangeCode |
Player | Returning a non-null value overrides default behavior |
CanChangeGrade |
Player | Returning true or false overrides default behavior |
CanCheckFuel |
Vehicle | Returning true or false overrides default behavior |
CanClientLogin |
Player | Returning a string will use the string as the error message |
CanCombineDroppedItem |
Item | Returning a non-null value overwrites command arguments |
CanCraft |
Player | Returning true or false overrides default behavior |
CanCreateWorldProjectile |
Weapon | Returning a non-null value overrides default behavior |
CanDemolish |
Player | Returning true or false overrides default behavior |
CanDeployItem |
Player | Returning a non-null value cancels default behavior |
CanDismountEntity |
Player | Returning a non-null value overrides default behavior |
CanDropActiveItem |
Item | Returning true or false overrides default behavior |
CanEntityBeHostile |
Entity | Returning a non-null value overrides default behavior |
CanEquipItem |
Player | Returning true or false overrides default behavior |
CanExplosiveStick |
Weapon | Returning a non-null value overwrites the default behavior |
CanHackCrate |
Player | Returning a non-null value overrides default behavior |
CanHelicopterDropCrate |
Entity | Returning true or false overrides default behavior |
CanHelicopterStrafe |
Entity | Returning true or false overrides default behavior |
CanHelicopterStrafeTarget |
Entity | Returning true or false overrides default behavior |
CanHelicopterTarget |
Entity | Returning true or false overrides default behavior |
CanHelicopterUseNapalm |
Entity | Returning true or false overrides default behavior |
CanHideStash |
Player | Returning a non-null value overrides default behavior |
CanLock |
Player | Returning a non-null value cancels default behavior |
CanLockerAcceptItem |
Entity | Returning true or false overrides default behavior |
CanLootEntity |
Player | Returning a non-null value overrides default behavior |
CanLootPlayer |
Player | Returning true or false overrides default behavior |
CanMountEntity |
Player | Returning a non-null value overrides default behavior |
CanMoveItem |
Item | Returning a non-null value overrides default behavior |
CanNetworkTo |
Entity | Returning true or false overrides default behavior |
CanNpcAttack |
Entity | Returning true or false overrides default behavior |
CanNpcEat |
Entity | Returning true or false overrides default behavior |
CanPickupEntity |
Player | Returning true or false overrides default behavior |
CanPickupLock |
Player | Returning true or false overrides default behavior |
CanPushBoat |
Player | Returning a non-null value cancels default behavior |
CanReceiveCall |
Phone | Returning true or false overrides default behavior |
CanRecycle |
Entity | Returning true or false overrides default behavior |
CanRenameBed |
Player | Returning a non-null value overrides default behavior |
CanResearchItem |
Player | Returning a non-null value overrides default behavior |
CanSamSiteShoot |
Entity | Returning a non-null value cancels default behavior |
CanSeeStash |
Player | Returning a non-null value overrides default behavior |
CanSetBedPublic |
Player | Returning a non-null value overrides default behavior |
CanSetRelationship |
Player | Returning true or false overrides default behavior |
CanSpectateTarget |
Player | Returning a non-null value cancels default behavior |
CanStackItem |
Item | Returning true or false overrides default behavior |
CanSwapToSeat |
Entity | Returning true or false overrides default behavior |
CanTakeCutting |
Resource | Returning a non-null value cancels default behavior |
CanUnlock |
Player | Returning a non-null value overrides default behavior |
CanUnlockTechTreeNode |
TechTree | Returning true or false overrides default behavior |
CanUnlockTechTreeNodePath |
TechTree | Returning true or false overrides default behavior |
CanUpdateSign |
Player | Returning true or false overrides default behavior |
CanUseFuel |
Vehicle | Returning true or false overrides default behavior |
CanUseGesture |
Player | Returning true or false overrides default behavior |
CanUseHelicopter |
Vehicle | Returning a non-null value cancels default behavior |
CanUseLockedEntity |
Player | Returning true or false overrides default behavior |
CanUseMailbox |
Player | Returning true or false overrides default behavior |
CanUserLogin |
Player | Returning a string will kick the user with this reason. Returning a… |
CanUseUI |
Player | Returning a non-null value overrides default behavior |
CanUseVending |
Vending | Returning true or false overrides default behavior |
CanUseWires |
Player | Returning a non-null value overrides default behavior |
CanVendingAcceptItem |
Vending | Returning true or false overrides default behavior |
CanWearItem |
Player | Returning a non-null value overrides default behavior |
Init |
Server | — |
LoadDefaultConfig |
Plugin | — |
LoadDefaultMessages |
Plugin | — |
Loaded |
Plugin | — |
OnActiveItemChange |
Player | Returning a non-null value cancels default behavior |
OnActiveItemChanged |
Player | — |
OnAddVendingOffer |
Vending | — |
OnAirdrop |
Entity | — |
OnAmmoSwitch |
Weapon | Returning a non-null value overrides default behavior |
OnAmmoUnload |
Weapon | Returning a non-null value cancels default behavior |
OnAnalysisComplete |
Player | — |
OnBackpackDrop |
Item | Return non-null to override default behaviour. |
OnBigWheelLoss |
Entity | — |
OnBigWheelWin |
Entity | Returning non-null value overrides default behaviour. |
OnBoatPathGenerate |
Vehicle | Returning a List overrides default behavior |
OnBonusItemDrop |
Item | Returning a non-null value overrides default behavior |
OnBonusItemDropped |
Item | — |
OnBookmarkAdd |
Entity | Returning a non-null value overrides default behavior |
OnBookmarkControl |
Entity | Returning a non-null value overrides default behavior |
OnBookmarkControlEnd |
Entity | Returning a non-null value overrides default behavior |
OnBookmarkControlEnded |
Entity | — |
OnBookmarkControlStarted |
Entity | — |
OnBookmarkDelete |
Entity | Returning a non-null value overrides default behavior |
OnBookmarkInput |
Entity | Returning a non-null value overrides default behavior |
OnBookmarksSendControl |
Entity | Returning a non-null value overrides default behavior |
OnBradleyApcHunt |
Entity | Returning a non-null value overrides default behavior |
OnBradleyApcInitialize |
Entity | Returning a non-null value overrides default behavior |
OnBradleyApcPatrol |
Entity | Returning a non-null value overrides default behavior |
OnBroadcastCommand |
Player | Returning a non-null value overwrites command arguments |
OnBuildingPrivilege |
Entity | Returning BuildingPrivlidge value overrides default behavior |
OnBuildingSplit |
Structure | — |
OnButtonPress |
Entity | Returning a non-null value cancels default behavior |
OnBuyVendingItem |
Vending | Returning a non-null value overrides default behavior |
OnCardSwipe |
Item | Returning a non-null value cancels default behavior |
OnCargoPlaneSignaled |
Entity | — |
OnCCTVDirectionChange |
Entity | Returning a non-null value cancels default behavior |
OnCentralizedBanCheck |
Player | Returning a non-null value cancels default behavior |
OnClanColorChanged |
Clan | — |
OnClanCreated |
Clan | — |
OnClanDisbanded |
Clan | — |
OnClanLogoChanged |
Clan | — |
OnClanMemberAdded |
Clan | — |
OnClanMemberKicked |
Clan | — |
OnClanMemberLeft |
Clan | — |
OnClientAuth |
Player | — |
OnClientCommand |
Player | Returning a non-null value overrides default behavior |
OnCodeEntered |
Structure | Returning a non-null value overrides default behavior |
OnCollectiblePickup |
Resource | Returning a non-null value overrides default behavior |
OnConstructionPlace |
Structure | Returning a non-null value overrides default behavior |
OnContainerDropItems |
Entity | Returning a non-null value overrides default behavior |
OnCorpsePopulate |
Player | Returning a BaseCorpse overrides default behavior |
OnCounterModeToggle |
Entity | Returning a non-null value overrides default behavior |
OnCounterTargetChange |
Entity | Returning a non-null value overrides default behavior |
OnCrateDropped |
Entity | — |
OnCrateHack |
Entity | — |
OnCrateHackEnd |
Entity | — |
OnCrateLanded |
Entity | — |
OnCupboardAuthorize |
Structure | Returning a non-null value overrides default behavior |
OnCupboardClearList |
Structure | Returning a non-null value overrides default behavior |
OnCupboardDeauthorize |
Structure | Returning a non-null value overrides default behavior |
OnDefaultItemsReceive |
Player | Returning a non-null value overrides default behavior |
OnDefaultItemsReceived |
Player | Returning a non-null value overrides default behavior |
OnDeleteVendingOffer |
Vending | — |
OnDemoRecordingStart |
Player | Returning a non-null value overrides default behavior |
OnDemoRecordingStarted |
Player | — |
OnDemoRecordingStop |
Player | Returning a non-null value overrides default behavior |
OnDemoRecordingStopped |
Player | — |
OnDestroyUI |
Player | — |
OnDieselEngineToggle |
Entity | Returning a non-null value cancels default behavior |
OnDieselEngineToggled |
Entity | — |
OnDispenserBonus |
Resource | Returning an Item replaces the existing Item |
OnDispenserGather |
Resource | Returning a non-null value overrides default behavior |
OnDoorClosed |
Structure | — |
OnDoorKnocked |
Structure | — |
OnDoorOpened |
Structure | — |
OnElevatorButtonPress |
Entity | Returning a non-null value overrides default behavior |
OnElevatorCall |
Entity | Returning a non-null value overrides default behavior |
OnElevatorMove |
Entity | Returning a non-null value overrides default behavior |
OnEngineLoadoutRefresh |
Entity | Returning a non-null value overrides default behaviour |
OnEngineStart |
Vehicle | Returning a non-null value overrides default behavior |
OnEngineStarted |
Vehicle | — |
OnEngineStatsRefresh |
Vehicle | Returning a non-null value overrides default behavior |
OnEngineStatsRefreshed |
Vehicle | — |
OnEngineStop |
Vehicle | Returning a non-null value overrides default behavior |
OnEngineStopped |
Vehicle | — |
OnEntityBuilt |
Structure | — |
OnEntityControl |
Entity | Returning true or false overrides default behavior |
OnEntityDeath |
Entity | — |
OnEntityDestroy |
Entity | Returning a non-null value overrides default behavior |
OnEntityDismounted |
Entity | — |
OnEntityEnter |
Entity | — |
OnEntityFlagsNetworkUpdate |
Entity | Returning a non-null value overrides default behavior |
OnEntityGroundMissing |
Entity | Returning a non-null value overrides default behavior |
OnEntityKill |
Entity | Returning a non-null value overrides default behavior |
OnEntityLeave |
Entity | — |
OnEntityMarkHostile |
Entity | Returning a non-null value cancels default behavior |
OnEntityMounted |
Entity | — |
OnEntitySaved |
Entity | — |
OnEntitySnapshot |
Entity | Returning a non-null value overrides default behavior |
OnEntitySpawned |
Entity | — |
OnEntityStabilityCheck |
Entity | Returning a non-null value cancels default behavior |
OnEntityTakeDamage |
Entity | |
OnExcavatorGather |
Entity | Returning a non-null value cancels default behavior |
OnExcavatorMiningToggled |
Entity | — |
OnExcavatorResourceSet |
Entity | Returning a non-null value cancels default behavior |
OnExcavatorSuppliesRequest |
Electronic | Returning non-null overrides default behaviour. |
OnExcavatorSuppliesRequested |
Electronic | |
OnExperimentEnd |
Player | Returning a non-null value overrides defualt behaviour. |
OnExperimentEnded |
Player | — |
OnExperimentStart |
Player | Returning a non-null value overrides default behavior |
OnExperimentStarted |
Player | — |
OnExplosiveDropped |
Weapon | — |
OnExplosiveDud |
Weapon | Returning a non-null value cancels default behavior |
OnExplosiveFuseSet |
Weapon | Returning a non-null value overwrites fuse length |
OnExplosiveThrown |
Weapon | — |
OnFindBurnable |
Item | Returning an Item overrides default behavior |
OnFindSpawnPoint |
Player | Return a BasePlayer.SpawnPoint object to use that spawnpoint |
OnFireBallDamage |
Entity | — |
OnFireBallSpread |
Entity | — |
OnFishCatch |
Fishing | Returning a non-null value overrides default behavior |
OnFishCaught |
Fishing | — |
OnFishingStopped |
Fishing | — |
OnFlameExplosion |
Entity | — |
OnFlameThrowerBurn |
Weapon | — |
OnFrame |
Server | — |
OnFuelAmountCheck |
Vehicle | Returning a numeric value (int) overrides the default value |
OnFuelCheck |
Vehicle | Returning true or false overrides default behavior |
OnFuelConsume |
Item | Returning a non-null value overrides default behavior |
OnFuelConsumed |
Item | — |
OnFuelItemCheck |
Vehicle | Returning an Item overrides default behavior |
OnGiveSoldItem |
Vending | Returning a non-null value cancels default behavior |
OnGroupCreated |
Permission | — |
OnGroupDeleted |
Permission | — |
OnGroupParentSet |
Permission | — |
OnGroupPermissionGranted |
Permission | — |
OnGroupPermissionRevoked |
Permission | — |
OnGroupRankSet |
Permission | — |
OnGroupTitleSet |
Permission | — |
OnGrowableGather |
Resource | Returning a non-null value overrides default behavior |
OnGrowableGathered |
Resource | — |
OnHammerHit |
Structure | Returning a non-null value overrides default behavior |
OnHealingItemUse |
Item | Returning a non-null value overrides default behavior |
OnHelicopterAttack |
Entity | Returning a non-null value overrides default behavior |
OnHelicopterDropCrate |
Entity | Returning a non-null value overrides default behavior |
OnHelicopterDropDoorOpen |
Entity | Returning a non-null value overrides default behavior |
OnHelicopterKilled |
Entity | Returning a non-null value overrides default behavior |
OnHelicopterOutOfCrates |
Entity | Returning true or false overrides default behavior |
OnHelicopterRetire |
Entity | Returning a non-null value overrides default behaviour. |
OnHelicopterStrafeEnter |
Entity | Returning a non-null value cancels default behavior |
OnHelicopterTarget |
Entity | Returning a non-null value overrides default behavior |
OnHorseHitch |
Entity | Returning a non-null value overrides default behavior |
OnHorseLead |
Entity | Returning a non-null value overrides default behavior |
OnHotAirBalloonToggle |
Vehicle | Returning a non-null value overrides default behavior |
OnHotAirBalloonToggled |
Vehicle | — |
OnIngredientsCollect |
Item | Returning a non-null value cancels default behavior |
OnInputUpdate |
Entity | Returning a non-null value cancels default behavior |
OnInventoryNetworkUpdate |
Player | Returning a non-null value overrides default behavior |
OnIORefCleared |
Entity | — |
OnItemAction |
Item | Returning a non-null value overrides default behavior |
OnItemAddedToContainer |
Item | — |
OnItemCraft |
Item | Returning true or false overrides default behavior |
OnItemCraftCancelled |
Item | — |
OnItemCraftFinished |
Item | — |
OnItemDeployed |
Item | — |
OnItemDropped |
Item | — |
OnItemLock |
Item | Returning a non-null value overrides default behavior |
OnItemPickup |
Item | Returning a non-null value overrides default behavior |
OnItemRecycle |
Entity | Returning a non-null value overrides default behavior |
OnItemRefill |
Item | Returning a non-null value overrides default behavior |
OnItemRemove |
Item | Return a non-null value stop item from being destroyed |
OnItemRemovedFromContainer |
Item | — |
OnItemRepair |
Item | Returning a non-null value overrides default behavior |
OnItemResearch |
Item | — |
OnItemResearched |
Item | Returning a float will affect if researching is successful or not |
OnItemSplit |
Item | Returning an Item overrides default behavior |
OnItemStacked |
Item | — |
OnItemSubmit |
Item | Returning a non-null value cancels default behavior |
OnItemUnlock |
Item | Returning a non-null value overrides default behavior |
OnItemUpgrade |
Item | — |
OnItemUse |
Item | Returning an int overrides the amount consumed. |
OnLiftUse |
Entity | Returning a non-null value overrides default behavior |
OnLiquidVesselFill |
Entity | Returning a non-null value cancels default behavior |
OnLockerSwap |
Entity | Returning non-null value overrides default behavior |
OnLootEntity |
Player | — |
OnLootEntityEnd |
Player | — |
OnLootItem |
Player | — |
OnLootNetworkUpdate |
Player | Returning a non-null value overrides default behavior |
OnLootPlayer |
Player | — |
OnLootSpawn |
Entity | Returning a non-null value overrides default behavior |
OnLoseCondition |
Item | — |
OnMagazineReload |
Weapon | Returning a non-null value overrides default behavior |
OnMapImageUpdated |
Item | — |
OnMapMarkerAdd |
Player | Returning a non-null value cancels default behavior |
OnMapMarkerAdded |
Player | — |
OnMapMarkerRemove |
Player | Returning a non-null value cancels default behaviour |
OnMapMarkersClear |
Player | Returning a non-null value cancels default behavior |
OnMapMarkersCleared |
Player | — |
OnMaxStackable |
Item | Returning a numeric value (int) overrides the default value |
OnMeleeAttack |
Player | Returning a non-null value cancels default behavior |
OnMeleeThrown |
Weapon | — |
OnMessagePlayer |
Server | Returning a non-null value overrides default behavior |
OnMlrsFire |
Entity | Returning a non-null value overrides default behaviour. |
OnMlrsFired |
Entity | No return behaviour. |
OnNetworkGroupEntered |
Player | — |
OnNetworkGroupLeft |
Player | — |
OnNetworkSubscriptionsUpdate |
Entity | Returning a non-null value prevents Rust from applying the proposed… |
OnNewSave |
Server | — |
OnNpcConversationEnded |
Player | — |
OnNpcConversationRespond |
Player | Returning a non-null value overrides default behavior |
OnNpcConversationResponded |
Player | — |
OnNpcConversationStart |
Player | Returning a non-null value overrides default behavior |
OnNpcDestinationSet |
Entity | Returning a non-null value cancels default behavior |
OnNpcGiveSoldItem |
Vending | Returning a non-null value overrides default behaviour. |
OnNpcPlayerResume |
Entity | Returning a non-null value cancels default behavior |
OnNpcStopMoving |
Entity | Returning a non-null value cancels default behavior |
OnNpcTarget |
Entity | Returning a non-null value overrides default behavior |
OnNpcTargetSense |
Entity | Returning a non-null value overrides default behavior |
OnOpenVendingAdmin |
Vending | — |
OnOutputUpdate |
Entity | Returning a non-null value cancels default behavior |
OnOvenCook |
Entity | Returning a non-null value overrides default behavior |
OnOvenCooked |
Entity | — |
OnOvenToggle |
Entity | Returning a non-null value overrides default behavior |
OnPayForPlacement |
Player | Returning a non-null value cancels default behavior |
OnPayForUpgrade |
Player | Returning a non-null value cancels default behavior |
OnPermissionRegistered |
Permission | — |
OnPhoneAnswer |
Phone | Returning a non-null value overrides default behavior |
OnPhoneAnswered |
Phone | — |
OnPhoneCallStart |
Phone | Returning a non-null value overrides default behavior |
OnPhoneCallStarted |
Phone | |
OnPhoneDial |
Phone | Returning a non-null value overrides default behavior |
OnPhoneDialFail |
Phone | Returning a non-null value overrides default behavior |
OnPhoneDialFailed |
Phone | — |
OnPhoneDialTimedOut |
Phone | — |
OnPhoneDialTimeout |
Phone | Returning a non-null value overrides default behavior |
OnPhoneNameUpdate |
Phone | Returning a non-null value overrides default behavior |
OnPhoneNameUpdated |
Phone | — |
OnPlayerAddModifiers |
Player | Returning a non-null value overrides default behavior (prevents the… |
OnPlayerAssist |
Player | Returning a non-null value cancels default behavior |
OnPlayerAttack |
Player | Returning a non-null value overrides default behavior |
OnPlayerBanned |
Player | — |
OnPlayerChat |
Player | Returning a non-null value overrides default behavior of chat, not… |
OnPlayerCommand |
Player | Returning a non-null value overrides default behavior |
OnPlayerConnected |
Player | — |
OnPlayerCorpse |
Player | — |
OnPlayerCorpseSpawn |
Player | Returning a non-null value overrides default behavior |
OnPlayerCorpseSpawned |
Player | — |
OnPlayerDeath |
Player | Returning a non-null value overrides default behavior |
OnPlayerDisconnected |
Player | — |
OnPlayerDropActiveItem |
Player | — |
OnPlayerHealthChange |
Player | Returning a non-null value cancels the health change |
OnPlayerInput |
Player | — |
OnPlayerKeepAlive |
Player | Returning a non-null value cancels default behavior |
OnPlayerKicked |
Player | — |
OnPlayerLand |
Player | Returning a non-null value overrides default behavior |
OnPlayerLanded |
Player | — |
OnPlayerLootEnd |
Player | — |
OnPlayerMetabolize |
Player | — |
OnPlayerRecover |
Player | Returning a non-null value overrides default behavior |
OnPlayerRecovered |
Player | — |
OnPlayerReported |
Player | — |
OnPlayerRespawn |
Player | Returning a BasePlayer.SpawnPoint (takes a position and rotation),… |
OnPlayerRespawned |
Player | — |
OnPlayerRevive |
Player | Returning a non-null value cancels default behavior |
OnPlayerSetInfo |
Player | — |
OnPlayerSleep |
Player | Returning a non-null value overrides default behavior |
OnPlayerSleepEnded |
Player | — |
OnPlayerSpawn |
Player | Returning true overrides default behavior |
OnPlayerSpectate |
Player | Returning a non-null value overrides default behavior |
OnPlayerSpectateEnd |
Player | Returning a non-null value stops the spectate from ending |
OnPlayerTick |
Player | Returning a non-null value overrides default behavior |
OnPlayerViolation |
Player | Returning a non-null value overrides default behavior |
OnPlayerVoice |
Player | Returning a non-null value overrides default behavior |
OnPlayerWound |
Player | Returning a non-null value cancels the wounded state |
OnPluginLoaded |
Server | — |
OnPluginUnloaded |
Server | — |
OnProjectileRicochet |
Weapon | Returning a non-null value overrides default behavior |
OnQuarryEnabled |
Resource | — |
OnQuarryGather |
Resource | — |
OnQuarryToggled |
Resource | — |
OnRconCommand |
Server | — |
OnRconConnection |
Server | Returning a non-null value overrides default behavior |
OnReactiveTargetReset |
Entity | — |
OnRecyclerToggle |
Entity | Returning a non-null value overrides default behavior |
OnRefreshVendingStock |
Vending | — |
OnRemoveDying |
Resource | Returning a non-null value overrides default behavior |
OnResearchCostDetermine |
Item | Returning a numeric value (int) overrides the default value |
OnResourceDepositCreated |
Entity | — |
OnRespawnInformationGiven |
Player | — |
OnRfBroadcasterAdd |
Entity | Returning a non-null value overrides default behavior |
OnRfBroadcasterAdded |
Entity | — |
OnRfBroadcasterRemove |
Entity | Returning a non-null value overrides default behavior |
OnRfBroadcasterRemoved |
Entity | — |
OnRfFrequencyChange |
Entity | Returning a non-null value overrides default behavior |
OnRfFrequencyChanged |
Entity | — |
OnRfListenerAdd |
Entity | Returning a non-null value overrides default behavior |
OnRfListenerAdded |
Entity | — |
OnRfListenerRemove |
Entity | Returning a non-null value overrides default behavior |
OnRfListenerRemoved |
Entity | — |
OnRidableAnimalClaim |
Entity | Returning a non-null value overrides default behavior |
OnRidableAnimalClaimed |
Entity | — |
OnRocketLaunched |
Weapon | — |
OnRotateVendingMachine |
Vending | Returning a non-null value overrides default behavior |
OnRunPlayerMetabolism |
Player | Returning a non-null value cancels the update |
OnSamSiteTarget |
Entity | Returning a non-null value cancels default behavior |
OnSaveLoad |
Server | Returning a non-null value overrides default behavior |
OnSendCommand |
Player | Returning a non-null value overwrites command arguments |
OnServerCommand |
Server | Returning a non-null value overrides default behavior |
OnServerInformationUpdated |
Server | — |
OnServerInitialized |
Server | — |
OnServerMessage |
Server | Return a non-null value to stop message from being sent |
OnServerRestartInterrupt |
Server | Returning a non-null value overrides default behavior |
OnServerSave |
Server | — |
OnServerShutdown |
Server | — |
OnShopAcceptClick |
Entity | Returning a non-null value cancels default behavior |
OnShopCancelClick |
Entity | Returning a non-null value cancels default behavior |
OnShopCompleteTrade |
Entity | Returning a non-null value cancels default behavior |
OnShopCompleteTrade |
Entity | Returning a non-null value overrides default behavior |
OnSignLocked |
Sign | — |
OnSignUpdated |
Sign | — |
OnSleepingBagDestroy |
Entity | Returning a non-null value overrides default behavior |
OnSleepingBagDestroyed |
Entity | — |
OnSleepingBagValidCheck |
Entity | Returning true or false overrides default behavior |
OnSolarPanelSunUpdate |
Entity | Returning a non-null value overrides default behavior |
OnSpinWheel |
Sign | — |
OnStashExposed |
Player | — |
OnStashHidden |
Player | — |
OnStructureDemolish |
Structure | Returning a non-null value overrides default behavior |
OnStructureRepair |
Structure | Returning a non-null value cancels repair |
OnStructureRotate |
Structure | Returning a non-null value cancels rotate |
OnStructureUpgrade |
Structure | Returning a non-null value overrides default behavior |
OnSupplyDropDropped |
Entity | — |
OnSupplyDropLanded |
Entity | — |
OnSurveyGather |
Resource | — |
OnSwitchToggle |
Entity | Returning a non-null value cancels default behavior |
OnSwitchToggled |
Entity | — |
OnTakeCurrencyItem |
Vending | Returning a non-null value cancels default behavior |
OnTeamAcceptInvite |
Team | Returning a non-null value cancels default behavior |
OnTeamCreate |
Team | Returning a non-null value cancels default behavior |
OnTeamCreated |
Team | — |
OnTeamDisband |
Team | Returning a non-null value cancels default behavior |
OnTeamDisbanded |
Team | — |
OnTeamInvite |
Team | Returning a non-null value cancels default behavior |
OnTeamKick |
Team | Returning a non-null value cancels default behavior |
OnTeamLeave |
Team | Returning a non-null value cancels default behavior |
OnTeamPromote |
Team | Returning a non-null value cancels default behavior |
OnTeamRejectInvite |
Team | Returning a non-null value cancels default behavior |
OnTeamUpdate |
Team | Returning a non-null value cancels default behavior |
OnTeamUpdated |
Team | Returning a non-null value cancels default behavior |
OnTechTreeNodeUnlock |
TechTree | Returning a non-null value overrides default behavior |
OnTechTreeNodeUnlocked |
TechTree | — |
OnTerrainInitialized |
Terrain | — |
OnThreatLevelUpdate |
Player | Returning a non-null value cancels default behavior |
OnTick |
Server | — |
OnToggleVendingBroadcast |
Vending | — |
OnTrapArm |
Item | Returning a non-null value overrides default behavior |
OnTrapDisarm |
Item | Returning a non-null value overrides default behavior |
OnTrapSnapped |
Item | — |
OnTrapTrigger |
Item | Returning a non-null value overrides default behavior |
OnTreeMarkerHit |
Resource | Returning true or false overrides default behaviour |
OnTurretAssign |
Entity | Returning a non-null value cancels default behavior |
OnTurretAssigned |
Entity | — |
OnTurretAuthorize |
Entity | Returning a non-null value overrides default behavior |
OnTurretClearList |
Entity | Returning a non-null value overrides default behavior |
OnTurretDeauthorize |
Entity | Returning a non-null value overrides default behavior |
OnTurretModeToggle |
Entity | — |
OnTurretRotate |
Entity | Returning a non-null value overrides default behavior |
OnTurretShutdown |
Entity | Returning a non-null value overrides default behavior |
OnTurretStartup |
Entity | Returning a non-null value overrides default behavior |
OnTurretTarget |
Entity | Returning a non-null value overrides default behavior |
OnTurretToggle |
Entity | Returning a non-null value overrides default behavior |
OnUserApprove |
Player | Returning a non-null value overrides default behavior, plugin shoul… |
OnUserApproved |
Player | — |
OnUserBanned |
Player | — |
OnUserChat |
Player | Returning true overrides default behavior of chat, not commands |
OnUserCommand |
Player | Returning a non-null value overrides default behavior |
OnUserConnected |
Player | — |
OnUserDisconnected |
Player | — |
OnUserGroupAdded |
Player | — |
OnUserGroupRemoved |
Player | — |
OnUserKicked |
Player | — |
OnUserNameUpdated |
Player | — |
OnUserPermissionGranted |
Player | — |
OnUserPermissionRevoked |
Player | — |
OnUserRespawn |
Player | — |
OnUserRespawned |
Player | — |
OnUserUnbanned |
Player | — |
OnVehicleModuleDeselected |
Vehicle | — |
OnVehicleModuleMove |
Vehicle | Returning a non-null value overrides default behavior |
OnVehicleModulesAssign |
Vehicle | Returning a non-null value overrides default behavior |
OnVehicleModulesAssigned |
Vehicle | — |
OnVehicleModuleSelect |
Vehicle | Returning a non-null value overrides default behavior |
OnVehicleModuleSelected |
Vehicle | — |
OnVehiclePush |
Vehicle | Returning a non-null value overrides default behavior |
OnVendingShopOpened |
Vending | — |
OnVendingShopRename |
Vending | Returning a non-null value cancels default behavior |
OnVendingTransaction |
Vending | Returning true or false overrides default behavior |
OnWaterCollect |
Entity | Returning a non-null value cancels default behavior |
OnWaterPurified |
Entity | — |
OnWaterPurify |
Entity | Returning a non-null value cancels default behavior |
OnWeaponFired |
Weapon | — |
OnWeaponReload |
Weapon | Returning a non-null value overrides default behavior |
OnWireClear |
Entity | Returning a non-null value cancels default behavior |
OnWireConnect |
Entity | Returning a non-null value cancels default behavior |
OnWorldPrefabSpawned |
World | — |
OnWorldProjectileCreate |
Weapon | Returning a non-null value overrides default behavior |
Unload |
Plugin | — |
Server Hooks
Process lifecycle, the tick/frame loop, save and restart, RCON and console commands.
17 hooks: Init, OnMessagePlayer, OnServerCommand, OnServerRestartInterrupt, OnServerShutdown, OnFrame, OnServerInformationUpdated, OnRconCommand, OnPluginLoaded, OnRconConnection, OnNewSave, OnPluginUnloaded, OnSaveLoad, OnServerInitialized, OnServerMessage, OnServerSave, OnTick
Init
- Called when a plugin is being initialized
- Other plugins may or may not be present, dependant on load order
Returns: No return behavior
void Init()
{
Puts("Init works!");
}
uMod last updated 2018-08-20
OnMessagePlayer
- Useful for intercepting server messages before they get to their intended target
Returns: Returning a non-null value overrides default behavior
object OnMessagePlayer(string message, BasePlayer player)
{
Puts("OnMessagePlayer works!");
return null;
}
Tags: message, server · uMod last updated 2021-05-08
OnServerCommand
- Useful for intercepting commands before they get to their intended target
Returns: Returning a non-null value overrides default behavior
object OnServerCommand(ConsoleSystem.Arg arg)
{
Puts("OnServerCommand works!");
return null;
}
Tags: server · uMod last updated 2021-05-08
OnServerRestartInterrupt
- Called when a server restart is being cancelled
Returns: Returning a non-null value overrides default behavior
object OnServerRestartInterrupt()
{
Puts("OnServerRestartInterrupt works!");
return null;
}
Tags: server · uMod last updated 2023-04-11
OnServerShutdown
- Useful for saving something / etc on server shutdown
Returns: No return behavior
void OnServerShutdown()
{
Puts("OnServerShutdown works!");
}
Tags: server · uMod last updated 2021-05-08
OnFrame
- Called each frame
Returns: No return behavior
void OnFrame()
{
Puts("OnFrame works!");
}
Tags: frame, server · uMod last updated 2021-05-08
OnServerInformationUpdated
- Called after all steam information for the server has has been updated
Returns: No return behavior
void OnServerInformationUpdated()
{
Puts("OnServerInformationUpdated works!");
}
Tags: server, steam · uMod last updated 2023-04-11
OnRconCommand
- Called when an RCON command is run
Returns: No return behavior
void OnRconCommand(IPAddress ip, string command, string[] args)
{
Puts("OnRconCommand works!");
}
Tags: rcon, server · uMod last updated 2021-05-08
OnPluginLoaded
- Called when any plugin has been loaded
- Not to be confused with
Loaded
Returns: No return behavior
void OnPluginLoaded(Plugin plugin)
{
Puts($"Plugin '{plugin.Name}' has been loaded");
}
Tags: plugin, server · uMod last updated 2023-12-25
OnRconConnection
- Called when a new RCON connection is opened
Returns: Returning a non-null value overrides default behavior
object OnRconConnection(IPAddress ip)
{
Puts("OnRconConnection works!");
return null;
}
Tags: rcon, server · uMod last updated 2021-05-08
OnNewSave
- Called when a new savefile is created (usually when map has wiped)
Returns: No return behavior
void OnNewSave(string filename)
{
Puts("OnNewSave works!");
}
Tags: server · uMod last updated 2021-05-08
OnPluginUnloaded
- Called when any plugin has been unloaded
- Not to be confused with
Unload
Returns: No return behavior
void OnPluginUnloaded(Plugin plugin)
{
Puts($"Plugin '{plugin.Name}' has been unloaded");
}
Tags: plugin, server · uMod last updated 2023-12-25
OnSaveLoad
- Called when a save file is loaded
Returns: Returning a non-null value overrides default behavior
object OnSaveLoad(Dictionary<BaseEntity, ProtoBuf.Entity> entities)
{
Puts("OnSaveLoad works!");
return null;
}
Tags: save, server · uMod last updated 2021-05-08
OnServerInitialized
- Called after the server startup has been completed and is awaiting connections
- Also called for plugins that are hotloaded while the server is already started running
- Boolean parameter, false if called on plugin hotload and true if called on server initialization
Returns: No return behavior
void OnServerInitialized(bool initial)
{
Puts("OnServerInitialized works!");
}
Tags: server · uMod last updated 2021-05-08
OnServerMessage
- Called before a SERVER message is sent to a player
Returns: Return a non-null value to stop message from being sent
// Example that stops message from being sent
object OnServerMessage(string message, string playerName, string color, ulong playerId)
{
if (message.Contains("gave"))
{
Puts($"Message to {playerName} ({playerId}) cancelled");
return false;
}
return null;
}
// Example that does not stop message from being sent
void OnServerMessage(string message, string playerName, string color, ulong playerId)
{
Puts($"{playerName} ({playerId}) was sent message: {message}");
}
Tags: server · uMod last updated 2022-01-28
OnServerSave
- Called before the server saves
Returns: No return behavior
void OnServerSave()
{
Puts("OnServerSave works!");
}
Tags: server · uMod last updated 2021-05-08
OnTick
- Called every tick (defined by the tick rate of the server)
- For better performance, avoid using heavy calculations in this hook.
Returns: No return behavior
void OnTick()
{
Puts("OnTick works!");
}
Tags: tick, server · uMod last updated 2021-05-08
Player Hooks
Everything a connected human does: connect, chat, command, craft, loot, build, die, respawn. The largest surface alongside Entity.
138 hooks: CanAffordToPlace, CanAffordUpgrade, CanAssignBed, CanDeployItem, CanLock, CanPushBoat, CanSpectateTarget, CanUpdateSign, CanUseWires, OnActiveItemChange, OnActiveItemChanged, OnBroadcastCommand, OnMapMarkerAdd, OnMapMarkerAdded, OnMapMarkerRemove, OnMapMarkersClear, OnMapMarkersCleared, OnMeleeAttack, OnPayForPlacement, OnPayForUpgrade, OnPlayerAssist, OnPlayerCommand, OnPlayerCorpse, OnPlayerCorpseSpawn, OnPlayerCorpseSpawned, OnPlayerKeepAlive, OnPlayerRecovered, OnPlayerReported, OnPlayerRevive, OnPlayerSetInfo, OnSendCommand, OnUserChat, OnUserCommand, OnUserRespawn, OnUserRespawned, OnUserConnected, OnUserDisconnected, CanBeTargeted, CanBeWounded, CanBuild, CanBypassQueue, CanChangeCode, CanChangeGrade, CanCraft, CanClientLogin, CanDemolish, CanHackCrate, CanUserLogin, OnUserApproved, CanDismountEntity, OnUserNameUpdated, CanEquipItem, OnUserGroupAdded, OnUserGroupRemoved, OnExperimentStart, OnExperimentStarted, OnUserPermissionGranted, OnUserPermissionRevoked, OnExperimentEnd, OnExperimentEnded, OnUserKicked, CanHideStash, OnUserBanned, CanLootEntity, CanLootPlayer, CanMountEntity, OnUserUnbanned, CanPickupEntity, CanPickupLock, CanRenameBed, CanResearchItem, CanUseLockedEntity, CanSeeStash, OnStashExposed, OnStashHidden, CanSetBedPublic, CanUnlock, CanUseMailbox, CanUseUI, CanWearItem, OnClientAuth, OnDestroyUI, OnFindSpawnPoint, OnLootEntity, OnLootEntityEnd, OnLootItem, OnLootPlayer, OnPlayerAttack, OnPlayerBanned, OnPlayerChat, OnPlayerConnected, OnPlayerDeath, OnPlayerDisconnected, OnPlayerDropActiveItem, OnPlayerHealthChange, OnPlayerInput, OnPlayerKicked, OnPlayerLand, OnPlayerLanded, OnPlayerLootEnd, OnPlayerMetabolize, OnPlayerRecover, OnPlayerRespawn, OnPlayerRespawned, OnRespawnInformationGiven, OnPlayerSleep, OnPlayerSleepEnded, OnPlayerSpawn, OnPlayerSpectate, OnPlayerSpectateEnd, OnPlayerTick, OnPlayerViolation, OnPlayerVoice, OnPlayerWound, OnRunPlayerMetabolism, OnUserApprove, OnDefaultItemsReceive, OnDefaultItemsReceived, OnAnalysisComplete, OnNpcConversationStart, OnNpcConversationRespond, OnNpcConversationEnded, OnNpcConversationResponded, OnNetworkGroupEntered, OnNetworkGroupLeft, OnDemoRecordingStart, OnDemoRecordingStarted, OnDemoRecordingStop, OnDemoRecordingStopped, OnLootNetworkUpdate, OnInventoryNetworkUpdate, OnPlayerAddModifiers, OnThreatLevelUpdate, CanUseGesture, OnCentralizedBanCheck, OnClientCommand, OnCorpsePopulate, CanSetRelationship
CanAffordToPlace
- Useful for ignoring resource requirements for placement
Returns: Returning true or false overrides default behavior
bool CanAffordToPlace(BasePlayer player, Planner planner, Construction construction)
{
Puts("CanAffordToPlace works!");
return false;
}
Tags: afford, player · uMod last updated 2022-01-17
CanAffordUpgrade
- Called when the resources for an upgrade are checked
Returns: Returning true or false overrides default behavior
bool CanAffordUpgrade(BasePlayer player, BuildingBlock block, BuildingGrade.Enum grade)
{
Puts("CanAffordUpgrade works!");
return true;
}
Tags: player · uMod last updated 2022-01-19
CanAssignBed
- Called when a player attempts to assign a bed or sleeping bag to another player
Returns: Returning a non-null value overrides default behavior
object CanAssignBed(BasePlayer player, SleepingBag bag, ulong targetPlayerId)
{
Puts("CanAssignBed works!");
return null;
}
Tags: assign, player · uMod last updated 2021-05-08
CanDeployItem
- Useful for denying items' deployment
Returns: Returning a non-null value cancels default behavior
object CanDeployItem(BasePlayer player, Deployer deployer, NetworkableId entityId)
{
Puts("CanDeployItem works!");
return null;
}
Tags: deploy, player · uMod last updated 2023-05-04
CanLock
- Useful for canceling the lock action
Returns: Returning a non-null value cancels default behavior
object CanLock(BasePlayer player, BaseLock baseLock)
{
Puts("CanLock works!");
return null;
}
Tags: lock, player · uMod last updated 2021-08-14
CanPushBoat
- Useful for canceling boat push
Returns: Returning a non-null value cancels default behavior
object CanPushBoat(BasePlayer player, MotorRowboat boat)
{
Puts("CanPushBoat works!");
return null;
}
Tags: push, player · uMod last updated 2021-05-08
CanSpectateTarget
- Called when spectate target is attempting to update
Returns: Returning a non-null value cancels default behavior
object CanSpectateTarget(BasePlayer player, string filter)
{
Puts($"{player.displayName} tries to spectate with a filter: {filter}");
return null;
}
Tags: spectate, player · uMod last updated 2021-05-08
CanUpdateSign
- Called when the player attempts to change the text on a sign or lock it, or update a photo frame
Returns: Returning true or false overrides default behavior
bool CanUpdateSign(BasePlayer player, Signage sign)
{
Puts("CanUpdateSign works!");
return true;
}
bool CanUpdateSign(BasePlayer player, PhotoFrame photoFrame)
{
Puts("CanUpdateSign works!");
return true;
}
Tags: update, player · uMod last updated 2021-05-08
CanUseWires
- Useful for allowing or preventing a player from using wires
Returns: Returning a non-null value overrides default behavior
object CanUseWires(BasePlayer player)
{
Puts($"{player.displayName} has just tried to use wires");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnActiveItemChange
- Called when active item is attempting to update
Returns: Returning a non-null value cancels default behavior
object OnActiveItemChange(BasePlayer player, Item oldItem, ItemId newItemId)
{
Puts("OnActiveItemChange works!");
return null;
}
Tags: active, player · uMod last updated 2023-05-04
OnActiveItemChanged
- Called when active item was changed
Returns: No return behavior
void OnActiveItemChanged(BasePlayer player, Item oldItem, Item newItem)
{
Puts("OnActiveItemChanged works!");
}
Tags: active, player · uMod last updated 2021-05-08
OnBroadcastCommand
- Called before a command is broadcasted to all connected clients
Returns: Returning a non-null value overwrites command arguments
object OnBroadcastCommand(string command, object[] args)
{
Puts("OnBroadcastCommand works!");
return null;
}
Tags: broadcast, player · uMod last updated 2021-05-08
OnMapMarkerAdd
- Called when trying to add a marker
Returns: Returning a non-null value cancels default behavior
object OnMapMarkerAdd(BasePlayer player, MapNote note)
{
Puts("OnMapMarkerAdd works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnMapMarkerAdded
- Called after a marker was added
Returns: No return behavior
void OnMapMarkerAdded(BasePlayer player, MapNote note)
{
Puts("OnMapMarkerAdded works!");
}
Tags: player · uMod last updated 2021-05-08
OnMapMarkerRemove
- Called when trying to remove a marker
Returns: Returning a non-null value cancels default behaviour
object OnMapMarkerRemove(BasePlayer player, MapNote note)
{
Puts("OnMapMarkerRemove works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnMapMarkersClear
- Called when trying to clear map markers
Returns: Returning a non-null value cancels default behavior
object OnMapMarkersClear(BasePlayer player, List<MapNote> notes)
{
Puts("OnMapMarkersClear works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnMapMarkersCleared
- Called after markers were cleared
Returns: No return behavior
void OnMapMarkersCleared(BasePlayer player, List<MapNote> notes)
{
Puts("OnMapMarkersCleared works!");
}
Tags: player · uMod last updated 2021-05-08
OnMeleeAttack
- Useful for canceling melee attacks
Returns: Returning a non-null value cancels default behavior
object OnMeleeAttack(BasePlayer player, HitInfo info)
{
Puts("OnMeleeAttack works!");
return null;
}
Tags: melee, player · uMod last updated 2021-05-08
OnPayForPlacement
- Called when a player is paying for placement. Useful for preventing paying for placing deployables, building blocks and etc
Returns: Returning a non-null value cancels default behavior
object OnPayForPlacement(BasePlayer player, Planner planner, Construction construction)
{
Puts("OnPayForPlacement works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPayForUpgrade
- Called when player is paying for an upgrade. Useful for preventing paying for block upgrade
Returns: Returning a non-null value cancels default behavior
object OnPayForUpgrade(BasePlayer player, BuildingBlock block, ConstructionGrade gradeTarget)
{
Puts("OnPayForUpgrade works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerAssist
- Called when a player tries to assist target player (when target is wounded)
Returns: Returning a non-null value cancels default behavior
object OnPlayerAssist(BasePlayer target, BasePlayer player)
{
Puts("OnPlayerAssist works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerCommand
- Useful for intercepting players' commands before their handling
Returns: Returning a non-null value overrides default behavior
object OnPlayerCommand(BasePlayer player, string command, string[] args)
{
Puts("OnPlayerCommand works!");
return null;
}
Tags: player · uMod last updated 2021-08-05
OnPlayerCorpse
- Called when a non-null corpse has just been spawned
Returns: No return behavior
void OnPlayerCorpse(BasePlayer player, BaseCorpse corpse)
{
Puts($"A corpse for {player.displayName} has just been spawned!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerCorpseSpawn
- Called when a non-null corpse is about to spawn
Returns: Returning a non-null value overrides default behavior
object OnPlayerCorpseSpawn(BasePlayer player)
{
Puts("OnPlayerCorpseSpawn works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerCorpseSpawned
- Called when a non-null corpse has just been spawned
Returns: No return behavior
void OnPlayerCorpseSpawned(BasePlayer player, PlayerCorpse corpse)
{
Puts("OnPlayerCorpseSpawned works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerKeepAlive
- Called before a player is kept alive (Example: You started "helping" player, it keeps him alive for at least 10 seconds more to be sure he won't die until you finish picking him up)
Returns: Returning a non-null value cancels default behavior
object OnPlayerKeepAlive(BasePlayer player, BasePlayer target)
{
Puts("OnPlayerKeepAlive works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerRecovered
- Called when the player was recovered
Returns: No return behavior
void OnPlayerRecovered(BasePlayer player)
{
Puts("OnPlayerRecovered works!");
}
Tags: player · uMod last updated 2022-01-24
OnPlayerReported
- Called when a player has reported someone via F7
Returns: No return behavior
void OnPlayerReported(BasePlayer reporter, string targetName, string targetId, string subject, string message, string type)
{
Puts($"{reporter.displayName} reported {targetName} for {subject}.");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerRevive
- Called before the recover after reviving with a medical tool
- Useful for canceling the reviving
Returns: Returning a non-null value cancels default behavior
object OnPlayerRevive(BasePlayer reviver, BasePlayer player)
{
Puts($"{reviver.displayName} revived {player.displayName}");
return null;
}
Tags: player · uMod last updated 2022-01-24
OnPlayerSetInfo
- Called when setting player's information (aka console variables)
Returns: No return behavior
void OnPlayerSetInfo(Connection connection, string key, string value)
{
Puts($"{connection.userid}: {key} was set to {value}");
}
Tags: player · uMod last updated 2021-05-08
OnSendCommand
- Called before a command is sent from the server to a player (or a group of players)
- Usually commands aren't sent to a group of players, so in most cases it's safe to use only OnSendCommand with a single Connection.
Returns: Returning a non-null value overwrites command arguments
object OnSendCommand(List<Connection> connections, string command, object[] args)
{
Puts("OnSendCommand works!");
return null;
}
object OnSendCommand(Connection connection, string command, object[] args)
{
Puts("OnSendCommand works!");
return null;
}
Tags: send, player · uMod last updated 2021-05-08
OnUserChat
- Called when a player sends a chat message to the server
Returns: Returning true overrides default behavior of chat, not commands
object OnUserChat(IPlayer player, string message)
{
Puts($"{player.Name} said: {message}");
return null;
}
Tags: user, player · uMod last updated 2021-05-08
OnUserCommand
- Useful for intercepting players' commands before their handling
Returns: Returning a non-null value overrides default behavior
object OnUserCommand(IPlayer player, string command, string[] args)
{
Puts("OnUserCommand works!");
return null;
}
Tags: user, player · uMod last updated 2021-08-05
OnUserRespawn
- Called when a player is respawning
Returns: No return behavior
void OnUserRespawn(IPlayer player)
{
Puts("OnUserRespawn works!");
}
Tags: user, player · uMod last updated 2022-01-25
OnUserRespawned
- Called after a player has respawned
Returns: No return behavior
void OnUserRespawned(IPlayer player)
{
Puts("OnUserRespawned works!");
}
Tags: user, player · uMod last updated 2022-01-25
OnUserConnected
- Called after a player has been approved and has connected to the server
Returns: No return behavior
void OnUserConnected(IPlayer player)
{
Puts($"{player.Name} ({player.Id}) connected from {player.Address}");
if (player.IsAdmin)
{
Puts($"{player.Name} ({player.Id}) is admin");
}
Puts($"{player.Name} is {(player.IsBanned ? "banned" : "not banned")}");
server.Broadcast($"Welcome {player.Name} to {server.Name}!");
}
Tags: user, player · uMod last updated 2021-05-08
OnUserDisconnected
- Called after a player has disconnected from the server
Returns: No return behavior
void OnUserDisconnected(IPlayer player)
{
Puts($"{player.Name} ({player.Id}) disconnected");
}
Tags: user, player · uMod last updated 2021-05-08
CanBeTargeted
- Called when an autoturret, flame turret, shotgun trap, or helicopter turret is attempting to target the player
Returns: Returning true or false overrides default behavior
bool CanBeTargeted(BaseCombatEntity player, MonoBehaviour behaviour)
{
Puts("CanBeTargeted works!");
return true;
}
Tags: player · uMod last updated 2021-05-08
CanBeWounded
- Called when any damage is attempted on player
Returns: Returning true or false overrides default behavior
bool CanBeWounded(BasePlayer player, HitInfo info)
{
Puts("CanBeWounded works!");
return true;
}
Tags: player · uMod last updated 2021-05-08
CanBuild
- Called when the player tries to build something
Returns: Returning a non-null value overrides default behavior
object CanBuild(Planner planner, Construction prefab, Construction.Target target)
{
Puts("CanBuild works!");
return null;
}
Tags: build, player · uMod last updated 2021-05-08
CanBypassQueue
- Called before the player is added to the connection queue
Returns: Returning true will bypass the queue, returning nothing will by default queue the player
bool CanBypassQueue(Network.Connection connection)
{
Puts("CanBypassQueue works!");
return true;
}
Tags: bypass, player · uMod last updated 2021-05-08
CanChangeCode
- Called when a player tries to change the code on a codelock
Returns: Returning a non-null value overrides default behavior
object CanChangeCode(BasePlayer player, CodeLock codeLock, string newCode, bool isGuestCode)
{
Puts("CanChangeCode works!");
return null;
}
Tags: change, player · uMod last updated 2021-05-08
CanChangeGrade
- Called when a player tries to change a building grade
Returns: Returning true or false overrides default behavior
bool CanChangeGrade(BasePlayer player, BuildingBlock block, BuildingGrade.Enum grade)
{
Puts("CanChangeGrade works!");
return true;
}
Tags: change, player · uMod last updated 2021-05-08
CanCraft
- Called when the player attempts to craft an item
Returns: Returning true or false overrides default behavior
bool CanCraft(ItemCrafter itemCrafter, ItemBlueprint bp, int amount)
{
Puts("CanCraft works!");
return true;
}
bool CanCraft(PlayerBlueprints playerBlueprints, ItemDefinition itemDefinition, int skinItemId)
{
Puts("CanCraft works!");
return true;
}
Tags: craft, player · uMod last updated 2021-05-08
CanClientLogin
- Called when the player is attempting to login
Returns: Returning a string will use the string as the error message
Returns: Returning true allows the connection, returning nothing will by default allow the connection, returning anything else will reject it with an error message
object CanClientLogin(Network.Connection connection)
{
Puts("CanClientLogin works!");
return true;
}
Tags: client, player · uMod last updated 2022-09-28
CanDemolish
- Called when a player tries to demolish a building block
Returns: Returning true or false overrides default behavior
bool CanDemolish(BasePlayer player, BuildingBlock block, BuildingGrade.Enum grade)
{
Puts("CanDemolish works!");
return true;
}
Tags: demolish, player · uMod last updated 2021-05-08
CanHackCrate
- Called when a player starts hacking a locked crate
Returns: Returning a non-null value overrides default behavior
object CanHackCrate(BasePlayer player, HackableLockedCrate crate)
{
Puts("CanHackCrate works!");
return null;
}
Tags: hack, player · uMod last updated 2021-05-08
CanUserLogin
- Called when a player is attempting to connect to the server
Returns: Returning a string will kick the user with this reason. Returning a non-null value overrides default behavior
object CanUserLogin(string name, string id, string ipAddress)
{
if (name.ToLower().Contains("admin"))
{
Puts($"{name} ({id}) at {ipAddress} tried to connect with 'admin' in name");
return "Sorry, your name cannot have 'admin' in it";
}
return true;
}
Tags: user, player · uMod last updated 2021-05-08
OnUserApproved
- Called after a player is approved to connect to the server
Returns: No return behavior
void OnUserApproved(string name, string id, string ipAddress)
{
Puts($"{name} ({id}) at {ipAddress} has been approved to connect");
}
Tags: user, player · uMod last updated 2021-05-08
CanDismountEntity
- Called when the player attempts to dismount an entity
Returns: Returning a non-null value overrides default behavior
object CanDismountEntity(BasePlayer player, BaseMountable entity)
{
Puts("CanDismountEntity works!");
return null;
}
Tags: dismount, player · uMod last updated 2021-05-08
OnUserNameUpdated
- Called when a player's stored nickname has been changed
Returns: No return behavior
void OnUserNameUpdated(string id, string oldName, string newName)
{
Puts($"Player name changed from {oldName} to {newName} for ID {id}");
}
Tags: user, player · uMod last updated 2021-05-08
CanEquipItem
- Called when the player attempts to equip an item
Returns: Returning true or false overrides default behavior
bool CanEquipItem(PlayerInventory inventory, Item item, int targetPos)
{
Puts("CanEquipItem works!");
return true;
}
Tags: equip, player · uMod last updated 2021-05-08
OnUserGroupAdded
- Called when a player has been added to a group
Returns: No return behavior
void OnUserGroupAdded(string id, string groupName)
{
Puts($"Player '{id}' added to group: {groupName}");
}
Tags: user, player · uMod last updated 2021-05-08
OnUserGroupRemoved
- Called when a player has been removed from a group
Returns: No return behavior
void OnUserGroupRemoved(string id, string groupName)
{
Puts($"Player '{id}' removed from group: {groupName}");
}
Tags: user, player · uMod last updated 2021-05-08
OnExperimentStart
- Called when the player attempts to experiment with at a workbench
Returns: Returning a non-null value overrides default behavior
object OnExperimentStart(Workbench workbench, BasePlayer player)
{
Puts("OnExperimentStart works!");
return null;
}
Tags: experiment, player · uMod last updated 2021-05-08
OnExperimentStarted
- Called after the experimentation has started
Returns: No return behaviour
void OnExperimentStarted(Workbench workbench, BasePlayer player)
{
Puts("OnExperimentStarted works!");
}
Tags: experiment, player · uMod last updated 2021-05-08
OnUserPermissionGranted
- Called when a permission has been granted to a player
Returns: No return behavior
void OnUserPermissionGranted(string id, string permName)
{
Puts($"Player '{id}' granted permission: {permName}");
}
Tags: user, player · uMod last updated 2021-05-08
OnUserPermissionRevoked
- Called when a permission has been revoked from a player
Returns: No return behavior
void OnUserPermissionRevoked(string id, string permName)
{
Puts($"Player '{id}' revoked permission: {permName}");
}
Tags: user, player · uMod last updated 2021-05-08
OnExperimentEnd
- Called when an experiment is about to end
Returns: Returning a non-null value overrides defualt behaviour.
object OnExperimentEnd(Workbench workbench)
{
Puts("OnExperimentEnd works!");
return null;
}
Tags: experiment, player · uMod last updated 2021-05-08
OnExperimentEnded
- Called after the experiment has finished
Returns: No return behaviour
void OnExperimentEnded(Workbench workbench)
{
Puts("OnExperimentEnded works!");
}
Tags: experiment, player · uMod last updated 2021-05-08
OnUserKicked
- Called when a player has been kicked from the server
Returns: No return behavior
void OnUserKicked(IPlayer player, string reason)
{
Puts($"Player {player.Name} ({player.Id}) was kicked");
}
Tags: user, player · uMod last updated 2021-05-08
CanHideStash
- Called when a player tries to hide a stash
Returns: Returning a non-null value overrides default behavior
object CanHideStash(BasePlayer player, StashContainer stash)
{
Puts("CanHideStash works!");
return null;
}
Tags: hide, player · uMod last updated 2021-05-08
OnUserBanned
- Called when a player has been banned from the server
- Will have reason available if provided
Returns: No return behavior
void OnUserBanned(string name, string id, string ipAddress, string reason)
{
Puts($"Player {name} ({id}) at {ipAddress} was banned: {reason}");
}
Tags: user, player · uMod last updated 2021-05-08
CanLootEntity
- Called when the player starts looting a DroppedItemContainer, LootableCorpse, ResourceContainer, BaseRidableAnimal, or StorageContainer entity
Returns: Returning a non-null value overrides default behavior
object CanLootEntity(BasePlayer player, DroppedItemContainer container)
{
Puts("CanLootEntity works!");
return null;
}
object CanLootEntity(BasePlayer player, LootableCorpse corpse)
{
Puts("CanLootEntity works!");
return null;
}
object CanLootEntity(BasePlayer player, ResourceContainer container)
{
Puts("CanLootEntity works!");
return null;
}
object CanLootEntity(BasePlayer player, BaseRidableAnimal animal)
{
Puts("CanLootEntity works!");
return null;
}
object CanLootEntity(BasePlayer player, StorageContainer container)
{
Puts("CanLootEntity works!");
return null;
}
Tags: loot, player · uMod last updated 2021-05-08
CanLootPlayer
- Called when the player attempts to loot another player
Returns: Returning true or false overrides default behavior
bool CanLootPlayer(BasePlayer target, BasePlayer looter)
{
Puts("CanLootPlayer works!");
return true;
}
Tags: loot, player · uMod last updated 2021-05-08
CanMountEntity
- Called when the player attempts to mount an entity
Returns: Returning a non-null value overrides default behavior
object CanMountEntity(BasePlayer player, BaseMountable entity)
{
Puts("CanMountEntity works!");
return null;
}
Tags: mount, player · uMod last updated 2021-05-08
OnUserUnbanned
- Called when a player has been unbanned from the server
Returns: No return behavior
void OnUserUnbanned(string name, string id, string ipAddress)
{
Puts($"Player {name} ({id}) at {ipAddress} was unbanned");
}
Tags: user, player · uMod last updated 2021-05-08
CanPickupEntity
- Called when a player attempts to pickup a deployed entity (AutoTurret, BaseMountable, BearTrap, DecorDeployable, Door, DoorCloser, ReactiveTarget, SamSite, SleepingBag, SpinnerWheel, StorageContainer, etc.)
Returns: Returning true or false overrides default behavior
bool CanPickupEntity(BasePlayer player, BaseEntity entity)
{
Puts("CanPickupEntity works!");
return true;
}
Tags: pickup, player · uMod last updated 2021-05-08
CanPickupLock
- Called when a player attempts to pickup a lock
Returns: Returning true or false overrides default behavior
bool CanPickupLock(BasePlayer player, BaseLock baseLock)
{
Puts("CanPickupLock works!");
return true;
}
Tags: pickup, player · uMod last updated 2021-05-08
CanRenameBed
- Called when the player attempts to rename a bed or sleeping bag
Returns: Returning a non-null value overrides default behavior
object CanRenameBed(BasePlayer player, SleepingBag bed, string bedName)
{
Puts("CanRenameBed works!");
return null;
}
Tags: rename, player · uMod last updated 2021-05-08
CanResearchItem
- Called when the player attempts to research an item
Returns: Returning a non-null value overrides default behavior
object CanResearchItem(BasePlayer player, Item targetItem)
{
Puts("CanResearchItem works!");
return null;
}
Tags: research, player · uMod last updated 2021-05-08
CanUseLockedEntity
- Called when the player tries to use an entity that is locked
Returns: Returning true or false overrides default behavior
bool CanUseLockedEntity(BasePlayer player, BaseLock baseLock)
{
Puts("CanUseLockedEntity works!");
return true;
}
Tags: player · uMod last updated 2021-05-08
CanSeeStash
- Called when a player is looking at a hidden stash
Returns: Returning a non-null value overrides default behavior
object CanSeeStash(BasePlayer player, StashContainer stash)
{
Puts("CanSeeStash works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnStashExposed
- Called when a player reveals a hidden stash
Returns: No return behavior
void OnStashExposed(StashContainer stash, BasePlayer player)
{
Puts("OnStashExposed works");
}
Tags: stash, player · uMod last updated 2021-05-08
OnStashHidden
- Called when a player hides a stash
Returns: No return behavior
void OnStashHidden(StashContainer stash, BasePlayer player)
{
Puts("OnStashHidden works!");
}
Tags: stash, player · uMod last updated 2021-05-08
CanSetBedPublic
- Called when a player tries to set a bed public
Returns: Returning a non-null value overrides default behavior
object CanSetBedPublic(BasePlayer player, SleepingBag bed)
{
Puts("CanSetBedPublic works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
CanUnlock
- Called when the player tries to unlock a keylock or codelock
Returns: Returning a non-null value overrides default behavior
object CanUnlock(BasePlayer player, BaseLock baseLock)
{
Puts("CanUnlock works!");
return null;
}
Tags: unlock, player · uMod last updated 2021-05-08
CanUseMailbox
- Called when the player tries to use a mailbox
Returns: Returning true or false overrides default behavior
bool CanUseMailbox(BasePlayer player, Mailbox mailbox)
{
Puts("CanUseMailbox works!");
return true;
}
Tags: player · uMod last updated 2021-05-08
CanUseUI
- Called when the player attempts to use a custom UI
Returns: Returning a non-null value overrides default behavior
object CanUseUI(BasePlayer player, string json)
{
Puts("CanUseUI works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
CanWearItem
- Called when the player attempts to equip an item
Returns: Returning a non-null value overrides default behavior
object CanWearItem(PlayerInventory inventory, Item item, int targetSlot)
{
Puts("CanWearItem works!");
return null;
}
Tags: wear, player · uMod last updated 2021-05-08
OnClientAuth
- Called when the player is giving server connection authorization information
Returns: No return behavior
void OnClientAuth(Connection connection)
{
Puts("OnClientAuth works!");
}
Tags: client, player · uMod last updated 2021-05-08
OnDestroyUI
- Called when a custom UI is destroyed for the player
Returns: No return behavior
void OnDestroyUI(BasePlayer player, string json)
{
Puts("OnDestroyUI works!");
}
Tags: destroy, player · uMod last updated 2021-05-08
OnFindSpawnPoint
- Useful for controlling player spawnpoints (like making all spawns occur in a set area)
Returns: Return a BasePlayer.SpawnPoint object to use that spawnpoint
void OnFindSpawnPoint(BasePlayer player)
{
Puts("OnFindSpawnPoint works!");
}
Tags: find, player · uMod last updated 2021-05-08
OnLootEntity
- Called when the player starts looting an entity
Returns: No return behavior
void OnLootEntity(BasePlayer player, BaseEntity entity)
{
Puts("OnLootEntity works!");
}
Tags: loot, player · uMod last updated 2021-05-08
OnLootEntityEnd
- Called when the player stops looting an entity
Returns: No return behavior
void OnLootEntityEnd(BasePlayer player, BaseCombatEntity entity)
{
Puts("OnLootEntityEnd works!");
}
Tags: loot, player · uMod last updated 2021-05-08
OnLootItem
- Called when the player starts looting an item
Returns: No return behavior
void OnLootItem(PlayerLoot playerLoot, Item item)
{
Puts("OnLootItem works!");
}
Tags: loot, player · uMod last updated 2021-06-24
OnLootPlayer
- Called when the player starts looting another player
Returns: No return behavior
void OnLootPlayer(BasePlayer player, BasePlayer target)
{
Puts("OnLootPlayer works!");
}
Tags: loot, player · uMod last updated 2021-05-08
OnPlayerAttack
- Useful for modifying an attack before it goes out
- hitInfo.HitEntity should be the entity that this attack would hit
Returns: Returning a non-null value overrides default behavior
object OnPlayerAttack(BasePlayer attacker, HitInfo info)
{
Puts("OnPlayerAttack works!");
return null;
}
Tags: player · uMod last updated 2021-12-03
OnPlayerBanned
- Called when the player is banned (Facepunch, EAC, server ban, etc.)
Returns: No return behavior
void OnPlayerBanned(string name, ulong id, string address, string reason)
{
Puts("OnPlayerBanned works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerChat
- Called when the player sends chat to the server
Returns: Returning a non-null value overrides default behavior of chat, not commands
object OnPlayerChat(BasePlayer player, string message, Chat.ChatChannel channel)
{
Puts("OnPlayerChat works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerConnected
- Called after the player object is created, but before the player has spawned
Returns: No return behavior
void OnPlayerConnected(BasePlayer player)
{
Puts("OnPlayerConnected works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerDeath
- Called when the player is about to die
- HitInfo may be null sometimes
Returns: Returning a non-null value overrides default behavior
object OnPlayerDeath(BasePlayer player, HitInfo info)
{
Puts("OnPlayerDeath works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerDisconnected
- Called after the player has disconnected from the server
Returns: No return behavior
void OnPlayerDisconnected(BasePlayer player, string reason)
{
Puts("OnPlayerDisconnected works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerDropActiveItem
- Called when the player drops their active held item
Returns: No return behavior
void OnPlayerDropActiveItem(BasePlayer player, Item item)
{
Puts("OnPlayerDropActiveItem works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerHealthChange
- Called just before the player's health changes
Returns: Returning a non-null value cancels the health change
object OnPlayerHealthChange(BasePlayer player, float oldValue, float newValue)
{
Puts("OnPlayerHealthChange works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerInput
- Called when input is received from a connected client
Returns: No return behavior
void OnPlayerInput(BasePlayer player, InputState input)
{
Puts("OnPlayerInput works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerKicked
- Called after the player is kicked from the server
Returns: No return behavior
void OnPlayerKicked(BasePlayer player, string reason)
{
Puts("OnPlayerKicked works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerLand
- Called just before the player lands on the ground
Returns: Returning a non-null value overrides default behavior
object OnPlayerLand(BasePlayer player, float num)
{
Puts("OnPlayerLand works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerLanded
- Called when the player landed on the ground
Returns: No return behavior
void OnPlayerLanded(BasePlayer player, float num)
{
Puts("OnPlayerLanded works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerLootEnd
- Called when the player stops looting
Returns: No return behavior
void OnPlayerLootEnd(PlayerLoot inventory)
{
Puts("OnPlayerLootEnd works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerMetabolize
- Called after the player's metabolism has been changed
Returns: No return behavior
void OnPlayerMetabolize(PlayerMetabolism metabolism, BaseCombatEntity entity, float delta)
{
Puts("OnPlayerMetabolize works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerRecover
- Called when the player is about to recover from the 'wounded' state
Returns: Returning a non-null value overrides default behavior
object OnPlayerRecover(BasePlayer player)
{
Puts("OnPlayerRecover works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerRespawn
- Called when a player is attempting to respawn
Returns: Returning a BasePlayer.SpawnPoint (takes a position and rotation), overrides the respawn location, for the variant that receives a BasePlayer.SpawnPoint argument
Returns: Returning a SleepingBag overrides the respawn location, for the variant that receives a SleepingBag argument
object OnPlayerRespawn(BasePlayer player, BasePlayer.SpawnPoint spawnPoint)
{
Puts("OnPlayerRespawn works!");
return null;
}
object OnPlayerRespawn(BasePlayer player, SleepingBag sleepingBag)
{
Puts("OnPlayerRespawn works!");
return null;
}
Tags: player · uMod last updated 2023-08-04
OnPlayerRespawned
- Called when the player has respawned (specifically when they click the "Respawn" button)
- ONLY called after the player has transitioned from dead to not-dead, so not when they're waking up
- This means it's possible for the player to connect and disconnect from a server without OnPlayerRespawned ever triggering for them
Returns: No return behavior
void OnPlayerRespawned(BasePlayer player)
{
Puts("OnPlayerRespawned works!");
}
Tags: player · uMod last updated 2021-05-08
OnRespawnInformationGiven
- Called when a player is about to be sent respawn information
Returns: No return behavior
void OnRespawnInformationGiven(BasePlayer player, RespawnInformation respawnInformation)
{
Puts("OnRespawnInformationGiven works!");
}
Tags: player · uMod last updated 2021-07-03
OnPlayerSleep
- Called when the player is about to go to sleep
Returns: Returning a non-null value overrides default behavior
object OnPlayerSleep(BasePlayer player)
{
Puts("OnPlayerSleep works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerSleepEnded
- Called when the player awakes
Returns: No return behavior
void OnPlayerSleepEnded(BasePlayer player)
{
Puts("OnPlayerSleepEnded works!");
}
Tags: player · uMod last updated 2021-05-08
OnPlayerSpawn
- Called when a player is attempting to spawn for the first time
Returns: Returning true overrides default behavior
object OnPlayerSpawn(BasePlayer player)
{
Puts("OnPlayerSpawn works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerSpectate
- Called when the player starts spectating
Returns: Returning a non-null value overrides default behavior
object OnPlayerSpectate(BasePlayer player, string spectateFilter)
{
Puts("OnPlayerSpectate works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerSpectateEnd
- Called when the player stops spectating
Returns: Returning a non-null value stops the spectate from ending
object OnPlayerSpectateEnd(BasePlayer player, string spectateFilter)
{
Puts("OnPlayerSpectateEnd works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerTick
Returns: Returning a non-null value overrides default behavior
object OnPlayerTick(BasePlayer player, PlayerTick msg, bool wasPlayerStalled)
{
Puts("OnPlayerTick works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerViolation
- Called when the player triggers an anti-hack violation
Returns: Returning a non-null value overrides default behavior
object OnPlayerViolation(BasePlayer player, AntiHackType type, float amount)
{
Puts("OnPlayerViolation works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerVoice
- Called when the player uses the in-game voice chat
Returns: Returning a non-null value overrides default behavior
object OnPlayerVoice(BasePlayer player, Byte[] data)
{
Puts("OnPlayerVoice works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnPlayerWound
- Called when the player is about to go down to the 'wounded' state
- source might be null, check it before use
Returns: Returning a non-null value cancels the wounded state
object OnPlayerWound(BasePlayer player, HitInfo info)
{
Puts("OnPlayerWound works!");
return null;
}
Tags: player · uMod last updated 2022-01-17
OnRunPlayerMetabolism
- Called before a metabolism update occurs for the specified player
- Metabolism update consists of managing the player's temperature, health etc.
- You can use this to turn off or change certain aspects of the metabolism, either by editing values before returning, or taking complete control of the method
Returns: Returning a non-null value cancels the update
object OnRunPlayerMetabolism(PlayerMetabolism metabolism, BasePlayer player, float delta)
{
Puts("OnRunPlayerMetabolism works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnUserApprove
- Used by RustCore and abstracted into CanClientLogin
Returns: Returning a non-null value overrides default behavior, plugin should call Reject if it does this
object OnUserApprove(Network.Connection connection)
{
Puts("OnUserApprove works!");
return null;
}
Tags: user, player · uMod last updated 2021-05-08
OnDefaultItemsReceive
- Called when a player is about to receive default items
Returns: Returning a non-null value overrides default behavior
object OnDefaultItemsReceive(PlayerInventory inventory)
{
Puts("OnDefaultItemsReceive works!");
return null;
}
Tags: default, player · uMod last updated 2021-05-08
OnDefaultItemsReceived
- Called after a player has received default items
Returns: Returning a non-null value overrides default behavior
void OnDefaultItemsReceived(PlayerInventory inventory)
{
Puts("OnDefaultItemsReceived works!");
}
Tags: default, player · uMod last updated 2021-05-08
OnAnalysisComplete
- Called right after a player completes a survey crater analysis
Returns: No return behavior
void OnAnalysisComplete(SurveyCrater surveyCrater, BasePlayer player)
{
Puts("OnAnalysisComplete works!");
}
Tags: analysis, player · uMod last updated 2021-05-08
OnNpcConversationStart
- Called when a player tries to start a conversation with an NPC
Returns: Returning a non-null value overrides default behavior
object OnNpcConversationStart(NPCTalking npcTalking, BasePlayer player, ConversationData conversationData)
{
Puts("OnNpcConversationStart works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnNpcConversationRespond
- Called when a player chooses an NPC conversation response
Returns: Returning a non-null value overrides default behavior
object OnNpcConversationRespond(NPCTalking npcTalking, BasePlayer player, ConversationData conversationData, ConversationData.ResponseNode responseNode)
{
Puts("OnNpcConversationRespond works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnNpcConversationEnded
- Called right after a player has ended an NPC conversation
Returns: No return behavior
void OnNpcConversationEnded(NPCTalking npcTalking, BasePlayer player)
{
Puts("OnNpcConversationEnded works!");
}
Tags: player · uMod last updated 2021-05-08
OnNpcConversationResponded
- Called right after a player's chosen NPC conversation response has been processed
Returns: No return behavior
void OnNpcConversationResponded(NPCTalking npcTalking, BasePlayer player, ConversationData conversationData, ConversationData.ResponseNode responseNode)
{
Puts("OnNpcConversationResponded works!");
}
Tags: player · uMod last updated 2021-05-08
OnNetworkGroupEntered
- Called after a player has entered a network group
Returns: No return behavior
void OnNetworkGroupEntered(BasePlayer player, Network.Visibility.Group group)
{
Puts("OnNetworkGroupEntered works!");
}
Tags: network, player · uMod last updated 2021-05-08
OnNetworkGroupLeft
- Called after a player has left a network group
Returns: No return behavior
void OnNetworkGroupLeft(BasePlayer player, Network.Visibility.Group group)
{
Puts("OnNetworkGroupLeft works!");
}
Tags: network, player · uMod last updated 2021-05-08
OnDemoRecordingStart
- Called right before a demo of a player starts recording
Returns: Returning a non-null value overrides default behavior
object OnDemoRecordingStart(string filename, BasePlayer player)
{
Puts("OnDemoRecordingStart works!");
return null;
}
Tags: demo, player · uMod last updated 2021-05-08
OnDemoRecordingStarted
- Called after a demo of a player has started recording
Returns: No return behavior
void OnDemoRecordingStarted(string filename, BasePlayer player)
{
Puts("OnDemoRecordingStarted works!");
}
Tags: demo, player · uMod last updated 2021-05-08
OnDemoRecordingStop
- Called right before a demo of a player stops recording
Returns: Returning a non-null value overrides default behavior
object OnDemoRecordingStop(string filename, BasePlayer player)
{
Puts("OnDemoRecordingStop works!");
return null;
}
Tags: demo, player · uMod last updated 2021-05-08
OnDemoRecordingStopped
- Called after a demo of a player has stopped recording
Returns: No return behavior
void OnDemoRecordingStopped(string filename, BasePlayer player)
{
Puts("OnDemoRecordingStopped works!");
}
Tags: demo, player · uMod last updated 2021-05-08
OnLootNetworkUpdate
- Called when a player is trying to loot a container or a container they are looting has changed its contents
Returns: Returning a non-null value overrides default behavior
object OnLootNetworkUpdate(PlayerLoot loot)
{
Puts("OnLootNetworkUpdate works!");
return null;
}
Tags: loot, player · uMod last updated 2021-05-08
OnInventoryNetworkUpdate
- Called after a player's inventory contents have changed, before it is sent over the network to one or more clients
Returns: Returning a non-null value overrides default behavior
object OnInventoryNetworkUpdate(PlayerInventory inventory, ItemContainer container, ProtoBuf.UpdateItemContainer updateItemContainer, PlayerInventory.Type type, PlayerInventory.PlayerInventory.NetworkInventoryMode networkInventoryMode)
{
Puts("OnInventoryNetworkUpdate works!");
return null;
}
Tags: inventory, player · uMod last updated 2024-02-02
OnPlayerAddModifiers
- Called after a player consumes an item such as tea that is about to apply modifiers
Returns: Returning a non-null value overrides default behavior (prevents the modifiers from being applied)
object OnPlayerAddModifiers(BasePlayer player, Item item, ItemModConsumable consumable)
{
Puts("OnPlayerAddModifiers works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnThreatLevelUpdate
- Called when a player's threat level is about to be updated
Returns: Returning a non-null value cancels default behavior
object OnThreatLevelUpdate(BasePlayer player)
{
Puts("OnThreatLevelUpdate works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
CanUseGesture
- Called when a player attempts to use a gesture
Returns: Returning true or false overrides default behavior
bool? CanUseGesture(BasePlayer player, GestureConfig gesture)
{
Puts("CanUseGesture works!");
return null;
}
Tags: player · uMod last updated 2021-05-08
OnCentralizedBanCheck
- Called when a player is about to be checked in the centralized ban database
Returns: Returning a non-null value cancels default behavior
object OnCentralizedBanCheck(Network.Connection connection)
{
Puts("OnCentralizedBanCheck works!");
return null;
}
Tags: user, player · uMod last updated 2021-06-12
OnClientCommand
- Useful for intercepting players' commands before their handling
- Called before OnPlayerCommand and OnUserCommand
Returns: Returning a non-null value overrides default behavior
object OnClientCommand(Connection connection, string command)
{
Puts("OnClientCommand works!");
return null;
}
Tags: user, player · uMod last updated 2021-06-12
OnCorpsePopulate
- Called when an NPC player corpse is about to be populated with loot
Returns: Returning a BaseCorpse overrides default behavior
BaseCorpse OnCorpsePopulate(BasePlayer npcPlayer, BaseCorpse corpse)
{
Puts("OnCorpsePopulate works!");
return null;
}
Tags: player · uMod last updated 2021-06-12
CanSetRelationship
- Called when a player's relationship with another is about to be updated
Returns: Returning true or false overrides default behavior
bool? CanSetRelationship(BasePlayer player, BasePlayer otherPlayer, RelationshipManager.RelationshipType relationshipType, int weight)
{
Puts("CanSetRelationship works!");
return null;
}
Tags: player · uMod last updated 2022-04-20
Entity Hooks
The generic BaseEntity graph — spawn, kill, damage, mount, loot, flags. Anything in the world that is not specifically an item.
140 hooks: CanBradleyApcTarget, CanEntityBeHostile, CanSamSiteShoot, OnBuildingPrivilege, OnButtonPress, OnDieselEngineToggle, OnDieselEngineToggled, OnEntityMarkHostile, OnEntityStabilityCheck, OnExcavatorGather, OnExcavatorMiningToggled, OnExcavatorResourceSet, OnHelicopterStrafeEnter, OnHorseHitch, OnHorseLead, OnInputUpdate, OnMlrsFire, OnMlrsFired, OnNpcDestinationSet, OnNpcPlayerResume, OnNpcStopMoving, OnOutputUpdate, OnReactiveTargetReset, OnSamSiteTarget, OnShopAcceptClick, OnShopCancelClick, OnShopCompleteTrade, OnSupplyDropLanded, OnTurretAssign, OnTurretAssigned, OnWireClear, OnWireConnect, CanHelicopterDropCrate, OnEngineLoadoutRefresh, CanHelicopterStrafe, CanHelicopterStrafeTarget, CanHelicopterTarget, CanHelicopterUseNapalm, CanNetworkTo, OnHelicopterRetire, CanNpcAttack, CanNpcEat, CanRecycle, OnAirdrop, OnBradleyApcInitialize, OnBradleyApcHunt, OnBradleyApcPatrol, OnContainerDropItems, OnCrateDropped, OnCrateHack, OnCrateHackEnd, OnCrateLanded, OnEntityDeath, OnEntityDismounted, OnEntityEnter, OnEntityGroundMissing, OnEntityKill, OnEntityLeave, OnEntityMounted, OnEntitySpawned, OnEntityTakeDamage, OnFireBallDamage, OnFireBallSpread, OnFlameExplosion, OnHelicopterAttack, OnHelicopterDropCrate, OnHelicopterDropDoorOpen, OnHelicopterKilled, OnHelicopterOutOfCrates, OnHelicopterTarget, OnLiftUse, OnLootSpawn, OnNpcTargetSense, OnNpcTarget, OnItemRecycle, OnOvenCook, OnOvenCooked, OnOvenToggle, OnRecyclerToggle, OnResourceDepositCreated, OnShopCompleteTrade, OnTurretAuthorize, OnTurretClearList, OnTurretDeauthorize, OnTurretModeToggle, OnTurretShutdown, OnTurretStartup, OnTurretTarget, OnTurretToggle, OnBigWheelWin, OnBigWheelLoss, OnSolarPanelSunUpdate, OnBookmarkControl, OnBookmarkControlStarted, OnBookmarkDelete, OnBookmarkAdd, OnBookmarksSendControl, OnBookmarkControlEnd, OnBookmarkControlEnded, OnRfBroadcasterAdd, OnRfBroadcasterAdded, OnRfBroadcasterRemove, OnRfBroadcasterRemoved, OnRfListenerAdd, OnRfListenerAdded, OnRfListenerRemove, OnRfFrequencyChange, OnRfFrequencyChanged, OnRfListenerRemoved, OnSleepingBagDestroy, OnNetworkSubscriptionsUpdate, OnSleepingBagDestroyed, OnBookmarkInput, OnEntityControl, OnTurretRotate, OnCounterTargetChange, OnCounterModeToggle, OnSwitchToggle, OnSwitchToggled, OnEntityDestroy, OnElevatorButtonPress, OnElevatorCall, OnElevatorMove, CanSwapToSeat, OnRidableAnimalClaim, OnRidableAnimalClaimed, OnEntitySaved, OnEntitySnapshot, OnEntityFlagsNetworkUpdate, OnIORefCleared, OnSupplyDropDropped, OnCargoPlaneSignaled, OnWaterPurify, OnWaterPurified, OnSleepingBagValidCheck, OnCCTVDirectionChange, OnWaterCollect, OnLiquidVesselFill, OnLockerSwap, CanLockerAcceptItem
CanBradleyApcTarget
- Called when an APC targets an entity
Returns: Returning true or false overrides default behavior
bool CanBradleyApcTarget(BradleyAPC apc, BaseEntity entity)
{
Puts("CanBradleyApcTarget works!");
return true;
}
Tags: bradley, entity · uMod last updated 2021-05-08
CanEntityBeHostile
- Useful for overriding hostility of an entity
Returns: Returning a non-null value overrides default behavior
object CanEntityBeHostile(BaseCombatEntity entity)
{
Puts("CanEntityBeHostile works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
CanSamSiteShoot
- Useful for canceling the shoot of SamSite
Returns: Returning a non-null value cancels default behavior
object CanSamSiteShoot(SamSite samSite)
{
Puts("CanSamSiteShoot works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnBuildingPrivilege
- Useful for overriding a building privilege on specific entities and etc.
Returns: Returning BuildingPrivlidge value overrides default behavior
BuildingPrivlidge OnBuildingPrivilege(BaseEntity entity, OBB obb)
{
Puts($"Getting a building privilege for {entity.ShortPrefabName}!");
return null;
}
Tags: building, entity · uMod last updated 2021-05-08
OnButtonPress
- Called when a player is trying to press a button
Returns: Returning a non-null value cancels default behavior
object OnButtonPress(PressButton button, BasePlayer player)
{
Puts("OnButtonPress works!");
return null;
}
Tags: button, entity · uMod last updated 2021-05-08
OnDieselEngineToggle
- Called when a player is trying to toggle diesel engine
Returns: Returning a non-null value cancels default behavior
object OnDieselEngineToggle(DieselEngine engine, BasePlayer player)
{
Puts("OnDieselEngineToggle works!");
return null;
}
Tags: diesel, entity · uMod last updated 2022-09-12
OnDieselEngineToggled
- Called when diesel engine is toggled
Returns: No return behavior
void OnDieselEngineToggled(DieselEngine engine)
{
Puts("OnDieselEngineToggled works!");
}
Tags: diesel, entity · uMod last updated 2021-05-08
OnEntityMarkHostile
- Useful for denying marking the entity hostile
Returns: Returning a non-null value cancels default behavior
object OnEntityMarkHostile(BaseCombatEntity entity, float duration)
{
Puts("OnEntityMarkHostile works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnEntityStabilityCheck
- Called when stability of an entity is checked
Returns: Returning a non-null value cancels default behavior
object OnEntityStabilityCheck(StabilityEntity entity)
{
Puts("OnEntityStabilityCheck works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnExcavatorGather
- Called right before moving gathered resource to container
Returns: Returning a non-null value cancels default behavior
object OnExcavatorGather(ExcavatorArm arm, Item item)
{
Puts("OnExcavatorGather works!");
return null;
}
Tags: excavator, entity · uMod last updated 2021-05-08
OnExcavatorMiningToggled
- Called when excavator mining arm is toggled
Returns: No return behavior
void OnExcavatorMiningToggled(ExcavatorArm arm)
{
Puts("OnExcavatorMiningToggled works!");
}
Tags: excavator, entity · uMod last updated 2021-05-08
OnExcavatorResourceSet
- Called when a player is trying to set a new resource target
Returns: Returning a non-null value cancels default behavior
object OnExcavatorResourceSet(ExcavatorArm arm, string resourceName, BasePlayer player)
{
Puts("OnExcavatorResourceSet works!");
return null;
}
Tags: excavator, entity · uMod last updated 2021-05-08
OnHelicopterStrafeEnter
- Called when helicopter is entering strafe
Returns: Returning a non-null value cancels default behavior
object OnHelicopterStrafeEnter(PatrolHelicopterAI helicopter, Vector3 strafePosition)
{
Puts("OnHelicopterStrafeEnter works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnHorseHitch
- Called just before setting the hitch
Returns: Returning a non-null value overrides default behavior
object OnHorseHitch(RidableHorse horse, HitchTrough hitch)
{
Puts("OnHorseHitch works!");
return null;
}
Tags: horse, entity · uMod last updated 2021-05-08
OnHorseLead
- Called when a player tries to lead a horse
Returns: Returning a non-null value overrides default behavior
object OnHorseLead(BaseRidableAnimal animal, BasePlayer player)
{
Puts($"{player.displayName} tries to lead {animal.ShortPrefabName}");
return null;
}
Tags: horse, entity · uMod last updated 2022-01-08
OnInputUpdate
- Called when an input of IOEntity is updated
Returns: Returning a non-null value cancels default behavior
object OnInputUpdate(IOEntity entity, int inputAmount, int slot)
{
Puts("OnInputUpdate works!");
return null;
}
Tags: input, entity · uMod last updated 2021-05-08
OnMlrsFire
- Called just before the MLRS is fired.
Returns: Returning a non-null value overrides default behaviour.
object OnMlrsFire(MLRS mlrs, BasePlayer player)
{
Puts("OnMlrsFire works!");
return null;
}
Tags: mlrs, entity · uMod last updated 2022-06-21
OnMlrsFired
- Called just after the MLRS has been fired.
Returns: No return behaviour.
void OnMlrsFired(MLRS mlrs, BasePlayer player)
{
Puts("OnMlrsFired works!");
}
Tags: mlrs, entity · uMod last updated 2022-06-21
OnNpcDestinationSet
- Useful for canceling the destination change on NPCs
Returns: Returning a non-null value cancels default behavior
object OnNpcDestinationSet(NPCPlayerApex npc, Vector3 newPosition)
{
Puts("OnNpcDestinationSet works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnNpcPlayerResume
- Useful for canceling the invoke of TryForceToNavmesh
Returns: Returning a non-null value cancels default behavior
object OnNpcPlayerResume(NPCPlayerApex npc)
{
Puts("OnNpcPlayerResume works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnNpcStopMoving
- Useful for denying the move stop of NPCs
Returns: Returning a non-null value cancels default behavior
object OnNpcStopMoving(NPCPlayerApex npc)
{
Puts("OnNpcStopMoving works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnOutputUpdate
- Called when outputs of IOEntity are updated
Returns: Returning a non-null value cancels default behavior
object OnOutputUpdate(IOEntity entity)
{
Puts("OnOutputUpdate works!");
return null;
}
Tags: output, entity · uMod last updated 2021-05-08
OnReactiveTargetReset
- Called after the reactive target is reset
Returns: No return behaviour
void OnReactiveTargetReset(ReactiveTarget target)
{
Puts("OnReactiveTargetReset works!");
}
Tags: reactive, entity · uMod last updated 2021-05-08
OnSamSiteTarget
- Called before last target visible time is updated
Returns: Returning a non-null value cancels default behavior
object OnSamSiteTarget(SamSite samSite, BaseCombatEntity target)
{
Puts("OnSamSiteTarget works!");
return null;
}
Tags: entity · uMod last updated 2022-02-03
OnShopAcceptClick
- Called when a player is trying to accept a trade in ShopFront
Returns: Returning a non-null value cancels default behavior
object OnShopAcceptClick(ShopFront entity, BasePlayer player)
{
Puts("OnShopAcceptClick works!");
return null;
}
Tags: shop, entity · uMod last updated 2021-05-08
OnShopCancelClick
- Called when a player is cancelling a trade
Returns: Returning a non-null value cancels default behavior
object OnShopCancelClick(ShopFront entity, BasePlayer player)
{
Puts("OnShopCancelClick works!");
return null;
}
Tags: shop, entity · uMod last updated 2021-05-08
OnShopCompleteTrade
- Called before the trade is completed in ShopFront
Returns: Returning a non-null value cancels default behavior
object OnShopCompleteTrade(ShopFront entity)
{
Puts("OnShopCompleteTrade works!");
return null;
}
Tags: shop, entity · uMod last updated 2021-05-08
OnSupplyDropLanded
- Called after Supply Drop has landed
Returns: No return behavior
void OnSupplyDropLanded(SupplyDrop entity)
{
Puts("OnSupplyDropLanded works!");
}
Tags: supply, entity · uMod last updated 2021-05-08
OnTurretAssign
- Called when a player attempts to authorize another player on a turret
Returns: Returning a non-null value cancels default behavior
object OnTurretAssign(AutoTurret turret, ulong targetId, BasePlayer initiator)
{
Puts("{targetId} has been authorized on a turret by {initiator.displayName}");
return null;
}
Tags: turret, player, entity · uMod last updated 2022-07-01
OnTurretAssigned
- Called when a player has been authorized on a turret by another player
Returns: No return behaviour
void OnTurretAssigned(AutoTurret turret, ulong targetId, BasePlayer initiator)
{
Puts($"{targetId} has been authorized on a turret by {initiator.displayName});
}
Tags: turret, player, entity · uMod last updated 2022-07-01
OnWireClear
- Useful for preventing clearing wires
Returns: Returning a non-null value cancels default behavior
object OnWireClear(BasePlayer player, IOEntity entity1, int connected, IOEntity entity2, bool flag)
{
Puts("OnWireClear works!");
return null;
}
Tags: wire, entity · uMod last updated 2021-05-08
OnWireConnect
- Useful for preventing a wire to connect
Returns: Returning a non-null value cancels default behavior
object OnWireConnect(BasePlayer player, IOEntity entity1, int inputs, IOEntity entity2, int outputs)
{
Puts("OnWireConnect works!");
return null;
}
Tags: wire, entity · uMod last updated 2021-05-08
CanHelicopterDropCrate
- Called when a CH47 helicopter attempts to drop a crate
Returns: Returning true or false overrides default behavior
bool CanHelicopterDropCrate(CH47HelicopterAIController heli)
{
Puts("CanHelicopterDropCrate works!");
return true;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnEngineLoadoutRefresh
- Called before engine loadout data is refreshed
Returns: Returning a non-null value overrides default behaviour
object OnEngineLoadoutRefresh(EngineStorage storage)
{
Puts("OnEngineLoadoutRefresh works!");
return null;
}
Tags: engine, entity · uMod last updated 2021-05-08
CanHelicopterStrafe
- Called when a patrol helicopter attempts to strafe
Returns: Returning true or false overrides default behavior
bool CanHelicopterStrafe(PatrolHelicopterAI heli)
{
Puts("CanHelicopterStrafe works!");
return true;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
CanHelicopterStrafeTarget
- Called when a patrol helicopter attempts to target a player to attack while strafing
Returns: Returning true or false overrides default behavior
bool CanHelicopterStrafeTarget(PatrolHelicopterAI entity, BasePlayer target)
{
Puts("CanHelicopterStrafeTarget works!");
return true;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
CanHelicopterTarget
- Called when a patrol helicopter attempts to target a player to attack
Returns: Returning true or false overrides default behavior
bool CanHelicopterTarget(PatrolHelicopterAI heli, BasePlayer player)
{
Puts("CanHelicopterTarget works!");
return true;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
CanHelicopterUseNapalm
- Called when a patrol helicopter attempts to use napalm
Returns: Returning true or false overrides default behavior
bool CanHelicopterUseNapalm(PatrolHelicopterAI heli)
{
Puts("CanHelicopterUseNapalm works!");
return true;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
CanNetworkTo
- Called when an entity attempts to network with a player
- For better performance, avoid using heavy calculations in this hook.
Returns: Returning true or false overrides default behavior
bool CanNetworkTo(BaseNetworkable entity, BasePlayer target)
{
Puts("CanNetworkTo works!");
return true;
}
Tags: network, entity · uMod last updated 2021-05-08
OnHelicopterRetire
- Called before the patrol helicopter starts leaving the map.
Returns: Returning a non-null value overrides default behaviour.
object OnHelicopterRetire(PatrolHelicopterAI helicopter)
{
Puts("OnHelicopterRetire works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2022-01-23
CanNpcAttack
- Called when a NPC attempts to attack another entity
Returns: Returning true or false overrides default behavior
bool CanNpcAttack(BaseNpc npc, BaseEntity target)
{
Puts("CanNpcAttack works!");
return true;
}
Tags: entity · uMod last updated 2021-05-08
CanNpcEat
- Called when a NPC attempts to eat another entity
Returns: Returning true or false overrides default behavior
bool CanNpcEat(BaseNpc npc, BaseEntity target)
{
Puts("CanNpcEat works!");
return true;
}
Tags: entity · uMod last updated 2021-05-08
CanRecycle
- Called when the recycler attempts to recycle an item
Returns: Returning true or false overrides default behavior
bool CanRecycle(Recycler recycler, Item item)
{
Puts("CanRecycle works!");
return true;
}
Tags: recycle, entity · uMod last updated 2021-05-08
OnAirdrop
- Called when an airdrop has been called
Returns: No return behavior
void OnAirdrop(CargoPlane plane, Vector3 dropPosition)
{
Puts("OnAirdrop works!");
}
Tags: airdrop, entity · uMod last updated 2021-05-08
OnBradleyApcInitialize
- Called when an APC initializes
Returns: Returning a non-null value overrides default behavior
object OnBradleyApcInitialize(BradleyAPC apc)
{
Puts("OnBradleyApcInitialize works!");
return null;
}
Tags: bradley, entity · uMod last updated 2021-05-08
OnBradleyApcHunt
- Called when an APC starts hunting
Returns: Returning a non-null value overrides default behavior
object OnBradleyApcHunt(BradleyAPC apc)
{
Puts("OnBradleyApcHunt works!");
return null;
}
Tags: bradley, entity · uMod last updated 2021-05-08
OnBradleyApcPatrol
- Called when an APC is starts patrolling
Returns: Returning a non-null value overrides default behavior
object OnBradleyApcPatrol(BradleyAPC apc)
{
Puts("OnBradleyApcPatrol works!");
return null;
}
Tags: bradley, entity · uMod last updated 2021-05-08
OnContainerDropItems
- Called when a container is destroyed and all items are about to be dropped
Returns: Returning a non-null value overrides default behavior
object OnContainerDropItems(ItemContainer container)
{
Puts("OnContainerDropItems works!");
return null;
}
Tags: container, entity · uMod last updated 2021-05-08
OnCrateDropped
- Called when a locked crate from the CH47 (Chinook) has dropped
Returns: No return behavior
void OnCrateDropped(HackableLockedCrate crate)
{
Puts("OnCrateDropped works!");
}
Tags: crate, entity · uMod last updated 2021-05-08
OnCrateHack
- Called when a player starts hacking a locked crate
Returns: No return behavior
void OnCrateHack(HackableLockedCrate crate)
{
Puts("OnCrateHack works!");
}
Tags: crate, entity · uMod last updated 2021-05-08
OnCrateHackEnd
- Called when a player stops hacking a locked crate
Returns: No return behavior
void OnCrateHackEnd(HackableLockedCrate crate)
{
Puts("OnCrateHackEnd works!");
}
Tags: crate, entity · uMod last updated 2021-05-08
OnCrateLanded
- Called when a locked crate from the CH47 (Chinook) has landed
Returns: No return behavior
void OnCrateLanded(HackableLockedCrate crate)
{
Puts("OnCrateLanded works!");
}
Tags: crate, entity · uMod last updated 2021-05-08
OnEntityDeath
- HitInfo might be null, check it before use
- Editing hitInfo has no effect because the death has already happened
Returns: No return behavior
void OnEntityDeath(BaseCombatEntity entity, HitInfo info)
{
Puts("OnEntityDeath works!");
}
Tags: entity · uMod last updated 2022-01-17
OnEntityDismounted
- Called when an entity is dismounted by a player
Returns: No return behavior
void OnEntityDismounted(BaseMountable entity, BasePlayer player)
{
Puts("OnEntityDismounted works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntityEnter
- Called when an entity enters a trigger (water area, radiation zone, hurt zone, etc.)
Returns: No return behavior
void OnEntityEnter(TriggerBase trigger, BaseEntity entity)
{
Puts("OnEntityEnter works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntityGroundMissing
- Called when an entity (sleepingbag, sign, furnace,...) is going to be destroyed because the buildingblock it is on was removed
Returns: Returning a non-null value overrides default behavior
object OnEntityGroundMissing(BaseEntity entity)
{
Puts("OnEntityGroundMissing works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnEntityKill
- Called when an entity is destroyed
Returns: Returning a non-null value overrides default behavior
object OnEntityKill(BaseNetworkable entity)
{
Puts("OnEntityKill works!");
return null;
}
Tags: entity · uMod last updated 2023-04-11
OnEntityLeave
- Called when an entity leaves a trigger (water area, radiation zone, hurt zone, etc.)
Returns: No return behavior
void OnEntityLeave(TriggerBase trigger, BaseEntity entity)
{
Puts("OnEntityLeave works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntityMounted
- Called when an entity is mounted by a player
Returns: No return behavior
void OnEntityMounted(BaseMountable entity, BasePlayer player)
{
Puts("OnEntityMounted works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntitySpawned
- Called after any networked entity has spawned (including trees)
Returns: No return behavior
void OnEntitySpawned(BaseNetworkable entity)
{
Puts("OnEntitySpawned works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntityTakeDamage
- Alternatively, modify the HitInfo object to change the damage
- It should be okay to set the damage to 0, but if you don't return non-null, the player's client will receive a damage indicator (if entity is a BasePlayer)
- HitInfo has all kinds of useful things in it, such as Weapon, damageProperties or damageTypes
Returns: (not stated upstream)
object OnEntityTakeDamage(BaseCombatEntity entity, HitInfo info)
{
Puts("OnEntityTakeDamage works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnFireBallDamage
- Called when a fire ball does damage to another entity
Returns: No return behavior
void OnFireBallDamage(FireBall fire, BaseCombatEntity entity, HitInfo info)
{
Puts("OnFireBallDamage works!");
}
Tags: fire, entity · uMod last updated 2021-05-08
OnFireBallSpread
- Called when a fire ball fire spreads
Returns: No return behavior
void OnFireBallSpread(FireBall ball, BaseEntity fire)
{
Puts("OnFireBallSpread works!");
}
Tags: fire, entity · uMod last updated 2021-05-08
OnFlameExplosion
- Called when a flame explodes
Returns: No return behavior
void OnFlameExplosion(FlameExplosive explosive, BaseEntity flame)
{
Puts("OnFlameExplosion works!");
}
Tags: flame, entity · uMod last updated 2021-05-08
OnHelicopterAttack
- Called when a CH47 helicopter is being attacked
Returns: Returning a non-null value overrides default behavior
object OnHelicopterAttack(CH47HelicopterAIController heli)
{
Puts("OnHelicopterAttack works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2022-09-12
OnHelicopterDropCrate
- Called when a CH47 helicopter is dropping a crate
Returns: Returning a non-null value overrides default behavior
object OnHelicopterDropCrate(CH47HelicopterAIController heli)
{
Puts("OnHelicopterDropCrate works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnHelicopterDropDoorOpen
- Called when a CH47 helicopter is opening its drop door
Returns: Returning a non-null value overrides default behavior
object OnHelicopterDropDoorOpen(CH47HelicopterAIController heli)
{
Puts("OnHelicopterDropDoorOpen works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnHelicopterKilled
- Called when a CH47 helicopter is going to be killed
Returns: Returning a non-null value overrides default behavior
object OnHelicopterKilled(CH47HelicopterAIController heli)
{
Puts("OnHelicopterKilled works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnHelicopterOutOfCrates
- Called when a CH47 helicopter runs out of crates
Returns: Returning true or false overrides default behavior
bool? OnHelicopterOutOfCrates(CH47HelicopterAIController heli)
{
Puts("OnHelicopterOutOfCrates works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-08-14
OnHelicopterTarget
- Called when a helicopter turret attempts to target an entity
Returns: Returning a non-null value overrides default behavior
object OnHelicopterTarget(HelicopterTurret turret, BaseCombatEntity entity)
{
Puts("OnHelicopterTarget works!");
return null;
}
Tags: helicopter, entity · uMod last updated 2021-05-08
OnLiftUse
- Called when a player calls a lift or procedural lift
Returns: Returning a non-null value overrides default behavior
object OnLiftUse(Lift lift, BasePlayer player)
{
Puts("OnLiftUse works!");
return null;
}
object OnLiftUse(ProceduralLift lift, BasePlayer player)
{
Puts("OnLiftUse works!");
return null;
}
Tags: lift, entity · uMod last updated 2021-05-08
OnLootSpawn
- Called when loot spawns in a container
Returns: Returning a non-null value overrides default behavior
object OnLootSpawn(LootContainer container)
{
Puts("OnLootSpawn works!");
return null;
}
Tags: loot, entity · uMod last updated 2021-05-08
OnNpcTargetSense
- Called when an NPC becomes aware of another entity
Returns: Returning a non-null value overrides default behavior
object OnNpcTargetSense(BaseEntity owner, BaseEntity entity, AIBrainSenses brainSenses)
{
Puts("OnNpcTargetSense works!");
return null;
}
Tags: entity · uMod last updated 2023-04-23
OnNpcTarget
- Called when an NPC targets another entity
Returns: Returning a non-null value overrides default behavior
object OnNpcTarget(BaseEntity npc, BaseEntity entity)
{
Puts("OnNpcTarget works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnItemRecycle
- Called when an item is recycled in a recycler
Returns: Returning a non-null value overrides default behavior
object OnItemRecycle(Item item, Recycler recycler)
{
Puts("OnItemRecycle works!");
return null;
}
Tags: recycle, entity · uMod last updated 2022-09-12
OnOvenCook
- Called before an oven cooks an item
Returns: Returning a non-null value overrides default behavior
object OnOvenCook(BaseOven oven, Item item)
{
Puts("OnOvenCook works!");
return null;
}
Tags: oven, entity · uMod last updated 2021-05-08
OnOvenCooked
- Called after an oven cooks an item
Returns: No return behavior
void OnOvenCooked(BaseOven oven, Item item, BaseEntity slot)
{
Puts("OnOvenCooked works!");
}
Tags: oven, entity · uMod last updated 2021-05-08
OnOvenToggle
- Called when an oven (Campfire, Furnace,...) is turned on or off
Returns: Returning a non-null value overrides default behavior
object OnOvenToggle(BaseOven oven, BasePlayer player)
{
Puts("OnOvenToggle works!");
return null;
}
Tags: oven, entity · uMod last updated 2021-05-08
OnRecyclerToggle
- Called when a recycler is turned on or off
Returns: Returning a non-null value overrides default behavior
object OnRecyclerToggle(Recycler recycler, BasePlayer player)
{
Puts("OnRecyclerToggle works!");
return null;
}
Tags: recycler, entity · uMod last updated 2021-05-08
OnResourceDepositCreated
- Called when a resource deposit has been created
Returns: No return behavior
void OnResourceDepositCreated(ResourceDepositManager.ResourceDeposit deposit)
{
Puts("OnResourceDepositCreated works!");
}
Tags: resource, entity · uMod last updated 2021-05-08
OnShopCompleteTrade
- Called when a shopfront trade is complete
Returns: Returning a non-null value overrides default behavior
object OnShopCompleteTrade(ShopFront shop, BasePlayer customer)
{
Puts("OnShopCompleteTrade works!");
return null;
}
Tags: shop, entity · uMod last updated 2021-05-08
OnTurretAuthorize
- Called when a player attempts to authorize on a turret
Returns: Returning a non-null value overrides default behavior
object OnTurretAuthorize(AutoTurret turret, BasePlayer player)
{
Puts("OnTurretAuthorize works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretClearList
- Called when a player attempts to clear an autoturret's authorized list
Returns: Returning a non-null value overrides default behavior
object OnTurretClearList(AutoTurret turret, BasePlayer player)
{
Puts("OnTurretClearList works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretDeauthorize
- Called when a player is deauthorized on an autoturret
Returns: Returning a non-null value overrides default behavior
object OnTurretDeauthorize(AutoTurret turret, BasePlayer player)
{
Puts("OnTurretDeauthorize works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretModeToggle
- Called when the mode of an autoturrent is toggled
Returns: No return behavior
void OnTurretModeToggle(AutoTurret turret)
{
Puts("OnTurretModeToggle works!");
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretShutdown
- Called when an autoturret is shut down
Returns: Returning a non-null value overrides default behavior
object OnTurretShutdown(AutoTurret turret)
{
Puts("OnTurretShutdown works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretStartup
- Called when an autoturret starts up
Returns: Returning a non-null value overrides default behavior
object OnTurretStartup(AutoTurret turret)
{
Puts("OnTurretStartup works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretTarget
- Called when an autoturret attempts to target an entity
Returns: Returning a non-null value overrides default behavior
object OnTurretTarget(AutoTurret turret, BaseCombatEntity entity)
{
Puts("OnTurretTarget works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnTurretToggle
- Called when an autoturret toggles powerstate (on/off)
Returns: Returning a non-null value overrides default behavior
object OnTurretToggle(AutoTurret turret)
{
Puts("OnTurretToggle works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnBigWheelWin
- Called before multiplier is applied.
Returns: Returning non-null value overrides default behaviour.
object OnBigWheelWin(BigWheelGame bigWheel, Item scrap, BigWheelBettingTerminal terminal, int multiplier)
{
Puts("OnBigWheelWin works!");
return null;
}
Tags: entity · uMod last updated 2022-06-05
OnBigWheelLoss
- Called when a specific item is lost on the big wheel game
Returns: No return behavior
void OnBigWheelLoss(BigWheelGame wheel, Item item)
{
Puts("OnBigWheelLoss works!");
}
Tags: entity · uMod last updated 2021-05-08
OnSolarPanelSunUpdate
- Called when a solar panel updates the amount of energy it is getting from the sun
Returns: Returning a non-null value overrides default behavior
object OnSolarPanelSunUpdate(SolarPanel panel, int currentEnergy)
{
Puts("OnSolarPanelSunUpdate works!");
return null;
}
Tags: solar, entity · uMod last updated 2021-05-08
OnBookmarkControl
- Called when a player tries to select a bookmark at a computer station
Returns: Returning a non-null value overrides default behavior
object OnBookmarkControl(ComputerStation computerStation, BasePlayer player, string bookmarkName, IRemoteControllable remoteControllable)
{
Puts("OnBookmarkControl works!");
return null;
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnBookmarkControlStarted
- Called after a player has selected a bookmark at a computer station
Returns: No return behavior
void OnBookmarkControlStarted(ComputerStation computerStation, BasePlayer player, string bookmarkName, IRemoteControllable remoteControllable)
{
Puts("OnBookmarkControlStarted works!");
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnBookmarkDelete
- Called when a player tries to delete a bookmark at a computer station
Returns: Returning a non-null value overrides default behavior
object OnBookmarkDelete(ComputerStation computerStation, BasePlayer player, string bookmarkName)
{
Puts("OnBookmarkDelete works!");
return null;
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnBookmarkAdd
- Called when a player tries to add a bookmark at a computer station
Returns: Returning a non-null value overrides default behavior
object OnBookmarkAdd(ComputerStation computerStation, BasePlayer player, string bookmarkName)
{
Puts("OnBookmarkAdd works!");
return null;
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnBookmarksSendControl
- Called when a player is being sent a list of bookmarks for a computer station
Returns: Returning a non-null value overrides default behavior
object OnBookmarksSendControl(ComputerStation computerStation, BasePlayer player, string bookmarks)
{
Puts("OnBookmarksSendControl works!");
return null;
}
Tags: bookmarks, entity · uMod last updated 2021-05-08
OnBookmarkControlEnd
- Called when a player tries to stop viewing/controlling an entity at a computer station
Returns: Returning a non-null value overrides default behavior
object OnBookmarkControlEnd(ComputerStation computerStation, BasePlayer player, BaseEntity controlledEntity)
{
Puts("OnBookmarkControlEnd works!");
return null;
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnBookmarkControlEnded
- Called after a player has stopped viewing/controlling an entity at a computer station
Returns: No return behavior
void OnBookmarkControlEnded(ComputerStation computerStation, BasePlayer player, BaseEntity controlledEntity)
{
Puts("OnBookmarkControlEnded works!");
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnRfBroadcasterAdd
- Called right before an object starts broadcasting an RF frequency
Returns: Returning a non-null value overrides default behavior
object OnRfBroadcasterAdd(IRFObject obj, int frequency)
{
Puts("OnRfBroadcasterAdd works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnRfBroadcasterAdded
- Called right after an object has started broadcasting an RF frequency
Returns: No return behavior
void OnRfBroadcasterAdded(IRFObject obj, int frequency)
{
Puts("OnRfBroadcasterAdded works!");
}
Tags: entity · uMod last updated 2021-05-08
OnRfBroadcasterRemove
- Called right before an object stops broadasting an RF frequency
Returns: Returning a non-null value overrides default behavior
object OnRfBroadcasterRemove(IRFObject obj, int frequency)
{
Puts("OnRfBroadcasterRemove works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnRfBroadcasterRemoved
- Called right after an object has stopped broadcasting an RF frequency
Returns: No return behavior
void OnRfBroadcasterRemoved(IRFObject obj, int frequency)
{
Puts("OnRfBroadcasterRemoved works!");
}
Tags: entity · uMod last updated 2021-05-08
OnRfListenerAdd
- Called right before an object starts listening to an RF frequency
Returns: Returning a non-null value overrides default behavior
object OnRfListenerAdd(IRFObject obj, int frequency)
{
Puts("OnRfListenerAdd works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnRfListenerAdded
- Called right after an object has started listening to an RF frequency
Returns: No return behavior
void OnRfListenerAdded(IRFObject obj, int frequency)
{
Puts("OnRfListenerAdded works!");
}
Tags: entity · uMod last updated 2021-05-08
OnRfListenerRemove
- Called right before an object stops listening to an RF frequency
Returns: Returning a non-null value overrides default behavior
object OnRfListenerRemove(IRFObject obj, int frequency)
{
Puts("OnRfListenerRemove works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnRfFrequencyChange
- Called when a player tries to change the frequency of an RF broadcaster or receiver
- Useful for preventing particular reserved frequencies from being selected
Returns: Returning a non-null value overrides default behavior
object OnRfFrequencyChange(IRFObject obj, int frequency, BasePlayer player)
{
Puts("OnRfFrequencyChange works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnRfFrequencyChanged
- Called after a player has changed the frequency of an RF broadcaster or receiver
Returns: No return behavior
void OnRfFrequencyChanged(IRFObject obj, int frequency, BasePlayer player)
{
Puts("OnRfFrequencyChanged works!");
}
Tags: entity · uMod last updated 2021-05-08
OnRfListenerRemoved
- Called right after an object has stopped listening to an RF frequency
Returns: No return behavior
void OnRfListenerRemoved(IRFObject obj, int frequency)
{
Puts("OnRfListenerRemoved works!");
}
Tags: entity · uMod last updated 2021-05-08
OnSleepingBagDestroy
- Called when a player tries to remove a sleeping bag from their respawn screen
Returns: Returning a non-null value overrides default behavior
object OnSleepingBagDestroy(SleepingBag sleepingBag, BasePlayer player)
{
Puts("OnSleepingBagDestroy works!");
return null;
}
Tags: sleeping, entity · uMod last updated 2021-05-08
OnNetworkSubscriptionsUpdate
- Called after the Rust has determined which network groups to subscribe a player to (
groupsToAdd), and which network groups to unsubscribe the player from (groupsToRemove) - This hook is useful for situations where you want to subscribe a player to a network group that is outside their network range -- To do so, you can prevent Rust from automatically unsubscribing them by removing that group from the
groupsToRemovelist
Returns: Returning a non-null value prevents Rust from applying the proposed subscription changes
object OnNetworkSubscriptionsUpdate(Network.Networkable networkable, List<Network.Visibility.Group> groupsToAdd, List<Network.Visibility.Group> groupsToRemove)
{
Puts("OnNetworkSubscriptionsUpdate works!");
}
Tags: network, player · uMod last updated 2023-08-11
OnSleepingBagDestroyed
- Called after a player removes a sleeping bag from their respawn screen
Returns: No return behavior
void OnSleepingBagDestroyed(SleepingBag sleepingBag, BasePlayer player)
{
Puts("OnSleepingBagDestroyed works!");
}
Tags: sleeping, entity · uMod last updated 2022-01-17
OnBookmarkInput
- Called when input is received from a player who is using a computer station with a bookmark selected
Returns: Returning a non-null value overrides default behavior
object OnBookmarkInput(ComputerStation computerStation, BasePlayer player, InputState inputState)
{
Puts("OnBookmarkInput works!");
return null;
}
Tags: bookmark, entity · uMod last updated 2021-05-08
OnEntityControl
- Called when a player tries to remote control an entity
Returns: Returning true or false overrides default behavior
object OnEntityControl(IRemoteControllable entity)
{
Puts("OnEntityControl works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnTurretRotate
- Called when a player tries to rotate an auto turret
Returns: Returning a non-null value overrides default behavior
object OnTurretRotate(AutoTurret turret, BasePlayer player)
{
Puts("OnTurretRotate works!");
return null;
}
Tags: turret, entity · uMod last updated 2021-05-08
OnCounterTargetChange
- Called when a player tries to change the target number of a power counter
Returns: Returning a non-null value overrides default behavior
object OnCounterTargetChange(PowerCounter counter, BasePlayer player, int targetNumber)
{
Puts("OnCounterTargetChange works!");
return null;
}
Tags: counter, entity · uMod last updated 2021-05-08
OnCounterModeToggle
- Called when a player ties to toggle a power counter between modes
Returns: Returning a non-null value overrides default behavior
object OnCounterModeToggle(PowerCounter counter, BasePlayer player, bool mode)
{
Puts("OnCounterModeToggle works!");
return null;
}
Tags: counter, entity · uMod last updated 2021-05-08
OnSwitchToggle
- Called when a player tries to switch and ElectricSwitch or FuelGenerator
Returns: Returning a non-null value cancels default behavior
object OnSwitchToggle(IOEntity entity, BasePlayer player)
{
Puts("OnSwitchToggle works!");
return null;
}
Tags: switch, entity · uMod last updated 2021-05-08
OnSwitchToggled
- Called right after a player switches an ElectricSwitch or FuelGenerator
Returns: No return behavior
void OnSwitchToggled(IOEntity entity, BasePlayer player)
{
Puts("OnSwitchToggled works!");
}
Tags: switch, entity · uMod last updated 2021-05-08
OnEntityDestroy
- Called right before a CH47Helicopter or BradleyAPC is destroyed
Returns: Returning a non-null value overrides default behavior
object OnEntityDestroy(BaseCombatEntity entity)
{
Puts("OnEntityDestroy works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnElevatorButtonPress
- Called when a player presses a button on an elevator lift
Returns: Returning a non-null value overrides default behavior
object OnElevatorButtonPress(ElevatorLift lift, BasePlayer player, Elevator.Direction direction, bool toTopOrBottom)
{
Puts("OnElevatorButtonPress works!");
return null;
}
Tags: elevator, entity · uMod last updated 2021-05-08
OnElevatorCall
- Called when an elevator lift is called to a specific floor by electricity
Returns: Returning a non-null value overrides default behavior
object OnElevatorCall(Elevator elevator, Elevator topElevator)
{
Puts("OnElevatorCall works!");
return null;
}
Tags: elevator, entity · uMod last updated 2021-05-08
OnElevatorMove
- Called right before an elevator starts moving to the target floor
Returns: Returning a non-null value overrides default behavior
object OnElevatorMove(Elevator topElevator, int targetFloor)
{
Puts("OnElevatorMove works!");
return null;
}
Tags: elevator, entity · uMod last updated 2021-05-08
CanSwapToSeat
- Called when a player tries to switch seats, to determine whether each seat is eligible to be swapped to
Returns: Returning true or false overrides default behavior
bool CanSwapToSeat(BasePlayer player, BaseMountable mountable)
{
Puts("CanSwapToSeat works!");
return true;
}
Tags: swap, entity · uMod last updated 2021-05-08
OnRidableAnimalClaim
- Called when a player tries to claim a horse
Returns: Returning a non-null value overrides default behavior
object OnRidableAnimalClaim(BaseRidableAnimal animal, BasePlayer player)
{
Puts("OnRidableAnimalClaim works!");
return null;
}
Tags: ridable, entity · uMod last updated 2021-05-08
OnRidableAnimalClaimed
- Called after a player has claimed a horse
Returns: No return behavior
void OnRidableAnimalClaimed(BaseRidableAnimal animal, BasePlayer player)
{
Puts("OnRidableAnimalClaimed works!");
}
Tags: ridable, entity · uMod last updated 2021-05-08
OnEntitySaved
- Called after a BaseNetworkable has been saved to a ProtoBuf object and is about to be serialized to a network stream or network cache
Returns: No return behavior
void OnEntitySaved(BaseNetworkable entity, BaseNetworkable.SaveInfo saveInfo)
{
Puts("OnEntitySaved works!");
}
Tags: entity · uMod last updated 2021-05-08
OnEntitySnapshot
- Called when an entity snapshot is about to be sent to a client connection
Returns: Returning a non-null value overrides default behavior
object OnEntitySnapshot(BaseNetworkable entity, Connection connection)
{
Puts("OnEntitySnapshot works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnEntityFlagsNetworkUpdate
- Called after an entity's flags have been updated on the server, before they are sent over the network
Returns: Returning a non-null value overrides default behavior
object OnEntityFlagsNetworkUpdate(BaseEntity entity)
{
Puts("OnEntityFlagsNetworkUpdate works!");
return null;
}
Tags: entity · uMod last updated 2021-05-08
OnIORefCleared
- Called after a wire has been disconnected from an electrical entity, such as when its connected entity was destroyed or when a player removed the wire
Returns: No return behavior
void OnIORefCleared(IOEntity.IORef ioRef, IOEntity ioEntity)
{
Puts("OnIORefCleared works!");
}
Tags: entity · uMod last updated 2021-05-08
OnSupplyDropDropped
- Called right after a cargo plane has dropped a supply drop
Returns: No return behavior
void OnSupplyDropDropped(SupplyDrop supplyDrop, CargoPlane cargoPlane)
{
Puts("OnSupplyDropDropped works!");
}
Tags: supply, entity · uMod last updated 2021-05-08
OnCargoPlaneSignaled
- Called right after a supply signal has called a cargo plane
Returns: No return behavior
void OnCargoPlaneSignaled(CargoPlane cargoPlane, SupplySignal supplySignal)
{
Puts("OnCargoPlaneSignaled works!");
}
Tags: cargo, entity · uMod last updated 2021-05-08
OnWaterPurify
- Called when salt water is about to be converted to fresh water in a water purifier
Returns: Returning a non-null value cancels default behavior
object OnWaterPurify(WaterPurifier waterPurifier, float timeCooked)
{
Puts("OnWaterPurify works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnWaterPurified
- Called after salt water has been converted to fresh water in a water purifier
Returns: No return behavior
void OnWaterPurified(WaterPurifier waterPurifier, float timeCooked)
{
Puts("OnWaterPurified works!");
}
Tags: item · uMod last updated 2021-05-08
OnSleepingBagValidCheck
- Called when determining if a sleeping bag is a valid respawn location for a player
- Useful in conjunction with OnRespawnInformationGiven since a custom sleeping bag will need to pass this check
Returns: Returning true or false overrides default behavior
bool? OnSleepingBagValidCheck(SleepingBag bag, ulong targetPlayerID, bool ignoreTimers)
{
Puts("OnSleepingBagValidCheck works!");
return null;
}
Tags: item · uMod last updated 2021-06-12
OnCCTVDirectionChange
- Called when a player attempts to change the direction of a CCTV camera to face them
Returns: Returning a non-null value cancels default behavior
object OnCCTVDirectionChange(CCTV_RC camera, BasePlayer player)
{
Puts("OnCCTVDirectionChange works!");
return null;
}
Tags: entity · uMod last updated 2022-01-24
OnWaterCollect
- Called when a water catcher is about to collect water
Returns: Returning a non-null value cancels default behavior
object OnWaterCollect(WaterCatcher waterCatcher)
{
Puts("OnWaterCollect works!");
return null;
}
Tags: entity, item · uMod last updated 2021-07-03
OnLiquidVesselFill
- Called when a player is attempting to fill a liquid vessel
Returns: Returning a non-null value cancels default behavior
object OnLiquidVesselFill(BaseLiquidVessel liquidVessel, BasePlayer player, LiquidContainer facingLiquidContainer)
{
Puts("OnLiquidVesselFill works!");
return null;
}
Tags: entity, item · uMod last updated 2021-07-03
OnLockerSwap
- Called when a player clicks the "Swap" button while viewing a locker interface
Returns: Returning non-null value overrides default behavior
object OnLockerSwap(Locker locker, int startIndex, BasePlayer player)
{
Puts("OnLockerSwap works!");
return null;
}
Tags: entity, locker · uMod last updated 2023-12-10
CanLockerAcceptItem
- Called before an item is attempted to be placed inside a locker
Returns: Returning true or false overrides default behavior
object CanLockerAcceptItem(Locker locker, Item item, int targetPos)
{
Puts("CanLockerAcceptItem works!");
return null;
}
Tags: entity, locker · uMod last updated 2023-12-10
Item Hooks
Item stacks and containers: add, remove, split, stack, move, repair, research, craft, use.
43 hooks: CanAcceptItem, CanDropActiveItem, OnBackpackDrop, OnCardSwipe, OnItemRemove, OnMapImageUpdated, CanCombineDroppedItem, CanMoveItem, CanStackItem, OnFuelConsume, OnFuelConsumed, OnFindBurnable, OnHealingItemUse, OnItemAction, OnItemAddedToContainer, OnItemCraft, OnItemCraftCancelled, OnItemCraftFinished, OnItemDeployed, OnItemDropped, OnItemPickup, OnItemRemovedFromContainer, OnItemRepair, OnItemResearch, OnItemResearched, OnResearchCostDetermine, OnItemSplit, OnItemUpgrade, OnItemUse, OnLoseCondition, OnMaxStackable, OnTrapArm, OnTrapDisarm, OnTrapSnapped, OnTrapTrigger, OnBonusItemDrop, OnBonusItemDropped, OnItemRefill, OnItemLock, OnItemUnlock, OnItemSubmit, OnItemStacked, OnIngredientsCollect
CanAcceptItem
- Called when attempting to put an item in a container
Returns: Returning CanAcceptResult value overrides default behavior
ItemContainer.CanAcceptResult? CanAcceptItem(ItemContainer container, Item item, int targetPos)
{
Puts("CanAcceptItem works!");
return null;
}
Tags: accept, item · uMod last updated 2021-05-08
CanDropActiveItem
- Called when a player attempts to drop their active item
Returns: Returning true or false overrides default behavior
bool CanDropActiveItem(BasePlayer player)
{
Puts("CanDropActiveItem works!");
return true;
}
Tags: drop, item · uMod last updated 2021-05-08
OnBackpackDrop
- Called just before a backpack is dropped from a player on death.
Returns: Return non-null to override default behaviour.
object OnBackpackDrop(Item backpack, BasePlayer player)
{
Puts("OnBackpackDrop works!");
return null;
}
Tags: rust · uMod last updated 2024-05-08
OnCardSwipe
- Called when a player is trying to swipe a card
Returns: Returning a non-null value cancels default behavior
object OnCardSwipe(CardReader cardReader, Keycard card, BasePlayer player)
{
Puts("OnCardSwipe works!");
return null;
}
Tags: card, item · uMod last updated 2021-05-08
OnItemRemove
- Called before an item is destroyed
Returns: Return a non-null value stop item from being destroyed
// Example that stops item from being destroyed
object OnItemRemove(Item item)
{
Puts("OnItemRemove works!");
return null;
}
// Example that does not stop item from being destroyed
void OnItemRemove(Item item)
{
Puts("OnItemRemove works!");
}
Tags: item · uMod last updated 2022-01-17
OnMapImageUpdated
- Called when player updates map item's image
- Useful for executing any action when map image is updated
Returns: No return behavior
void OnMapImageUpdated()
{
Puts("OnMapImageUpdated works!");
}
Tags: item · uMod last updated 2021-05-08
CanCombineDroppedItem
- Called when an item is dropped on another item
Returns: Returning a non-null value overwrites command arguments
object CanCombineDroppedItem(DroppedItem item, DroppedItem targetItem)
{
Puts("CanCombineDroppedItem works!");
return null;
}
Tags: combine, item · uMod last updated 2021-05-08
CanMoveItem
- Called when moving an item from one inventory slot to another
Returns: Returning a non-null value overrides default behavior
object CanMoveItem(Item item, PlayerInventory playerLoot, ItemContainerId targetContainer, int targetSlot, int amount, ItemMoveModifier itemMoveModifier)
{
Puts("CanMoveItem works!");
return null;
}
Tags: move, item · uMod last updated 2024-02-02
CanStackItem
- Called when moving an item onto another item
Returns: Returning true or false overrides default behavior
bool CanStackItem(Item item, Item targetItem)
{
Puts("CanStackItem works!");
return true;
}
Tags: stack, item · uMod last updated 2021-05-08
OnFuelConsume
- Called right before fuel is used (furnace, lanterns, camp fires, etc.)
Returns: Returning a non-null value overrides default behavior
object OnFuelConsume(BaseOven oven, Item fuel, ItemModBurnable burnable)
{
Puts("OnFuelConsume works!");
return null;
}
Tags: fuel, item · uMod last updated 2021-05-08
OnFuelConsumed
- Called after fuel is used (furnace, lanterns, camp fires, etc.)
Returns: No return behavior
void OnFuelConsumed(BaseOven oven, Item fuel, ItemModBurnable burnable)
{
Puts("OnFuelConsumed works!");
}
Tags: fuel, item · uMod last updated 2021-05-08
OnFindBurnable
- Called when looking for fuel for the oven
Returns: Returning an Item overrides default behavior
Item OnFindBurnable(BaseOven oven)
{
Puts("OnFindBurnable works!");
return null;
}
Tags: find, item · uMod last updated 2022-10-05
OnHealingItemUse
- Called when a player attempts to use a medical tool
Returns: Returning a non-null value overrides default behavior
object OnHealingItemUse(MedicalTool tool, BasePlayer player)
{
Puts("OnHealingItemUse works!");
return null;
}
Tags: healing, item · uMod last updated 2021-05-08
OnItemAction
- Called when a button is clicked on an item in the inventory (drop, unwrap, ...)
Returns: Returning a non-null value overrides default behavior
object OnItemAction(Item item, string action, BasePlayer player)
{
Puts("OnItemAction works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemAddedToContainer
- Called right after an item was added to a container
- An entire stack has to be created, not just adding more wood to a wood stack for example
Returns: No return behavior
void OnItemAddedToContainer(ItemContainer container, Item item)
{
Puts("OnItemAddedToContainer works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemCraft
- Called just before an item is added to the crafting queue
Returns: Returning true or false overrides default behavior
object OnItemCraft(ItemCraftTask task, BasePlayer player, Item item)
{
Puts("OnItemCraft works!");
return null;
}
Tags: item · uMod last updated 2023-10-11
OnItemCraftCancelled
- Called before an item has been crafted
Returns: No return behavior
void OnItemCraftCancelled(ItemCraftTask task)
{
Puts("OnItemCraftCancelled works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemCraftFinished
- Called right after an item has been crafted
Returns: No return behavior
void OnItemCraftFinished(ItemCraftTask task, Item item)
{
Puts("OnItemCraftFinished works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemDeployed
- Called right after an item has been deployed
Returns: No return behavior
void OnItemDeployed(Deployer deployer, BaseEntity entity, BaseEntity slotEntity)
{
Puts("OnItemDeployed works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemDropped
- Called right after an item has been dropped
Returns: No return behavior
void OnItemDropped(Item item, BaseEntity entity)
{
Puts("OnItemDropped works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemPickup
- Called right after an item has been picked up
Returns: Returning a non-null value overrides default behavior
object OnItemPickup(Item item, BasePlayer player)
{
Puts("OnItemPickup works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemRemovedFromContainer
- Called right after an item was removed from a container
- The entire stack has to be removed for this to be called, not just a little bit
Returns: No return behavior
void OnItemRemovedFromContainer(ItemContainer container, Item item)
{
Puts("OnItemRemovedFromContainer works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemRepair
- Called right before an item is repaired
Returns: Returning a non-null value overrides default behavior
object OnItemRepair(BasePlayer player, Item item)
{
Puts("OnItemRepair works!");
return null;
}
Tags: item · uMod last updated 2021-07-21
OnItemResearch
- Called right before a player begins to research an item
Returns: No return behavior
void OnItemResearch(ResearchTable table, Item targetItem, BasePlayer player)
{
Puts("OnItemResearch works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemResearched
- Called right before a player finishes researching an item
Returns: Returning a float will affect if researching is successful or not
float OnItemResearched(ResearchTable table, float chance)
{
Puts("OnItemResearched works!");
return 1;
}
Tags: item · uMod last updated 2021-05-08
OnResearchCostDetermine
- Called when an item is being scrapped at a research table or when a blueprint is being unlocked in a tech tree
Returns: Returning a numeric value (int) overrides the default value
object OnResearchCostDetermine(Item item, ResearchTable researchTable)
{
Puts("OnResearchCostDetermine works!");
return null;
}
object OnResearchCostDetermine(ItemDefinition itemDefinition)
{
Puts("OnResearchCostDetermine works!");
return null;
}
Tags: research, item · uMod last updated 2021-05-08
OnItemSplit
- Called right before an item is split into multiple stacks
Returns: Returning an Item overrides default behavior
Item OnItemSplit(Item item, int amount)
{
Puts("OnItemSplit works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemUpgrade
- Called right before an item is upgraded
Returns: No return behavior
void OnItemUpgrade(Item item, Item upgraded, BasePlayer player)
{
Puts("OnItemUpgrade works!");
}
Tags: item · uMod last updated 2021-05-08
OnItemUse
- Called when an item is used
Returns: Returning an int overrides the amount consumed.
int OnItemUse(Item item, int amountToUse)
{
Puts("OnItemUse works!");
return amountToUse;
}
Tags: item · uMod last updated 2022-07-27
OnLoseCondition
- Called right before the condition of the item is modified
Returns: No return behavior
void OnLoseCondition(Item item, ref float amount)
{
Puts("OnLoseCondition works!");
}
Tags: lose, item · uMod last updated 2021-05-08
OnMaxStackable
- Called when an items max stackable is calculated
Returns: Returning a numeric value (int) overrides the default value
int OnMaxStackable(Item item)
{
Puts("OnMaxStackable works!");
return 1;
}
Tags: item · uMod last updated 2021-05-08
OnTrapArm
- Called when the player arms a bear trap
Returns: Returning a non-null value overrides default behavior
object OnTrapArm(BearTrap trap, BasePlayer player)
{
Puts("OnTrapArm works!");
return null;
}
Tags: trap, item · uMod last updated 2021-05-08
OnTrapDisarm
- Called when the player disarms a land mine
Returns: Returning a non-null value overrides default behavior
object OnTrapDisarm(Landmine trap, BasePlayer player)
{
Puts("OnTrapDisarm works!");
return null;
}
Tags: trap, item · uMod last updated 2021-05-08
OnTrapSnapped
- Called when a trap is triggered by a game object
Returns: No return behavior
void OnTrapSnapped(BaseTrapTrigger trap, GameObject go)
{
Puts("OnTrapSnapped works!");
}
Tags: trap, item · uMod last updated 2021-05-08
OnTrapTrigger
- Called when a trap is triggered by a game object
Returns: Returning a non-null value overrides default behavior
object OnTrapTrigger(BaseTrap trap, GameObject go)
{
Puts("OnTrapTrigger works!");
return null;
}
Tags: trap, item · uMod last updated 2021-05-08
OnBonusItemDrop
- Called when a loot container is about to drop bonus scrap for a player who has a corresponding tea buff
Returns: Returning a non-null value overrides default behavior
object OnBonusItemDrop(Item item, BasePlayer player)
{
Puts("OnBonusItemDrop works!");
return null;
}
Tags: bonus, item · uMod last updated 2021-05-08
OnBonusItemDropped
- Called after a loot container has dropped bonus scrap for a player who has a corresponding tea buff
Returns: No return behavior
void OnBonusItemDropped(Item item, BasePlayer player)
{
Puts("OnBonusItemDropped works!");
}
Tags: bonus, item · uMod last updated 2021-05-08
OnItemRefill
- Called right before an item such as a diving tank is repaired without using a repair bench
Returns: Returning a non-null value overrides default behavior
object OnItemRefill(Item item, BasePlayer player)
{
Puts("OnItemRefill works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemLock
- Called right before an item is locked, such as in a modular car inventory
Returns: Returning a non-null value overrides default behavior
object OnItemLock(Item item)
{
Puts("OnItemLock works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemUnlock
- Called right before an item is unlocked, such as in a modular car inventory
Returns: Returning a non-null value overrides default behavior
object OnItemUnlock(Item item)
{
Puts("OnItemUnlock works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemSubmit
- Called when a player submits an item into a mailbox or dropbox
Returns: Returning a non-null value cancels default behavior
object OnItemSubmit(Item item, Mailbox mailbox, BasePlayer player)
{
Puts("OnItemSubmit works!");
return null;
}
Tags: item · uMod last updated 2021-05-08
OnItemStacked
- Called after an item has been stacked
Returns: No return behavior
void OnItemStacked(Item destinationItem, Item sourceItem, ItemContainer destinationContainer)
{
Puts("OnItemStacked works!");
}
Tags: item · uMod last updated 2021-05-08
OnIngredientsCollect
- Called when ingredients are about to be collected for crafting an item
Returns: Returning a non-null value cancels default behavior
bool? OnIngredientsCollect(ItemCrafter itemCrafter, ItemBlueprint blueprint, ItemCraftTask task, int amount, BasePlayer player)
{
Puts("OnIngredientsCollect works!");
return null;
}
Tags: craft · uMod last updated 2021-06-12
Resource Hooks
Gathering and node dispensers — ore, trees, corpses, collectibles, quarries.
12 hooks: CanTakeCutting, OnCollectiblePickup, OnGrowableGathered, OnQuarryToggled, OnRemoveDying, OnGrowableGather, OnDispenserBonus, OnDispenserGather, OnQuarryEnabled, OnTreeMarkerHit, OnQuarryGather, OnSurveyGather
CanTakeCutting
- Called when a player is trying to take a cutting (clone) of a GrowableEntity
Returns: Returning a non-null value cancels default behavior
object CanTakeCutting(BasePlayer player, GrowableEntity entity)
{
Puts("CanTakeCutting works!");
return null;
}
Tags: take, resource · uMod last updated 2022-01-24
OnCollectiblePickup
- Called when the player collects an item
Returns: Returning a non-null value overrides default behavior
object OnCollectiblePickup(CollectibleEntity collectible, BasePlayer player)
{
Puts("OnCollectiblePickup works!");
return null;
}
Tags: collectible, resource · uMod last updated 2022-08-14
OnGrowableGathered
- Called before the player receives an item from gathering a growable entity
Returns: No return behavior
void OnGrowableGathered(GrowableEntity plant, Item item, BasePlayer player)
{
Puts($"{player.displayName} has gathered {item.info.shortname} x {item.amount}.");
}
Tags: growable, resource · uMod last updated 2021-05-08
OnQuarryToggled
- Called when a quarry has just been toggled
Returns: No return behavior
void OnQuarryToggled(MiningQuarry quarry, BasePlayer player)
{
Puts($"{player.displayName} has toggled a quarry");
}
Tags: quarry, resource · uMod last updated 2021-05-08
OnRemoveDying
- Called when a player is trying to harvest a dying growable entity
Returns: Returning a non-null value overrides default behavior
object OnRemoveDying(GrowableEntity plant, BasePlayer player)
{
Puts("OnRemoveDying works!");
return null;
}
Tags: remove, resource · uMod last updated 2021-05-08
OnGrowableGather
- Called when the player gathers a growable entity
Returns: Returning a non-null value overrides default behavior
object OnGrowableGather(GrowableEntity plant, BasePlayer player)
{
Puts("OnGrowableGather works!");
return null;
}
Tags: growable, resource · uMod last updated 2021-05-08
OnDispenserBonus
- Called before the player is given a bonus item for gathering
Returns: Returning an Item replaces the existing Item
void OnDispenserBonus(ResourceDispenser dispenser, BasePlayer player, Item item)
{
Puts("OnDispenserBonus works!");
}
Tags: dispenser, resource · uMod last updated 2021-10-19
OnDispenserGather
- Called before the player is given items from a resource
Returns: Returning a non-null value overrides default behavior
object OnDispenserGather(ResourceDispenser dispenser, BasePlayer player, Item item)
{
Puts("OnDispenserGather works!");
return null;
}
Tags: dispenser, resource · uMod last updated 2023-05-04
OnQuarryEnabled
- Called when a mining quarry is turned on/enabled
Returns: No return behavior
void OnQuarryEnabled(MiningQuarry quarry)
{
Puts("OnQuarryEnabled works!");
}
Tags: quarry, resource · uMod last updated 2021-05-08
OnTreeMarkerHit
- Called when a player hits a tree with a tool (rock, hatchet, etc.)
Returns: Returning true or false overrides default behaviour
bool? OnTreeMarkerHit(TreeEntity tree, HitInfo info)
{
Puts("OnTreeMarkerHit works!");
return null;
}
Tags: resource, tree · uMod last updated 2022-04-11
OnQuarryGather
- Called before items are gathered from a quarry
Returns: No return behavior
void OnQuarryGather(MiningQuarry quarry, Item item)
{
Puts("OnQuarryGather works!");
}
Tags: quarry, resource · uMod last updated 2021-05-08
OnSurveyGather
- Called before items are gathered from a survey charge
Returns: No return behavior
void OnSurveyGather(SurveyCharge survey, Item item)
{
Puts("OnSurveyGather works!");
}
Tags: survey, resource · uMod last updated 2021-05-08
Structure Hooks
Building blocks: placement, upgrade, demolish, rotate, stability, doors and locks.
15 hooks: OnCodeEntered, OnCupboardAuthorize, OnCupboardClearList, OnCupboardDeauthorize, OnDoorClosed, OnDoorOpened, OnDoorKnocked, OnEntityBuilt, OnHammerHit, OnStructureDemolish, OnStructureRepair, OnStructureRotate, OnStructureUpgrade, OnConstructionPlace, OnBuildingSplit
OnCodeEntered
- Called when the player has entered a code in a codelock
Returns: Returning a non-null value overrides default behavior
object OnCodeEntered(CodeLock codeLock, BasePlayer player, string code)
{
Puts("OnCodeEntered works!");
return null;
}
Tags: code, structure · uMod last updated 2021-05-08
OnCupboardAuthorize
- Called when a cupboard attempts to authorize a player
Returns: Returning a non-null value overrides default behavior
object OnCupboardAuthorize(BuildingPrivlidge privilege, BasePlayer player)
{
Puts("OnCupboardAuthorize works!");
return null;
}
Tags: cupboard, structure · uMod last updated 2021-05-08
OnCupboardClearList
- Called when an attempt is made to clear a cupboard authorized list
Returns: Returning a non-null value overrides default behavior
object OnCupboardClearList(BuildingPrivlidge privilege, BasePlayer player)
{
Puts("OnCupboardClearList works!");
return null;
}
Tags: cupboard, structure · uMod last updated 2021-05-08
OnCupboardDeauthorize
- Called when a cupboard attempts to deauthorize a player
Returns: Returning a non-null value overrides default behavior
object OnCupboardDeauthorize(BuildingPrivlidge privilege, BasePlayer player)
{
Puts("OnCupboardDeauthorize works!");
return null;
}
Tags: cupboard, structure · uMod last updated 2021-05-08
OnDoorClosed
- Called when the player closed a door
Returns: No return behavior
void OnDoorClosed(Door door, BasePlayer player)
{
Puts("OnDoorClosed works!");
}
Tags: door, structure · uMod last updated 2021-05-08
OnDoorOpened
- Called when the player opened a door
Returns: No return behavior
void OnDoorOpened(Door door, BasePlayer player)
{
Puts("OnDoorOpened works!");
}
Tags: door, structure · uMod last updated 2021-05-08
OnDoorKnocked
- Called when the player knocks on a door
Returns: No return behavior
void OnDoorKnocked(Door door, BasePlayer player)
{
Puts("OnDoorKnocked works!");
}
Tags: door, structure · uMod last updated 2021-05-08
OnEntityBuilt
- Called when any structure is built (walls, ceilings, stairs, etc.)
Returns: No return behavior
void OnEntityBuilt(Planner plan, GameObject go)
{
Puts("OnEntityBuilt works!");
}
Tags: entity, structure · uMod last updated 2021-05-08
OnHammerHit
- Called when the player has hit something with a hammer
Returns: Returning a non-null value overrides default behavior
object OnHammerHit(BasePlayer player, HitInfo info)
{
Puts("OnHammerHit works!");
return null;
}
Tags: hammer, structure · uMod last updated 2021-05-08
OnStructureDemolish
- Called when the player selects Demolish or DemolishImmediate from the BuildingBlock or BaseCombatEntity menu
Returns: Returning a non-null value overrides default behavior
object OnStructureDemolish(BaseCombatEntity entity, BasePlayer player, bool immediate)
{
Puts("OnStructureDemolish works!");
return null;
}
Tags: structure · uMod last updated 2021-05-08
OnStructureRepair
- Called when the player repairs a BuildingBlock or BaseCombatEntity
Returns: Returning a non-null value cancels repair
object OnStructureRepair(BaseCombatEntity entity, BasePlayer player)
{
Puts("OnStructureRepair works!");
return null;
}
Tags: structure · uMod last updated 2021-05-08
OnStructureRotate
- Called when the player rotates a BuildingBlock or BaseCombatEntity
Returns: Returning a non-null value cancels rotate
object OnStructureRotate(BaseCombatEntity entity, BasePlayer player)
{
Puts("OnStructureRotate works!");
return null;
}
Tags: structure · uMod last updated 2021-05-08
OnStructureUpgrade
- Called when the player upgrades the grade of a BuildingBlock or BaseCombatEntity
Returns: Returning a non-null value overrides default behavior
object OnStructureUpgrade(BaseCombatEntity entity, BasePlayer player, BuildingGrade.Enum grade)
{
Puts("OnStructureUpgrade works!");
return null;
}
Tags: structure · uMod last updated 2021-05-08
OnConstructionPlace
- Called when a player tries to place a building block
Returns: Returning a non-null value overrides default behavior
object OnConstructionPlace(BaseEntity entity, Construction component, Construction.Target constructionTarget, BasePlayer player)
{
Puts("OnConstructionPlace works!");
return null;
}
Tags: construction, structure · uMod last updated 2021-05-08
OnBuildingSplit
- Called when a building is split into two
Returns: No return behavior
void OnBuildingSplit(BuildingManager.Building building, uint newBuildingId)
{
Puts("OnBuildingSplit works!");
}
Tags: building, structure · uMod last updated 2022-09-11
Terrain Hooks
Terrain/map topology.
1 hook: OnTerrainInitialized
OnTerrainInitialized
- Called after the terrain generation process has completed
Returns: No return behavior
void OnTerrainInitialized()
{
Puts("OnTerrainInitialized works!");
}
Tags: terrain · uMod last updated 2021-05-08
Vending Hooks
Vending machines and the shop/trade flow, including the marketplace and drone deliveries.
16 hooks: CanAdministerVending, OnGiveSoldItem, OnTakeCurrencyItem, OnVendingShopRename, CanUseVending, CanVendingAcceptItem, OnAddVendingOffer, OnBuyVendingItem, OnDeleteVendingOffer, OnOpenVendingAdmin, OnVendingShopOpened, OnRefreshVendingStock, OnRotateVendingMachine, OnToggleVendingBroadcast, OnVendingTransaction, OnNpcGiveSoldItem
CanAdministerVending
- Called when a player attempts to administer a vending machine
Returns: Returning true or false overrides default behavior
bool CanAdministerVending(BasePlayer player, VendingMachine machine)
{
Puts("CanAdministerVending works!");
return true;
}
Tags: administer, vending · uMod last updated 2021-05-08
OnGiveSoldItem
- Called before a sold item is given
Returns: Returning a non-null value cancels default behavior
object OnGiveSoldItem(NPCVendingMachine vending, Item soldItem, BasePlayer buyer)
{
Puts("OnGiveSoldItem works!");
return null;
}
object OnGiveSoldItem(VendingMachine vending, Item soldItem, BasePlayer buyer)
{
Puts("OnGiveSoldItem works!");
return null;
}
Tags: give, vending · uMod last updated 2022-01-17
OnTakeCurrencyItem
- Called before currency item is taken
Returns: Returning a non-null value cancels default behavior
object OnTakeCurrencyItem(VendingMachine vending, Item item)
{
Puts("OnTakeCurrencyItem works!");
return null;
}
Tags: take, vending · uMod last updated 2021-05-08
OnVendingShopRename
- Called when a player tries to rename vending shop
Returns: Returning a non-null value cancels default behavior
object OnVendingShopRename(VendingMachine vending, string newName, BasePlayer player)
{
Puts("OnVendingShopRename works!");
return null;
}
Tags: vending · uMod last updated 2021-05-08
CanUseVending
- Called when a player attempts to use a vending machine
Returns: Returning true or false overrides default behavior
bool CanUseVending(BasePlayer player, VendingMachine machine)
{
Puts("CanUseVending works!");
return true;
}
Tags: vending · uMod last updated 2022-09-11
CanVendingAcceptItem
- Called when a player attempts to administer a vending machine
Returns: Returning true or false overrides default behavior
bool CanVendingAcceptItem(VendingMachine vending, Item item, int targetPos)
{
Puts("CanVendingAcceptItem works!");
return true;
}
Tags: vending · uMod last updated 2021-05-08
OnAddVendingOffer
- Called when a sell order/offer is added to a vending machine
Returns: No return behavior
void OnAddVendingOffer(VendingMachine machine, ProtoBuf.VendingMachine.SellOrder sellOrder)
{
Puts("OnAddVendingOffer works!");
}
Tags: vending · uMod last updated 2021-05-08
OnBuyVendingItem
- Called when a player buys an item from a vending machine
Returns: Returning a non-null value overrides default behavior
object OnBuyVendingItem(VendingMachine machine, BasePlayer player, int sellOrderId, int numberOfTransactions)
{
Puts("OnBuyVendingItem works!");
return null;
}
Tags: vending · uMod last updated 2021-05-08
OnDeleteVendingOffer
- Called when a sell order/offer is deleted from a vending machine
Returns: No return behavior
void OnDeleteVendingOffer(VendingMachine machine, int offerId)
{
Puts("OnDeleteVendingOffer works!");
}
Tags: delete, vending · uMod last updated 2021-05-08
OnOpenVendingAdmin
- Called when a player opens the admin ui for a vending machine
Returns: No return behavior
void OnOpenVendingAdmin(VendingMachine machine, BasePlayer player)
{
Puts("OnOpenVendingAdmin works!");
}
Tags: open, vending · uMod last updated 2021-05-08
OnVendingShopOpened
- Called when a player opens the customer ui for a vending machine
Returns: No return behavior
void OnVendingShopOpened(VendingMachine machine, BasePlayer player)
{
Puts("OnVendingShopOpened works!");
}
Tags: open, vending · uMod last updated 2022-09-12
OnRefreshVendingStock
- Called when the stock on a vending machine is updated
Returns: No return behavior
void OnRefreshVendingStock(VendingMachine machine, Item item)
{
Puts("OnRefreshVendingStock works!");
}
Tags: refresh, vending · uMod last updated 2021-05-08
OnRotateVendingMachine
- Called when a player attempts to rotate a vending machine
Returns: Returning a non-null value overrides default behavior
object OnRotateVendingMachine(VendingMachine machine, BasePlayer player)
{
Puts("OnRotateVendingMachine works!");
return null;
}
Tags: rotate, vending · uMod last updated 2021-05-08
OnToggleVendingBroadcast
- Called when a player toggles the broadcasting of the vending machine
Returns: No return behavior
void OnToggleVendingBroadcast(VendingMachine machine, BasePlayer player)
{
Puts("OnToggleVendingBroadcast works!");
}
Tags: toggle, vending · uMod last updated 2021-05-08
OnVendingTransaction
- Called when a player attempts to buy an item from a vending machine
Returns: Returning true or false overrides default behavior
bool OnVendingTransaction(VendingMachine machine, BasePlayer buyer, int sellOrderId, int numberOfTransactions)
{
Puts("OnVendingTransaction works!");
return true;
}
Tags: vending · uMod last updated 2021-05-08
OnNpcGiveSoldItem
- Called before a non-player controlled vending machine (at outpost etc.) gives the player the item they purchased.
Returns: Returning a non-null value overrides default behaviour.
object OnNpcGiveSoldItem(NPCVendingMachine machine, Item soldItem, BasePlayer buyer)
{
Puts("OnNpcGiveSoldItem works!");
return null;
}
Tags: vending · uMod last updated 2021-05-10
Weapon Hooks
Firing, reloading, throwing, melee swings, projectile and trap behaviour.
16 hooks: CanCreateWorldProjectile, CanExplosiveStick, OnAmmoUnload, OnExplosiveDud, OnExplosiveFuseSet, OnProjectileRicochet, OnWorldProjectileCreate, OnExplosiveDropped, OnExplosiveThrown, OnFlameThrowerBurn, OnMeleeThrown, OnMagazineReload, OnWeaponReload, OnRocketLaunched, OnAmmoSwitch, OnWeaponFired
CanCreateWorldProjectile
- Called when the item creates a projectile in the world
Returns: Returning a non-null value overrides default behavior
object CanCreateWorldProjectile(HitInfo info, ItemDefinition itemDef)
{
Puts("CanCreateWorldProjectile works!");
return null;
}
Tags: create, weapon · uMod last updated 2021-05-08
CanExplosiveStick
- Called when a Timed Explosive is attempting to stick to another entity
Returns: Returning a non-null value overwrites the default behavior
object CanExplosiveStick(TimedExplosive explosive, BaseEntity entity)
{
Puts("CanExplosiveStick works!");
return null;
}
Tags: explosive, weapon · uMod last updated 2023-07-12
OnAmmoUnload
- Called when a player is trying to unload ammo
Returns: Returning a non-null value cancels default behavior
object OnAmmoUnload(BaseProjectile projectile, Item item, BasePlayer player)
{
Puts("OnAmmoUnload works!");
return null;
}
Tags: ammo, weapon · uMod last updated 2021-05-08
OnExplosiveDud
- Called when explosive tries to become dud
Returns: Returning a non-null value cancels default behavior
object OnExplosiveDud(DudTimedExplosive explosive)
{
Puts("OnExplosiveDud works!");
return null;
}
Tags: explosive, weapon · uMod last updated 2021-05-08
OnExplosiveFuseSet
- Called when a fuse of an explosive is set
Returns: Returning a non-null value overwrites fuse length
object OnExplosiveFuseSet(TimedExplosive explosive, float fuseLength)
{
Puts("OnExplosiveFuseSet works!");
return null;
}
Tags: explosive, weapon · uMod last updated 2021-05-08
OnProjectileRicochet
- Called when a player's weapon projectile ricochets
Returns: Returning a non-null value overrides default behavior
object OnProjectileRicochet(BasePlayer player, PlayerProjectileRicochet ricochet)
{
Puts("OnProjectileRicochet works!");
return null;
}
Tags: projectile, weapon · uMod last updated 2021-05-08
OnWorldProjectileCreate
- Called when a projectile is created
Returns: Returning a non-null value overrides default behavior
object OnWorldProjectileCreate(HitInfo hitInfo, Item item)
{
Puts("OnWorldProjectileCreate works!");
return null;
}
Tags: create, weapon · uMod last updated 2023-04-16
OnExplosiveDropped
- Called when the player drops an explosive item (C4, grenade, ...)
Returns: No return behavior
void OnExplosiveDropped(BasePlayer player, BaseEntity entity, ThrownWeapon item)
{
Puts("OnExplosiveDropped works!");
}
Tags: explosive, weapon · uMod last updated 2021-05-08
OnExplosiveThrown
- Called when the player throws an explosive item (C4, grenade, ...)
Returns: No return behavior
void OnExplosiveThrown(BasePlayer player, BaseEntity entity, ThrownWeapon item)
{
Puts("OnExplosiveThrown works!");
}
Tags: explosive, weapon · uMod last updated 2021-05-08
OnFlameThrowerBurn
- Called when the burn from a flame thrower spreads
Returns: No return behavior
void OnFlameThrowerBurn(FlameThrower thrower, BaseEntity flame)
{
Puts("OnFlameThrowerBurn works!");
}
Tags: flame, weapon · uMod last updated 2021-05-08
OnMeleeThrown
- Called when the player throws a melee item (axe, rock, ...)
Returns: No return behavior
void OnMeleeThrown(BasePlayer player, Item item)
{
Puts("OnMeleeThrown works!");
}
Tags: melee, weapon · uMod last updated 2021-05-08
OnMagazineReload
- Called when the player reloads a magazine
Returns: Returning a non-null value overrides default behavior
object OnMagazineReload(BaseProjectile weapon, IAmmoContainer desiredAmount, BasePlayer player)
{
Puts("OnMagazineReload works!");
return null;
}
Tags: reload, weapon · uMod last updated 2023-09-24
OnWeaponReload
- Called when the player reloads a weapon
Returns: Returning a non-null value overrides default behavior
object OnWeaponReload(BaseProjectile weapon, BasePlayer player)
{
Puts("OnWeaponReload works!");
return null;
}
Tags: reload, weapon · uMod last updated 2022-09-12
OnRocketLaunched
- Called when the player launches a rocket
Returns: No return behavior
void OnRocketLaunched(BasePlayer player, BaseEntity entity)
{
Puts("OnRocketLaunched works!");
}
Tags: rocket, weapon · uMod last updated 2021-05-08
OnAmmoSwitch
- Called when the player starts to switch the ammo in a weapon
Returns: Returning a non-null value overrides default behavior
object OnAmmoSwitch(BaseProjectile weapon, BasePlayer player)
{
Puts("OnAmmoSwitch works!");
return null;
}
Tags: switch, weapon · uMod last updated 2023-10-11
OnWeaponFired
- Called when the player fires a weapon
Returns: No return behavior
void OnWeaponFired(BaseProjectile projectile, BasePlayer player, ItemModProjectile mod, ProtoBuf.ProjectileShoot projectiles)
{
Puts("OnWeaponFired works!");
}
Tags: weapon · uMod last updated 2021-05-08
Vehicle Hooks
Boats, cars, horses, helicopters, trains, submarines — fuel, engines, mounting, pushing.
22 hooks: CanUseHelicopter, OnBoatPathGenerate, OnVehicleModuleMove, OnEngineStart, OnEngineStarted, OnEngineStop, OnEngineStopped, OnEngineStatsRefresh, OnEngineStatsRefreshed, OnVehicleModuleSelect, OnVehicleModuleSelected, OnVehicleModuleDeselected, OnHotAirBalloonToggle, OnHotAirBalloonToggled, OnVehicleModulesAssign, OnVehicleModulesAssigned, OnVehiclePush, CanCheckFuel, CanUseFuel, OnFuelCheck, OnFuelAmountCheck, OnFuelItemCheck
CanUseHelicopter
- Useful for denying to mount a CH47 helicopter
Returns: Returning a non-null value cancels default behavior
object CanUseHelicopter(BasePlayer player, CH47HelicopterAIController helicopter)
{
Puts("CanUseHelicopter works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnBoatPathGenerate
- Called when generating ocean patrol path for CargoShip
Returns: Returning a List overrides default behavior
List<Vector3> OnBoatPathGenerate()
{
Puts("OnBoatPathGenerate works!");
return null;
}
Tags: boat, vehicle · uMod last updated 2021-08-14
OnVehicleModuleMove
- Called when a player tries to move a vehicle module item that is currently on a vehicle
Returns: Returning a non-null value overrides default behavior
object OnVehicleModuleMove(BaseVehicleModule module, BaseModularVehicle vehicle, BasePlayer player)
{
Puts("OnVehicleModuleMove works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnEngineStart
- Called when a player tries to start a vehicle engine
Returns: Returning a non-null value overrides default behavior
object OnEngineStart(BaseVehicle vehicle, BasePlayer driver)
{
Puts("OnEngineStart works!");
return null;
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnEngineStarted
- Called right after a vehicle engine has started
Returns: No return behavior
void OnEngineStarted(BaseVehicle vehicle, BasePlayer driver)
{
Puts("OnEngineStarted works!");
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnEngineStop
- Called when a vehicle engine is about to stop
Returns: Returning a non-null value overrides default behavior
object OnEngineStop(BaseVehicle vehicle)
{
Puts("OnEngineStop works!");
return null;
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnEngineStopped
- Called right after a vehicle engine has stopped
Returns: No return behavior
void OnEngineStopped(BaseVehicle vehicle)
{
Puts("OnEngineStopped works!");
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnEngineStatsRefresh
- Called right before the stats of a modular car engine are refreshed
Returns: Returning a non-null value overrides default behavior
object OnEngineStatsRefresh(VehicleModuleEngine engineModule, EngineStorage engineStorage)
{
Puts("OnEngineStatsRefresh works!");
return null;
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnEngineStatsRefreshed
- Called right after the stats of a modular car engine are refreshed
Returns: No return behavior
void OnEngineStatsRefreshed(VehicleModuleEngine engineModule, EngineStorage engineStorage)
{
Puts("OnEngineStatsRefreshed works!");
}
Tags: engine, vehicle · uMod last updated 2021-05-08
OnVehicleModuleSelect
- Called right after a player has selected a vehicle module item in a car inventory, but before they are shown the corresponding storage container
Returns: Returning a non-null value overrides default behavior
object OnVehicleModuleSelect(Item moduleItem, ModularCarGarage carLift, BasePlayer player)
{
Puts("OnVehicleModuleSelect works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnVehicleModuleSelected
- Called right after a player has selected a vehicle module item in a car's inventory, and after they have been shown the corresponding storage container if applicable
Returns: No return behavior
void OnVehicleModuleSelected(Item moduleItem, ModularCarGarage carLift, BasePlayer player)
{
Puts("OnVehicleModuleSelected works!");
}
Tags: vehicle · uMod last updated 2021-05-08
OnVehicleModuleDeselected
- Called right after a player deselects a vehicle module item in a car's inventory
Returns: No return behavior
void OnVehicleModuleDeselected(ModularCarGarage carLift, BasePlayer player)
{
Puts("OnVehicleModuleDeselected works!");
}
Tags: vehicle · uMod last updated 2021-05-08
OnHotAirBalloonToggle
- Called when a player tries to toggle a hot air balloon on or off
Returns: Returning a non-null value overrides default behavior
object OnHotAirBalloonToggle(HotAirBalloon balloon, BasePlayer player)
{
Puts("OnHotAirBalloonToggle works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnHotAirBalloonToggled
- Called right after a player has toggled a hot air balloon on or off
Returns: No return behavior
void OnHotAirBalloonToggled(HotAirBalloon balloon, BasePlayer player)
{
Puts("OnHotAirBalloonToggled works!");
}
Tags: vehicle · uMod last updated 2021-05-08
OnVehicleModulesAssign
- Called right after a modular car has spawned, but before module items are added to its inventory from a preset
Returns: Returning a non-null value overrides default behavior
object OnVehicleModulesAssign(ModularCar car, ItemModVehicleModule[] modulePreset)
{
Puts("OnVehicleModulesAssign works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnVehicleModulesAssigned
- Called right after a car has spawned and its module inventory has been filled with module items from a preset
Returns: No return behavior
void OnVehicleModulesAssigned(ModularCar car, ItemModVehicleModule[] modulePreset)
{
Puts("OnVehicleModulesAssigned works!");
}
Tags: vehicle · uMod last updated 2021-05-08
OnVehiclePush
- Called when a player tries to push a vehicle
Returns: Returning a non-null value overrides default behavior
object OnVehiclePush(BaseVehicle vehicle, BasePlayer player)
{
Puts("OnVehiclePush works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
CanCheckFuel
- Called when a player tries to loot a vehicle's fuel container
Returns: Returning true or false overrides default behavior
object CanCheckFuel(EntityFuelSystem fuelSystem, StorageContainer fuelContainer, BasePlayer player)
{
Puts("CanCheckFuel works!");
return null;
}
Tags: check, vehicle · uMod last updated 2021-05-08
CanUseFuel
- Called before a vehicle fuel system consumes fuel
Returns: Returning true or false overrides default behavior
object CanUseFuel(EntityFuelSystem fuelSystem, StorageContainer fuelContainer, float currentSeconds, float fuelPerSecond)
{
Puts("CanUseFuel works!");
return null;
}
Tags: vehicle · uMod last updated 2021-05-08
OnFuelCheck
- Called when determining whether a vehicle has sufficient fuel
Returns: Returning true or false overrides default behavior
object OnFuelCheck(EntityFuelSystem fuelSystem)
{
Puts("OnFuelCheck works!");
return null;
}
Tags: fuel, vehicle · uMod last updated 2021-05-08
OnFuelAmountCheck
- Called when the amount of fuel in a vehicle is being determined
Returns: Returning a numeric value (int) overrides the default value
object OnFuelAmountCheck(EntityFuelSystem fuelSystem, Item fuelItem)
{
Puts("OnFuelAmountCheck works!");
return null;
}
Tags: fuel, vehicle · uMod last updated 2021-05-08
OnFuelItemCheck
- Called when determining which item should be used to fuel a vehicle
Returns: Returning an Item overrides default behavior
object OnFuelItemCheck(EntityFuelSystem fuelSystem, StorageContainer fuelContainer)
{
Puts("OnFuelItemCheck works!");
return null;
}
Tags: fuel, vehicle · uMod last updated 2021-05-08
Team Hooks
Rust's built-in team/party system: create, invite, join, leave, promote, disband.
12 hooks: OnTeamAcceptInvite, OnTeamCreate, OnTeamCreated, OnTeamDisband, OnTeamDisbanded, OnTeamInvite, OnTeamKick, OnTeamLeave, OnTeamPromote, OnTeamRejectInvite, OnTeamUpdate, OnTeamUpdated
OnTeamAcceptInvite
- Useful for canceling team invitation acceptation
Returns: Returning a non-null value cancels default behavior
object OnTeamAcceptInvite(RelationshipManager.PlayerTeam team, BasePlayer player)
{
Puts("OnTeamAcceptInvite works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamCreate
- Useful for canceling team creation
Returns: Returning a non-null value cancels default behavior
object OnTeamCreate(BasePlayer player)
{
Puts("OnTeamCreate works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamCreated
- Called after a team was created
Returns: No return behavior
void OnTeamCreated(BasePlayer player, RelationshipManager.PlayerTeam team)
{
Puts("OnTeamCreated works!");
}
Tags: team · uMod last updated 2021-05-08
OnTeamDisband
- Useful for canceling team disbandment
Returns: Returning a non-null value cancels default behavior
object OnTeamDisband(RelationshipManager.PlayerTeam team)
{
Puts("OnTeamDisband works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamDisbanded
- Called when the team was disbanded
Returns: No return behavior
void OnTeamDisbanded(RelationshipManager.PlayerTeam team)
{
Puts("OnTeamDisbanded works!");
}
Tags: team · uMod last updated 2021-05-08
OnTeamInvite
- Useful for canceling an invitation
Returns: Returning a non-null value cancels default behavior
object OnTeamInvite(BasePlayer inviter, BasePlayer target)
{
Puts($"{inviter.displayName} invited {target.displayName} to his team");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamKick
- Useful for canceling kick of the player from the team
Returns: Returning a non-null value cancels default behavior
object OnTeamKick(RelationshipManager.PlayerTeam team, BasePlayer player, ulong target)
{
Puts("OnTeamKick works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamLeave
- Useful for canceling the leave from the team
Returns: Returning a non-null value cancels default behavior
object OnTeamLeave(RelationshipManager.PlayerTeam team, BasePlayer player)
{
Puts("OnTeamLeave works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamPromote
- Useful for canceling player's promotion in the team
Returns: Returning a non-null value cancels default behavior
object OnTeamPromote(RelationshipManager.PlayerTeam team, BasePlayer newLeader)
{
Puts("OnTeamPromote works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamRejectInvite
- Useful for canceling the invitation rejection
Returns: Returning a non-null value cancels default behavior
object OnTeamRejectInvite(BasePlayer rejector, RelationshipManager.PlayerTeam team)
{
Puts("OnTeamRejectInvite works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamUpdate
- Called when player's team is updated
Returns: Returning a non-null value cancels default behavior
object OnTeamUpdate(ulong currentTeam, ulong newTeam, BasePlayer player)
{
Puts("OnTeamUpdate works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
OnTeamUpdated
- Called before sending team info to player
Returns: Returning a non-null value cancels default behavior
object OnTeamUpdated(ulong currentTeam, PlayerTeam playerTeam, BasePlayer player)
{
Puts("OnTeamUpdate works!");
return null;
}
Tags: team · uMod last updated 2021-05-08
World Hooks
World-level generation events.
1 hook: OnWorldPrefabSpawned
OnWorldPrefabSpawned
- Called when a world prefab was spawned
Returns: No return behavior
void OnWorldPrefabSpawned(GameObject gameObject, string category)
{
Puts("OnWorldPrefabSpawned works!");
}
Tags: world · uMod last updated 2021-05-08
Fishing Hooks
The fishing minigame.
4 hooks: CanCatchFish, OnFishCatch, OnFishCaught, OnFishingStopped
CanCatchFish
- Called before a fish is caught
Returns: Returning true or false overrides default behavior
bool? CanCatchFish(BasePlayer player, BaseFishingRod rod, Item item)
{
Puts("can we catch em fishes?");
return null;
}
Tags: player, item, fishing · uMod last updated 2021-12-15
OnFishCatch
- Called after a fish is caught, before the item is given
Returns: Returning a non-null value overrides default behavior
Item OnFishCatch(Item item, BaseFishingRod rod, BasePlayer player)
{
Puts($"{player.displayName} has just caught {item.amount} x {item.info.shortname}!");
return null;
}
Tags: player, item, fishing · uMod last updated 2021-12-15
OnFishCaught
- Called after a fish is caught
Returns: No return behavior
void OnFishCaught(ItemDefinition definition, BaseFishingRod rod, BasePlayer player)
{
Puts($"A fish ({definition.shortname}) has just been caught by {player.displayName}!");
}
Tags: player, item, fishing · uMod last updated 2021-12-15
OnFishingStopped
- Called just after the fishing minigame has been stopped.
Returns: No return behaviour
void OnFishingStopped(BaseFishingRod rod, BaseFishingRod.FailReason reason)
{
Puts("OnFishingStopped works!");
}
Tags: fishing · uMod last updated 2022-06-25
Electronic Hooks
The electricity graph.
2 hooks: OnExcavatorSuppliesRequest, OnExcavatorSuppliesRequested
OnExcavatorSuppliesRequest
- Called just after the excavator supply computer is triggered, before the plane is spawned.
Returns: Returning non-null overrides default behaviour.
object OnExcavatorSuppliesRequest(ExcavatorSignalComputer computer, BasePlayer player)
{
Puts("OnExcavatorSuppliesRequest works!");
return null;
}
uMod last updated 2023-06-04
OnExcavatorSuppliesRequested
- Called after the excavator signal computer was triggered, just after the supply plane is spawned.
Returns: (not stated upstream)
void OnExcavatorSuppliesRequested(ExcavatorSignalComputer computer, BasePlayer player, BaseEntity cargoPlane)
{
Puts("OnExcavatorSuppliesRequested works!");
}
uMod last updated 2023-06-04
Clan Hooks
The first-party clan system (distinct from Team).
7 hooks: OnClanColorChanged, OnClanCreated, OnClanDisbanded, OnClanLogoChanged, OnClanMemberAdded, OnClanMemberKicked, OnClanMemberLeft
OnClanColorChanged
- Called after a player changes a clan color
Returns: No return behavior
void OnClanColorChanged(LocalClan clan, Color32 color, ulong steamId)
{
Puts("OnClanColorChanged works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanCreated
- Called after a player has created a clan
Returns: No return behavior
void OnClanCreated(LocalClan clan, ulong steamId)
{
Puts("OnClanCreated works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanDisbanded
- Called after a player disbands a clan
Returns: No return behavior
void OnClanDisbanded(LocalClan clan, ulong steamId)
{
Puts("OnClanDisbanded works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanLogoChanged
- Called after a player changes a clan logo
Returns: No return behavior
void OnClanLogoChanged(LocalClan clan, byte[] logo, ulong steamId)
{
Puts("OnClanLogoChanged works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanMemberAdded
- Called after a player has accepted a clan invite
Returns: No return behavior
void OnClanMemberAdded(long clanId, ulong steamId)
{
Puts("OnClanMemberAdded works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanMemberKicked
- Called after a player has kicked another player from a clan
Returns: No return behavior
void OnClanMemberKicked(LocalClan clan, ulong steamId, ulong bySteamId)
{
Puts("OnClanMemberKicked works!");
}
Tags: clan · uMod last updated 2023-08-11
OnClanMemberLeft
- Called after a player has voluntarily left a clan
Returns: No return behavior
void OnClanMemberLeft(LocalClan clan, ulong steamId)
{
Puts("OnClanMemberLeft works!");
}
Tags: clan · uMod last updated 2023-08-11
Plugin Hooks
Plugin lifecycle inside Oxide itself — Loaded, Unload, and compilation.
4 hooks: Loaded, LoadDefaultConfig, Unload, LoadDefaultMessages
Loaded
- Called when a plugin has finished loading
- Other plugins may or may not be present, dependant on load order
Returns: No return behavior
void Loaded()
{
Puts("Loaded works!");
}
uMod last updated 2018-08-20
LoadDefaultConfig
- Called when the config for a plugin should be initialized
- Only called if the config file does not already exist
Returns: No return behavior
protected override void LoadDefaultConfig()
{
Puts("Default configuration created");
}
uMod last updated 2018-08-20
Unload
- Called when a plugin is being unloaded
Returns: No return behavior
void Unload()
{
Puts("Save data, nullify static variables, etc.");
}
uMod last updated 2018-09-02
LoadDefaultMessages
- Called when the localization for a plugin should be registered
Returns: No return behavior
protected override void LoadDefaultMessages()
{
lang.RegisterMessages(new Dictionary<string, string>
{
["Example"] = "This is an example message!",
["AnotherExample"] = "Here is another example"
}, this);
}
uMod last updated 2018-11-05
Sign Hooks
Sign painting, updating and locking.
3 hooks: OnSignLocked, OnSignUpdated, OnSpinWheel
OnSignLocked
- Called after the player has locked a sign or photo frame
Returns: No return behavior
void OnSignLocked(Signage sign, BasePlayer player)
{
Puts("OnSignLocked works!");
}
void OnSignLocked(PhotoFrame photoFrame, BasePlayer player)
{
Puts("OnSignLocked works!");
}
Tags: sign · uMod last updated 2021-05-08
OnSignUpdated
- Called after the player has changed the text on a sign or updated a photo frame
Returns: No return behavior
void OnSignUpdated(Signage sign, BasePlayer player, int textureIndex)
{
Puts("OnSignUpdated works!");
}
void OnSignUpdated(PhotoFrame photoFrame, BasePlayer player)
{
Puts("OnSignUpdated works!");
}
void OnSignUpdated(CarvablePumpkin pumpkin, BasePlayer player)
{
Puts("OnSignUpdated works!");
}
Tags: sign · uMod last updated 2022-04-18
OnSpinWheel
- Called when the player spins a spinner wheel
Returns: No return behavior
void OnSpinWheel(BasePlayer player, SpinnerWheel wheel)
{
Puts("OnSpinWheel works!");
}
Tags: spin, sign · uMod last updated 2021-05-08
TechTree Hooks
Tech tree node unlocks and their prerequisites.
4 hooks: CanUnlockTechTreeNode, CanUnlockTechTreeNodePath, OnTechTreeNodeUnlock, OnTechTreeNodeUnlocked
CanUnlockTechTreeNode
- Called when a player is attempting to unlock a blueprint in a tech tree
- Useful for bypassing unlock requirements or disallowing particular blueprints from being unlocked
Returns: Returning true or false overrides default behavior
object CanUnlockTechTreeNode(BasePlayer player, TechTreeData.NodeInstance node, TechTreeData techTree)
{
Puts("CanUnlockTechTreeNode works!");
return null;
}
Tags: unlock, techtree · uMod last updated 2021-05-08
CanUnlockTechTreeNodePath
- Called when a player is attempting to unlock a blueprint in a tech tree, after the
CanUnlockTechTreeNodehook, when determining whether they have the prerequisite blueprints unlocked - Useful for customizing prerequisites without conflicting with the
CanPlayerUnlockhook
Returns: Returning true or false overrides default behavior
object CanUnlockTechTreeNodePath(BasePlayer player, TechTreeData.NodeInstance node, TechTreeData techTree)
{
Puts("CanUnlockTechTreeNodePath works!");
return null;
}
Tags: unlock, techtree · uMod last updated 2021-05-08
OnTechTreeNodeUnlock
- Called when a player is attempting to unlock a blueprint in a tech tree, after the
CanUnlockTechTreeNodeandCanUnlockTechTreeNodePathhooks, before the player is charged scrap - Useful for replacing the default behavior to charge the player a different currency, or to unlock multiple blueprints at once (such as those leading up to the one selected)
Returns: Returning a non-null value overrides default behavior
object OnTechTreeNodeUnlock(Workbench workbench, TechTreeData.NodeInstance node, BasePlayer player)
{
Puts("OnTechTreeNodeUnlock works!");
return null;
}
Tags: tech, techtree · uMod last updated 2021-05-08
OnTechTreeNodeUnlocked
- Called after a player has unlocked a blueprint in a tech tree
- Useful for automatically unlocking blueprints for team members
Returns: No return behavior
void OnTechTreeNodeUnlocked(Workbench workbench, TechTreeData.NodeInstance node, BasePlayer player)
{
Puts("OnTechTreeNodeUnlocked works!");
}
Tags: tech, techtree · uMod last updated 2021-05-08
Phone Hooks
In-game telephones: dialling, answering, voicemail, directory.
12 hooks: OnPhoneDial, CanReceiveCall, OnPhoneAnswer, OnPhoneAnswered, OnPhoneCallStart, OnPhoneCallStarted, OnPhoneDialFail, OnPhoneDialFailed, OnPhoneDialTimeout, OnPhoneDialTimedOut, OnPhoneNameUpdate, OnPhoneNameUpdated
OnPhoneDial
- Called when a player places a phone call
Returns: Returning a non-null value overrides default behavior
object OnPhoneDial(PhoneController callerPhone, PhoneController receiverPhone, BasePlayer player)
{
Puts("OnPhoneDial works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
CanReceiveCall
- Called when a player tries to place a phone call
Returns: Returning true or false overrides default behavior
object CanReceiveCall(PhoneController receiverPhone)
{
Puts("CanReceiveCall works!");
return null;
}
Tags: receive, phone · uMod last updated 2021-05-08
OnPhoneAnswer
- Called when a player tries to answer a phone call
Returns: Returning a non-null value overrides default behavior
object OnPhoneAnswer(PhoneController receiverPhone, PhoneController callerPhone)
{
Puts("OnPhoneAnswer works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneAnswered
- Called right after a player has answered a phone call
Returns: No return behavior
void OnPhoneAnswered(PhoneController receiverPhone, PhoneController callerPhone)
{
Puts("OnPhoneAnswered works!");
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneCallStart
- Called after a phone has been answered, right before voice communication is established
Returns: Returning a non-null value overrides default behavior
object OnPhoneCallStart(PhoneController phone, PhoneController otherPhone, BasePlayer player)
{
Puts("OnPhoneCallStart works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneCallStarted
- Called right after a phone call has been answered and voice communication has been established
Returns: (not stated upstream)
void OnPhoneCallStarted(PhoneController phone, PhoneController otherPhone, BasePlayer player)
{
Puts("OnPhoneCallStarted works!");
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneDialFail
- Called when a phone call is about to end or fail to start
Returns: Returning a non-null value overrides default behavior
object OnPhoneDialFail(PhoneController phone, Telephone.DialFailReason reason, BasePlayer player)
{
Puts("OnPhoneDialFail works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneDialFailed
- Called after a phone call has ended or failed to start
Returns: No return behavior
void OnPhoneDialFailed(PhoneController phone, Telephone.DialFailReason reason, BasePlayer player)
{
Puts("OnPhoneDialFailed works!");
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneDialTimeout
- Called when a phone is about to automatically hang up because the receiver phone wasn't answered in time
Returns: Returning a non-null value overrides default behavior
object OnPhoneDialTimeout(PhoneController callerPhone, PhoneController receiverPhone, BasePlayer player)
{
Puts("OnPhoneDialTimeout works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneDialTimedOut
- Called right after a phone was automatically hung up because the receiver phone wasn't answered in time
Returns: No return behavior
void OnPhoneDialTimedOut(PhoneController callerPhone, PhoneController receiverPhone, BasePlayer player)
{
Puts("OnPhoneDialTimedOut works!");
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneNameUpdate
- Called when a player tries to update a phone name
Returns: Returning a non-null value overrides default behavior
object OnPhoneNameUpdate(PhoneController phoneController, string name, BasePlayer player)
{
Puts("OnPhoneNameUpdate works!");
return null;
}
Tags: phone · uMod last updated 2021-05-08
OnPhoneNameUpdated
- Called after a player has updated a phone name
Returns: No return behavior
void OnPhoneNameUpdated(PhoneController phoneController, string name, BasePlayer player)
{
Puts("OnPhoneNameUpdated works!");
}
Tags: phone · uMod last updated 2021-05-08
Permission Hooks
uMod's own permission/group system (Covalence) — grants, revokes, group membership.
8 hooks: OnPermissionRegistered, OnGroupPermissionGranted, OnGroupPermissionRevoked, OnGroupCreated, OnGroupDeleted, OnGroupRankSet, OnGroupTitleSet, OnGroupParentSet
OnPermissionRegistered
- Called when a permission has been registered
Returns: No return behavior
void OnPermissionRegistered(string name, Plugin owner)
{
Puts($"Permission '{name}' has been registered {(owner != null ? $"for {owner.Title}" : "")}");
}
Tags: permission · uMod last updated 2021-05-08
OnGroupPermissionGranted
- Called when a permission has been granted to a group
Returns: No return behavior
void OnGroupPermissionGranted(string name, string perm)
{
Puts($"Group '{name}' granted permission: {perm}");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupPermissionRevoked
- Called when a permission has been revoked from a group
Returns: No return behavior
void OnGroupPermissionRevoked(string name, string perm)
{
Puts($"Group '{name}' revoked permission: {perm}");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupCreated
- Called when a group has been created successfully
Returns: No return behavior
void OnGroupCreated(string name)
{
Puts($"Group '{name}' has been created!");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupDeleted
- Called when a group has been deleted successfully
Returns: No return behavior
void OnGroupDeleted(string name)
{
Puts($"Group '{name}' has been deleted!");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupRankSet
- Called when a group rank has been updated
Returns: No return behavior
void OnGroupRankSet(string name, int rank)
{
Puts($"Rank '{rank}' set on group '{name}'");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupTitleSet
- Called when a group title has been updated
Returns: No return behavior
void OnGroupTitleSet(string name, string title)
{
Puts($"Title '{title}' set on group '{name}'");
}
Tags: group, permission · uMod last updated 2021-05-08
OnGroupParentSet
- Called when a group parent has been updated
Returns: No return behavior
void OnGroupParentSet(string name, string parent)
{
Puts($"Parent '{parent}' set on group '{name}'");
}
Tags: group, permission · uMod last updated 2021-05-08
Generated from uMod's own hook data (umod.org/documentation/games/rust.json), scraped 2026-09-15. 477 hooks.