SnipersScripts

v1.3.0·Updated 2026-10-11

Various utilities for moon/interior/item makers.

About this mod Author’s original text

SnipersScripts

A collection of misc scripts for moon/interior/item makers. (My thread in the LC Modding Discord)

Docs For Devs

Components: Can be found under "AddComponent>SnipersScripts"

  • AudioClipEvents: Invokes events based on the progression of an audio clip.
  • AudioSource: The audio source the clip plays from. If ommitted, the script will wait for the duration of the clip without actually playing it audibly.
  • OnAudioClipStart<>: Invokes when clip starts playing.
  • OnAudioClipEnd<>: Invokes when clip finishes.
  • OnAudioClipStop<>: Invokes when the clip is stopped early.
  • PlayAudioClip(AudioClip clip): Plays clip on AudioSource.
  • StopAudioClip(): Stops the currently playing clip.
  • CommentComponent: Empty component with an editable textbox. Does nothing.
  • EnemyRequiresNestOverride: Temporarily makes the specified EnemyType not require a nest. (Useful if used in sync with an enemy spawner script to force an Old Bird to spawn at a specific location)
  • OnEnemyDoesNotRequireNest: Invokes in the window that the EnemyType does not require a nest, passing on the EnemyType as a parameter.
  • ToggleEnemyNestRequirement(EnemyType enemyType): Briefly makes the specified EnemyType not need a nest to spawn (supports blank reference).
  • ToggleEnemyNestRequirement(string enemyName): Briefly makes the specified enemy based on the EnemyName field within an EnemyType ScriptableObject not need a nest to spawn (supports blank reference).
  • EntranceTeleportLock: Used to lock/unlock main and/or fire exits. When using a door pair locked on one side from the unlocked side, the locked side will unlock.
  • LockedMessage: The HoverTip on a locked door.
  • LockAll(): Locks all main/fire exits both inside and outside.
  • UnlockAll(): Unlocks all main/fire exits both inside and outside.
  • LockInside(): Locks all inside main/fire exits.
  • UnlockInside(): Unlocks all inside main/fire exits.
  • LockMainInside(): Locks main from the inside.
  • UnlockMainInside(): Unlocks main from the inside.
  • LockFireInside(): Locks fire exits inside.
  • UnlockFireInside(): Unlocks fire exits inside.
  • LockIndividualInside(EntranceTeleport tp): Locks the inside of the specified EntranceTeleport.
  • UnlockIndividualInside(EntranceTeleport tp): Unlocks the inside of the specified EntranceTeleport.
  • LockOutside(): Locks all outside main/fire exits.
  • UnlockOutside(): Unlocks all outside main/fire exits.
  • LockMainOutside(): Locks main from the outside.
  • UnlockMainOutside(): Unlocks main from the outside.
  • LockFireOutside(): Locks fire exits outside.
  • UnlockFireOutside(): Unlocks fire exits outside.
  • LockIndividualOutside(EntranceTeleport tp): Locks the outside of the specified EntranceTeleport.
  • UnlockIndividualOutside(EntranceTeleport tp): Unlocks the outside of the specified EntranceTeleport.
  • SetLockedMessageRpc(string message): sets LockedMessageto message.
  • ItemDropDistanceOverride: Used to increase/decrease how far items can fall.
  • ItemDropDistance: How far items can be dropped (default is vanilla distance).
  • ApplyOverrideOnStart: If the override should apply automatically on the GameObject's start using ItemDropDistance.
  • ApplyDropDistanceOverrideRpc(float distance): Sets the override distance.
  • LocalPlayerEvent: A script that allows you to trigger events with the local player. (Intended as a sort of "bridge" script to allow an event in another script that doesn't pass the local player to invoke something that does require the local player as a parameter (for instance, vanilla's KillLocalPlayer.KillPlayer(PlayerControllerB)))
  • LocalPlayerEvent: Invokes an event with the local player as a parameter.
  • InvokeLocalPlayerEvent(): Invokes the LocalPlayerEvent with the local player as a parameter.
  • LoggerScript: Used to print messages to log.
  • Log: A message to log.
  • LogType: The channel to log Log to. {Debug, Info, Warning, Error, Fatal}
  • LogOnStart: Determines if Log should be printed to theLogType channel on the G

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack

File & checksum

Filename
SnipersScripts-1.3.0.zip
File size
63.3 KiB