qwbarch-Mirage icon

Mirage

Synced voice mimicking for all enemies, and a focus on features for masked enemies. Alternative to Skinwalkers + MaskedEnemyOverhaul, but is not a drop-in replacement. Please look over the FAQ and config options to enable/disable the features you want.

Last updated a week ago
Total downloads 906352
Total rating 74 
Categories Mods Audio BepInEx Client-side Server-side Monsters
Dependency string qwbarch-Mirage-1.7.0
Dependants 669 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
Bobbie-UniTask-2.5.0 icon
Bobbie-UniTask

Provides an efficient allocation free async/await integration for Unity.

Preferred version: 2.5.0
Bobbie-NAudio-2.2.2 icon
Bobbie-NAudio

Audio and MIDI library for .NET

Preferred version: 2.2.2
qwbarch-BarchLib-1.0.0 icon
qwbarch-BarchLib

A collection of libraries and utility functions for my mods.

Preferred version: 1.0.0

README

Mirage

Mirage is a mod that gives any enemy the ability to mimic a player's voice (fully synced to all players). This mod is required by the host and on all clients.

⚠️Warning: This mod is not a drop-in replacement for Skinwalkers + MaskedEnemyOverhaul.
This mod comes with features you might not want by default (such as masked enemies spawning on every moon), and will require you to tweak the configuration.

Mod showcase

Features (all features listed below are configurable)

  • Every enemy can mimic the voice of any player currently in the game.
    • On spawn, each enemy chooses a player to always mimic the voice of.
    • Voices are synced to all players. This means everyone hears the same voice, the same words, at the same time.
    • Only masked enemies mimic voices by default, other enemies can be enabled via config.
  • Spawns a masked enemy on player death, at player's death location (like a player turning into a zombie).
  • Default is set to a 10% chance to spawn a masked enemy, set this to 0 to disable the feature.
  • Can be configured to only spawn if the dying player is alone.
  • Can spawn at the company building if NavMeshInCompany is installed.
  • Masked enemies use the mimicking player's suit and cosmetics.
  • Remove the mask from masked enemies.
  • Remove the arms-out animation from masked enemies.
  • Configuration is synced to all players (only the host's config is used).
  • Adjustable spawn chance for masked enemies.
    • Calculates the spawn weights for each moon internally.
    • Default is set to spawn masked enemies at 15% for each moon.

Discord

If you have questions, and/or want to stay up-to-date with the mod:

  1. Join the lethal company modding discord.
  2. Go to the mirage release thread and ask your question!
  3. Optional: If you'd like to see a sneakpeek on what's potentially coming in v2.0.0, click here.

I have a suggestion for the mod, and/or have found a bug

Whether you have a suggestion or have a bug to report, please submit it as an issue here.

Frequently asked questions

Why does this mod come with so many features? I only want skinwalkers, but with synced voices.

Mirage is not Skinwalkers, despite the overlap in many features. The main goal of this mod is to overhaul the masked enemy experience.
If you want an experience more similar to Skinwalkers while keeping everything else vanilla, you will need to modify these config values:

  • EnableOverrideSpawnChance = false
  • SpawnOnPlayerDeath = 0
  • EnableMask = true
  • EnableArmsOut = true

Keep in mind only masked enemies mimic voices by default, so you will need to enable other enemies if you want them to mimic voices.

Can I use MaskedEnemyOverhaul with this mod?

You probably don't need MaskedEnemyOverhaul when using Mirage, since this mod already supports:

  • Removal of the mask texture and arms-out animation.
  • Naturally spawned masked enemies mimic a random player.
  • Cosmetics are supported (by the cosmetics mods themselves).
  • Spawn control for masked enemies is configurable.

If you still want to use it anyways, make sure you use MaskedEnemyOverhaulFork instead, with the Dont Touch MaskedPlayerEnemy.mimickingPlayer configuration set to true.
The original MaskedEnemyOverhaul will cause the masked enemy's suit and mimicking voice to not match.

Do I need DissonanceLagFix installed?

No. Mirage now applies the lag fix patch as of v1.0.16.

Does this mod support cosmetics?

Yes, any mod that applies to masked enemies should be compatible with Mirage.
If the cosmetic mod you use does not support masked enemies, you will need to request the mod author to support it.

Does this mod use voice recognition and/or AI?

Not currently, but it is currently a work in progress and will eventually come in v2.0.0.

Can I hear my own voice from voice mimics?

By default, yes. If you don't want to hear your own voice while you're alive, set MuteLocalPlayerVoice to true.

Is using Mirage to override the masked enemy's spawn rate compatible with spawn control mods?

While only LethalQuantities and LethalLevelLoader has been tested, Mirage will override the spawn weights for masked enemies, since its patches run after them.

This means only masked enemy's spawn weights will be replaced with what Mirage calculates (based on the percentage you desire), and the rest of the enemies will remain untouched.

Why does SpawnOnPlayerDeath not work at the company building?

You need to install NavMeshInCompany to allow enemies to exist at the company building.

Recommended mods

  • StarlancerAIFix - Fixes a vanilla error referencing EnableEnemyMesh.
  • LCMaskedFix - Fixes vanilla issues with masked enemies.
  • EnemyFix - Failsafe for when mod conflicts occur, enemies will still gracefully despawn.
  • GeneralImprovements - Quality of life, as well as the option to disable player name tags (to make it harder to spot masked enemies).
  • AsyncLoggers - Increases performance by making logs write to another thread. Mirage already writes logs to a separate thread, but this is still good to have for other mods that you have.
  • DramaMask - Allows you to hide from masked enemies, and if you have mask textures enabled, you can troll your friends by looking identical to a masked enemy.

Can I reupload the mod to Thunderstore?

No, reuploading the mod to Thunderstore is not permitted. If you are creating a modpack, please use the official mod.
If you're making small changes for your friends, you will need to share the compiled .dll directly with them, and then import it locally.

Acknowledgements

  • RugbugRedfern - Mirage is heavily inspired by Skinwalkers. Thank you for creating one of the best mods in the game!
  • Evaisa and LordFireSpeed - For creating the amazing UnityNetcodePatcher, which this mod uses during its build process.
  • Owen3H - For their synced configuration implementation, as well as bringing up issues with the approach taken from the modding wiki.
  • MartinEvans - Author of dissonance, for helping me out with voice activity related issues.
  • IAmBatby and BananaPuncher714 - For answering my spawn control related questions, regarding LethalLevelLoader and LethalQuantities.
  • TheDebbyCase - For the countless days spent helping me reproduce issues that other players were having, as well as explaining how spawn curves work.
  • Zaggy1024 - For pointing me towards setting up a debug build of the game, which is required for me to be able to run a performance profiler.
  • IAmBatby and mattymatty - For their help/implementation on getting rid of the audio spatializer warning log spam.

Changelog

To stay up to date with the latest changes, click here to view the changelog.