MaskFixes
Fixes several problems with mask items and masked enemies.
Last updated | 2 hours ago |
Total downloads | 35 |
Total rating | 1 |
Categories | BepInEx Client-side Server-side Monsters Bug Fixes Performance Tweaks & Quality Of Life |
Dependency string | ButteryStancakes-MaskFixes-1.0.0 |
Dependants | 1 other package depends on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
Mask Fixes
Fixes a bunch of small issues with mask items and "masked" enemies.
I highly recommend pairing this with Enemy Sound Fixes to also fix masks laughing/crying too rarely, and (optionally) adjust their footstep volume to match real players.
List of Changes
Fixed major lag from Masked AI in factories/manors
- Whenever a Masked is wandering, its AI would call an expensive search function (to find the mineshaft's elevator script), up to 5 times per second.
- This code runs even if a mineshaft interior did not generate, meaning the script can never be found, and the searches will happen endlessly.
- This issue compounds for each Masked on the map, since they search separately from one another.
- They now reference a cached variable.
Fixed Masked affecting "outside power"
- Masked are registered as an outside enemy internally, suggesting they might have been originally intended to spawn outdoors.
- However, in all vanilla moons, natural Masked only spawn from vents inside the building.
- This caused an imbalance in power level; Masked would add 1 to indoor power when spawning, and subtract 1 from outdoor power upon being killed.
- This would reduce the amount of monsters allowed to spawn inside the building for the rest of the day.
- This would also increase the amount of monsters allowed to spawn outside beyond normal limits. (Allowing extra dogs, giants, etc.)
Fixed converted Masked affecting power level
- Upon killing a converted player (by item or by another Masked), it would subtract 1 from outdoor power.
- Converted players do not increase indoor or outdoor power, so this would allow for extra outdoor spawns, similar to the above issue.
Fixed incomplete appearance of costumes
- When a player wearing the bunny or bee suit is converted into a Masked, its suit would be missing "attachments" like the bunny ears or bee antennae.
- Masked always wore the "Intern" badge on their suit, regardless of the rank of the player they were mimicking.
- This also applies to the "V.I.P. Employee" badge, but as of v69 this is currently being displayed on all players.
- If the player they copied was covered in blood decals (from taking damage), those would not appear on the Masked.
- There is also a bug that would sometimes cause Masked to turn invisible and spam errors in console.
- I'm not sure if this is specifically a vanilla bug, or something related to a mod like More Company (with the cosmetics)
- All of the above has been fixed.
Restored the "blood spillage" effect from v45-49
- When a Masked grabs a player, it "converts" them by vomiting blood into their face.
- Before v50, there was a visual effect during this animation that showed blood spilling into your helmet.
- This was removed in vanilla because (presumably) it had a tendency to get stuck on your screen forever, if you were rescued from the Masked before death.
- This has been fixed.
Fixed all instances of the Tragedy mask using wrong assets
- The ragdoll from putting on a Tragedy mask at Gordion is the only place where vanilla uses all the correct models.
- When putting on a Tragedy mask, it used the Comedy mask's glowing eyes shape, which caused obvious clipping errors.
- When Tragedy gets stuck to your face, it would transform into a Comedy mask.
- The Tragedy mask on Masked reuses all of Comedy's models.
- Tragedy Masked were intended to cry like the item does, but they are silent in vanilla due to a networking bug.
- Combined with the fact that the mask looked like Comedy, they were almost impossible to tell apart.
Fixed some problems with Masked after death
- Masked are no longer spin on the radar, becoming stationary like all other enemies.
- Masked no longer laugh or cry after being killed.
- This is somewhat subjective, but masks are silent if attached to a player corpse (such as when putting a mask on at Gordion), and this makes them more consistent with other enemies.
Fixed "[Near activity detected!]" not working for Masked
- Masked are only added to the global list of enemies for the host.
- The proximity warning does not work (when only Masked are nearby) for any other clients, which makes it possible to immediately be grabbed upon entering the building, if you are unlucky.
Fixed Masked immediately grabbing players as they enter the building
- When a Masked uses the entrance doors, there is a 1.75s cooldown before it is allowed to attack players.
- This cooldown does not apply if the player is the one who uses the entrance doors, allowing them to be attacked instantly if the Masked was loitering next to the door.
Fixed Masked sprinting more often in multiplayer
- When a Masked takes damage, they have a random chance to begin sprinting.
- In multiplayer, this chance is rolled by each connected player, which causes it to become increasingly likely in larger lobbies.
- This fix will only fully apply if everyone in the lobby has the mod installed, but is partially alleviated by each player using it.
New logic for hiding aboard the ship
- When left outside for long enough without encountering a player, Masked will hide on the ship to ambush players when they return.
- They select a spot on the ship, then crouch and wait until a player is in line-of-sight.
- However, there is no code preventing multiple masked from choosing the same hiding spot, which will result in them getting stuck on each other and failing to crouch.
- I have adjusted this behavior so they will hide in different spots than each other, whenever possible.
- This is a little more subjective than the other changes, so it can be disabled in the config, but it is enabled by default.