/Lethal-Company-ToilHead

CoilHeads, Manticoils, and other entities can sometimes spawn with a turret on their head. Highly Configurable.

Primary LanguageC#MIT LicenseMIT

ToilHead

CoilHeads and Manticoils can sometimes spawn with a turret on their head. Highly Configurable.

This mod does not add new enemies. It gives Coil-Heads and Manticoils a chance to spawn with a turret on their head.
This mod is for all clients!

Download

Download ToilHead on Thunderstore.

Toilation (moon)

Download my new moon called Toilation themed around this mod.

Mod Compatibility

This mod is compatible with:

Config Settings

Expand
General Settings Setting type Default value Description
EnableConfiguration Boolean false Enable if you want to use custom set config setting values. If disabled, the default config setting values will be used.
ExtendedLogging Boolean false Enable extended logging.
Toilation Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
ToilHeadSpawnSettings String 6:75 Toil-Head spawn settings for 69-Toilation.
MantiToilSpawnSettings String 50:90 Manti-Toil spawn settings for 69-Toilation.
ToilSlayerSpawnSettings String 2:10 Toil-Slayer spawn settings for 69-Toilation.
MantiSlayerSpawnSettings String 2:20 Manti-Slayer spawn settings for 69-Toilation.
ToilPlayerSpawnSettings String 1:7 Toil-Player spawn settings for 69-Toilation.
Toil-Head Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
ToilHeadDefaultSpawnSettings String 1:30 Toil-Head default spawn settings for all moons.
<PlanetName>:<MaxSpawnCount>:<SpawnChance> Separate each entry with a comma.
ToilHeadSpawnSettingsMoonList String 41 Experimentation:1:10, 220 Assurance:1:20, 56 Vow:1:20, 21 Offense:1:20, 61 March:1:20, 20 Adamance:1:30, 85 Rend:1:40, 7 Dine:1:45, 8 Titan:1:50, 68 Artifice:2:70, 5 Embrion:1:30, 57 Asteroid-13:2:30, 523 Ooblterra:2:70 Toil-Head spawn settings list for moons.
Manti-Toil Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
MantiToilDefaultSpawnSettings String 5:50 Manti-Toil default spawn settings for all moons.
<PlanetName>:<MaxSpawnCount>:<SpawnChance> Separate each entry with a comma.
MantiToilSpawnSettingsMoonList String 20 Adamance:5:60, 85 Rend:5:60, 7 Dine:5:65, 8 Titan:5:70, 68 Artifice:8:75 Manti-Toil spawn settings list for moons.
Toil-Slayer Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
ToilSlayerDefaultSpawnSettings String 1:10 Toil-Slayer default spawn settings for all moons.
<PlanetName>:<MaxSpawnCount>:<SpawnChance> Separate each entry with a comma.
ToilSlayerSpawnSettingsMoonList String 20 Adamance:1:15, 85 Rend:1:15, 7 Dine:1:15, 8 Titan:1:20, 68 Artifice:1:20, 57 Asteroid-13:1:15, 523 Ooblterra:1:25 Toil-Slayer spawn settings list for moons.
Manti-Slayer Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
MantiSlayerDefaultSpawnSettings String 1:10 Manti-Slayer default spawn settings for all moons.
<PlanetName>:<MaxSpawnCount>:<SpawnChance> Separate each entry with a comma.
MantiSlayerSpawnSettingsMoonList String 20 Adamance:1:15, 85 Rend:1:15, 7 Dine:1:15, 8 Titan:1:20, 68 Artifice:1:20, 57 Asteroid-13:1:15, 523 Ooblterra:1:25 Manti-Slayer spawn settings list for moons.
Toil-Player Settings Setting type Default value Description
<MaxSpawnCount>:<SpawnChance>
ToilPlayerDefaultSpawnSettings String 1:3 Toil-Player default spawn settings for all moons.
<PlanetName>:<MaxSpawnCount>:<SpawnChance> Separate each entry with a comma.
ToilPlayerSpawnSettingsMoonList String 85 Rend:1:4, 7 Dine:1:4, 8 Titan:1:5, 68 Artifice:1:5, 57 Asteroid-13:1:5, 523 Ooblterra:1:6 Toil-Player spawn settings list for moons.
Player Ragdoll Settings Setting type Default value Description
SpawnToiledPlayerRagdolls Boolean True If enabled, will spawn a Toiled player ragdoll when a player dies to a Turret-Head in any way.
SpawnRealToiledPlayerRagdolls Boolean True If enabled, will spawn a real turret on the Toiled player ragdoll.
Toil-Head Plushie Settings Setting type Default value Description
SpawnWeight Int32 10 Toil-Head plushie spawn chance weight.
SpawnAllMoons Boolean true If true, the Toil-Head plushie will spawn on all moons. If false, the Toil-Head plushie will only spawn on moons set in the moons list.
MoonSpawnList String Experimentation, Assurance, Vow, Offense, March, Adamance, Rend, Dine, Titan, Artifice, Embrion The list of moons the Toil-Head plushie will spawn on.
CarryWeight Int32 6 Toil-Head plushie carry weight in pounds.
MinValue Int32 80 Toil-Head plushie min scrap value.
MaxValue Int32 250 Toil-Head plushie max scrap value.
Toil-Slayer Plushie Settings Setting type Default value Description
SpawnWeight Int32 5 Toil-Slayer plushie spawn chance weight.
SpawnAllMoons Boolean true If true, the Toil-Slayer plushie will spawn on all moons. If false, the Toil-Slayer plushie will only spawn on moons set in the moons list.
MoonSpawnList String Experimentation, Assurance, Vow, Offense, March, Adamance, Rend, Dine, Titan, Artifice, Embrion The list of moons the Toil-Slayer plushie will spawn on.
CarryWeight Int32 12 Toil-Slayer plushie carry weight in pounds.
MinValue Int32 150 Toil-Slayer plushie min scrap value.
MaxValue Int32 380 Toil-Slayer plushie max scrap value.
Turret Settings Setting type Default value Description
LostLOSDuration Single 0.75 The duration until the turret loses the target player when not in line of sight.
RotationRange Single 75 The rotation range of the turret in degrees.
CodeAccessCooldownDuration Single 7 The duration of the turret being disabled from the terminal in seconds.
Turret Detection Settings Setting type Default value Description
Rotation Boolean false If enabled, the turret will rotate when searching for players.
RotationSpeed Single 28 The rotation speed of the turret when in detection state.
Turret Charging Settings Setting type Default value Description
ChargingDuration Single 2 The duration of the turret charging state.
RotationSpeed Single 95 The rotation speed of the turret when in charging state.
Turret Firing Settings Setting type Default value Description
RotationSpeed Single 95 The rotation speed of the turret when in firing state.
Turret Berserk Settings Setting type Default value Description
BerserkDuration Single 9 The duration of the turret berserk state.
RotationSpeed Single 77 The rotation speed of the turret when in berserk state.

