Check report MiX Server Pack v0.9.56
What an automated read of this exact file found. It is a list of facts about the code, not a safety verdict. Read it, then read the config, then test on a throwaway server.
Compile check
Compiled on the live game box against Rust build 25670169 (game files dated 2026-10-02, Carbon files dated 2026-10-01), 2026-10-02 (6 days ago). "Without shims" means the plugin does not lean on Carbon's compatibility layer for APIs the game has removed, which is the version most likely to keep working after the next Rust update and to run on Oxide.
BagTimer.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
Walks every entity on the server: 1 place.
FreeBuild.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerSleepEnded | 459 | nothing heavy found |
OnEntitySpawned | 660 | nothing heavy found |
CanLootEntity | 1206 | nothing heavy found |
CanLootEntity | 1229 | nothing heavy found |
CanLootEntity | 1232 | nothing heavy found |
Walks every entity on the server: 5 places.
MiniMapRound.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixAdminMove.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerInput | 287 | nothing heavy found |
MixAngler.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 272 | nothing heavy found |
MixApartmentHome.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnLootEntity | 2343 | nothing heavy found |
OnEntitySpawned | 2430 | server entity scan |
CanBuild | 2468 | nothing heavy found |
OnPlayerAttack | 3489 | nothing heavy found |
Walks every entity on the server: 8 places.
MixAsk.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixAutoDoor.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 142 | nothing heavy found |
MixBoatHelm.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerInput | 241 | nothing heavy found |
Walks every entity on the server: 1 place.
MixBounty.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 553 | nothing heavy found |
MixBusStops.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityTakeDamage | 1314 | nothing heavy found |
OnPlayerAttack | 1328 | nothing heavy found |
OnNpcTarget | 1333 | nothing heavy found |
CanBeTargeted | 1339 | nothing heavy found |
Walks every entity on the server: 1 place.
MixCarbonLeakGuard.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
Walks every entity on the server: 1 place.
MixCommerce.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixCompanionFix.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixCore.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnLootEntity | 3647 | nothing heavy found |
OnPlayerDeath | 3653 | nothing heavy found |
OnEntityDeath | 5596 | nothing heavy found |
OnEntityDeath | 5618 | nothing heavy found |
OnDispenserGather | 5635 | nothing heavy found |
MixEntityScale.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 327 | file write |
OnLootEntity | 342 | nothing heavy found |
MixEvents.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityTakeDamage | 595 | nothing heavy found |
OnEntityTakeDamage | 597 | nothing heavy found |
OnEntityDeath | 918 | nothing heavy found |
OnLootEntity | 940 | nothing heavy found |
Walks every entity on the server: 1 place.
MixExtract.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityTakeDamage | 212 | nothing heavy found |
MixGovern.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 793 | nothing heavy found |
OnPlayerInput | 840 | nothing heavy found |
OnEntityTakeDamage | 1530 | nothing heavy found |
Walks every entity on the server: 1 place.
MixGrid.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixHeadlamp.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnItemAddedToContainer | 183 | nothing heavy found |
OnItemRemovedFromContainer | 216 | nothing heavy found |
MixHorde.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixHud.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntitySpawned | 381 | nothing heavy found |
OnEntitySpawned | 382 | nothing heavy found |
OnEntitySpawned | 383 | nothing heavy found |
OnEntitySpawned | 384 | nothing heavy found |
OnEntitySpawned | 385 | nothing heavy found |
OnEntityKill | 386 | nothing heavy found |
OnEntityKill | 387 | nothing heavy found |
OnEntityKill | 388 | nothing heavy found |
OnEntityKill | 389 | nothing heavy found |
OnEntityKill | 390 | nothing heavy found |
Walks every entity on the server: 2 places.
MixImages.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixInstantBases.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 237 | nothing heavy found |
OnPlayerInput | 251 | nothing heavy found |
Walks every entity on the server: 1 place.
MixMenuKit.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnLootEntity | 337 | nothing heavy found |
MixModsConnectUI.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 660 | nothing heavy found |
OnPlayerSleepEnded | 668 | nothing heavy found |
MixMyMini.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 133 | nothing heavy found |
MixNotices.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixPackAssetsShim.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixPlace.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixQuarry.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
Walks every entity on the server: 1 place.
MixRackKit.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityDeath | 554 | nothing heavy found |
MixRaidBases.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnTurretTarget | 781 | nothing heavy found |
CanBeTargeted | 811 | nothing heavy found |
OnEntityTakeDamage | 841 | nothing heavy found |
OnLootEntity | 3229 | LINQ |
OnEntityDeath | 3247 | string interpolation |
OnEntityKill | 3537 | nothing heavy found |
Walks every entity on the server: 1 place.
MixSettlers.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityDeath | 338 | nothing heavy found |
OnEntityKill | 349 | nothing heavy found |
Repeating timers under one second: 0.25 s.
MixShopfront.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityTakeDamage | 839 | nothing heavy found |
Walks every entity on the server: 1 place.
MixShowcase.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixSignboard.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 400 | nothing heavy found |
OnLootEntity | 411 | nothing heavy found |
MixSiloRaid.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnTurretTarget | 278 | nothing heavy found |
CanBeTargeted | 300 | nothing heavy found |
OnEntityTakeDamage | 320 | nothing heavy found |
Walks every entity on the server: 1 place.
MixSkillTree.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnDispenserGather | 195 | nothing heavy found |
OnDispenserBonus | 200 | nothing heavy found |
OnCollectiblePickup | 205 | nothing heavy found |
OnEntityDeath | 221 | nothing heavy found |
MixSkinOwnership.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixSkinsLight.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 658 | nothing heavy found |
Repeating timers under one second: 0.05 s.
Walks every entity on the server: 1 place.
MixSprint.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 265 | nothing heavy found |
OnPlayerInput | 330 | nothing heavy found |
MixSuitSlots.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixThirdPerson.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixTrophies.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerDeath | 465 | nothing heavy found |
OnEntityTakeDamage | 475 | nothing heavy found |
OnEntityTakeDamage | 477 | nothing heavy found |
OnEntityDeath | 479 | nothing heavy found |
OnEntityDeath | 481 | nothing heavy found |
OnEntityDeath | 525 | nothing heavy found |
OnDispenserGather | 537 | nothing heavy found |
MixUiFix.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerSleepEnded | 128 | nothing heavy found |
OnLootEntity | 134 | nothing heavy found |
MixVote.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
MixWorld.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 190 | nothing heavy found |
OnLootEntity | 595 | nothing heavy found |
OnPlayerDeath | 932 | nothing heavy found |
Walks every entity on the server: 1 place.
MixWorldTune.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntitySpawned | 501 | nothing heavy found |
OnDispenserGather | 557 | nothing heavy found |
OnDispenserBonus | 565 | nothing heavy found |
OnCollectiblePickup | 573 | nothing heavy found |
OnEntityKill | 600 | nothing heavy found |
OnEntityKill | 601 | nothing heavy found |
Walks every entity on the server: 2 places.
OSAutoTurrets.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
CanLootEntity | 1496 | nothing heavy found |
CanMoveItem | 1515 | nothing heavy found |
CanBuild | 1932 | plugin call |
RescueSurface.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnPlayerSleepEnded | 115 | nothing heavy found |
OnEntityTakeDamage | 127 | nothing heavy found |
Salvo.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnItemAddedToContainer | 1180 | nothing heavy found |
OnPlayerAttack | 1310 | nothing heavy found |
OnEntityTakeDamage | 1374 | nothing heavy found |
OnActiveItemChanged | 1579 | nothing heavy found |
SimpleFurnaces.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnEntityKill | 64 | nothing heavy found |
CanMoveItem | 72 | nothing heavy found |
TimeOfDay.cs
- With Carbon's shims: compiles
- Without shims: compiles
No hot-path hooks registered.
TwinBarrel.cs
- With Carbon's shims: compiles
- Without shims: compiles
Hot-path hooks (these run very often; what each one does inside):
| Hook | Line | Does |
|---|---|---|
OnWeaponFired | 109 | nothing heavy found |
OnPlayerAttack | 127 | nothing heavy found |
SHA-256 of this file
96bd76f7b22a7ec29a6ff444aac488dfe87411db58c305999c3cb1da2b6ef79c
Hooks it registers 82
Findings 462
Network 29
| Level | What | Where | Line |
|---|---|---|---|
| note | URL in source | plugins/BagTimer.cs:409 | public const string UiKitCdn = "https://mixapps.store/assets/img/mixdev/cui"; |
| note | URL in source | plugins/BagTimer.cs:410 | public const string GuiBtnCdn = "https://mixapps.store/assets/img/mixdev/gui-buttons/default/1x"; |
| note | URL in source | plugins/MixApartmentHome.cs:8016 | public const string UiKitCdn = "https://mixapps.store/assets/img/mixdev/cui"; |
| note | URL in source | plugins/MixApartmentHome.cs:8017 | public const string GuiBtnCdn = "https://mixapps.store/assets/img/mixdev/gui-buttons/default/1x"; |
| note | URL in source | plugins/MixAsk.cs:30 | public string ApiUrl = "https://mixapps.store/api/mixask/ask.php"; |
| note | URL in source | plugins/MixAsk.cs:64 | if (string.IsNullOrWhiteSpace(_config.ApiUrl)) _config.ApiUrl = "https://mixapps.store/api/mixask/ask.php"; |
| note | Oxide/Carbon web request | plugins/MixAsk.cs:170 | webrequest.Enqueue(_config.ApiUrl, body, (code, response) => OnAskReply(userId, question, code, response), |
| note | Oxide/Carbon web request | plugins/MixCore.cs:5549 | webrequest.Enqueue(url, payload, (code, response) => |
| note | URL in source | plugins/MixEvents.cs:49 | public string ApiUrl = "https://mixapps.store/api/mixevents/ingest.php"; |
| note | Oxide/Carbon web request | plugins/MixEvents.cs:1261 | webrequest.Enqueue(_config.ApiUrl, body, (code, response) => |
| look | outbound network use | plugins/MixImages.cs:192 | using var www = UnityWebRequest.Get(url); |
| look | outbound network use | plugins/MixImages.cs:198 | if (www.result != UnityWebRequest.Result.Success) |
| note | URL in source | plugins/MixInstantBases.cs:1953 | public const string UiKitCdn = "https://mixapps.store/assets/img/mixdev/cui"; |
| note | URL in source | plugins/MixInstantBases.cs:1954 | public const string GuiBtnCdn = "https://mixapps.store/assets/img/mixdev/gui-buttons/default/1x"; |
| note | URL in source | plugins/MixModsConnectUI.cs:23 | private const string CdnBase = "https://mixapps.store"; |
| note | URL in source | plugins/MixSkinsLight.cs:2183 | var url = "https://api.steampowered.com/IPublishedFileService/GetUserFiles/v1/" + |
| note | URL in source | plugins/MixSkinsLight.cs:2324 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetCollectionDetails/v1/", body, (code, response) => |
| note | URL in source | plugins/MixSkinsLight.cs:2370 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetPublishedFileDetails/v1/", body, (code, response) => |
| note | URL in source | plugins/MixSkinsLight.cs:2466 | var url = "https://api.steampowered.com/ISteamUser/ResolveVanityURL/v0001/" + |
| note | URL in source | plugins/MixSkinsLight.cs:2505 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetPublishedFileDetails/v1/", body, (code, response) => |
| note | Oxide/Carbon web request | plugins/MixSkinsLight.cs:2187 | webrequest.Enqueue(url, null, (code, response) => |
| note | Oxide/Carbon web request | plugins/MixSkinsLight.cs:2324 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetCollectionDetails/v1/", body, (code, response) => |
| note | Oxide/Carbon web request | plugins/MixSkinsLight.cs:2370 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetPublishedFileDetails/v1/", body, (code, response) => |
| note | Oxide/Carbon web request | plugins/MixSkinsLight.cs:2468 | webrequest.Enqueue(url, null, (code, response) => |
| note | Oxide/Carbon web request | plugins/MixSkinsLight.cs:2505 | webrequest.Enqueue("https://api.steampowered.com/ISteamRemoteStorage/GetPublishedFileDetails/v1/", body, (code, response) => |
| note | URL in source | plugins/MixVote.cs:29 | public string ApiUrl = "https://rust-servers.net/api/"; |
| note | Oxide/Carbon web request | plugins/MixVote.cs:218 | webrequest.Enqueue(url, null, (code, body) => |
| note | Oxide/Carbon web request | plugins/MixVote.cs:246 | webrequest.Enqueue(url, null, (code, body) => |
| note | URL in source | plugins/OSAutoTurrets.cs:33 | private const string BrandCdn = "https://mixapps.store/assets/img/mixdev/brand"; |
Steam IDs and admin 246
| Level | What | Where | Line |
|---|---|---|---|
| note | changes or checks admin status | plugins/BagTimer.cs:81 | player != null && (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/BagTimer.cs:83 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/BagTimer.cs:95 | if (sub == "reset" && IsAdmin(player)) |
| note | changes or checks admin status | plugins/BagTimer.cs:115 | if (!IsAdmin(player)) { CmdStatus(player); return; } |
| note | changes or checks admin status | plugins/BagTimer.cs:304 | if (!arg.IsAdmin && arg.Connection != null) return; |
| note | changes or checks admin status | plugins/BagTimer.cs:328 | if (player == null || !IsAdmin(player) || arg.Args == null || arg.Args.Length == 0) return; |
| note | changes or checks admin status | plugins/FreeBuild.cs:386 | if (arg != null && arg.Connection != null && arg.Connection.authLevel < 2) return null; |
| note | changes or checks admin status | plugins/FreeBuild.cs:471 | player != null && (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/FreeBuild.cs:1244 | if ((player.net?.connection?.authLevel ?? 0) >= 2) return true; |
| note | changes or checks admin status | plugins/MixAdminMove.cs:150 | if (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 1) return true; |
| note | changes or checks admin status | plugins/MixAngler.cs:296 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixApartmentHome.cs:5700 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixBoatHelm.cs:628 | if (player.IsAdmin) return true; |
| note | changes or checks admin status | plugins/MixBoatHelm.cs:1462 | player != null && (player.IsAdmin |
| note | changes or checks admin status | plugins/MixBounty.cs:913 | case "clear" when !IsAdmin(player): |
| note | changes or checks admin status | plugins/MixBounty.cs:914 | case "expire" when !IsAdmin(player): |
| note | changes or checks admin status | plugins/MixBounty.cs:956 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixBounty.cs:957 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixBusStops.cs:1560 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, Perm)); |
| note | changes or checks admin status | plugins/MixCarbonLeakGuard.cs:217 | if (arg.Connection?.player is not BasePlayer caller || caller.IsAdmin) return true; |
| note | changes or checks admin status | plugins/MixCommerce.cs:2708 | player != null && (player.IsAdmin |
| note | changes or checks admin status | plugins/MixCommerce.cs:2709 | || (player.net?.connection?.authLevel ?? 0) >= 2 |
| note | changes or checks admin status | plugins/MixCore.cs:112 | if (!IsAdmin(player)) { player.ChatMessage("<color=#f87171>MixCore</color>: mixcore.sfxtest is staff only"); return; } |
| note | changes or checks admin status | plugins/MixCore.cs:742 | if (arg.Connection != null && !IsAdmin(arg.Player())) { arg.ReplyWith("MixCore: mixcore.resetconfig is staff only"); return; } |
| note | changes or checks admin status | plugins/MixCore.cs:779 | if (arg.Connection != null && !IsAdmin(arg.Player())) { arg.ReplyWith("MixCore: mixpack.reload is staff only"); return; } |
| note | changes or checks admin status | plugins/MixCore.cs:900 | if (IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:1292 | if (!IsAdmin(requestingAdmin)) |
| note | changes or checks admin status | plugins/MixCore.cs:1312 | player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, true); |
| note | changes or checks admin status | plugins/MixCore.cs:1313 | player.net.connection.authLevel = 2; |
| note | changes or checks admin status | plugins/MixCore.cs:2388 | if (pluginName == "MixCommerce" && IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:2698 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:2816 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:3174 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:3176 | var auth = player.net?.connection?.authLevel ?? 0; |
| note | changes or checks admin status | plugins/MixCore.cs:3196 | if (!IsAdmin(player)) { player.ChatMessage("<color=#f87171>MixPack</color>: debug is staff only"); return; } |
| note | changes or checks admin status | plugins/MixCore.cs:3217 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:3218 | player.ChatMessage($"<color=#4ade80>UI debug</color>: admin={admin} · mixpack.admin={permission.UserHasPermission(player.UserIDString, PermAdmin)} · IsAdmin={pl |
| note | changes or checks admin status | plugins/MixCore.cs:3231 | if (!IsAdmin(player)) { player.ChatMessage("<color=#f87171>MixPack</color>: debug is staff only"); return; } |
| note | changes or checks admin status | plugins/MixCore.cs:3238 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:3239 | player.ChatMessage($"<color=#4ade80>UI debug</color>: {(IsUiDebug(player.userID) ? "ON" : "OFF")} · staff={admin} · perm={permission.UserHasPermission(player.Us |
| note | changes or checks admin status | plugins/MixCore.cs:3248 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:3527 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixCore.cs:3668 | "tune" => IsAdmin(player) ? "tune.main" : null, |
| note | changes or checks admin status | plugins/MixCore.cs:3674 | "world" => IsAdmin(player) ? "world.admin" : "world.guide", |
| note | changes or checks admin status | plugins/MixCore.cs:3675 | "arena" => IsAdmin(player) ? "arena.admin" : "arena.events", |
| note | changes or checks admin status | plugins/MixCore.cs:3691 | else if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:3701 | else if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:3709 | if (mod is "govern" or "tune" && !IsAdmin(player) && !(mod == "govern" && GovernStaff(player))) |
| note | changes or checks admin status | plugins/MixCore.cs:3764 | public bool API_IsPackStaff(BasePlayer player) => IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:3858 | if (!playerPack && !IsAdmin(player) && !(packKey == "govern" && GovernStaff(player))) |
| note | changes or checks admin status | plugins/MixCore.cs:3870 | "world" => IsAdmin(player) ? "world.admin" : "world.guide", |
| note | changes or checks admin status | plugins/MixCore.cs:3881 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixCore.cs:3884 | || (!_noclipElevated.Contains(player.userID) && (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2)) |
| note | changes or checks admin status | plugins/MixCore.cs:3915 | IsAdmin(player) || plugins.Find("MixGovern")?.Call("API_IsStaff", player) is true; |
| note | changes or checks admin status | plugins/MixCore.cs:4013 | player != null && (IsAdmin(player) || permission.UserHasPermission(player.UserIDString, PermUse)); |
| note | changes or checks admin status | plugins/MixCore.cs:4028 | ("tune", "Tune", IsPluginLoaded("MixWorldTune") && IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:4043 | if (_config.ModManager.Enabled && IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:4120 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixCore.cs:4170 | .Where(t => t.IsEnabled(player) && (!t.AdminOnly || IsAdmin(player))) |
| note | changes or checks admin status | plugins/MixCore.cs:4213 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:4290 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:4497 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixCore.cs:5021 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixEntityScale.cs:658 | if (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2) return true; |
| note | changes or checks admin status | plugins/MixEvents.cs:977 | return permission.UserHasPermission(id, PermAdmin) || permission.UserHasPermission(id, "mixpack.admin") || (BasePlayer.FindByID(userId)?.IsAdmin ?? false); |
| note | changes or checks admin status | plugins/MixEvents.cs:1276 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixEvents.cs:1277 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixEvents.cs:1296 | if (!IsAdmin(player)) { OpenBoard(player, "main"); return; } |
| note | changes or checks admin status | plugins/MixExtract.cs:143 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixExtract.cs:146 | private bool IsAdmin(BasePlayer p) => |
| note | changes or checks admin status | plugins/MixExtract.cs:147 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixExtract.cs:236 | var admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixGovern.cs:50 | private readonly Dictionary<ulong, (bool hadAdmin, uint authLevel)> _noclipRestore = new(); |
| note | changes or checks admin status | plugins/MixGovern.cs:1159 | return player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/MixGovern.cs:1167 | _noclipRestore[player.userID] = (player.IsAdmin, conn.authLevel); |
| note | changes or checks admin status | plugins/MixGovern.cs:1170 | player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, true); |
| note | changes or checks admin status | plugins/MixGovern.cs:1171 | conn.authLevel = 2; |
| note | changes or checks admin status | plugins/MixGovern.cs:1183 | conn.authLevel = restore.authLevel; |
| note | changes or checks admin status | plugins/MixGovern.cs:1184 | player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, restore.hadAdmin); |
| note | changes or checks admin status | plugins/MixGovern.cs:1323 | var auth = _noclipRestore.TryGetValue(userId, out var before) ? before.authLevel : target.net.connection.authLevel; |
| note | changes or checks admin status | plugins/MixGovern.cs:1326 | if (target.IsDeveloper) |
| note | changes or checks admin status | plugins/MixGovern.cs:3128 | if (_noclipRestore.TryGetValue(player.userID, out var before)) return before.hadAdmin || before.authLevel >= 2; |
| note | changes or checks admin status | plugins/MixGovern.cs:3129 | return player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/MixGrid.cs:80 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixGrid.cs:83 | private bool IsAdmin(BasePlayer p) => |
| note | changes or checks admin status | plugins/MixGrid.cs:84 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixGrid.cs:98 | if (IsAdmin(p) || !_config.OwnerOnly) return true; |
| note | changes or checks admin status | plugins/MixHorde.cs:103 | private bool IsAdmin(BasePlayer p) => |
| note | changes or checks admin status | plugins/MixHorde.cs:104 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixHorde.cs:170 | if (!permission.UserHasPermission(p.UserIDString, PermUse) && !p.IsAdmin) continue; |
| note | changes or checks admin status | plugins/MixHorde.cs:201 | var admin = server || IsAdmin(player); |
| note | changes or checks admin status | plugins/MixHorde.cs:295 | if (!IsAdmin(player)) { Msg(player, $"need {PermAdmin}"); return; } |
| note | changes or checks admin status | plugins/MixHud.cs:476 | p != null && (p.IsAdmin || (p.net?.connection?.authLevel ?? 0) >= 2 || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixInstantBases.cs:279 | if (!_config.Enabled && !IsAdmin(player)) { player.ChatMessage("<color=#f87171>Instant Bases</color>: disabled."); return; } |
| note | changes or checks admin status | plugins/MixInstantBases.cs:292 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:296 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:313 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:317 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:321 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:329 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1715 | if (action == "grant" && IsAdmin(player) && parts.Length >= 3 |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1725 | if (action == "select" && IsAdmin(player) && parts.Length >= 2 && ulong.TryParse(parts[1], out var sel)) |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1732 | if (action == "enabled" && IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1781 | var levelZone = IsAdmin(player) ? "panelTop" : "panel"; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1796 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1844 | if (caller != null && !IsAdmin(caller)) return; |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1908 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1912 | || player.IsAdmin); |
| note | changes or checks admin status | plugins/MixInstantBases.cs:1917 | if (IsAdmin(player)) return true; |
| note | changes or checks admin status | plugins/MixMenuKit.cs:1759 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse)); |
| note | changes or checks admin status | plugins/MixMenuKit.cs:1764 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermEdit)); |
| note | changes or checks admin status | plugins/MixModsConnectUI.cs:638 | if (player.IsAdmin && !string.IsNullOrWhiteSpace(_config.AdminConnectHint)) |
| note | changes or checks admin status | plugins/MixNotices.cs:90 | if (arg.Connection?.player is BasePlayer caller && !caller.IsAdmin) { arg.ReplyWith("mixnotices.now: admin only"); return; } |
| note | changes or checks admin status | plugins/MixPlace.cs:92 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixPlace.cs:95 | private bool IsAdmin(BasePlayer p) => |
| note | changes or checks admin status | plugins/MixPlace.cs:96 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixPlace.cs:122 | if (IsAdmin(p) || !_config.OwnerOnly) return true; |
| note | changes or checks admin status | plugins/MixQuarry.cs:115 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixQuarry.cs:118 | private bool IsAdmin(BasePlayer p) => |
| note | changes or checks admin status | plugins/MixQuarry.cs:119 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixQuarry.cs:144 | if (IsAdmin(p)) return true; |
| note | changes or checks admin status | plugins/MixQuarry.cs:246 | if (!q.isStatic && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixQuarry.cs:251 | if (_data.Claims.TryGetValue(Qid(q), out var existing) && existing.Owner != player.userID && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixRackKit.cs:628 | if (!arg.IsAdmin) return; |
| note | changes or checks admin status | plugins/MixRackKit.cs:648 | if (!arg.IsAdmin) return; |
| note | changes or checks admin status | plugins/MixRackKit.cs:655 | if (!arg.IsAdmin) return; |
| note | changes or checks admin status | plugins/MixRackKit.cs:755 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixRaidBases.cs:948 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixRaidBases.cs:950 | ((player.net?.connection?.authLevel ?? 0) >= 2 || |
| note | changes or checks admin status | plugins/MixRaidBases.cs:994 | if (player != null && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixRaidBases.cs:1018 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixRaidBases.cs:3652 | if (player == null || !IsAdmin(player) || arg.Args == null || arg.Args.Length == 0) return; |
| note | changes or checks admin status | plugins/MixShopfront.cs:937 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixShopfront.cs:938 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixShopfront.cs:943 | if (!IsAdmin(player)) { player.ChatMessage("Shopfront: admin only."); return; } |
| note | changes or checks admin status | plugins/MixShopfront.cs:1026 | if (arg.Player() != null && !IsAdmin(arg.Player())) { arg.ReplyWith("Shopfront: admin only"); return; } |
| note | changes or checks admin status | plugins/MixShopfront.cs:1032 | if (arg.Player() != null && !IsAdmin(arg.Player())) { arg.ReplyWith("Shopfront: admin only"); return; } |
| note | changes or checks admin status | plugins/MixShopfront.cs:1079 | if (arg.Player() != null && !IsAdmin(arg.Player())) { arg.ReplyWith("Shopfront: admin only"); return; } |
| note | changes or checks admin status | plugins/MixShowcase.cs:413 | if (!arg.IsAdmin) return; |
| note | changes or checks admin status | plugins/MixShowcase.cs:424 | if (!arg.IsAdmin) return; |
| note | changes or checks admin status | plugins/MixSignboard.cs:436 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSignboard.cs:472 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSignboard.cs:1803 | if (!IsAdmin(player) || arg.Args == null || arg.Args.Length == 0) return; |
| note | changes or checks admin status | plugins/MixSignboard.cs:2001 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixSignboard.cs:2003 | || (player.net?.connection?.authLevel ?? 0) >= 2 |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:408 | private bool IsAdmin(BasePlayer player) |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:412 | return (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:418 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:551 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:647 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:1274 | if (!IsAdmin(p)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:1327 | if (arg.Player() != null && !IsAdmin(arg.Player())) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:1339 | if (arg.Player() != null && !IsAdmin(arg.Player())) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:1348 | if (!IsAdmin(p)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:1361 | if (arg.Player() != null && !IsAdmin(arg.Player())) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:2339 | if (!IsAdmin(p)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:2407 | if (p == null || !IsAdmin(p)) { Puts("need player"); return; } |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:2417 | if (!IsAdmin(p)) return; |
| note | changes or checks admin status | plugins/MixSiloRaid.cs:2469 | if (p != null && IsAdmin(p)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:447 | if (arg.Player() != null && !arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) { SendReply(arg, "mixskinslight.admin required"); return; } |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:559 | if (_config.BypassOwnershipForAdmins && IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:668 | || IsAdmin(player)); |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:670 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:671 | player != null && (player.IsAdmin |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:1300 | if (IsAdmin(player) && !mismatchedTarget && TryGiveSkinnedItem(player, entry)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:1955 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2027 | if (!arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2040 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2079 | if (!arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2132 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2240 | if (arg.Player() != null && !arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) { SendReply(arg, "mixskinslight.admin required"); return; } |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2293 | if (arg.Player() != null && !arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) { SendReply(arg, "mixskinslight.admin required"); return; } |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2306 | if (pl != null && IsAdmin(pl)) Reply(pl, summary); |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:2871 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3180 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3189 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3198 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3207 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3274 | if (!arg.IsAdmin && !HasConsolePerm(arg, PermAdmin)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3293 | if (!arg.IsAdmin && !HasConsolePerm(arg, PermAdmin) && !HasConsolePerm(arg, PermUse)) |
| note | changes or checks admin status | plugins/MixSkinsLight.cs:3332 | if (arg.Player() != null && !IsAdmin(arg.Player())) return; |
| note | changes or checks admin status | plugins/MixSprint.cs:403 | rt.Admin = IsAdmin(player); |
| note | changes or checks admin status | plugins/MixSprint.cs:696 | if (!_config.Enabled && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSprint.cs:713 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixSprint.cs:778 | if (!IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/MixSprint.cs:884 | if (target != null && !IsAdmin(target)) |
| note | changes or checks admin status | plugins/MixSprint.cs:956 | var adminNote = IsAdmin(player) ? $" · unlimited {(unlimited ? "on" : "off")}" : ""; |
| note | changes or checks admin status | plugins/MixSprint.cs:1020 | if (IsAdmin(player)) DrawAdminRows(c, player, rec, y); |
| note | changes or checks admin status | plugins/MixSprint.cs:1096 | if (target != null && IsAdmin(target)) |
| note | changes or checks admin status | plugins/MixSprint.cs:1115 | _config.Enabled && player != null && !rec.Revoked && (rec.Granted || HasPerm(player) || IsAdmin(player)); |
| note | changes or checks admin status | plugins/MixSprint.cs:1117 | private bool HasUnlimited(BasePlayer player, PlayerRecord rec) => rec.UnlimitedStamina && IsAdmin(player); |
| note | changes or checks admin status | plugins/MixSprint.cs:1128 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixSprint.cs:1130 | || (player.net?.connection?.authLevel ?? 0) >= 2 |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:290 | if (!_config.Enabled && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:335 | if (player != null && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:502 | var wasAdmin = player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:508 | player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, true); |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:522 | player.SetPlayerFlag(BasePlayer.PlayerFlags.IsAdmin, false); |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:603 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermUse)); |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:605 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/MixThirdPerson.cs:606 | player != null && (player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin)); |
| note | changes or checks admin status | plugins/MixTrophies.cs:416 | p != null && (p.IsAdmin || permission.UserHasPermission(p.UserIDString, PermUse) |
| note | changes or checks admin status | plugins/MixTrophies.cs:571 | !(player.IsAdmin || permission.UserHasPermission(player.UserIDString, PermAdmin))) |
| note | changes or checks admin status | plugins/MixTrophies.cs:941 | if (caller != null && !caller.IsAdmin && !permission.UserHasPermission(caller.UserIDString, PermAdmin)) |
| note | changes or checks admin status | plugins/MixUiFix.cs:164 | var notes = RestoreControls(player, blind: player.IsAdmin); |
| note | changes or checks admin status | plugins/MixUiFix.cs:179 | var notes = RestoreControls(player, blind: player.IsAdmin); |
| note | changes or checks admin status | plugins/MixUiFix.cs:190 | if (arg.Player() != null && !arg.Player().IsAdmin) { arg.ReplyWith("MixUiFix: mixui.fixall is admin only"); return; } |
| note | changes or checks admin status | plugins/MixUiFix.cs:275 | if (!quiet && player.IsAdmin) ReleaseGovernState(player, notes); |
| note | changes or checks admin status | plugins/MixWorld.cs:282 | if (!IsAdmin(player)) { DenyAdmin(player); return; } |
| note | changes or checks admin status | plugins/MixWorld.cs:318 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixWorld.cs:354 | if (!IsAdmin(player)) { DenyAdmin(player); return; } |
| note | changes or checks admin status | plugins/MixWorld.cs:362 | private bool MayQuicksort(BasePlayer player) => player != null && (permission.UserHasPermission(player.UserIDString, PermUse) || IsAdmin(player)); |
| note | changes or checks admin status | plugins/MixWorld.cs:365 | player != null && (permission.UserHasPermission(player.UserIDString, PermUse) || IsAdmin(player)); |
| note | changes or checks admin status | plugins/MixWorld.cs:369 | private bool IsAdmin(BasePlayer player) |
| note | changes or checks admin status | plugins/MixWorld.cs:372 | if (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2) return true; |
| note | changes or checks admin status | plugins/MixWorld.cs:399 | if (IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixWorld.cs:487 | if (IsAdmin(player)) |
| note | changes or checks admin status | plugins/MixWorld.cs:495 | if (!IsAdmin(player)) { DenyAdmin(player); return; } |
| note | changes or checks admin status | plugins/MixWorld.cs:529 | if (!IsAdmin(player)) { DenyAdmin(player); return; } |
| note | changes or checks admin status | plugins/MixWorldTune.cs:1008 | if (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2) return true; |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:515 | player != null && (player.net?.connection?.authLevel ?? 0) >= 2; |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:517 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:522 | player != null && (IsVanillaAdmin(player) || IsAdmin(player) || GetEffectiveRank(player) == "admin"); |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:529 | if (IsVanillaAdmin(player) || IsAdmin(player) || IsTurretOwner(player, turret) || turret.IsAuthed(player)) return true; |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:536 | && (IsAdmin(player) || (_config.AllowAuthedPickup && turret.IsAuthed(player))); |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:669 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:767 | if (!turret.IsAuthed(player) && !IsAdmin(player)) |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:784 | if (!IsAdmin(player) && !turret.IsAuthed(player) && turret.OwnerID != player.userID) |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:833 | if (IsAdmin(player) || IsVanillaAdmin(player)) |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:1361 | if (player == null || !IsAdmin(player) || arg.Args == null || arg.Args.Length == 0) return; |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:1500 | if (IsVanillaAdmin(player) || IsAdmin(player) || IsTurretOwner(player, turret) || turret.IsAuthed(player)) |
| note | changes or checks admin status | plugins/OSAutoTurrets.cs:2016 | var skipProbe = IsVanillaAdmin(player) || IsAdmin(player); |
| note | changes or checks admin status | plugins/RescueSurface.cs:282 | player != null && (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 1 |
| note | changes or checks admin status | plugins/Salvo.cs:736 | player != null && (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 2); |
| note | changes or checks admin status | plugins/Salvo.cs:952 | private bool IsAdmin(BasePlayer player) |
| note | changes or checks admin status | plugins/Salvo.cs:1512 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/Salvo.cs:1552 | if (!IsAdmin(player) && _data.KitClaims.TryGetValue(player.userID, out var taken) && taken == claim) |
| note | changes or checks admin status | plugins/Salvo.cs:1863 | if (player == null || !IsAdmin(player)) return; |
| note | changes or checks admin status | plugins/TimeOfDay.cs:171 | (player.net?.connection?.authLevel ?? 0) >= authLevelThreshold); |
| note | changes or checks admin status | plugins/TimeOfDay.cs:177 | return player != null ? IsStaff(player, authLevelThreshold) : arg.Connection.authLevel >= authLevelThreshold; |
| note | changes or checks admin status | plugins/TwinBarrel.cs:93 | player != null && (player.IsAdmin || (player.net?.connection?.authLevel ?? 0) >= 1); |
| note | changes or checks admin status | plugins/TwinBarrel.cs:100 | private bool IsAdmin(BasePlayer player) => |
| note | changes or checks admin status | plugins/TwinBarrel.cs:148 | if (!IsAdmin(player)) |
| note | changes or checks admin status | plugins/TwinBarrel.cs:150 | player.ChatMessage("<color=#4ade80>TwinBarrel</color>: need <color=#f87171>twinbarrel.admin</color> (or authLevel)"); |
| note | changes or checks admin status | plugins/TwinBarrel.cs:158 | if (!IsAdmin(player) && !permission.UserHasPermission(player.UserIDString, PermKit)) |
| note | changes or checks admin status | plugins/TwinBarrel.cs:222 | if (player == null || !IsAdmin(player) || arg.Args == null || arg.Args.Length == 0) return; |
Config writes 90
| Level | What | Where | Line |
|---|---|---|---|
| note | writes the config file | plugins/BagTimer.cs:51 | SaveConfig(); |
| note | writes the config file | plugins/BagTimer.cs:332 | if (action == "save") { ClampConfig(); SaveConfig(); player.ChatMessage("<color=#00d4ff>BagTimer</color>: saved."); RefreshPanel(player); return; } |
| note | writes the config file | plugins/BagTimer.cs:388 | SaveConfig(); |
| note | writes the config file | plugins/FreeBuild.cs:339 | SaveConfig(); |
| note | writes the config file | plugins/MixAngler.cs:216 | SaveConfig(); |
| note | writes the config file | plugins/MixApartmentHome.cs:319 | SaveConfig(); |
| note | writes the config file | plugins/MixApartmentHome.cs:5421 | SaveConfig(); |
| note | writes the config file | plugins/MixApartmentHome.cs:5430 | SaveConfig(); |
| note | writes the config file | plugins/MixBoatHelm.cs:84 | SaveConfig(); |
| note | writes the config file | plugins/MixCommerce.cs:1612 | SaveConfig(); |
| note | writes the config file | plugins/MixCompanionFix.cs:46 | SaveConfig(); |
| note | writes the config file | plugins/MixCore.cs:749 | SaveConfig(); |
| note | writes the config file | plugins/MixCore.cs:1245 | SaveConfig(); |
| note | writes the config file | plugins/MixEntityScale.cs:247 | SaveConfig(); |
| note | writes the config file | plugins/MixEvents.cs:537 | if (changed && !_configBroken) { SaveConfig(); Puts("host spots converted to monument-relative and written to MixEvents.json"); } |
| note | writes the config file | plugins/MixEvents.cs:1317 | SaveConfig(); |
| note | writes the config file | plugins/MixEvents.cs:1327 | SaveConfig(); |
| note | writes the config file | plugins/MixEvents.cs:1395 | SaveConfig(); |
| note | writes the config file | plugins/MixEvents.cs:1417 | SaveConfig(); |
| note | writes the config file | plugins/MixExtract.cs:74 | SaveConfig(); |
| note | writes the config file | plugins/MixGovern.cs:1722 | SaveConfig(); |
| note | writes the config file | plugins/MixGovern.cs:3736 | if (apply && changed > 0) SaveConfig(); |
| note | writes the config file | plugins/MixGrid.cs:38 | SaveConfig(); |
| note | writes the config file | plugins/MixHeadlamp.cs:66 | SaveConfig(); |
| note | writes the config file | plugins/MixHorde.cs:60 | SaveConfig(); |
| note | writes the config file | plugins/MixHorde.cs:220 | SaveConfig(); |
| note | writes the config file | plugins/MixHud.cs:1496 | else if (changed) SaveConfig(); |
| note | writes the config file | plugins/MixInstantBases.cs:136 | SaveConfig(); |
| note | writes the config file | plugins/MixInstantBases.cs:384 | SaveConfig(); |
| note | writes the config file | plugins/MixInstantBases.cs:1847 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:246 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:301 | private void OnServerSave() => SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:306 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:329 | if (CanEdit(player)) SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:525 | if (CanEdit(p)) SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:626 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:638 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:674 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:695 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:710 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:722 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:799 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:815 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:837 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:842 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:869 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:882 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:898 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:914 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:928 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:941 | SaveConfig(); |
| note | writes the config file | plugins/MixMenuKit.cs:954 | SaveConfig(); |
| note | writes the config file | plugins/MixPlace.cs:51 | SaveConfig(); |
| note | writes the config file | plugins/MixQuarry.cs:54 | SaveConfig(); |
| note | writes the config file | plugins/MixRackKit.cs:88 | SaveConfig(); |
| note | writes the config file | plugins/MixRackKit.cs:103 | SaveConfig(); |
| note | writes the config file | plugins/MixRaidBases.cs:725 | SaveConfig(); |
| note | writes the config file | plugins/MixRaidBases.cs:1034 | SaveConfig(); |
| note | writes the config file | plugins/MixShowcase.cs:99 | SaveConfig(); |
| note | writes the config file | plugins/MixShowcase.cs:470 | SaveConfig(); |
| note | writes the config file | plugins/MixSignboard.cs:208 | SaveConfig(); |
| note | writes the config file | plugins/MixSiloRaid.cs:200 | SaveConfig(); |
| note | writes the config file | plugins/MixSiloRaid.cs:543 | SaveConfig(); |
| note | writes the config file | plugins/MixSkillTree.cs:83 | SaveConfig(); |
| note | writes the config file | plugins/MixSkillTree.cs:89 | SaveConfig(); |
| note | writes the config file | plugins/MixSkinsLight.cs:177 | SaveConfig(); |
| note | writes the config file | plugins/MixSkinsLight.cs:2120 | SaveConfig(); |
| note | writes the config file | plugins/MixSkinsLight.cs:2252 | SaveConfig(); |
| note | writes the config file | plugins/MixSkinsLight.cs:3287 | SaveConfig(); |
| note | writes the config file | plugins/MixSprint.cs:129 | SaveConfig(); |
| note | writes the config file | plugins/MixSuitSlots.cs:101 | SaveConfig(); |
| note | writes the config file | plugins/MixThirdPerson.cs:85 | SaveConfig(); |
| note | writes the config file | plugins/MixThirdPerson.cs:351 | SaveConfig(); |
| note | writes the config file | plugins/MixThirdPerson.cs:402 | SaveConfig(); |
| note | writes the config file | plugins/MixTrophies.cs:141 | SaveConfig(); |
| note | writes the config file | plugins/MixVote.cs:51 | protected override void LoadDefaultConfig() { _config = new VoteConfig(); SaveConfig(); } |
| note | writes the config file | plugins/MixWorld.cs:536 | SaveConfig(); |
| note | writes the config file | plugins/OSAutoTurrets.cs:149 | SaveConfig(); |
| note | writes the config file | plugins/OSAutoTurrets.cs:467 | SaveConfig(); |
| note | writes the config file | plugins/OSAutoTurrets.cs:475 | SaveConfig(); |
| note | writes the config file | plugins/OSAutoTurrets.cs:1375 | SaveConfig(); |
| note | writes the config file | plugins/RescueSurface.cs:49 | SaveConfig(); |
| note | writes the config file | plugins/Salvo.cs:536 | SaveConfig(); |
| note | writes the config file | plugins/Salvo.cs:1923 | SaveConfig(); |
| note | writes the config file | plugins/Salvo.cs:1935 | SaveConfig(); |
| note | writes the config file | plugins/Salvo.cs:1944 | SaveConfig(); |
| note | writes the config file | plugins/TimeOfDay.cs:503 | SaveConfig(); |
| note | writes the config file | plugins/TimeOfDay.cs:524 | SaveConfig(); |
| note | writes the config file | plugins/TwinBarrel.cs:47 | SaveConfig(); |
| note | writes the config file | plugins/TwinBarrel.cs:230 | SaveConfig(); |
Game control 76
| Level | What | Where | Line |
|---|---|---|---|
| note | runs console commands or stops the server | plugins/FreeBuild.cs:412 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.freeplacement", "true"); |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:414 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.freebuild", "true"); |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:416 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.unlimitedio", "true"); |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:418 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "ioentity.infiniteiopower", "true"); |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:520 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.togglecreativemodeuser", |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:525 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.togglecreativemodeuser", |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:533 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.togglecreativemodeuser", |
| note | runs console commands or stops the server | plugins/FreeBuild.cs:550 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), "creative.togglecreativemodeuser", |
| note | repeating timer | plugins/FreeBuild.cs:403 | timer.Every(30f, ResyncCreativePlayers); |
| note | repeating timer | plugins/FreeBuild.cs:404 | timer.Every(30f, FlushData); |
| note | repeating timer | plugins/MiniMapRound.cs:215 | _timer = timer.Every(_config.Refresh, Refresh); |
| note | repeating timer | plugins/MixAngler.cs:547 | _panelTick[id] = timer.Every(1f, () => |
| note | Harmony patch | plugins/MixApartmentHome.cs:475 | #region Bare room on rent (Harmony postfix on ApartmentRoom.StartRentingRoom) |
| note | Harmony patch | plugins/MixApartmentHome.cs:479 | private Harmony _harmony; |
| note | Harmony patch | plugins/MixApartmentHome.cs:495 | _harmony = new Harmony(HarmonyId); |
| note | repeating timer | plugins/MixApartmentHome.cs:403 | timer.Every(roomCacheEvery, () => |
| note | repeating timer | plugins/MixApartmentHome.cs:417 | timer.Every(powerEvery, () => |
| note | repeating timer | plugins/MixApartmentHome.cs:436 | _leasePollTimer = timer.Every(leaseEvery, PollApartmentLeases); |
| note | repeating timer | plugins/MixApartmentHome.cs:439 | timer.Every(300f, PruneDeadTrackedEntities); |
| note | runs console commands or stops the server | plugins/MixBoatHelm.cs:170 | try { ConsoleSystem.Run(ConsoleSystem.Option.Server, $"{name} {text}"); } catch { } |
| note | repeating timer | plugins/MixBoatHelm.cs:125 | _fuelTimer = timer.Every(Mathf.Clamp(_config.FuelBalanceSeconds, 1f, 15f), BalanceAllActiveBoats); |
| note | repeating timer | plugins/MixBoatHelm.cs:126 | _refreshTimer = timer.Every(1.25f, RefreshOpenPanels); |
| note | repeating timer | plugins/MixBounty.cs:251 | timer.Every(300f, ExpireSweep); |
| note | uses the server manager | plugins/MixBusStops.cs:292 | if (_job != null) ServerMgr.Instance.StopCoroutine(_job); |
| note | uses the server manager | plugins/MixBusStops.cs:293 | if (_boot != null) ServerMgr.Instance.StopCoroutine(_boot); |
| note | uses the server manager | plugins/MixBusStops.cs:294 | if (_artJob != null) ServerMgr.Instance.StopCoroutine(_artJob); |
| note | uses the server manager | plugins/MixBusStops.cs:316 | if (_boot != null) ServerMgr.Instance.StopCoroutine(_boot); |
| note | uses the server manager | plugins/MixBusStops.cs:317 | _boot = ServerMgr.Instance.StartCoroutine(Boot(force)); |
| note | uses the server manager | plugins/MixBusStops.cs:689 | if (_job != null) ServerMgr.Instance.StopCoroutine(_job); |
| note | uses the server manager | plugins/MixBusStops.cs:690 | _job = ServerMgr.Instance.StartCoroutine(Work()); |
| note | uses the server manager | plugins/MixBusStops.cs:2059 | _artJob = ServerMgr.Instance.StartCoroutine(StoreArt(files, root)); |
| note | repeating timer | plugins/MixBusStops.cs:1239 | if (_ticker == null || _ticker.Destroyed) _ticker = timer.Every(1f, Tick); |
| note | repeating timer | plugins/MixCarbonLeakGuard.cs:69 | _sweepTimer = timer.Every(_config.IntervalSeconds, RunSweeps); |
| note | Harmony patch | plugins/MixCompanionFix.cs:24 | private Harmony _harmony; |
| note | Harmony patch | plugins/MixCompanionFix.cs:60 | _harmony = new Harmony(HarmonyId); |
| note | runs console commands or stops the server | plugins/MixCore.cs:1308 | ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), $"ownerid {userId} \"{name}\" \"Owner\""); |
| note | repeating timer | plugins/MixCore.cs:808 | timer.Every(60f, AccruePlaytimePoints); |
| note | repeating timer | plugins/MixCore.cs:2993 | _statusHudTimer = timer.Every(interval, RefreshStatusHudForAll); |
| note | repeating timer | plugins/MixEvents.cs:318 | timer.Every(1f, Tick); |
| note | repeating timer | plugins/MixEvents.cs:319 | if (_config.AutoStartMinutes > 0) timer.Every(60f, AutoStart); |
| note | repeating timer | plugins/MixEvents.cs:320 | timer.Every(Mathf.Max(60f, _config.SyncMinutes * 60f), () => Sync("timer")); |
| note | repeating timer | plugins/MixExtract.cs:96 | _watch = timer.Every(1f, WatchPads); |
| note | repeating timer | plugins/MixGovern.cs:677 | timer.Every(60f, OnScheduleTick); |
| note | repeating timer | plugins/MixGovern.cs:678 | timer.Every(120f, PurgeExpiredModeration); |
| note | repeating timer | plugins/MixGovern.cs:1087 | _godTimer = timer.Every(1f, TopUpGods); |
| note | repeating timer | plugins/MixHeadlamp.cs:159 | timer.Every(_config.RefreshIntervalSeconds, RefreshHeadlamps); |
| note | repeating timer | plugins/MixHorde.cs:79 | _tick = timer.Every(15f, Tick); |
| note | uses the server manager | plugins/MixHud.cs:631 | _queued = ServerMgr.Instance?.connectionQueue?.Queued ?? 0; |
| note | repeating timer | plugins/MixHud.cs:345 | _drawTimer = timer.Every(_refresh, () => Redraw(false)); |
| note | repeating timer | plugins/MixHud.cs:653 | _tipTimer = _cfg.ShowTips && _cfg.Tips.Count > 1 ? timer.Every(_tipInterval, NextTip) : null; |
| note | uses the server manager | plugins/MixImages.cs:181 | ServerMgr.Instance.StartCoroutine(DownloadAndStore(url, key, skinId, slot)); |
| note | runs console commands or stops the server | plugins/MixInstantBases.cs:1851 | timer.Once(0.5f, () => ConsoleSystem.Run(ConsoleSystem.Option.Server.Quiet(), $"o.reload {Name}")); |
| note | repeating timer | plugins/MixInstantBases.cs:436 | session.PreviewTimer = timer.Every(PreviewStepSeconds, () => TickPreview(player.userID)); |
| note | repeating timer | plugins/MixNotices.cs:66 | _ticker = timer.Every(_config.IntervalMinutes * 60f, Tick); |
| note | repeating timer | plugins/MixRackKit.cs:221 | _refillTimer = timer.Every(secs, RefillAllBound); |
| note | repeating timer | plugins/MixRaidBases.cs:755 | _watchTimer = timer.Every(30f, WatchEvents); |
| note | repeating timer | plugins/MixSettlers.cs:141 | timer.Repeat(0.25f, queue.Count, () => RespawnNext(queue)); |
| note | repeating timer | plugins/MixSettlers.cs:143 | timer.Every(GrowSeconds, Grow); |
| note | repeating timer | plugins/MixShowcase.cs:154 | _refillTimer = timer.Every(secs, RestockAll); |
| note | repeating timer | plugins/MixSignboard.cs:601 | _restoreTimer = timer.Every(RestoreStepSeconds, RestoreStep); |
| note | repeating timer | plugins/MixSignboard.cs:712 | _timers[id] = timer.Every(Mathf.Max(MinIntervalSeconds, interval), () => |
| note | repeating timer | plugins/MixSignboard.cs:862 | _warmTimer ??= timer.Every(WarmStepSeconds, WarmStep); |
| note | runs console commands or stops the server | plugins/MixSiloRaid.cs:264 | try { ConsoleSystem.Run(ConsoleSystem.Option.Server, "mixsilo.paste", _config.DefaultTemplate); } |
| note | runs console commands or stops the server | plugins/MixSiloRaid.cs:668 | try { ConsoleSystem.Run(ConsoleSystem.Option.Server, "server.save"); } catch { /* ok */ } |
| note | runs console commands or stops the server | plugins/MixSiloRaid.cs:1712 | try { ConsoleSystem.Run(ConsoleSystem.Option.Server, "server.save"); } catch { /* ok */ } |
| note | repeating timer | plugins/MixSkillTree.cs:111 | _timer = timer.Every(2f, Flush); |
| note | repeating timer | plugins/MixSkillTree.cs:112 | _saver = timer.Every(60f, SaveIfChanged); |
| note | repeating timer | plugins/MixSkinsLight.cs:2008 | timer.Repeat(0.05f, list.Count, () => |
| note | repeating timer | plugins/MixSprint.cs:226 | timer.Every(TickSeconds, TickAllPlayers); |
| note | repeating timer | plugins/MixSprint.cs:227 | timer.Every(60f, FlushData); |
| note | repeating timer | plugins/MixVote.cs:100 | timer.Every(_config.ReminderIntervalMinutes * 60f, () => { foreach (var p in players.Connected) CheckAll(p, false, remind: true); }); |
| note | Harmony patch | plugins/MixWorldTune.cs:31 | private Harmony _harmony; |
| note | Harmony patch | plugins/MixWorldTune.cs:98 | _harmony = new Harmony(HarmonyId); |
| note | repeating timer | plugins/OSAutoTurrets.cs:402 | timer.Every(30f, FlushData); |
| note | repeating timer | plugins/RescueSurface.cs:63 | _sweepTimer = timer.Every(600f, SweepStaleEntries); |
| note | repeating timer | plugins/Salvo.cs:882 | timer.Every(30f, FlushData); |
Files and server config 20
| Level | What | Where | Line |
|---|---|---|---|
| note | file system write or delete | plugins/MixApartmentHome.cs:2075 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixApartmentHome.cs:2093 | File.WriteAllText(path, JsonConvert.SerializeObject(payload, Formatting.Indented)); |
| note | file system write or delete | plugins/MixApartmentHome.cs:3268 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixApartmentHome.cs:3270 | File.WriteAllText(path, JsonConvert.SerializeObject(bp, Formatting.Indented)); |
| note | file system write or delete | plugins/MixApartmentHome.cs:3285 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixCommerce.cs:1626 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixCommerce.cs:1628 | File.Copy(live, dest, true); |
| note | file system write or delete | plugins/MixCore.cs:765 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixCore.cs:767 | File.Copy(live, dest, true); |
| note | file system write or delete | plugins/MixGovern.cs:1736 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixGovern.cs:1738 | File.Copy(live, dest, true); |
| note | file system write or delete | plugins/MixInstantBases.cs:1861 | Directory.CreateDirectory(dir); |
| note | file system write or delete | plugins/MixInstantBases.cs:1863 | File.Copy(live, dest, true); |
| note | file system write or delete | plugins/MixRaidBases.cs:752 | Directory.CreateDirectory(_kitsDir); |
| note | file system write or delete | plugins/MixSignboard.cs:1344 | try { Directory.CreateDirectory(root); } catch (Exception) { } |
| note | file system write or delete | plugins/MixSiloRaid.cs:258 | Directory.CreateDirectory(_templatesDir); |
| note | file system write or delete | plugins/MixSiloRaid.cs:925 | File.WriteAllText(path, JsonConvert.SerializeObject(tpl, Formatting.Indented)); |
| note | file system write or delete | plugins/MixSiloRaid.cs:1692 | File.WriteAllText(snapPath, JsonConvert.SerializeObject(tpl, Formatting.Indented)); |
| note | file system write or delete | plugins/MixSiloRaid.cs:1701 | File.WriteAllText(path, JsonConvert.SerializeObject(tpl, Formatting.Indented)); |
| note | file system write or delete | plugins/MixTrophies.cs:354 | File.Move(path, aside); |
Processes and native code 1
| Level | What | Where | Line |
|---|---|---|---|
| note | reads process information | plugins/MixCarbonLeakGuard.cs:126 | using var proc = System.Diagnostics.Process.GetCurrentProcess(); |
"blocks": the file is not served until a person looks. "look": worth reading the line. "note": common in honest plugins (a URL, a config write); listed so you know it is there.
What was checked
Outbound network use and URLs, Discord webhooks, process and shell use, native imports, dynamic assembly loading and code generation, unsafe blocks, Base64 decoding and long encoded literals, file writes and deletes, server config and RCON references, hardcoded Steam IDs, admin flag changes, Harmony patches, console commands and server stops, repeating timers, config writes, and the hook names registered. The compile check above builds the file on the live game box against the current Rust and Carbon files, publicized the way Carbon does at boot, with Carbon's compat shims and without them. Not checked: whether the logic is correct or kind, or whether the config it ships with points anywhere.
Versions
| Version | Kind | Size | Findings | Status | Uploaded |
|---|---|---|---|---|---|
| 0.9.59 current | upload | 47.9 MB | 478 | checked | 2026-10-02 (6 days ago) |
| 0.9.56 | upload | 33.2 MB | 462 | checked | 2026-09-28 (10 days ago) |
| 0.9.54.1 | upload | 29.2 MB | 453 | checked | 2026-09-26 (12 days ago) |
| 0.9.54 | upload | 29.2 MB | 453 | checked | 2026-09-25 (13 days ago) |
| 0.9.53.3 | upload | 6.0 MB | 148 | checked | 2026-09-25 (13 days ago) |
| 0.9.53.2 | upload | 6.0 MB | 147 | checked | 2026-09-25 (13 days ago) |
| 0.9.53 | upload | 6.0 MB | 146 | checked | 2026-09-24 (14 days ago) |
| 0.9.50 | upload | 6.0 MB | 144 | checked | 2026-09-23 (15 days ago) |
| 0.9.50 | upload | 6.0 MB | 143 | checked | 2026-09-23 (15 days ago) |
