

A mod aiming at enhancing gameplay with monsters, such as allowing to sell dead monsters, make masked/mimics return their mask once dead,
Nutcrackers to drop their shotgun, and also adds a ranking mechanic to mobs.
[WIP] - Nutcrackers have a chance to drop their shotgun when they die.[WIP] - Masked mimics drop their mask when they die.I must still think about more features in fact.
Here are a few mods I have personally verified the compatibility with.
LethalConfig: I made sure that LethalConfig works fine to configure the mod's local settings. It's an optional mod.LethalSettings: I made sure that LethalSettings works fine too, it's just so that you can use whatever mods you've installed instead of downloading yet another config mod.Football (Kittenji): Football has a rank, I haven't verified if she has a ScanNode though, so maybe you won't even be able to scan her but yeah, should work anyway.Giant Species (XuXiaolan): I'm trying to make a proper support for Giant Species mod, with ranks and eventually, for the smallest of them, prices and values.Farming & Cooking Mod (MelanieMelicious): As requested by many, I have added support for Farming & Cooking mod so you can enjoy meat made with the corpses of the enemies from this mod.Wiki is work in progress, it will be more detailed and more up to date.
Settings, then Locations and click Browse profile folder./BepInEx/config/EnhancedMonsters/EnemiesData.json[CTRL]+[F] in order to open the word search. Type the name of the mob you want to edit.MinValue, MaxValue must be integers (integral numbers, without decimals).Mass must be a floating point number (number with decimals) and it is in pounds (lb).Pickupable must remain a boolean, it can only have two values: true or false.Rank is a string, it has no length restriction but it's better to keep it short./BepInEx/config/EnhancedMonsters/EnemiesData.json[CTRL]+[F]/BepInEx/config/EnhancedMonsters/CustomSFX and put any sound you want in .wav format (16/24/32-bit PCM or 32-bit IEEE float)./BepInEx/config/EnhancedMonsters/EnemiesData.json and go to the mob you want to set a custom sound for.Metadata object, set the fields DropSFX, GrabSFX and PocketSFX based on the sound you want.CustomSFX folder, without the .wav extension !A: I will probably do it, but it's far from being a priority.
A: No.
A: For now, it is, but when the feature will be added, it won't.
A: Yes but there are prerequisites for this. You need to go into the
EnemiesData.jsonsettings file and set every mob'sPickupableboolean value totrue. Don't forget to add them values.
A: By default, any mob that doesn't have default data is not "pickupable". You need to access the EnemyData config file and set the modded mob's values and wether it's pickupable or not. After that you need to restart the game. Note that some mods do register default data for their mobs so it is not required with every modded mob.
A: You can report it in the GitHub issues page, or join the Lethal Company Modding Discord Server and go to the Enhanced Monsters Topic inside the
#mod-releasesforum
Here's a quick tutorial on how to use EnhancedMonsters without making it mandatory for users of your mods!
.csproj.// Plugin.cs
[BepInDependency("com.velddev.enhancedmonsters", BepInDependency.DependencyFlags.SoftDependency)]
public class MyPlugin : BaseUnityPlugin
{
private void Start()
{
if(EnhancedMonstersCompatibilityLayer.Enabled)
{
EnhancedMonstersCompatibilityLayer.RegisterCustomMonsterEnemyData();
}
}
}
// You can do the following part inside your main Plugin class, it just needs a container class.
public static class EnhancedMonstersCompatibilityLayer
{
private static bool? _enabled;
public static bool Enabled
{
get
{
if (_enabled == null)
_enabled = BepInex.Bootstrap.Chainloader.PluginInfos.ContainsKey(EnhancedMonsters.PluginInfo.GUID);
return (bool)_enabled;
}
}
[MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)]
public static void RegisterCustomMonsterEnemyData()
{
// The EnemyName must ABSOLUTELY be the same than inside your EnemyType scriptable object!
EnhancedMonsters.Utils.EnemiesDataManager.RegisterEnemy(EnemyType.enemyName, /*is enemy sellable ?*/ true, /*min value:*/ 150, /*max value:*/ 200, /*mass:*/ 14, /*rank:*/ "S+");
// ...
}
}