API

Expand

https://github.com/ZehsTeam/Lethal-Company-ToilHead/blob/master/ToilHead/Api.cs

// This is for all enemy turret pairs.
public static Dictionary<NetworkObject, NetworkObject> EnemyTurretPairs { get; }

// This is for all player turret pairs.
public static Dictionary<PlayerControllerB, ToilHeadTurretBehaviour> PlayerTurretPairs { get; }


// Toil-Head spawn count.
public static int ToilHeadSpawnCount { get; }

// If enabled, will force any spawned Coil-Heads to become Toil-Heads.
// This will get reset automatically when the day ends.
public static bool ForceToilHeadSpawns { get; set; }

// If set to any value above -1, will temporarily override the Toil-Head max spawn count.
// This will get reset automatically when the day ends.
public static int ForceToilHeadMaxSpawnCount { get; set; }

// This must only be called on the Host/Server.
// Only accepts an EnemyAI instance where the EnemyType.enemyName is "Spring".
// Returns true if successful.
public static bool SetToilHeadOnServer(EnemyAI enemyAI) { }


// Manti-Toil spawn count.
public static int MantiToilSpawnCount { get; }

// If enabled, will force any spawned Manticoils to become Manti-Toils.
// This will get reset automatically when the day ends.
public static bool ForceMantiToilSpawns { get; set; }

// If set to any value above -1, will temporarily override the Manti-Toil max spawn count.
// This will get reset automatically when the day ends.
public static int ForceMantiToilMaxSpawnCount { get; set; }

// This must only be called on the Host/Server.
// Only accepts an EnemyAI instance where the EnemyType.enemyName is "Manticoil".
// Returns true if successful.
public static bool SetMantiToilOnServer(EnemyAI enemyAI) { }


// Toil-Slayer spawn count.
public static int ToilSlayerSpawnCount { get; }

// If enabled, will force any spawned Coil-Heads to become Toil-Slayers.
// This will get reset automatically when the day ends.
public static bool ForceToilSlayerSpawns { get; set; }

// If set to any value above -1, will temporarily override the Toil-Slayer max spawn count.
// This will get reset automatically when the day ends.
public static int ForceToilSlayerMaxSpawnCount { get; set; }

// This must only be called on the Host/Server.
// Only accepts an EnemyAI instance where the EnemyType.enemyName is "Spring".
// Returns true if successful.
public static bool SetToilSlayerOnServer(EnemyAI enemyAI) { }


// Manti-Slayer spawn count.
public static int MantiSlayerSpawnCount { get; }

// If enabled, will force any spawned Manticoils to become Manti-Slayers.
// This will get reset automatically when the day ends.
public static bool ForceMantiSlayerSpawns { get; set; }

// If set to any value above -1, will temporarily override the Manti-Slayer max spawn count.
// This will get reset automatically when the day ends.
public static int ForceMantiSlayerMaxSpawnCount { get; set; }

// This must only be called on the Host/Server.
// Only accepts an EnemyAI instance where the EnemyType.enemyName is "Manticoil".
// Returns true if successful.
public static bool SetMantiSlayerOnServer(EnemyAI enemyAI) { }


// Toil-Player spawn count.
public static int ToilPlayerSpawnCount { get; }

// If enabled, will force all Players to become Toil-Players when the round starts.
// This will get reset automatically when the day ends.
public static bool ForceToilPlayerSpawns { get; set; }

// If set to any value above -1, will temporarily override the Toil-Player max spawn count.
// This will get reset automatically when the day ends.
public static int ForceToilPlayerMaxSpawnCount { get; set; }

// This must only be called on the Host/Server.
// Returns true if successful.
public static bool SetToilPlayerOnServer(PlayerControllerB playerScript) { }

Bug Reports, Help, or Suggestions

https://github.com/ZehsTeam/Lethal-Company-ToilHead/issues

Discord server Forum Post
Lethal Company modding Discord #mod-releases ToilHead
Unofficial Lethal Company Community #mod-releases ToilHead

Screenshots