Lethal Company
Install with App

Details

Latest version
1.2.1
Last Updated
First Uploaded
Downloads
164
Likes
0
Size
140KB
Dependants

Categories

Enemy Interactions (fix)

Unofficial fix build of Enemy Interactions 1.2.0 by Gemumoddo / Wet-Boys. All credit for the mod itself goes to them; this only repairs one hook that the latest game update broke.

Do not install this alongside Gemumoddo-EnemyInteractions. It uses the same plugin GUID (com.gemumoddo.enemyinteractions), so BepInEx will only load one of them.

What was broken

PlayerControllerB.KillPlayer gained a trailing bool setOverrideDropItems parameter. The mod's on-kill hook still declared the old six-argument signature, so MonoMod rejected it and the whole plugin failed during Awake:

InvalidOperationException: Parameter #0 of hook for Void KillPlayer(UnityEngine.Vector3, Boolean,
CauseOfDeath, Int32, UnityEngine.Vector3, Boolean) doesn't match, must be
GameNetcodeStuff.PlayerControllerB or related

Because it threw before any hook was registered, nothing in the mod ran — no on-kill emotes, no random enemy emotes.

What changed

Only EnemyKillHooks.OnKillPlayer: the orig delegate is now Action<PlayerControllerB, Vector3, bool, CauseOfDeath, int, Vector3, bool>, the new parameter is accepted, and it is passed straight through to orig. No behaviour changes.


Lmao

THIS DOES NOTHING WITHOUT MODS THAT ADD THEIR EMOTES TO THE LISTS (At the moment, the only two that I know of that do this are BadAssCompany and NekiyManEmotes)

Enemies can now emote randomly, that's all.

Working on adding more functionality in the future, but a more general AI handler will be required

Emote Devs

If any mod wants to add their own emotes to this, the current process is just

EmoteOptions.onKillEmotes.Add(new EnemyEmote("com.weliveinasociety.badasscompany__Default Dance", 30));

or

EmoteOptions.intermittentEmoteList.Add(new EnemyEmote("com.weliveinasociety.badasscompany__Gangnam Style", 1));

onKillEmotes will trigger when a player dies

intermittentEmoteList will be played on enemies every few minutes

EnemyEmotes have a string for the emote name and a float for the max time the emote will play (primarily used for looping emotes you only want to play for a few seconds)

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.