#[EXPERIMENTAL] Lethal Intelligence + MaskedInvisFix
1 messages ยท Page 4 of 1
(judging intensifies)
: (
why do they look like that bruh. ah HECKS naw! ๐จ
I know bruh
Imma remove it from mods later on when i switch to other fren group, just needed someone to test with xd

This is the only type of ppl that is chronically online and can be used for testing
lol, thats fair
So was having a think about the logo... and thought why not have an ai generate one.. and omg.. Gemini is scary at how much it changes the image.. all I asked for was fully red eyes.
^ i agree with the ๐คฎ
don't AI gen something
it comes off as lazy and i've always dislikes the overuse of AI when creating stuff
nope, it comes off as "i cant design anything", which is factual ๐ I am not artistic when it comes to imagery.
If you ever need an icon, iโm always available here (https://discord.com/channels/1168655651455639582/1273636449140342834)
And if youโd rather use AI, iโd only say just limit your use of it
It can really make some scary stuff if you put in the right prompts
im aware, i just thought it would be funny to see what i got.
hi, found a problem:
Masked breakes pathfinding if he can't reach his activity (variation of this issue)
So I had deceiving masked that wanted to go to main entrance, yet it was behind locked door, so he was walking into corner very slowy
they see the door opening
also, I find their activities strange, they always run back and forth on the outside. Fire exit - ship - main entrance - ship - ...
Maybe add a state of "wandering" so they will random pathfind in facility to keep them in it, additionally make them stay on the ship to attack, for some reason my masked don't write messages or use terminal but rather go to fire exit and back
yup, usually it wont matter.. because if they are behind a locked door, that means you cant see them, but i have been looking at this issue because it mostly happens with the breaker box.. still looking for a solution though.
I was debating adding an "idle mode", but the key thing is.. getting them to recognise they cant reach their destination.. which im struggling with right now ๐
also.. i should add, i added in a LOT of calculation.. to check if a destination is possible, and it only works IF the thing they are trying to reach doesnt actually exist... which in the case of the breaker box, it does exist, but still cant be reached.. so yeah, its not so clear cut.
certain masked do not have enough activities to "fill" their day, so yeah, they just run between destinations until their personal activities are triggered (ie, seeing a player for example)
i guess you can say, i need to find more things for some masked to do (which fits in with thier personality), so their day is never truly empty.
item locker is wrong.. the visualisers are wrong... another bug i need to fix.
currently when you spawn 1 masked, the first masked has correct visualisers.. after that.. the maskeds show the same visualisers.. but the logs show the correct data, or well maybe its the bug that ive yet to fix properly (or well released the fix) but yeah, its not showing correctly either way so dont rely on the visualisers too much right now, looking at the log while your trying it with imperium is more reliable.
So, that's an imperium bug that thay change personalities?
So that's what I say, just an placeholder wander activity for now, like in vanilla game, because I really can't imagen more daily routine for masked
no.
i add "Personality", "Focus" and "Activity" to the visualiser for the masked, but my implementation of adding that is wrong.
so with the first and only the first masked spawned.. its fine (which is fine for my testing 99% of the time)
but when you spawn a second masked.. it effectivly overwrites the first maskeds visualiser.. so those 3 details are wrong... but the log shows the correct details.
and if you despawn a masked, it breaks things even worse.. but once again, the log is correct.
as i said, the problem is not "adding a placeholder wandering" thing.
the problem is getting the masked to realise it is stuck.
hmm anything to have it check while it's moving, it's position hasn't changed in the last 5 seconds?
Not about stuck, about running
And so they do not change personalities?
About stuck i got your idea
they get assigned one personality, and thats it, they dont change personality.
Okay, that's good
yeah, what im saying is, your telling me to do something im already doing, im saying the problem is i cant get them to start being idle because they think they are still heading to where they were told to go before XD
Damn... My bad
its cool, im close anyway.
my thought is..
when they get stuck.. they will do random wandering, as you said... but after a certain amount of random wandering, i will get them to change focus/activity, until they find one that they can complete.
i feel like i need to re-re-work that whole situation.. (as ive already re-written it once).
Very good! Wish you luck!
P.s. Also, can you please change bunked bed actuvity target a lil bit, these parodies of humans try to get there yet they can't cus collider of beds is too big and target is inskde, please, make them hide behind terminal as it used to be (I remember it was somewhere)
i dont control that.
that is called the "ship hiding spot" xD
i see them stand in the bunk beds and face palm... but ive also seen them hide behind the cabinet, so its not changed, i beleive its just auto generated based off how you lay out things in the ship, not sure.
So, there is an activity that is named as an item from ship?
I saw in logs bunked beds, ugh, that breakes them
all i ever do regarding that spot, is, in certain circumstances, a masked is told to go to the ships hiding spot, i dont choose where that is.
"ItemLocker" the big red cabinet where they should hide.
the activity = "ItemLocker" so they can find the ship if they are not nearby.
the ship hiding spot is different.
Item locker is fine, i wonder about bunked bed activity that i definitely saw
Well, if you don't controll it, it's fine
there i no bunkbed activity. there is "breakerbox", but thats not in the ship..but the breakerbox is what often breaks the masked.
once again though, i dont choose where the breakerbox spawns.. hence why it breaks things.
But... I will research, I definetly saw that
yes, it will be "BreakerBox" if its an activity, as i said, i dont choose where it is, it spawns behind walls sometimes.. that is the main cause of pathing issues.
and so far.. ive locked a masked behind a door.. they have walked up to the door 50 times.. and I still cant detect that the path is blocked.. so fun times ๐ but i have an idea on how to resolve that.
break the door with hands
breaker box is sometimes behind walls, that isnt a fix.
I forgor how to write break๐
xD
well.. somehow.. got the idle code working... and activating.. but it activates in a random place where they can walk.. so im sure i have a fun time getting that working ahead.
Still a big progress!
One problem in my research, my lethal company crashes all the time when I host, any ideas? Mod's are fine
nope, only thing i can suggest is, seeing if you can host vanilla.. if you cant.. then you have vanilla config problems or something, my friend had issues once where he couldent go to orbit as the host.. it was a "save exp" problem, had to delete all his game data.
ah actually, i just realise.. the "randomly idle in a corridor" thing i just experienced.. was with the OLD attempt at trying to check if a path is blocked.. but i didnt get a response from my new way of checking at all.. fun xD
๐
yup, I was wrong, my eyes decieved me. really a breaker box activity, hope you will find a way to fix it
Love this mod. So far I've only seen them take the scrap outside the ship and "try" to be friendly with me. Then they sabotage the apparatus. Then they stand in the ship and sometimes order something. Then run into the facility like a regular player. (Wish their movement was more convincing) I've so far never seen them do anything else. I heard they can do other things or is that just a rare chance or was it because I was only in single player.
glad your liking it ๐
tbh, being a solo player, you will probably see more than most people do (because more people = more people to stop them doing the things ive told them to do.)
i think your the first person to report them sabotaging the apparatus in a live game, so im glad thats finally been seen ๐
i wish their movement was more convincing too, sadly, im not the best at that sort of stuff, but once i get more "buggy" things fixed, i will certainly look more into that.
everything written on the readme on thunderstore/github.. they "can" do, but some things are "broken", like for example, Aggressive should be able to pick up a shovel and steal your shotgun, afaik, them picking up a shovel, isnt happening yet (but a fix should be just around the corner), and likewise, they dont really seem to like taking shotguns.. but once again, hope to have that fixed soon.
and in the next version they will 100% certainly be picking up walkies if they see them, but currently they fail at that too.
might update the readme to say "this is currently broken" etc. but most of it works. ๐
insane should be 100% working, as should deceiving, and cunning (except the breaker box.. if thats in a bad place, then any masked going for the breaker box will bug out, trying to fix that once and for all right now)
oh i should add, stealthy looks weird in how they act.. and aggressive is mostly broken (aside from them wanting to kill you, as yeah, they dont go for shovels/shotguns atm)
Here's an idea that might be interesting:
- Have the mimic be able to pick up a flashlight on the ground. This is partially to remove gear players might try to go back for.
- The mimic will keep the flashlight off for the most part, as it will not want to be noticed by the player.
- If the mimic detects the player is holding a weapon when coming towards the player, the mimic will attempt to toggle the flashlight on in an attempt to blind a player that's potentially ready to attack it.
- The mimic will drop the flashlight in order to grab onto the player. Maybe some compatibility could be added for Reserved Flashlight Slot/Reserved JSON Slots where the flashlight won't drop as it should be on the mimic's person, and instead just get turned off again.
I love the idea of the masked dropping the flashlight to go for the kill.
Love the idea, but I think reserved slots already puts flashlight on masked bodies.. so they would have 2 flashlights, but maybe I can toggle and aim that light.
Think masks will be able to use #1205643578764693524 walkys as well? since I'm pretty sure it works the same way only different is less charge and spawns inside
if those walkies replace the originals, and use the originals speaker, then yes, if not, then maybe not.
all the masked walkies thing does is.. look for ALL "WalkieTalkies" and play to their "target" audio source... so as long as its a "WalkieTalkie" and has a "target" that plays audio.. it should work
nvm.. no it isnt. (dont worry, made a stupid claim, regretted it instantly :D)
idea
add support for maskthedead
masked will seek out masks to try to place 'em on corpses
so finally.. after many days... (10?) of writing code... (mostly for the main feature of this patch, which took at least 5/6, maybe even up to 8/9, lol)...
uploaded version 0.1.9 - Mirage Integration Patch
-Fixed Masked Picking up WalkieTalkies (previously they would not pick them up)
-Added integration with Mirage, masked will now play mirage audio through walkies to trick you (Stealthy/Deceiving/Insane only), audio will only play through walkies if someone has an active walkie far enough away from the masked, the starting rate is 50% chance, more far players with walkies will increase that chance)
-Fixed an issue regarding a conflict with "SignalTranslatorUpgrade" mod.
-Fixed a softlock from where a masked dies while using the terminal.
Please Note:- there is an issue with the animation in LI for "Holding 1 Handed Items", its existed since the MaskedAIRevamp days, i dont have a fix for it yet, but hoping to have one soon. I chose to keep using the animation instead of having masked holding 1 handed items weirdly.. this mainly affects walkies being carried, so if you want less log spam, turn off the audio integrations for mirage/skinwalkers/wendigos and the masked will not pick up walkie talkies
some information on how the mirage integration works as its a bit different from skinwalkers/wendigos...
1 - if more than 1 walkie exists in the map when the masked spawns.. then "walkie integration" is enabled.
2 - if the masked sees a walkie talkie on the ground, they will pick up the walkie talkie
3 - if the masked is speaking using mirage, they run a check for "other walkies", depending on how many walkies exist that are not very close to them , not turned off, and not in their vision.. they will use the walkie to speak to other players. (if a walkie is turned on and far away, then the minimum percentage is around 50% activation chance i think, i was testing using 4 walkies, 2 turned off, 1 in the masked's hands, and 1 in my hands turned on)
4 - if the check PASSES, they will turn their walkie on, press the speak button, the audio will be heard on all turned on walkies, and then they will let go of the button, and turn off the walkie.
5 - if the check FAILS, they will not speak through the walkies.
if you have questions, feel free to ask, if you find bugs, do tell as im sure there are things that can be improved.
and last but no way near least!..
thanks to @fallow sun for all the assistance with integrating mirage with LI - could not have done 99% of it without you, it was honestly not as simple as what i first imagined when i looked at the skin walkers integration many months ago! ๐ but we got there in the end!
? I use it all the time.. with this mod. lol
woohoo lets gooooo
hooray
sorry to say.. another update.. i literally found out i could fix this myself around 30 mins after i uploaded v0.1.9 xD
Uploaded v0.2.0 - Mirage Integration Patch (Hotfix)
- Fixed the NullReferenceException relating to PlayerAnimationEvents.UnlockArmsFromCamera when masked hold 1 handed items (generic 1 handers, including walkie talkies and flashlights too)
for anyone who cares.. this issue (#1240985198485573743 message) was caused by the 1handed and flashlight animations having an event leading to that function.. which is clearly meant for players, not masked. xD (so i removed the event from those animations.)
noob question, how can I try this mod?, even with the latest patches?
is already out in thunderstorm? or I need to compile on my own?
its on thunderstore. just search it.
does the "WIP" make you think its not on thunderstore? xD if so i should probably change that to experiemental or something.
I mean you have the link in the main fourm post so... yeah, it's there already out on thunderstore
not everyone looks at pins though xD
haha not even a pin at all. If it's the 1st time they open this, It sshould default to the top/main post right?
ah, so discord strikes again, with questionable design choices
will try on thunderstore then ๐
thanks for the patience
and yes, because is WIP I thought it was not released yet
[EXPERIMENTAL] Lethal Intelligence
btw, i should mention, since 0.1.9 there has been another error.. when mirage isnt installed.. a null reference has been occuring, only found out this morning, should have v0.2.1 out shortly to fix it (pending testing). an oopsie on my part (tested mirage was working, but forgot to test if mirage wasnt installed xD)
[19:00:55.5337571] [Error : Unity Log] TypeLoadException: Could not load type of field 'LethalIntelligence.Patches.MaskedAIRevamp:maskedFocusInt' (3) due to: Could not load file or assembly 'LethalNetworkAPI, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
Stack trace:
System.RuntimeType.GetMethodsByName (System.String name, System.Reflection.BindingFlags bindingAttr, System.RuntimeType+MemberListType listType, System.RuntimeType reflectedType) (at <787acc3c9a4c471ba7d971300105af24>:IL_001B)
System.RuntimeType.GetMethodCandidates (System.String name, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type[] types, System.Int32 genericParamCount, System.Boolean allowPrefixLookup) (at <787acc3c9a4c471ba7d971300105af24>:IL_0010)
System.RuntimeType.GetMethods (System.Reflection.BindingFlags bindingAttr) (at <787acc3c9a4c471ba7d971300105af24>:IL_0000)
HarmonyLib.PatchTools.GetPatchMethod (System.Type patchType, System.String attributeName) (at <474744d65d8e460fa08cd5fd82b5d65f>:IL_000D)
HarmonyLib.PatchClassProcessor..ctor (HarmonyLib.Harmony instance, System.Type type, System.Boolean allowUnannotatedType) (at <474744d65d8e460fa08cd5fd82b5d65f>:IL_00A4)
HarmonyLib.Harmony.CreateClassProcessor (System.Type type, System.Boolean allowUnannotatedType) (at <474744d65d8e460fa08cd5fd82b5d65f>:IL_0000)
HarmonyLib.Harmony.PatchAll (System.Type type) (at <474744d65d8e460fa08cd5fd82b5d65f>:IL_0000)
LethalIntelligence.Plugin.Patch () (at ./LethalIntelligence.cs:171)
LethalIntelligence.Plugin.Awake () (at ./LethalIntelligence.cs:136)
UnityEngine.GameObject:DMDUnityEngine.GameObject::AddComponent(GameObject, Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.Rendering.HighDefinition.HDRenderPipelineAsset:OnEnable()
This error happens when launching the game. Mirage is installed.
you are missing LethalNetworkAPI
happens. I remember updating YesFox incorrectly, as Dev1A3 is slowly renaming the .dll files. TSIO would have fixed it, but I have a TSIO > Test Environment
so there was two of the same mod, and it didn't like that
Lol the struggles of juggling mods around. Don't even remember disabling it but I guess I did by accident lol
If you tap on the post title and open Settings, you'll find pins. It's in a really bad locaton
i just had an issue with GALE... i turned off a mod, and it was showing as on in the log.. had to turn it on and off 50 times, then suddenly its off (but when i looked at the folder.. it was not enabled.. so it was somehow loading when not enabled lmao)
im also getting issues now where part of my mod isnt loading... for no reason xD (test build). so looking for a way around that issue as its happened before.. xD
if someone has had the game open recently, with mirage + LI installed, could you send me your log file? i feel like my lethal company isnt playing ball xD
[20:03:35.8746740] [Error : Unity Log] IndexOutOfRangeException: Index was outside the bounds of the array.
Stack trace:
LethalIntelligence.Patches.MaskedAIRevamp.UsingTerminal () (at ./Patches/MaskedPatches.cs:3537)
LethalIntelligence.Patches.MaskedAIRevamp.MaskedDeceiving () (at ./Patches/MaskedPatches.cs:2674)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedPatches.cs:1352)
[20:03:35.8906884] [Error : Unity Log] IndexOutOfRangeException: Index was outside the bounds of the array.
Stack trace:
LethalIntelligence.Patches.MaskedAIRevamp.UsingTerminal () (at ./Patches/MaskedPatches.cs:3537)
LethalIntelligence.Patches.MaskedAIRevamp.MaskedDeceiving () (at ./Patches/MaskedPatches.cs:2674)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedPatches.cs:1352)
I currently have them both on with gale.
Also this mimic was trying to use the terminal.
can i get the log then?
i can only assume, that, the masked used the terminal after a mine was detonated or a turret or spike trap was removed.
Oh Right Black Mesa doesn't have those on it
[20:18:06.5129176] [Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Animator.ResetTrigger (System.String name) (at <5d72b68986b04a96815303374320f4d3>:IL_0001)
LethalIntelligence.Patches.MaskedAIRevamp+<>c__DisplayClass226_0.<mirageDeactivateWalkieSpeaking>b__0 () (at ./Patches/MaskedPatches.cs:5031)
System.Threading.Tasks.Task.InnerInvoke () (at <787acc3c9a4c471ba7d971300105af24>:IL_000F)
System.Threading.Tasks.Task.Execute () (at <787acc3c9a4c471ba7d971300105af24>:IL_0000)
--- End of stack trace from previous location where exception was thrown ---
LethalIntelligence.Patches.MaskedAIRevamp.mirageDeactivateWalkieSpeaking (System.DateTime endTime) (at ./Patches/MaskedPatches.cs:5024)
System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_0 (System.Object state) (at <787acc3c9a4c471ba7d971300105af24>:IL_0000)
UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke () (at <e27997765c1848b09d8073e5d642717a>:IL_0002)
UnityEngine.UnitySynchronizationContext.Exec () (at <e27997765c1848b09d8073e5d642717a>:IL_005D)
UnityEngine.UnitySynchronizationContext.ExecuteTasks () (at <e27997765c1848b09d8073e5d642717a>:IL_0014)
Was this the one you said was fine?
[20:18:04.1428726] [Error : Unity Log] NullReferenceException
Stack trace:
Mirage.Domain.Audio.Receiver.onReceiveFrame (Mirage.Domain.Audio.Receiver+AudioReceiver receiver, Mirage.Domain.Audio.Frame+FrameData frameData) (at ./Mirage/Domain/Audio/Receiver.fs:61)
[email protected] (Mirage.Domain.Audio.Frame+FrameData frameData) (at ./Mirage/Unity/AudioStream.fs:67)
[email protected] (Microsoft.FSharp.Core.FSharpOption1[T] frameData) (at ./Mirage/Domain/Audio/Sender.fs:62) Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvokeNoHijackCheck[a,b] (Microsoft.FSharp.Control.AsyncActivation1[T] ctxt, b result1, Microsoft.FSharp.Core.FSharpFunc2[T,TResult] userCode) (at D:/a/_work/1/s/src/FSharp.Core/async.fs:528) Microsoft.FSharp.Control.Trampoline.Execute (Microsoft.FSharp.Core.FSharpFunc2[T,TResult] firstAction) (at D:/a/_work/1/s/src/FSharp.Core/async.fs:112)
--- End of stack trace from previous location where exception was thrown ---
<StartupCode$FSharp-Core>[email protected] (System.Runtime.ExceptionServices.ExceptionDispatchInfo edi) (at D:/a/_work/1/s/src/FSharp.Core/async.fs:1798)
Microsoft.FSharp.Control.AsyncPrimitives+StartWithContinuations@1188-2.Invoke (System.Runtime.ExceptionServices.ExceptionDispatchInfo x) (at <12b89e0ba184665de418f7f4c173580f>:IL_0000)
Microsoft.FSharp.Control.Trampoline.Execute (Microsoft.FSharp.Core.FSharpFunc`2[T,TResult] firstAction) (at D:/a/_work/1/s/src/FSharp.Core/async.fs:138)
<StartupCode$FSharp-Core>[email protected] (System.Object o) (at D:/a/_work/1/s/src/FSharp.Core/async.fs:181)
UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke () (at <e27997765c1848b09d8073e5d642717a>:IL_0002)
UnityEngine.UnitySynchronizationContext.Exec () (at <e27997765c1848b09d8073e5d642717a>:IL_005D)
UnityEngine.UnitySynchronizationContext.ExecuteTasks () (at <e27997765c1848b09d8073e5d642717a>:IL_0014)
This error was dropped first. Both were the result of going to orbit. after the mimic killed me. Sorry I'm just running some tests and figured I should drop errors I get.
can you send the log file please?
pretty sure glitched npc is using an old version of mirage
so can't use lethalintelligence with it
like not with the compatibility setting i mean
Nope i'm updated
ah
I'm testing both out
well on that subject...
i recorded a sentence earlier.. "something... something else"
it split into two clips.. very brief pause xD
sorry for yet another small update.. :/
uploaded v0.2.1 - Mirage Integration Patch (Hotfix 2)
- Fixed an issue where Mirage was considered a hard dependency and so would break the mod (and potentially the game) if mirage was disabled/not installed.
600ms of detected silence yeah
ill probably bump it to 2000ms for a test sometime this week
sweet. Can you also sneak back in the become mimic on death config if its easy enough lol I'd really love to not have to install another mod for that if possible. Your version was sweat and simple. Nothing extra to it just a simple roll the dice upon death and oh a mimic. If you say no I understand lol
would require a bit of work just to make sure nothing bugs out so i don't really wanna do that since i have no time rn, sorry
No worries.
just use zombies, disable the other settings except the mirage port stuff. Pretty quick n simple
Anyways, my only bit of feedback from my brief testing of this mod is that AI that likes to go to the ship and watch the monitors, i assume the Cunning or Deceiving one, it should drop the act the second it receives damage from a player or is stared at for too long, since after 1 hit you can tell its a mimic from the sound+animation but it kinda just continues staring at you. It also stares at you way to long without moving or looking around which gives it away. If it did slight little sidesteps or moving its head around a bit, even looking back at the monitors, crouching etc. it would be convincing for longer
Also i was seeing that some of the masked hold out their hands, regardless of if i disabled the GeneralImprovements settings for it. I feel like they shouldnt rly do that even for the less stealthy ones, as theres no second guessing if they are a masked or not
I think all of the AIs shouldnt have arms out
i dont enable that, or disable it, infact.. my mod actively does other animations.
how often do you see "arms out"?
when im testing my mod, i NEVER see arms out..
I have "arms out" disabled in mirage, i dont use general improvements, could it be that general improvements is conflicting with my mod (to the like which i alluded in the readme?)
the only time that "arms out" MAY occur (according to my mod) is when they try to kill you.
oh crap, i didnt disable arms out in Mirage, forgot mirage has that
if they are on the terminal.. they just completely ignore you, you can whack them several times, and they will die before doing anything.
I probably need to code in something along the lines of "if your hp drops.. focus on the player who caused it".. but, yeah.. not there yet.
even without it enabled in mirage (i do most of my testing without mirage installed as i do testing in as vanilla environment as possible), they never stick their arms out. ever.
every single "update" in their code, i force animations on them ๐ (for movement, and for item holding/not holding)
so, they really cant be holding their hands out... unless my mod goes "its ok", or another mod blocks that from happening.
I have this disabled in GI, and i also tried with it on, but i didnt change any of my Mirage settings going in with this mod
My mirage settings whilst using it is:
i suppose i can experiment, toggling each mod's thing on/off and spawning a bunch of masked and see what combination causes it to occur
thanks for the feedback anyway, i like feedback.
current thing im working on though is a bracken style "run away from player" for stealthy, where they run away like a bracken.. and hide .. waiting to pounce on you when you come around a corner.
can you give me a full mod list from your profile? but id honestly assume its either.. some mod that makes masked emote, bugging out the animator, or something like GI/mirage, that tries to disable arms, but does it in a way that also bugs out the animator.
btw, i dont know how the animator works.. but i read a long while ago, if someone does it bad, and uses the same one as someone else, then, it will break everything xD so maybe look at other mods bugging out animation wise?
but yeah.. uh, incase anyone wants to look at what i mean... this is where the mod forces various animations on masked.
https://github.com/VirusTLNR/LethalIntelligence/blob/8352480ba99b65ae0c554ff58f32bbc3e33b2e18/Patches/MaskedAIRevamp.cs#L1961
TooManyEmotes is in the pack, which can do that, i can try disabling their masked emote thing too
well i checked out a likely culprit (zombies), but no joy, they spawned arms out.. until my mod went "no" and gave them an animation.
if i was you, i would install a mod for spawning enemies, turn off half the mods, and see if the arms still appear.
if they dont, turn off more, and more, until the arms stop being out.
then you know its one of the last set of mods you turned off.. and then can do those 1 by 1.
it could also be.. that, something broke my mod.. at which point.. its not my mods fault, but there should be an error in the log so i can fix it, so do let me know ๐
Well, i'll start with the ones that i know for sure mess with Masked (GI, Mirage and TooManyEmotes) and then try more from there if that doesnt check out
just remember to leave one mod enabled, that does disable the arms, otherwise the arms will pop up in vanilla xD
I disabled GI and TooManyEmotes (Mirage still enabled), was still getting it, then disabled Zombies and i am not getting it anymore
So its probably what you described earlier where its when they initially spawn. However for me they never really "fixed" themselves much. i suppose they got fixed whenever your code happened to override their current animation which would be effectively random from my pov
i will try putting GI and TooManyEmotes back on tho whilst Zombies is disabled to see if they still behave properly
ive had that happen sometimes, most of the time they behave normally but once in awhile they still use the arms out animation. i have this mod, mirage, and toomanyemotes
Its the one that sits in the corner, doesnt use terminal. It looks like its using the walkie and watching the monitors, and then turns around and stares at you when you come in
Tho when i tested it just now, it stared at me and then ran and grabbed me so idk
This mod does prevent TooManyEmotes masked emoting from working though, even if set to always emote on first meeting which is a shame
(This also confirms that GI's MaskedEntitiesReachTowardsPlayer doesnt seemingly conflict with this mod either)
Does your code try to change their animation as soon as they spawn? I mess with it a bit in start in order to skip the spawn animation so maybe it's bugging out
I'll see if it's something I can fix on my end when I'm back from work
Any ideas as to what causes this? I dont have any mods (I dont think) that effect masked other than this and mirage
I suppose theres also general improvements but I dont have literally anything related to the masked enemies on it
That's the masked hiding in the ship hiding spot.
They aren't using the monitors, and I don't control that position. They are supposed to be hiding but that "hiding spot" is kinda bad.. lmao
As soon as the first update runs (after around 0.02s?) It applies the positional animation (standing/running/crouching/etc if there is one) and it gives arm positions and stance positions for holding items or not.
That's a null reference exception I need to catch I think.
I am guessing the walkie talkies no longer exists (from the masked pov).
This would usually.mean it has been destroyed. (Hence is null). Let me check the line incase I'm wrong.
Hmm
Well, I'll see if I can replicate the bug and see if disabling the animation stuff I do fixes it
I Did install your mod with default settings and try it but masked arms were down, just initially at spawn they put arms out (but I think that's normal from my pov, so if your mod changes that I wasn't aware lol)
2143 =
if (__instance.CheckLineOfSightForPosition(walkie.transform.position, 60f))
__instance = EnemyAI MaskedAIRevamp (the attached component of my mod, on MaskedPlayerEnemy)
walkie = the walkietalkie its currently looking at...
so i guess i need to add a "if walkie==null" check just before this, although its weird as a loop just starts there after grabbing all walkie data.
for the second error.. (which i only just saw), what interior is that on? and can you describe the apparatus to me?
line 3059 =
apparatus.EquipItem();
once i know the interior, i will have to look at that... but i think? that calls the apparatus being pulled out (even though i dont pull it out)
All I do is play an animation to cancel the spawn anim in start, and what I've consistently seen is that they spawn in idle essentially
You say you think it's normal for them to put their arms out on spawn, so I wonder if they have them out whenever they spawn with your mod installed and it's just obvious with Zombies cause they tend to spawn in front of players
Either way, I'll try and figure it out when I'm back from work
any potential issues with the Deceiving Masked picking up and using a walkie while ReservedWalkieSlot is enabled?
oh I guess not just Deceiving, just didn't finish reading the updated personalities
why would there be an issue with that mod? because the walkie appears on their body? tbh i havent looked at how that works.. but this steps into realms i discussed regarding flashlights.. i guess what i need to do is run a check, that if those mods are installed, then i need to see if the masked possesses a flashlight/walkie/etc, and if they do, skip picking them up, and just use them.
thinking about it actually... trying to do that may cause me a lot of problems.. hmm ๐ (unless i just make the "held" one invisible or something), and disable the animation changes.. lol
Honestly it looked like it was watching the monitors when I was using GI which was kinda cool. All it needed to do was not stop and stare so much whilst being watched whilst hiding and lunge at the player, especially if they're close
i do tell the masked to look at the player if they notice them (and when they lose sight of them, to look at where they last saw them).. but, not to stand and stare... so ill have to look at that, thanks for letting me know
Weirdly it could even be another zombies issue, because in the session where i had that disabled, when i got close they did in fact run at me
so
I'm not seeing the masked having arms out with both mods enabled
what I am seeing is the spawn animation playing + the masked walking around which does look a bit jank
tested with mirage
tested with general improvements
though might be visible on clients actually forgot to see
still the same
so LI breaks your updated spawning animation?
this is with both our mods
and then just with zombies
hmm I do have some junk code that also messes with animation, lemme see if removing that does anything
actually looks like that function doesn't fire
the only thing I do that messes with animations should be
[HarmonyPostfix]
private static void StartPatch(MaskedPlayerEnemy __instance)
{
__instance.timeSinceSpawn = 4;
__instance.creatureAnimator.SetTrigger("HitEnemy");
__instance.SwitchToBehaviourState(0);
}```
the only other issue I'm seeing is mirage not removing the masks from the zombies but seems to be due to how mirage removes the masks
I haven't seen the masked have arms out with mirage or GI having that disabled
and LI is applying behaviours to zombies according to console
that spawn looks like a normal vanilla spawn to me (or at least what im used to (ive pretty much always played with MAIR or LI)
with just your mod, they seem to pop up right, and move
it's normal except for the movement
I make it instant mainly for the proximity zombies so that they can jump players
functionally it seems like the only compat issue is the spawn animation playing, from what I could find at least
thats fair, tbh, it may just be that our mods are not compatible, as your telling masked to do XYZ
and when a player is revived, they are still a masked.
so it kind of sounds like we are doing the same things xD
wait so what happens when your mod tells them to kill and my mod doesnt? ๐
Its on the school interior
https://thunderstore.io/c/lethal-company/p/MrUnrealTeam/SchoolDungeon/
because stealthy in my mod is told to run away (badly) and just sort of lingers nearby staring at the player
(an example of confliction, because it wants to kill, but my code doesnt stop it from doing so when telling it to run away, hence, bad :D)
I'm not touching the AI aside from that small code block, which is in place so that they're able to get into a kill animation right after spawning
ah, i use that, ill have a look.
ahhh, when you said proximity zombie, i thought you meant that you make the masked do something. now i see.
but this says to me that we need to work it so when your mod is installed.. my mod should delay what its doing, or you should block it until your part is done. ๐
maybe i will add in something, that first 10s after spawning, my mod does no updates.
by prox zombie I mean
it'll trigger the body spawn logic (which makes the body spasm) when a player gets close to the body
and then just spawns the masked up to a certain distance towards where the target player is
well, how long does that take? ๐ 3/4 seconds? 10?
the lengthy part is when it's still just a dead body
if you look at the vids I sent again, the part where the body is bumping into the air is the pre-spawn stuff
after that it's only what I run to assign the player lookalike stuff and the small bit of code in start
yeah i just mean, i need to delay my updates until a few seconds after spawn i assume.
maybe only need to delay it if the masked spawned from a dead player.
(and if your mod is installed)
I'm not entirely sure on how mod to mod stuff goes, only one I've done was compat for modelreplacement which is just checking for a component if the mod is installed
If it's possible to grab a list from my mod then that's easy, but just lmk what you need on my end
well, i know a bit about how it goes, but i think in this case, just if i detect your mod is installed, and the masked spawns from a dead player.. and so i delay X seconds from the point at which its activated, it should be fine, if im wrong, i will let you know if i need help ๐
Some other feedback i got from the people i play with is that having it so theres just a chance for these AIs to be in effect rather than applying it to all masked, or being able to select which masked can do stuff (e.g. masked created from converted players can do all the unique stuff like sabotage apparatus, whereas naturally spawning ones cant) would be neat for balancing
But idk how realistic that is for you to implement
It would be good i think tho for mods like Zombies, or in Mirage + my personal pack whereby Masked can spawn on basically any moon
If all of them have this new AI it could get very oppressive and kinda shift the focus of the game on managing and looking out for masked more if that makes sense
Mind you thats not a bad thing, but it's different enough where it can definitely alienate some people and change stuff up a bit too much
remove my mod, play with vanilla, then say you dont want the "personalities" xD
I do like the mod! 
Byeah its a significant enough change where the general consensus with them is that we should make it an entirely seperate pack, or just toggle the mod on/off between sessions
well thats fair, but vanilla masked stand in a corner and do nothing xD
oh btw, another thing, idk if its specific to the warehouse, but the masked seem to get stuck at the front door alot
I did alot of my testing on Experimentation which has a decent chance for it. I figured maybe it was because the Warehouse uses those lil keypads at the side as their "doors" to exit
i tell them to wait before going BACK through the entrances, so they are "waiting", i need to improve that.
yeah, i was gonna say or else it camps people
honestly if they just mindlessly wander the nearby area for a bit that would probably work fine
that was the intention, that they wander around while waiting to go through the door ;o but yeah, i must have done something wrong, or forgot to finish it, oops
Yeahh. its happening quite alot, to the point where we cant rly have it active atm
I will have a clip too
ill try to get a quick patch out soon, reduce the timer on that, the main reason for it is to stop them going in out repeatedly (ie to give them time to walk away), not so they sit there xD
just had a look, the timer isnt actually that high.. i think its just i didnt implement it good enough, they are being told to go for a wander if they cant teleport.. but I am guessing while they are being told to wander, they are also being told to go to the entrance.. so ill have to look and modify that. ๐
ok, so i checked out the second error.. this was not due to my mod/the school interior.
what is "pooluginrooms", sounds like the pool rooms? (which i beleive is an interior) dont know if they are related, but if you still have a log, the masked status reports tell which moon its on.. and would be repeated both before and after the error so you could confirm the interior + the moon.
ah im wrong, its related to "PooluginRooms.dll" which is part of liminalpools..
sad to say tried it on liminal pools too... didnt get the error, ill report it to the maker of liminal pools though as i cant see their code, so dont know why it occured if it was related to their mod ๐
Weird. I used to have the pool rooms mod but it was very outdated so i removed it incase it was buggy and only use liminal
Thats odd you got it on the pools.
Maybe oll have to check my pack and see if theres some third party causing issues
Does the mod itself have compat issues with the starlancer AI fix and the starlancer escape?
Other than those I dont believe I have anything that effects any AI or masked.
i didnt get the error, i only searched the decompiled code, and its part of liminalpools
i dont use escape, but i use AI fix, should be no issues
i dont think its realted to ai/masked
i think its related to the apparatus
whatever interior is doing something with the apparatus.. or something bugged out
The liminal pools did put rhe appartus in a uniwue position
but im not able to replicate the issue. so yeah, i dont know what to make of it
And i think the school does something similar
i tested, in both cases, the masked "sabotaged" the apparatus,, no errors.
The hell lol
yeah i d k
Ill just test more I suppose. Couldve been one off
the only "possible" thing might be, im testing solo, and maybe its a "networking" issue so it only shows up when multiple people play
Itncould be yeah. It seemed like it cropped up when my friend was near the front door and a masked got him
if you dont see it next time, i would just wait to see what drako says about his mod, because im guessing he can work out why it triggered.
umm, this is info i didnt have..
so what exactly happened?
was your friend holding the apparatus?
I dont really know. I was checking the map and saw the masked nesr the front door and a dead friend. And that popup filled the log
No he wasnt
No one had it
ah, well, this is unrelated to your friend dying then
the code in my mod that triggered something, was related to the masked sabotaging the apparatus.
so the one causing it would have been next to the apparatus
if it had of been in a players hands.. then it could have been that i didnt account for that scenario properly. lol
Gotcha
Ill just tey to pay more sttention ig it happens again to see whats happening exactly
Sorry for typos
I am drunk and it is late ๐๐
11am xD but yeah i get you, no worries!
Its 6 am for me!
yeah i figured :3

ok.. so... this.. and... the issue with masked "watching the monitors" and using the dodgy spot inside the bunkbeds to do so.. are actually the same issue.
i thought the thing in the ship was the ships hiding spot being moved.. im WRONG.
after trying to fix the first issue, increased the delay between entering/exiting the interior to a stupidly high number.
when on the interior.. they acted weird as f..
when on the outside.. they walked and stared at the monitors
in both cases they were told to "look and run randomly" which is a vanilla function.
as soon as i disabled that part of the code.. they just behaved normally.. so i dont get whats occuring.. but im just going to stop making them use that vanilla code..because once again vanilla jankyness has struck again ๐
otherwise, need to think about how ill pull the masked away from the door on the interior if there is no apparatus/breaker box, maybe have them just walk to a nearest item.. lol
ok, so.. uh..
i dont know what to say.. all of my code runs via FixedUpdate.
I put this code in, and it spams CONSTANTLY for a solid 5 mins (the time that i set it to run for to make sure my code is doing nothing).. and the moment they spawn, the masked move and do things... so i think its vanilla code that is causing the issue, tried disabling masked features in my mod, and it does act differently.. but i dont know why.
public void FixedUpdate()
{
if(delayedStartTime > DateTime.Now)
{
Plugin.mls.LogError("Awaiting Corrected Start Time -> "+delayedStartTime.ToString() + " @ current time = "+DateTime.Now.ToString());
return; //delaying the start time for zombies
}
//all the rest of the code
}
the only thing i can assume is, when i run this in start(), it is causing the issues, but i say that only because i heard a while ago, that using the same animator/etc, one can break the other, vica versa. I have no clue how to make them work together, or let your stuff run first, ive tried delaying my stuff from running, but no joy, so might be a good time to ask someone else what the issue is xD
if ((Object)(object)creatureAnimator.runtimeAnimatorController != (Object)(object)Plugin.MaskedAnimController)
{
creatureAnimator.runtimeAnimatorController = Plugin.MaskedAnimController;
}
Aww damm, i just had a clip ready to show them camping at main lol
no need, seen it myself now xD and hopefully already fixed, just trying to cram more in before releasing
yippe, i have it anyways in case its of use
Are you using your own animator asset and changing it out in start?
That would... explain things
I assume if so that it's a copy of the vanilla one with some changes and additions?
i didnt set it up, so no clue, my mod is a continuation of MaskedAIRevamp, it was all setup there.
sorry, i just saw in the code what you meant, yes it is.
MaskedAnimController = Bundle.LoadAsset<RuntimeAnimatorController>("MaskedMetarig.controller");
as you can tell, i know jack about animation ;o and im actually running on 0 sleep right now so bit dopey ๐
๐ค it may just be as simple as doing SetTrigger("HitEnemy") after you assign the new animator, and then I disable my animation play when your mod is installed
Cause if you're setting a new one then given what I'm seeing it may be doing my code in start first and then you reassign the animator so mine ends up doing nothing
As I said, the only issue I was seeing is that the spawn animation was playing, everything seemed to be acting just fine otherwise
I know @potent marsh was saying that the arms were going out sometimes but that's not an issue I saw when I was testing with zombies, Mirage, LI, and GI so would need more info on that
Mind you, zombies + GI + TooManyEmotes etc. are enabled in this clip and the arms are still not out
It just seems to be a thing sometimes when they initially spawn, or perhaps only if spawned through a mod like Imperium which i used
well, that would all make sense.. because, when the mod is disabled, the animator isnt assigned.. which would explain why things looked different, but i couldent confirm.. because, i couldent get a dead person to revive (not familiar with your mod, so i dont know the conditions required, but i felt i met them, but just could never get it to occur)
yeah, i had a one off "arms out, staying out" thing yesterday, but ive never seen that before.
isnt the name of the animation, set somewhere in the controller?
when testing with my mod it's best to set infection chance to 100 and infection time min/max to something like 2
that way it's guaranteed to infect and it'll only take ~4s for it to start spawning
the names are set in the controller but the way unity's animation works is that when certain conditions are met an animation plays, so usually when you want an animation to play on command you have it have a trigger as the condition
maybe what i can do is, stop assigning the animator in start.. and do a delay in UPDATE, and call it after the delay... i d k.
or... if you can expose 2 variables...
1 = spawningAsZombie
2 = spawningCompleted
then, my mod would go on pause.. until these arent the case.. 1=true, and 2 =false, if they are the values, then my mod should wait.
are you suggesting i call the animation, BEFORE setting my own animator?
this is assuming btw, that your animator gets assigned before mine ๐
after you set your animator
what I suspect is happening is that my code is going before yours, and then yours runs and changes the animator
I'm just using the vanilla animator to run it
the only problem with that though is.. if your mod revives a twice dead masked, i d k what happens then
I don't respawn masked
I spawn a new one
maybe i can look at your code, and use the vanilla animator too.. as i said, i didnt set this up xD
ah, now that would be fine then
https://github.com/Synaxin/LethalZombies relevant stuff to masked spawning is gonna be in Patches/MaskPatches and Scripts/ZombieNetworkManager in OnMaskSpawnServer, OnMaskSpawnClient, and waitForMimicEnemySpawn (OnSpawnResponseServer is something I was trying and forgot to remove)
SetTrigger is base unity
"HitEnemy" is the trigger that it sets
lemme pull up the animator for the enemy rq to give some visual aid
no i know
im asking if HitEnemy is in the vanilla animator, doesnt look to be though
im going to do something "fun", disabling my animator, and seeing if the animations still occur.. lmao
reason why I'm doing that trigger in particular is that the animation it plays can be played from any state, so it can stop the spawn anim
but that means its a vanilla animation?
yes
ah, that might be the fly in my ointment
a lot of my animations are not vanilla
they copy PLAYER animations, edited, and used on the masked.
ill output a dev build of my mod and send you it, then you can test it with your mod, see if it leads to your animations working?
sure
oh
could you make sure it has a log in your maskedplayerenemy start patch
I want to see who's goes first
im guessing mine goes second, because my maskedplayerenemy start patch only triggers ADDING the MAIR component... which then starts.. and adds the new animator controller
so ill put 1 in for the patch's start, and one in the MAIR start.
the two things to look for in the log, both errors..
MaskedPlayerEnemyPatch AWAKE for Synaxin
MAIR START for Synaxin
there is no START under maskedplayerenemy patch, its just an awake loading the mair component (that has an awake, and a start)
the animator is loaded in the mair start, but in this build its disabled, no clue if my animations are working, but no errors.
the arms out, i am going to guess, is the conflict between the animators.
interestingly, my animations seem to be working xD so confused.
[Warning: Unity Log] HeadMaskTragedy is disabled! Netcode for GameObjects does not support spawning disabled NetworkBehaviours! The RandomPeriodicAudioPlayer component was skipped during spawn!
[Info : Imperium] - SPENT IN VISUALIZATION: 0
[Debug : Zombies] Added Player to Zombie List
[Info : Unity Log] Got network object for mask enemy
[Message: Zombies] Received Mask Server Zombies.Scripts.ZombieSpawnInfo
[Message: Zombies] Received Client, Unity.Netcode.NetworkObjectReference
[Debug : Zombies] Entered Spawn Coroutine
[Debug : Zombies] Wake Tick Complete!
[Info :qwbarch.Mirage] MaskedPlayerEnemy(5c95c6c2-1b00-4bd0-a2cf-92641a40cc3a) - Mimicking player #1
[Message: Zombies] Zombies Start Patch MaskedPlayerEnemy
[Error :LethalIntelligence] MAIR START for Synaxin
[Info :LethalIntelligence] ```
was getting up without spawn animation
were all of your animations working? item interaction, being on console, etc.
being on console, yes, picking up 1 handed zap gun, yes, thats what i checked, i figured thats enough.
the only slight concern with that is, they are originally vanilla animations, but without my bundle im pretty sure they dont load.
so yeah, MAIR start is after your start patch.
but in that build, my animator isnt assigned, its still in the bundle, but doesnt get applied at runtime
anyway, i have a busy few days ahead of me so ill have to pick this back up after that.
v0.2.2 uploaded
- Potentially fixed a null reference exception when the masked sabotage the apparatus (only seen once on Liminal Pools (i think) so far, hopefully never again :))
- potentially fixed masked standing at the main entrance and fire exits, as well as standing in the ship staring at the monitors (thanks vanilla code for not doing as expected)
- potentially fixed a null reference exception when a walkie is picked up
- added new Activity (findRandomItem)
- fixed some null reference errors in the masked status report
.......a-
so my spawn coroutine plays after you set your stuff
stuck the settrigger in there and now it's fine
lol xD so i dont need to change anything? what about with v0.2.1 or 0.2.2?
(cause they have the animator enabled)
that was with 0.2.1, not the build you sent
oh ok, cool.
ill assume, with the test build, its the same, cause all im doing is disabling the animator controller being changed.
I'll release a patch with this + the fix for the issue I had with mirage
also, do you want me to include a list of zombified players in case you wanna mess with their personality when they're a zombie?
but its good news for me, i was reading up about what my mod is doing, and i think my animator overrides the default one for my animations.. or something, i d k
yeah, though from the looks of it it's basically a copy of the vanilla animator with some of the player animations thrown in
erm, if its spawning a masked player, my mod will attach instantly afaik.
meant more for choosing certain personalities
it works fine, mostly asking if you want the opportunity to add some spiciness lol
oh nah, the personality choice is random... maybe another time, when my stuff all works like dandy, we could do an integration where i make a personality.. that is specific for zombies ๐ but rn i have too much shit to fix xD
that
is
fair lol
if you mean a list i can access, sure, but not sure i need it.
wont need it now, but could use it later to add said spicyness. ;o
can you access a variable that's public in plugin.cs? I dunno what you can access from my mod so I'mma need to know where to put it
related question, is setting personality all host side?
erm, not sure... but... if its public, i should be able to access it, as long as i know where it is.. i would just need to do a "using zombies;" or w/e
then reference the list
as long as its a list of string or something, it shouldent be a pain.
like ive already got skinwalkers, and i just need to put that in a subfunction so it didnt error when mirage stuff ran nearby.
Likewise, mirage's stuff required similar, but that also had a custom class.. was more pain, but doable and similar in the end.
yes.
all occurs here.
https://github.com/VirusTLNR/LethalIntelligence/blob/6efb1a1227e294cdf8e42afa2e54745a9d32552e/Patches/MaskedAIRevamp.cs#L1321
its similar to the integer states used by vanilla.. ive had a thought about all that recently.. and come to the conclusion, while integers arent as readable... having 10 bools.. where i could just do int 0-9... is a bit of a hassle ;o
(bools arent for the personalities, i mean for various decisions.. but it made me think about how personalities are lol)
hmm...
for referencing specific masked, I've been using NetworkObjectReferences cause otherwise.... issues
with host only could also do MaskedPlayerEnemy and then you'd just have to check if the list contains __instance
ah well, I'll try making some things for now and we can sweat the details later
thats cool, no rush, as i said, lots of shit to fix, and i really need to get going, was nice chatting about stuff though, and glad a resolution was found for the animation issue, just sorry i wasnt much help xD
thanks for all your assistance with this and sorry for the trouble lol
such a greaaaaat feeling fixing an issue with 1 line of code after a few hours of troubleshooting
i know right, i had so many issues debugging stuff, til i rewrote the code in my mod, and added in a load of debug lines and reports.. now, i still get lost, but, at least with a log, i have a clue ๐ 3/4 hours instead of weeks!
and your welcome btw, we are all here to muddle along together and make great stuff (well i hope xD)
Found one of these lag spikes, not sure the log will do any good,
Not expecting a fix right now, and for that matter might be a mirage fault when comboed, but probably disabling because that lag spike is awful
I'll have a look at it when I get a chance but that looks like something broke out of the ordinary. I saw those errors in testing, but it was when I was getting it working, so looks like something funky happened.
If you turn off the mirage setting in the configuration it won't occur though as the masked won't pick up walkies if you have mirage installed.
ok,had a look at this, seems the original way i was handling this was correct, but wasnt working for me, i switched it to another way, which is apparantly throwing an error (the one you got) because its null.
ill try testing the original way, but if that doesnt work, then i will just add a null reference check and it should clear up the error, as im guessing that this happened as the moon was being left, or as a player died/dropped/turned off their walkie, or something.
ok, ive totally replaced the lines that triggered this error, so hopefully its resolved, let me know if it occurs again, but it shouldent do, the fix will be in v0.2.3 (whenever i release that as i want to try to add a few more things first)
Well hopefully something good comes of that then. I'm running too many mods to know if some third party was causing the issue, but there was no dead bodies. I assume a walkie from Remnents maybe was involved? There was a mile of errors about not being able to pick up a walkie. Not entirely clear what was happening, was mostly focused on other things till the lag spike and I knew the errors were no longer harmless.
is remnants the other mod? if so i will look at it tomorrow
Remnants is in the rotation, and I never had any walkies for any other reason, so maybe
I'm looking at 180 mods. granted some aren't related in the slightest, but it could also be something else obscure
Mirage, Remnants, and this are the only things that I could think of however, unless some Sound APIs are causing it
nah, i think its related to some walkie not being a normal walkie, so remnants makes sense if its a mod that alters walkies somehow, but it shouldent matter, as my mod is only looking for "WalkieTalkies" the type (like a shovel/stopsign are both shovels by type)
so my guess is, while its a walkie by type.. its not got the right variables set, so when my mod interacts with it, it freaks out and goes "i cant do that".. leading to the error
so, i can only assume that there was a person killed while holding a walkie, or that said walkie evaporated (maybe ate by a giant/worm?), with it turned on, as the masked were speaking to it, or something.
ive tested with remnants as best as i can, and im not seeing an error on my old code, or my new (and thats with me noticing remnants causing other issues for my testing purposes), but as i say, in the next version, the line that it is erroring on, isnt present, so im hopeful either way, that the error is fixed.
No one had died, I was solo running around in god mode testing some stuff out real quick. I don't think I had worms inside to cause that. Never had spawned any walkies myself. And other walkie effecting mods I had are client-sided, like hearing it in an area or hotkey. Could have been something patching it, or Imperium doing something funky, but that might not be worth the effort. Good hunting on those bugs. This mod certainly seems to make them much better doppelgangers.
Is it normal for the mask to keep going to fire exit and then main entrance and repeat over and over again? ||(They were insane and already disabled the apparatus and kept going back and forth everytime.||
normal pathing.. yes.. but your saying INSANE did this after pulling the apparatus? thats not normal, thats literally a scripted set of events.. pull apparatus -> run to ship -> warn players -> pull ships lever
do you have a log of that game? might be something ive done recently ballsed up the logic ๐
well it certainly tries to be, hopefully sometimes succeeds, often fails im sure ;D thanks, do you have the full log with debug mode on? then i can understand what was happening with the masked before/after it started popping up.
Unfortunately I've launched since then, and I'm not sure how to replicate.
(I had a few extra mods but I don't believe they should mess it up unless I try again with just this mod)
well, non-replication isnt nessecerily bad.. if it happens once, then its probably not something that occurs often.
frequently appearing bugs are annoying, and easy to fix
rarely appearing bugs are harder to find/fix, but, less of a problem ๐
I code too, seemingly inconsistant bugs are the worst
thats cool, i only want the log really for the status reports from my mod, tells me what a masked is thinking its doing, so i can understand what might have gone wrong ๐
so from what i can see regarding this
masked -1571050 was insane.
they focused on the apparatus, and sabotaged the apparatus
"luckily" im an idiot, and left a debug log line in by mistake.. so i have some "weird" information.. im surprised the masked travelled this far so quick...
[Debug :LethalIntelligence] ApparatusDistance = 16.12735
[Debug :LethalIntelligence] ApparatusDistance = 3.610166
that feels like something stopped the game for a second.. but thats just because that log should have spammed (it was only mean to be while i was testing)
but yeah. that masked sabotaged the apparatus.
its new focus was "escape", which is correct..
but then suddenly it focused on the apparatus again............................... (wrong)
then they changed status because the apparatus was already sabotaged... (wrong.. because they sabotaged it.. so that should put them back into "escape").. which then led to them having only a few options (walking around, and using the terminal :P)
so i think a recent change i made.. to fix an issue.. has led to the masked not doing what they should... ill have a test though and work it out.
If were talking about stopped the game
I did have imperium for testing it so I 'Paused" time.
And used it for freecam to monitor the mask.
I could just use a freecam mod instead of imperium to keep an eye on the mask.
Idk thats just my way of seeing it.
i use imperium for testing, i dont mean imperium being used to pause time, i do that ๐
but like. its like the masked teleported distance.. unless that log file isnt spamming (which maybe the case), but a jump of 10 distance isnt what i normally see, its normally decreasing by 0.1 or less
it actually looks to me, like the masked got stuck at one spot, then teleported to another. (the log did spam, but the numbers didnt change) (it spammed more than this, just showing that it spammed)
[Debug :LethalIntelligence] ApparatusDistance = 16.12735 [Debug :LethalIntelligence] ApparatusDistance = 16.12735 [Debug :LethalIntelligence] ApparatusDistance = 16.12735 [Debug :LethalIntelligence] ApparatusDistance = 16.12735 [Debug :LethalIntelligence] ApparatusDistance = 16.12735 [Debug :LethalIntelligence] ApparatusDistance = 3.610166 [Debug :LethalIntelligence] ApparatusDistance = 3.610166 [Debug :LethalIntelligence] ApparatusDistance = 3.610166 [Debug :LethalIntelligence] ApparatusDistance = 3.610166 [Debug :LethalIntelligence] ApparatusDistance = 3.610166
anyway, that log doesnt matter much, just found it weird ๐
also, i noticed another error in your log.. but i am already aware of that error so nevermind the other one ๐
you can also watch masked when you are "untargetable" and "invisible" and "muted" btw ๐
very nice!
As of right now I'm just testing it out and spawning the mask somewhere after 2 PM
(Forcing it to spawn as insane for right now)
Yeah he just keeps going to fire then main over and over when the app is sabotaged.
yeah, its cause i changed some code relating to the apparatus.. due to another issue, ill have to refix that
i think its this line here..
if ((Object)(object)apparatus != (Object)null && !apparatus.isLungDocked)
i used to make the apparatus basically not exist, but an error was occuring.. so i left it as existing, so if i change this line to perform some other check.. then, it should work again ๐
ok, maybe that isnt the error xD, ill look into it further
uploaded v0.2.3
- Improved the walkie talkie audio so that only the person holding the walkie hears the voice of the masked
- Added support for 'AlwaysHearActiveWalkies' mod when masked use walkies. (having "AlwaysHearActiveWalkies" installed makes the masked voice play out loud to all those around the walkie)
- Fixed Insane when they Sabotage the Apparatus and Escape. (they were seemingly running between main entrance and fire exits due to badly modified logic)
let me know if there is any new issues ๐
i forgot to disable this debug line... so oops... ill do that in 0.2.4 xD
mmm... they are still camping main
Now hes... Stuck there at the inside of main entrance? He only just spawned in! (There is no other mods other than lethaldebug and freecammer)
the main entrance bug just doesnt wanna go away does it? xD
WOO party! can i get a log file? ๐
with insane, when he is "going for the apparatus" right after spawning him in, i did notice, he does just wander off, then come back.
Right but he was there until it hit 12 AM (I spawned him in at 2:03 PM)
hmm, well, ill try and test for it, (as its not just a one person problem and i know there is issues), but i really thought this camping lark was done with xD
spawned 10 masked, 7 went out the front door, 3 went out the fire exit, no one stuck xD
main exit and fire exit marked,... gonna play out the day (until one of the masked takes the ship away) but, none of them stuck at the entrances on experimentation.
ok.. now i see, something related to them going for the apparatus now breaks them, wahoo.. why didnt they do this when i tested them before x.x
i will at end of session yeah
Nvm got it
ok.. i found the issue.
so...
when i choose an entrance.. to teleport through... i get the location it is on the part where i am (inside or outside) then find the OPPOSITE location.. to teleport to.
for some reason.. that isnt working, when.. it worked before the "apparatus/escape"s event occured.
just had an interesting interaction.. because the breaker box was behind a locked door, the masked was stuck at the main entrance.. couldent go out,.. i can only assume it worked out that going outside could lead it to the breaker box.. >.> (but, it couldent leave)
^ should add, only after 2pm.. may have to completely re-do how im doing entrances... ill look at it tomorrow :/
They also still go to the corner and kinda watch the wall, though they're much more likely to do something when attacked or someone comes near, but not always
is that the TERMINAL to your left?
i just ask, because that terminal looks like its floating, and also looks like its in a position the masked cannot reach...which would be why they are standing there im guessing.
if thats not the terminal, then nevermind.. but what is helpful is with the screenshot of the game, i get a screenshot of the console window fromt hat exact moment, or the full log.
ok, I have good news.. after much fiddling and butchering my own code... ive work out whats wrong and its a 1 line fix (assuming it truly does fix it.. LOL)
well.. one line of code, has turned into a few more.. but.. while the masked did seem to want to go to the main entrance, it seems they suddenly changed their mind.. lmao.. then left as they should..
as for why the ending was.. poop (standing in the dumb position again in the ship) i dont know.. cause they pulled the lever on me earlier :/
so still a bit of work to do, but getting there x.x and at least stuck in the ship isnt as bad as stuck at the main entrance. lol
The masked is looking at the edge of the far left monitor. The terminal is on the opposite side of this end of the ship, facing the masked (so 90 degrees to the mimic's right)
ah thats the monitor i see in the left side of your image., was confused as i wasnt used to the angle.
well... then.. thats the same issue im seeing right now.. which im currently trying to fix xD
i have to say, i used to hate the breaker box, but right now im hating the apparatus.. lmao, and the lever.. xD
All funny contraptions
i cant imagine what getting them to use weapons properly will be like
ill let you know when i find out, walkies was fun, more.. errrrrrrrrr
i know im pretty much responding to myself.. but remember when i said i HATE those things? thats an understatement.
changed nothing much, fixed 1 or 2 lines.. its been broken still for hours.
add in some more debug lines to try and understand what is going on better and now it works perfectly. -_-
wont release update today, but.. yeah.. tomorrow sometime after i do some more testing tomorrow because knowing this stuff.. tomorrow it will be all broken again (even after i change nothing) ๐
something i need to care about?
i need to disable that, something is broken with it... ill disable it tomorrow. thanks for the report
Np, thank you
ok.. so hopefully this is the last time im fixing sabotage/escape bugging out... my bad for not fixing it quicker (or the first time) but the issue was very hard to understand what was going on. I actually broke things worse before i fixed them, but i had no clue i was doing so. lol
uploaded v0.2.4
- Fixed routing problems when Insane is doing "Sabotage/Escape" focus which led to them standing at the main entrance (or in the ship) weirdly.
- Fixed "findRandomItem" invalid cast exception
- removed some spammy debug logs
- (debug)improved some "masked goal" messages in the status reports
- force updated some distances that were causing delayed responses when masked performed certain actions.
Well, they finally were able to go outside! (They used the signal translator and made my blood run cold. But I haven't been able to see them pull the ship lever, yet.)
using the signal translator (for escape) wont happen unless they pull the apparatus. but glad to hear things seem to be working again, i ran into a few masked this evening, but i didnt see what they were doing ๐
what if the masked could just like.. take their mask off and on
i plan to add customisation of the translator messages, so there is a mix of defaults, and personalised ones if people so choose, so it can trick their lobbies better.
would be cool if they could type "spin for tp" and tp you if you do spin xD
My friends are gonna hate me for adding this mod (I had it disabled until it completely worked)
technically they could, but, id rather they type "spin for tp" making you think you can be saved.. then they dont save you xD
i planned to add in to escape, that they TP the furthest person away from the ship, back to the ship.
think about this, id probably add in a default for "you want tp?" if tp is bought.
Ok so masked can pull the apparatus? Because I assume it wasn't anything else that did that and triggered a meltdown while I was running around testing other things on a moon. Alone. Normally not so bad, but with Meltdown that is pretty bad, might want to make that optional.
the whole "thing" with insane, is they do that.. if people dont want that, they can just turn off insane, as for meltdown.. i dont actually know what meltdown does exactly as i dont use it.. but, the masked pulling apparatus is only after 2pm, what i could do is.. change the time to for example.. 4pm, i just thought 2pm is an appropriate time as thats when old birds wake up.
my only gripe with that is.. the apparatus being pulled, and the escape occuring.. is rare, so i kind of feel like.. if you use meltdown, you could just disable insane... or if you want insane, you could disable meltdown.. or you can just accept that on rare occaisions.. your going to lose a round because of rng (insane spawning is luck, insane going to the apparatus is luck, if the doors stay locked (right now) they cant reach the apparatus).
so i do get you, but if i added an option for everything people dont like, then i think half my mod will end up getting turned off ๐
maybe what i can do.. and i already thought about this.. is.. add in something that warns the players.. as if it was the ship warning you.. like "danger... masked has been detected with intent to sabotage the facilities power" or something.. which would happen when the masked is X distance away from the apparatus... this warning may still be shorter than planned though if the masked decides that right next to the apparatus.. but i cant do much about that.. maybe add in a delay when they are at the apparatus.. like they are spending time breaking it?
lots of thoughts.. lots i could do.. hope what i said alleviates your potential worry about a nightmare sudden "meltdown" xD
I use meltdown and the thought of a mask pulling the apparatus is really funny. I hope that if you do add a warning, it can be toggled in the config. I like being surprised lol.
old birds don't wake up at 2 pm, they spawn in the same way as any other enemy
old birds spawn at day start.
at 2pm they start waking up (at least on embrion)
if you pull the apparatus.. they wake up instantly (at least on embrion)
they spawn in the same way as any other enemy, they just have an object marking their position for when they do spawn
exactly. but when i say "wake up" i mean they use the body that already exists in the game map.
at 2pm.. you start getting old birds flying around attacking people.. yes or no?
the body is a completely different object which is removed when they spawn
it depends on the moon
I mean Virus's point still stands? 2pm Old Birds are active (or I guess depends on the moon)
i dont care about how that all works.. i have never looked at it.
from a players (non modders pov)
the old bird is there.
it becomes alive sometime after 2pm.
that is all i referenced... i didnt specify that they do exact specific things, nor care exactly how it works, all i said was "2pm is when old birds start coming alive"
thank you
btw i should add.. sorry if i sound rude, and thank you for the insight into how the old bird works, it just sounded like your trying to say im wrong when i wasnt trying to be right.
mm, apologiers
its ok, i just personally try to write things in a way everyone may understand so if someone reads what i say, they know whats going on xD (i often fail at this so, im sorry in advance too xD)
going back to this, yeah i could add a setting in for the warning if i added one. I am all fine for people wanting to make the game harder than i make it xD
thanks for this, just going to disable insane because of meltdown. I had forgotten it was personality based and only one had that issue.
can masked throw flashbangs?
No
If its not listed in the features of the mod page then, its not a feature of the mod (normally)
๐
lol would be funny for a masked to be like "think fast chuckle nuts" flash bang you then grab you
There is code for throwing a flashbang as part of the "attacking/killing" players code.
But they currently don't pick them up.
Picking up walkies is forced.
Picking up items outside of the ship is optional for Deceiving.
Picking up items in the ship is optional for cunning
I need to do an optional thing for aggressive for shovels and shotguns, when I do that I can look into all the other things.
It may just be a case of.. if you see a shovel, kill and take the shovel, if you see a shotgun, use the shovel to kill and drop the shovel and take the shotgun soet of thing.. just haven't worked on it.
Aggressive is the closest to a normal masked, so I've mostly left it alone so far as I've had too much to work on.
I still need to fix a bug with walkies (been reported in pm, but I've actually had it happen to myself tonight). Once I've sorted that, might start looking at all that.
Either way, from maskedairevamp, there is certainly code for flashbangs.. no clue if it works though lol
omg wait this gives me an idea
masked use flashbangs (just in general because it would be really cool, it's such a player thing to do) and they'll like (different personalities helping others maybe?) use them to blind you so another mask can get the drop on you or smth like that
i landed on Ooblterra and got spammed with these errors later in the day, might be something worth looking at. i didnt see any while i was playing but that moon has a special version of masked called ghost players, it might be conflicting with your mod
16 mb log lol
the ghost players spawn outside though, im not sure if they spawn inside too
well.. im going to guess that moon is 100% incompatible atm..
pretty sure i completely disable "LookAtFocusedPosition"
I also disable the default "entrance teleport" system, and introduce my own.
LateUpdate.. i d k why its erroring, probably because something else is disabled.
i will have a look at it in time, but, if your telling me its a complete modification of the masked players, rather than just a reskin, then its likely it wont be compatible
I also looked at the first warnings/errors in the log (something you should always do)
this masked doesnt even spawn on the navmesh, and causes mirage to fail, buttery fixes to fail, my mod to fail... i dont think its a very compatible version of the masked enemy at all.. so it looks like its something for that moon to fix imho.
[07:33:13.9091028] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:13.9260823] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:13.9520128] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:13.9639805] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:13.9759486] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:13.9919060] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:14.0088978] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:14.0248599] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:14.0418141] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:14.0634732] [Warning: Unity Log] HeadMaskTragedy is disabled! Netcode for GameObjects does not support spawning disabled NetworkBehaviours! The RandomPeriodicAudioPlayer component was skipped during spawn! [07:33:14.0634732] [Info : Unity Log] Spawned enemy: Ghost Player [07:33:14.0654682] [Warning: Unity Log] Failed to create agent because it is not close enough to the NavMesh [07:33:14.0654682] [Info :qwbarch.Mirage] MaskedPlayerEnemy(fc83ba46-c1c4-472e-8bdc-8286bc4c7d68) - Mimicking player #0 [07:33:14.0794309] [Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object Stack trace: ButteryFixes.Patches.Enemies.MaskedPatches.MaskedPlayerEnemyPostSetEnemyOutside (MaskedPlayerEnemy __instance) (at <bed910ca1ac8451d835032f2d4759cdd>:IL_001C) (wrapper dynamic-method) MaskedPlayerEnemy.DMD<MaskedPlayerEnemy::SetEnemyOutside>(MaskedPlayerEnemy,bool) Mirage.Unity.MimicPlayer+MimicPlayer.MimicPlayer (System.Int32 playerId) (at ./Mirage/Unity/MimicPlayer.fs:83) [email protected] (GameNetcodeStuff.PlayerControllerB player) (at ./Mirage/Unity/MimicPlayer.fs:72) FSharpPlus.Control.Iterate.Iterate[T] (Microsoft.FSharp.Core.FSharpOption1[T] x, Microsoft.FSharp.Core.FSharpFunc2[T,TResult] action) (at <fc2f76f70c5c19e61e199821fcce19a4>:IL_000D) Mirage.Unity.MimicPlayer+MimicPlayer.StartMimicking () (at ./Mirage/Unity/MimicPlayer.fs:71) [email protected] (On.MaskedPlayerEnemy+orig_Start orig, MaskedPlayerEnemy self) (at ./Mirage/Hook/MaskedPlayerEnemy.fs:16) (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Hook<MaskedPlayerEnemy::Start>?-1453487596(MaskedPlayerEnemy)
yeaah it seems to be its own thing rather than a reskin. i spawned it with imperium at some point and it didnt function at all, just stood still, i thought it was just cause of imperium lmao. thats alot of incompatibilities, ill just have to find a way to disable that enemy for now
i guess ill forward this to the ooblterra thread though so they're aware
the reason it stands still is because its not on the navmesh.. + also maybe because it conflicts with my mod
weird 
nah, normal xD if you spawn an entity in the ship, you get the same reaction, cause its not on a navmesh
im guessing the ghost player was spawned off the floor somehow. (cause its a ghost?)
and if its a ghost.. then imho, they probably intend to disable mirage, and my mod.. they just dont do it fully.
(ie, a floating reskinned masked that does nothing but stare?)
wait a second, are you sure it belongs to ooblaterra? maybe its just a halloween entity? ๐ (i ask cause you spawned it)
theyre from ooblterra lol
from what i see they look just like normal mirage masked, that might also just be mirage changing them though idk, i havent used ooblterra without mirage
actually yeah, the wiki says theyre supposed to wear a special suit and be transparent. but im assuming since i have mirage it was just me, normal employee in the pajama suit
yeah, sounds like they need to prevent mirage + my mod from doing its thing.
(when its a ghost player)
if it actually moves around like a masked, then perhaps they would need to make it more compatible with what my mod does, unless they want purely vanilla actions... (to which they can prevent the "MaskedAIRevamp" component from being added to the masked (Ghost player) (i think).
i think theyre intended to just act like masked yeah, but also the ooblterra interior/moon is different than most, like how instead of an apparatus theres this battery thing you actually have to put IN somewhere instead of taking it out, or how receiving transmits from the terminal stops this actual ghost thing from chasing you, so having a masked there would be good xD, it would probably be better to have those components of your mod disabled on ghost players
i dunno 
well, being honest, it sounds like they should have replaced the masked, with a new enemy thats a clone of the masked, but isnt the masked.
then it wouldent be mimicked (you would hope) and my mod wouldent attach to it.
yee
i'm pretty sure ghost players are the same as masked, but are registered as a different enemy but use the same AI
ah, well that will be the issue i assume.. well part of it.
Masked are uh, still camping entrance
I'll have the log from this session in a bit
I forgor, i will when i am home from work
x.x ill look at it later
I also had this, got a clip as well when i am back
I think its cute when they do that tho
well.. ill look at it now and put what i was working on on hold (again).
but from my understanding from the last issues.
the issue is I am routing to something that is OFF the navmesh.. so it bugs out, and masked walk there.. I am guessing its yet again, the apparatus, or the breaker box.. lmao..
i dont think its a routing to the main entrance issue.
I may just have to add in a log that goes "masked is standing in this place when it shouldent be" sort of check.. just to produce an error log when it bugs out x.x
(or, likewise... auto-fix the issue if it is bugging out. :D)
From last session, we had the mimics do the weird circle thing on vow at the entrance, and in general we've had them camping main in basically all interiors
0192a765-6f49-af37-32f7-f4f46eece516
v0.2.5 uploaded
- Potentially fixed routing problems which led to them standing at the main entrance (or in the ship) weirdly. (again x.x)
- fixed an issue with "randomitem" function throwing errors
- improved some logging for debugging purposes
hopefully this time it stays fixed.. i trebled the distance around things to which the masked will check for a valid position, so they should stop bugging out as the old value was 99% ok i think xD if this works, ill probably reduce it again in a future patch.
Don't have any logs for it at the moment, but it seems like when a masked starts using the signal translator inside the ship, the signal messages are only visible to the host, as I was the only one who could see them showing up on the screen.
shouldent be the case, but i can check that, no need for logs. thanks for letting me know
Fella gets stuck trying to get the breaker box
Can send log at end of session
its probably just due to the distance
cuz of where it spawned
It was on Arcadia, Liminal pool rooms ofc
No error, you probably just want to give it a check for if it stands too long at breaker box without being able to touch it, determine its blocked in some way and do something else
same could happen if multiple turrets or something was in the way
Yup, its cause of the distance.. frankly I'm not sure what I can do about this, if it's on the new version, I check the distance to the the item.. if they are unrealistic distances away, then this will happen.. x.x I can't have the masked flicking switches from 20m away.
I need to work out a way of going "your not getting closer... stop doing this"
Been trying to do this for months xD or well detecting if the path is blocked.. its a nightmare situation ngl.
Cause if you just check via distance.. then if they go through a maze the distance could increase, before it decreases, leading to the situation being triggered.
I think the best way would to fix would be to disable/forbid breakerbox if the following conditions are met:
- Navmeshpath have less than 2 corners
- Breakerbox is too far
- if timer that triggers when reaching final destination is higher than x seconds
alternatively you could check distance between breakerbox and nearest navmesh position + height and if it's higher than threshold or doesn't have LOS then don't go to breakerbox
LOS would work, but as can be seen in the example, it's visible, so nope for there.
Breakerbox is too far, already do distance checks for determining what to do when... the breaker box being too far is never the issue, the issue is it being too close and yet unreachable.
Navmesh path being less than 2 corners also doesn't work (but may help in the case above) because the way things are currently working, if there is a block in the path (carved navmesh path) then the path changes, until the blockage clears.. so it's rare that the masked stop like this.
For the case above.. the problem is something I was trying to fix before I released the last update.
I basically need a calculation for items off the floor, which think they are on the floor... so that I can calculate the true distance, because the distance varies.
The masked stopped above because they believe they can walk to within x distance of the object.
But they can't, so they keep trying to walk there and do nothing, leading to them stopping
So once I sort out the distances issue, and apply it to everything, this issue should go away.
Then yet again, the other issue of locked doors and walls being in the way causing the masked to bug out... the "unwalkable" location issue is hopefully fixed, but, the closed doors issue, I will still need to resolve.
Thinking about it btw for "walls" being in the way, if less than 5f distance away, and it can't be seen, that might be a valid LOS check, but I think it would stop masked doing what they need in cases where the object is above them, or below them, or round a wall from the current position (because they would be too close but can't see it)
I'll have a think on that. ๐ thanks
I think even just a simpler thing of cancelling the task if its not travelled much distance whilst trying to go somewhere for X time would also surely work fine, since they're bound to get stuck on some random enemy like slimes, weird modded interior geometry, turrets and other traps spawns, or even weirder stuff like people placing furniture in the facility using BetterDecorPlacement or something silly
Them running on the spot trying to get past something they cannot or staring at something because they cant reach it is a dead giveaway its a masked too, so them swapping tasks if they cant reach it is good
while i do agree, before i fixed the bugging out, there was a similar issue, i think i just need to re-look at all my calculations and distances as it seems the issue is happening more now than before, so is no doubt a side effect of what ive changed leading to increased distances (while.. the checks i perform dont use the increased distances..).. oops.
will try to fix it today/tomorrow
so, your suggestion of LOS actually led to a potentially working solution, though not in the way suggested.
by checking for the line of sight to the GameObject within a certain distance.. it actually seems to work better than checking for the distance to the object's floor position.. so thanks for the idea.. testing it now, but hopeful that solves a lot of issues where masked just stand at the place they are meant to be and do nothing. (like this.. #1240985198485573743 message)
and i guess, i can add a more distant LOS check, where if the first check passes, but the second one fails more than 5 times.. it can just change what its doing.. and disable doing so.
Floor position like nearest navMeshHit or vertex of the position with the height being the same as the floor? That would never make the LOS work and would only introduce many problems like the line being intersected by surrounding objects, the floor position being in the wall ect.
yeah. as i said, using LOS seems to work better than checking for the floor position.. probably for the same reasons you said.
i started checking for floor positions.. because of issues with the actual positions of objects... i will still check for floor positions for routing.. but the final check i think im going to use LOS.
i was using a simple bool to report what the LOS check comes out as but what im thinking now is..
using the code below... if the object is in LOS within the distance of 6 then its "seen"... which adds to the seen count.
if it reaches within 3, the seen count is reset, because it is successfully reached... likewise, if its too far away, it also is reset because the check isnt valid.
then if its close enough and sees it.. then it succeeds and "performs what needs performing" (ie, turn the lights off, sabotage the apparatus, etc, pick up the item, etc)
int seenCheckNum = 0;
private int objectInLOSCheck(EnemyAI ent, GameObject gameObj) //0 = fail, 1 = seen, 2 = succeed
{
if (ent.CheckLineOfSightForPosition(gameObj.transform.position, 60f, 3))
{
seenCheckNum = 0;
return 2;
}
if (ent.CheckLineOfSightForPosition(gameObj.transform.position, 60f, 6))
{
seenCheckNum++;
return 1;
}
seenCheckNum = 0;
return 0;
}
i just hope 3 is enough for all objects, so i can use this method for all reasons to need this, from the looks of it, 3 is around arms length reach.. so it should be fine.
You could check if the object is reachable by getting nearest navmesh point, add the height offset and if the distance between the object and the offset point is greater than 3 units then mark the oject as unreachable
was already doing this... xD its not so simple.
so..
MaskedAIRevamp set destination as the position of an object.. without checking the path.. = masked just juddered around when path couldent be reached
so when i started updating the code, i changed to checking the path.. and also calculating the floor positon (the navmeshpoint).. which ive used to this day as it works for EVERYTHING 99% of the time, except the apparatus, and the breaker. box.... and items that are on ledges too high for AI to walk on.
so this month ive been working on the "distance off the floor" thing.. and it was working..
but LOS may work better..it seems to so far.
thanks, im hopeful your LOS suggestion solves many of my issues. ๐
whelp.. apparantly its not so simple.. i love walls ๐
try to get the nearest navmesh point to the breaker position with an offset height and slight offset to the direction the breaker is facing.
i already do. for some reason in that location, it grabs the other side of the wall ๐
actually, i fib, i dont grab a location "in front of the breaker".
ok.. so.. apparatus works with LOS.
going back to distances and stuff for the breaker..
breaker always spawns at the same height relative to the player (afaik)
i normally set the distance as 3.5 or less, to trigger turning off the breaker.
ive seen the masked standing at the breaker box..
turned off the breaker box with 0 distance
ive seen the distance be 3.56 (failed to turn off the breaker box)
and now an almost identically placed breaker box... is 6.4 distance..
I cant check the breaker with LOS, because apparantly the "breaker box" is not the visible box.
tried detecting the light above.. and the door of the breaker.. no joy.
now distance works... >.>
i kind of feel like when i manually move the box.. it works.. when i use default location its spawned in during generation.. it doesnt.
ok may have got LOS working now... i guess it was just looking to see a position inside the box.. lmao
this seems to be working now in this position.. will be in v0.2.6
nice, when can we expect the release?
im testing now... if all the changes seem to keep working, ill be uploading later
Oh nice!
may have to delay uploading...
breakerbox pathing seems fixed for weird locations.
sabotaging the apparatus seems fixed (I had to do some extra changes for liminal pools because of the apparatus being in the floor..)
but im now seeing an issue with the main entrance position being miles above the floor ๐
I dont know if its a generation issue, or due to how the entrance of liminal pools is, but i figure its best i fix it, or masked will yet again be standing around somewhere... lol (currently on the apparatus in liminal pools..)
Could it have to do with that weird fire exit that is elevated for liminal pools?
both that fire exit, and the main entrance have the same issue.
liminal pools will fix the main entrance, not sure about the fire exit.. but if the fire exit isnt being changed, i can hopefully find out which fire exit that is.. so i can disable it when liminal pools is the interior.
v0.2.6 uploaded
- temporarily fixed an issue with the main entrance when using the "LiminalPools" interior (v1.0.12) as this causes masked to bug out due to a missing NavMeshLink, once LiminalPools is updated, this issue should be resolved. Please note, this fix ignores the main entrance in this scenario.
- improved how masked "react" to arriving at their destination for some focus's (breakerbox/apparatus) to hopefully prevent them from bugging out due to bad configuration.
- lowered the proximity requirement for masked activities (breaker/apparatus) to potentially stop them bugging out when they cant reach close enough. (this may need revisiting as im not sure it has fixed it and is most likely the reason they bug out now)
Watch Terminal Mimic Shenanigans and millions of other Lethal Company videos on Medal, the largest Game Clip Platform.
this doesn't seem right
we use about 118 mods, a couple of which drastically change the ship, so I'm guessing it's one of them causing it
that isnt.
ive seen masked use the terminal while standing inches away from it... i assume because they think the terminal is in the place they are standing... but i dont know why that occurs.. that was in vanilla
with wider ship.. i guess it really bugs out the location somehow.
it happens in vanilla with where i used to place the terminal.
the simple fact is.. the issue is the place the terminal IS.. is reporting wrongly..
I'm not sure if it's from wider ship or MelanieMelicious' 2 story ship mod
so its either a vanilla issue.. OR wider ship/2 story ship issue. in your case.. the "wrong location" is EXTREME so is probably the vanilla issue amplified by widership/2story ship.
well, based off what i read.. its probably widership... but i dont know either, ill have to test.
but with wider ship and 2 story ship, my friend gets reported as DEAD while in the ship..
could also be ProblematicPilotry maybe?
so i assume its a similar thing.
might be, i dont use that.
we've noticed that since installing this mod, sometimes masked will enter the ship, then walk off over to where the ship usually is
but.. the simple fact is.. the place of the terminal, is what controls where the masked is... so.. if they are standing in the wrong place using the terminal.. then.. thats relating to some mod that is setting the place of the terminal wrong, or a vanilla issue...
either way.. i did put a warning in the readme since like 3 versions ago.. if a masked is "on the terminal", you will get softlocked in the terminal.. xD
(which i saw happen in your video)
the masked also wasn't responding to damage, and my friend (client) couldn't see it
invisible masked is a vanilla bug afaik.
as for not responding to damage, if it was just my mod at fault.. then they should still die. i dont make them unkillable.
im guessing you thought your whacking the mask, but there is an invisble wall in the way...
and.. from the sounds of this...#1240985198485573743 message
the problem may actually just be that the masked are going to the original ship location.. because that mod isnt changing the location of everything correctly for everythign that uses those items. i d k how it works.
hmmm, interesting
i will test with all 3.. see which causes the error, and add it to the non-compatible list.
with my logs now, i can see where masked think they should be, compared to where the thing they want actually is.. so should be fairly quick
๐คฃ
2story ship.. ran through the terminal, came back, faced the wrong way.. DOH - this is upstairs in the ship... so at least they are AT the terminal... so 2 story is probably fine.
interesting
our terminal is in the wider ship part of the bottom floor, so it might be that
the masked is levitating though (its not walking on the floor)
dw testing that next
we also have masked come in and stand inside our cabinet sometimes
.> the levitation is real
also.. it bugged out.. shouldent still be standing there.. so maybe something needs looking at for 2 story ship.. but this maybe an LI issue. i d k yet..
I just hope that the main issue isn't ProblematicPilotry, cos the author of that mod is MIA
navmesh maybe?
its not standing on the floor, but maybe related to the navmesh generating wrongly or something... but may also be due to the masked instantly leaving the terminal.. i dont have the translator unlocked.. so he jumped on + off, so might be my problem to fix.
actually... tell a fib... i did have the translator unlocked.. so.. that 100% bugged out
wider ship also bugging out...
interesting
hmmm... maybe colliders?
when they bug out usually... in the position i used to put the terminal.. i think it was because i placed the terminal partially in the wall.. (by mistake)
with the 2 story test.. the termainl was in the middle of the upstairs.. so it may just be because the masked thinks its not in the bounds of the ship.
it may also be because im using imperiums "quick land".. might do a re-test without it
wait.. all my tests maybe borked
i forgot im on march >.> and march + ship = bug central
this one was on offense
thats fair, im just saying, my testing maybe for nothing because i was landed on march.. ive been told masked walk through the ship doors on march...
try testing on Offense
and as soon as the terminal was in the vanilla default location... the masked all decided (i spawned 30 of them) that they have 0 interest to choose to use it.. wtf xD
oh, we also get an odd occurrence on Adamance where they walk into the ship, then walk out and stand over on the right side of the ship outside and ignore us for the rest of the time we're there
thats happened before.. but i d k why. only seen it once though.
and if one of them does it they all do it for the rest of that day
idk if I have any clips of it saved
so.. on offense.. with signal translator installed... the masked went to go to the terminal, then decided it wasnt reachable.. so walked off to the main entrance.
also, in the clip the ship was landed somewhere in that purple circle
well right now im questioning if masked walking onto the terminal works period xD so disabling all 3 mods and just testing the vanilla ship, because everythign was bugging out
lol
ok.. vanilla ship is working.. (on experimentation), ill switch to offense and test the same then turn the mods back on lol
new bug.. oh joy.. take off with a masked attached to the terminal.. its bugged out ๐ something for me to fix.. lol
so... offense seems to be bugged.
i d k what the issue is.. because im getting different results..
but on experimentation.. things work fine.
i re-load the same save, go to offense.. move nothing.. the masked walk to the terminal.. and insta jump off (when they shouldent)
the location of the terminal.. is supposedly.. (7.19, 1.74, -15.27)
im standing at 8, 0, -15.. terminal is here... so thats correct
i will test the 3 mods on experimentation. as experimentation works.. but, ive never seen issues like this on offense before so im wondering if my recent changes have led to a bug ๐
ok, after a bit of a detour from modding due to work..
testing with cunning, deceiving.. (i think insane is a bit bust ๐ฆ but unrelated to the issues being reported)
deciving with wider ship mod on experimentation.. in default position = works fine
cunning with wider ship mod on expermentation.. in a position in the wider ship = stands in a weird place using an invisible terminal = not working fine.
also being weird in 2 story ship... but at least on 2 story ship.. they are standing at the keyboard (just facing the wrong way), with wider ship, they stand NEARBY..but not at the keyboard.
also in 2 story ship, the terminal is bugged.. (they dont seem to be actually doing anything)
problematic pilotry causes a similar issue.
so seems all 3 mods bug something out.. :S
problematic pilotry causes issues for most outside enemies when they get to the ship, they often go under it or through it and other weird stuff
2-story ship kinda mends the issue somewhat since it seems to generate its like, own navmesh or whatever for the new parts to the ship which works better with the AI
So i'm not surprised it would cause issues for masked
yeah, but with 2 story ship, the masked levitate.. and they arent actually using the terminal, so something is messed there. xD
i think as long as the terminal is within the normal ship areas, the masked in my mod should be fine..
I see
but not with problematic pilotry.
im adding all 3 to the list of "not 100% compatible", with the proviso that for wider ship, and 2story ship will be fine, as long as the terminal stays within the normal vanilla ship area.
as for "insane".. i think i need to have a look at him because he is being weird as f.
i do have another issue to report tho, on v64 with using this mod in 0.2.5 yesterday
The masked are sometimes camping entrances again.
First time i noticed was on pool rooms, then they bugged out on mental hospital, and then again on the Storehouse.
0192c031-2c67-3b12-c36d-0ccbdabaa01a
I am just getting the clips now
Pool Rooms on Vow
This mimic iirc was spawned by me dying and turning in the Zombies mod, if thats of any help
This one is weird but might not be this mods fault. One is me, again from zombies, the other is a naturally spawning mimic. They both bug out at this random spot in the mental hospital, there is no fire exit behind it or anything like that
However what i noticed later is that a slime did the same thing...so it might not have anything to do with your mod at all
them standing in a random place... is usually because they cant go to where they want.
so it maybe that the slime also couldent reach where it wanted.
i guess you can say the "bugged out" spot is where things go that have no destination?
entrance and fire exit wasnt blocked in anyway, so its odd they would both do that
But i am willing to chalk it up to the mental hospital just being old and outdated
The pool rooms one is more concerning
like.. imagine i told you.. to go to the planet 389438743074837473437480937240978347387423890748932748932748923778463256723756... which didnt exist.... so then you just went on autopilot back home.. its kinda like that.
This also happened on titan iirc in the Storehouse.
yeah im just saying.. the main entrance is the "default location"
I also have noticed a pattern
See, on the storehouse, i remember there was a masked that spawned very early, it immediately ran outside and tried to get back to ship and i killed it
This second one is from me dying and being converted again
So from what i am gathering, this issue seems to only happen with mimics spawned via Zombies
naturally spawning mimics path through exits just fine
without knowing whats causing them to go "ah fuck it, ill go to this random place" i cant try to resolve it xD, and without knowing how this random location is set.. i cant change that either, id love to just change it to far away from the main entrance, lmao
well it may also be that..
Yes, the mental hospital isnt worth looking into
But the Pool Rooms and Storehouse shouldnt be doing that tho
but Zombies.. afaik, does nothing AFTER they are spawned
so my mod should be 100% in control... meaning it should use my implementation of exits.
if your dead and watching them like this.. instantly look at the console, and tell me the "focus" and "activity" the report for that masked says.. hard to do.. when multiple masked are spawned, but if there is only one.. then it can tell me why this is occuring.
i did look briefly, iirc it was saying about the exit
It didnt say they was looking for apparatus or chasing a player or anything like that
but i dont remember exactly what it was saying
ok, so thats an issue with the exits.. hmm
iirc they are "deceiving" ai as well
it maybe i just need to re-do how i do exits.. i thought it was working fine (i know it has issues, but thats more an audio issue where the main entrance plays the exit sound no matter what exit is used, lmao).. but maybe there is other issues, or maybe it is an issue with zombies.. i d k, ill have a look at the zombies code, but afaik, zombies does nothing after spawning
i would imagine it wouldnt do anything yeah, its just an odd coincidence it only happens with zombie spawned mimics
Only thing it does after spawning is in the death handling function
all i can guess, is that something is being set properly when they spawn naturally, but when they spawn via zombies some goal or position or something is missing in LI which messes them up trying to go outside
zeta, can i get your full mod list?
nah, everything is setup with my mod.. so that shouldent be an issue.. im just wondering if something is modifying other things and causing the issue
i included a code there, i can get the list of that version of the pack too in 1 sec
missed it, thanks
if thats easier than downloading it
i have sorted my pack into categories mostly
The only mods that mess with mimics is these 2, LI and Zombies to my knowledge
your using LEC.
problematic pilotry was being discussed above.. causes problems in the ship.. with navmesh, it might also be causing navmesh issues on the interior.. i d k
do the LethalInternship interns have an issue with leaving the interior or get bugged out? i took some ideas from their code for leaving/entering in order to get mine working.
they can be a lil buggy yeah
but honestly, we havent tested them enough to see if they get stuck at entrances
@gray rover did the interns get stuck at entrances at all when we tested them?
the interns basically do a check.. if they are near an entrance, and a player suddenly is "gone", they then beleive the player went through the entrance, so use it too. (if i remember correctly)
so i applied similar to my masked..i skipped the check on the player and went "you want to use this entrance.. so use it"
so i really think them standing at the main entrance.. is them just bugging out.. but the slime makes me think its a non-my mod issue.
well, again its just for the mental hospital, thats the only time i have seen them hug a random wall
i use StarlancerEnemyEscape, but that hasnt had any issues really
and it doesnt have a config entry for masked, i assume the mod doesnt touch masked since they can do it fine in vanilla
yeah, but, thats 100% defo the bugging out.
this may actually be an issue for me to deal with, but i dont understand why its occuring.
#1240985198485573743 message
i mean to say masked can do it in vanilla is funny xD sometimes vanilla works great... sometimes they all go huddle in a corner and do eff all.. which is actually the "bugging out" which im getting now i think.
i mean
now that i think about it
i have seen some vanilla clips of masked camping doors
its mostly something attributed to slimes though.
slimes do it because they were not told to do otherwise.
masked do it because they bug out i think, but its not restricted to the door, the door is just often "the place".
the bracken also.. sometimes.. camps the fire exit..or at least used to.. it was almost a meme in my friends group, that you go in the fire exit.. facing the door.. only to get neck snapped before you load.
I havemt seen that per say, but i am not surprised either
some days it would be every time you land xD some days never.
either way, i should probably re-do the exits and make it so "if" they see an exit.. they use it, and then lose interest in it for a long period of time (to prevent them going in and out constantly)
but.. "long period" is problematic...
probably in to out should have a small cooldown, as there is little to do outside.. and out to in should have a longer cooldown.
((Component)this).transform.localPosition = ((Component)terminal).transform.localPosition + ((Component)terminal).transform.forward * new Vector3(7f, 0.25f, -14.8f);
((Component)this).transform.LookAt(((Component)terminal).transform);
probably something like this should work taking into account position and rotation of the terminal
i'm not 100% sure where transform.forward points for the terminal so you might have change that a bit
but it will always be oriented based on the rotation of the terminal
oh sry it's not * but .Scale.. let me fix
yeah i was figuring its transform.forward after you said about it being hardcoded, i havent really looked into changing this as it has almost always worked wherever i put the terminal (before wider ship/2 story ofc), with rare bug out occaisions led to weird positions.
ill see if what i just changed resolves the issue, if it doesnt ill give what your code is a go. thanks
((Component)this).transform.localPosition = ((Component)terminal).transform.localPosition + Vector3.Scale(((Component)terminal).transform.forward,new Vector3(7f, 0.25f, -14.8f));
((Component)this).transform.LookAt(((Component)terminal).transform);
still dont know why it levitates though.. but we shall see if the changes stop it levitating.
ill have to look at it later xD suddenly busy with work x.x thanks for the assistance though!
i'm not even too sure using localposition for the terminal is the right thing. as i know Furniture has a weird system for positioning
yeah as i said, old code i inherited
yeah, that's an issue with my navmeshing; I noticed a similar thing when testing if dogs could path to the third floor when I was making it. I just made the nav for the floor a little too high
unless they're uh, like, getting even higher when using the terminal on the second floor vs when they're doing nothing on the second floor
Never use local stuff unless if you want to know the global position! That's big no-no
I still remember when I used local variables to calculate rotation of a turret for my project. I was stuck 2 months trying to figure it out and I ended up fully using global values
it's the opposite. never use the global one in a multiplayer situation unless you're 100% sure it's a fixed one. because local accounts for client ping while global doesnt
I meant local transforms like rotation and position
for using local transforms you need to be sure that both of your transfoms have the same parent
or account for the drift
but you might be right. i doubt the masked get's parented to the ship like the player does ๐ค
((Component)this).transform.position = ((Component)terminal).transform.position + Vector3.Scale(((Component)terminal).transform.forward,new Vector3(7f, 0.25f, -14.8f));
((Component)this).transform.LookAt(((Component)terminal).transform);
mixing local transforms with global ones is one big nono and is just calling for trouble
there aren't two different transforms but i get what you mean
so, after about 8 hours of being unable to test and fiddle due to irl and stuff x.x.. i finally got a chance to loook at this.. and while the suggestions were correct (and i should have known this all already.. this is the actual fix (as far as i can tell from preliminary testing on a vanilla ship.. with multiple terminal posititions..
the old code was (now simplified to make it easy to read)
__instance.SetDestinationToPosition(terminal.transform.position, true);
//waited until it got close enough.. then... looked at the position
this.transform.LookAt(new Vector3(terminal.transform.position.x, this.transform.position.y, terminal.transform.position.z));
//once it looked at the position.. it set the position to this.
this.transform.localPosition = new Vector3(terminal.transform.localPosition.x + 7f, terminal.transform.localPosition.y + 0.25f, terminal.transform.localPosition.z + -14.8f);
the new code (which seems to work in all scenarios ive tested so far...).. i will still look at putting the "look" after the local positining, but its 8am.. and i havent slept yet so it can wait til tomorrow lmao.
__instance.SetDestinationToPosition(terminal.transform.position - (terminal.transform.right * 0.8f), true);
//waited until it got close enough.. then... looked at the position
this.transform.LookAt(terminal.transform);
//once it looked at the position.. it set the position to this.
this.transform.localPosition = terminal.transform.position - (terminal.transform.right * 0.8f);
might make it look at terminal.transform.right as im positioning the masked essentially to the left.. but so far this is working, keyboard and fingers line up 99% right..
on 2 story ship it still levitates.. but otherwise, seems to work..
thanks Matty (made it bold for easy reading, but didnt want to ping :D) for the suggested code changes, i probably should have looked at it sooner, but, I never saw it bug out til I used 2 story ship, and ngl, I assumed the old code worked, until it is proven to be broken xD happens too much to me with this code x.x
also, i realise.. me using "-right" is weird as F..but.. forward puts the masked to the left of the terminal.. and right puts them behind.. so.. "left" is seemingly correct... now i see why ship object positioning maybe so weird xD
video below for wider ship..
so in the next patch, both 2story ship and wider ship will be fine regarding the terminal (aside from the levitation :P) ill update the mod tomorrow/sunday.
sadly @unborn trench, with problematic pilotry.. the whole ship seems to not exist for the masked, they dont path up on to it,.. so i think if the modder is MIA, then unless someone updates it to have a proper fixed navmesh or whatever is required to be changed, it wont work for any enemy that tries to go into it, as entities dont seem to recognise the new ship position and cant path up onto it.
oh one last thought before i sleep... if 2 story ship regens all the navmesh for the ship, then maybe problematic pilotry works when 2 story ship is installed.. i was testing it fine yesterday, but when i tested just now without 2 story ship, everything passed through the ship like it didnt exist.. but i only just realised yesterday i didnt test problematic pilotry alone.. lol
will check properly tomorrow.
Yeag, things path into the ship perfectly with PP paired with 2 story
Perhaps someone could make a mod that simply regens all the ship navmesh, as a companion mod for the unfortunately broken, dormant and closed source Problematic Pilotry mod
This is why game mods should always be open source imho
tbh, i was already wondering why there wasnt a "navmeshinship" mod like there is one for the company, would make testing entity features without landing easy peasy xD
Whelp, yesterday we had it happen again, and some other similar issues
0192c51c-f740-3d04-7208-6012d792132f
I'll get the clips once they are compressed
First happened on atlas abyss, the frames dropped alot once they started spawning which we hadnt really seen before, normally only happens when they bug out hard
I also opened the log as you said
When we got back the ship, we got a better idea what was going on with them
(friend's spectator pov, who has the models turned off)
And then it happened again on SecretLabs
I have also done this in the clips
tho its not really practical with something else coming in and shifting the log frequently, and sometimes the masked spawn much earlier but then cause issues later
yeah i know, it doesnt always happen as they spawn, but you can generally scroll back in the logs a bit, my logs are not spammed to shit, so i just scroll back, but having spammy as hell logs makes it hard to look back i know.
will look at the clips in a bit, thanks for sending them!
All good!
i realised, you can tell how good i am at the game, with how many clips of it bugging out is from me, or even JUST me, specating

xD happens, in my group, im usually one of the ones who is like "ill go kill that".. and "ill deal with that" and "ill go get that", while others are afraid to go do something, leading to me dying more.. because you do more, you die more, i would neither call myself a great player, or a bad player.. im just the player who tries.. .... and often dies trying xD maybe same for you ๐
so can confirm, problematic pilotry (while 2 story ship is installed) works fine.
away from player is laggy.. i was replacing it.. but got interupted by bugs xD
if thats "away from player" too, then geez, quicker i replace that the better ๐
that is true
so.. i have good news... i beleive i know why they stand at the main entrance..
in the case you cited, they were doing "awayfromplayer".. something which i sought to replace.. i only just realised that in "awayfromplayer" they route to the main entrance.. and then... "nothing"... just repeated spam.. of "go to the main entrance"... to which.. in past versions of my mod.. when they reached the main entrance. they went through it.. but currently.. that wont happen as its a very specific thing which leads to a masked going through the entrances..
SO.. ofc.. i do need to re-work how im doing entrances.. but for now.. all the references leading to a masked walking to the main entrance will be disabled, and ill instead tell the masked to do that activity instead... as for awayfromplayer.. it lags to hell.. so im just going to disable it until ive replaced it with a better working function (which, ive mostly re-written.. but.. annoyingly.. its not working as i wish it to.. in more way than one.. so ill have to re-look at that later this week.)
so if you see the masked standing at the main entrance after v0.2.7 is released.. do let me know.. but if they do at that point, it will not be my code, as frankly.. i forgot these references existed.. lmao.
i even wrote once upon a time as a comment as i knew it was going to be bad...
__instance.SetDestinationToPosition(maskedEnemy.mainEntrancePosition, false); //i really wish there was less sections of code doing this sort of thing :D
i see i see, nice!
im glad you found the issue 
woohoo
v0.2.7 - Hotfix uploaded
- fixed the issue with masked routing to and getting stuck at the main entrance
- 99% fixed masked positioning when using the terminal (may see some levitation with 2story ship and may see some sinking in the vanilla ship, this is down to the navmesh, not my mod), but at least masked should be at the terminal now. - please do send pictures of bad positions/levitating/sinking/etc though so I can maybe look into making a fix.
I didnt disable "AwayFromPlayer" (aka hiding) for stealthy... because it seems to not lag now.. please do report if it still lags (i was relatively fine with 6 masked+, it only ground to a halt with 10+)
AwayFromPlayer doesnt do as intended though.. so i will be working on replacing that.. ๐
me too, looking at code, bashing my head on a brickwall.. and the brick wall still existing.. is not my favourite thing to do.. but it would help if i remembered previously looking at the code and going "i wish this didnt happen so much".. because i was right in the first place.. just yeah.. didnt see those lines for months.. lmao ๐
can they make other sounds at the terminal besides typing codes?
what sounds? ๐ if they are typing codes, they type codes, is there other sounds, or you mean random noises?
I meant the sound of incorrectly entering commands, typing, buying items...
havent programmed it in, never thought about it tbh, the incorrect commands would have to kind of be random.
typing does have an audio i thought.
buying items does need audio adding, as currently it just calls in the drop ship and walks away.
so yeah, good points, im often too busy thinking about fixing bugs to think about all the little details xD
so, had a bit a thought just now..
currently insane pulls the apparatus, then goes to the ship, and if you have a signal translator.. insane will send some messages.. and then pull the lever to leave with the ship.
the messages are to serve as a warning of the impending situation.. but if a player doesnt own the signal translator.. there is no warning.
currently.. i have the masked jumping straight off the terminal if there is no signal translator.. but i was just thinking as ive been fiddling with terminal audio.. there is a "terminal alarm", not sure if this can be heard on the interior.. but, what if during the time that "signal translator warnings" are sent.. i activate this alarm.. like the terminal has detected unauthorised attempts to pilot the ship. so if you dont have a signal translator.. you get the alarm, if you do have a signal translator.. you get both?
do let me know thoughts on that.
players get a message about pulling out the apparatus in any case (scary radiation)
on the subject of "terminal audio"... got this working. thanks again for the ideas ๐ havent got wrong keys working.. but ill do that sometime in the future.
I also need to improve how masked walk up tothe terminal.. they snap now x.x bit poo.
that is true, but that doesnt give "urgency" in some cases. "oh my friend pulled the apparatus.. time to leave" plod plod plod compared to "oh fuck a masked might pull the lever in 30s.. RUN!"
Sounds like "teamplay skill issue + no walkie" to me
How about a popup notification saying "Unauthorized personel detected inside the ship"? Or even better the radiation style popup with the same message.
xD
not everyone is super sweaty though, while im a sadistic ass.. i try not to put off people who are super casual xD
i did think of that, but i also figured it should be "themed" around the terminal, as without a signal translator.. it skips straight to pulling the lever.
i guess my question is more "should there be a warning always?", rather than "only if there is a signal translator".
It could be a ship upgrade
there already is one, its called signal translator ;o
or you mean an upgrade that warns of "masked in the ship" period? ๐ if so, thats for lategameupgrades imho xD
It's definitely interesting question to think about. I like the idea of having an option to purchase a failsafe in case masked get inside the ship. Holestly I think there coud be a config option where you can choose if you want it by default, with translator or be it's own upgrade.
yeah maybe, but thats more of a "lategameupgrades" thing to add.. they could add such a warning for any masked who enters the ship, not really something for my mod imho as im not working on upgrades. ๐
maybe a collab for when my mod is installed? but then it would still be on their end imho.
v0.2.8 uplaoded
- prevented softlocks relating to masked using the terminal (if you find yourself unable to use the terminal when no masked is there or similar, do let me know! shouldent happen though as i have tested all live game scenarios i think..)
- added audio cues for when masked is typing on the terminal keyboard, as well as an audio cue for cunning "purchasing items"
- improved walking to the terminal so it looks a bit less "snappy" when the masked turns.
- (for debugging only) modified some start variables which were previously wrong. (didnt affect anything luckily but nice to get them correct :))
if anyone thinks the keyboard audio or anything else can be improved on, do let me know.. i feel like something is off in the speed the keys are being hit, and im aware that the masked walking up to the terminal is a tiny bit janky too xD
Makes sense, some kind of queue is good
Interesting cuz i never thought of that since i play with meltdown. So you'll rush back to the ship regardless due to the nature of it
also from my last session, i died plenty and became a masked plenty, and didnt camp any entrances

good to hear... ๐
the next big bug is going to be masked standing at the terminal.. doing nothing.. (hopefully not, but it wouldent shock me with the changes ive made... lmao)
A couple of other little suggestions:
-It might be nice to have an option so naturally spawning masked (from vents) spawn with equipment such as a walkie or flashlight etc. Walkies especially, since the odds on them stumbling across one in the facility can make it a very niche thing to happen, especially when you got stuff like hoarding bugs taking items and maneaters/shrimps that eat stuff and all that. Would also work nicely for when you implement the more aggressive AI that uses weapons.
-Similarly, a Symbiosis-like thing where masked have a chance to attempt to "use" whatever item they might be holding would be good too. I was a lil disappointed when a mimic of me took a weezer guitar out of our ship but didnt play it whilst harassing my friends. Just the chaos of masked attempting to "use" whatever they are holding has potential for alot of chaos and funny stuff, like with the LethalThings rocket launcher, emergency dice etc.
Symbiosis implemented it with Hoarding bugs fairly easily from what i understand
https://thunderstore.io/c/lethal-company/p/NiceHairs/Symbiosis/
And then, to add on to all of that, if you have the functionality for masked to randomly use items, then it wouldnt hurt to have a config to list item ids for masked to prioritise picking up and using should it enter their vision (either from the ship or in the facility, just like with walkies)
I would certainly be throwing most weapons, dice, airhorns and other chaotic things on there

using items is fair.. if they are holding an item, randomly using it would be cool.
as for "giving them items", i trialed that.. tested it, have a working system for "fake items", which are the same as the normal items, but they wont ever drop them.
I only ditched working on it because of a bug spamming an error in the logs, which i then fixed by editing the animation, so that doesnt occur anymore.
so at some point ill work on that again.. but.. im not sure how i want it to work exactly.. or what items i want them to hold... etc.. and how rare they have an item, and what they do with said item around other players.
the biggest dillemma for me is.. with mods like "reserved item slots".. they dont hold the items in the normal positions.. so giving them an item they essentially wear potentially leads to them looking "not like a player".
it maybe that i need to chat with them, about seeing if i can tap into what they are doing... for placing items on players (but instead doing it on masked), also, masked spawn with those same items attached to their bodies when they mimic a player.. so it maybe just better that i make use of them (if they exist, and i can, as the flashlight is useable.. i just dont know if it is classified as a flashlight, walkie, etc, or an object that looks like one but isnt one.. :D)
Yeah
I think them spawning with other items is a can of worms, i just purely suggest about them spawning with walkies for the most part, and maybe flashlights
Spawning with other gear could be cool but could go silly with balancing n stuff, and yeah how convincing they are
i mean.. my idea was they could have scrap.. that one minute they have nothing.. and then when a player isnt looking,... suddenly they have "foound scrap".. and it would be even funnier if it was the toilet rolls.. because you cant see anything behind them so seeing toilet rolls walking towards you.. might leave you clueless that its a masked lmao
heh, i see yeah
but as soon as they enter "killing mode" they would have to hide the item, haha.
but yeah, as we both say, its a big can of worms, i need to have a think about what im doing there.. but picked up items being used, i can certainly look at.
and if you use "remnants", the chance of them finding a walkie on the interior dramatically increases.
im curious, do you know if this mod compatible with abandoned company assets? its spawns equipment like flashlights and walkies around the facility but they will be decayed versions that can have "malfunctions" im not sure what they are because i have yet to try it
if they are just grabbable items.. they are fine.
if they are grabbable items defined as walkie talkies.. that dont function like walkie talkies, then maybe not.
other items should be fine for now though.
remnants and abandoned company assets sound similar, but remnants items are not broken/malfunctioning.
wait IDEA
masked should try to use noise-making items to attract mobs that can hear noises
so they just are like: "get 'em boys airhorn"
hater for NO reason
omni hater. The hate spans across state lines.
how I sleep being a hater
https://tenor.com/view/sleeping-hamster-hamsters-cartoon-cartoon-hamster-gif-26952531
that would be more along the lines of what this is doing so may rather to mention it there: https://discord.com/channels/1168655651455639582/1293353988913233991
as from my pov it would be for example.. dogs listening to the horn, whether the horn is playing or not from a player or masked is immaterial, but also immaterial is.. if a dog reacts to a horn, it will kill the masked holding it.
I feel like a masked with the "insane" personality would probably be willing to risk death by dog if it causes some chaos in the ship
that may be the case, but i never said an insane masked shouldent be honking his horn repeatedly.. I just said that in order for a dog to attack a masked, thats more modifying how a dog interacts with a masked, which is currently out of scope of my mod until I actually go beyond just modifying the masked.
I do hope to get masked to a stable state, and work on other things, but every time i reach stable.. or fix something.. new problems arise soaking up my time.
there is also other mods delving into the "modifying vanilla enemy" realm.. so, even less rush from my pov, to work on other enemies, especially ones that may conflict with other mods which could quite easily be used together with my mod until they actually conflict.
Out of curiosity, how would your mod behave with this?
Do you think the masked would trigger those functions? Do they actually hit the switches?
A masked hitting a switch that causes turrets to go beserk sounds very funny
if the switches are the same as the vanilla, then yes
I'll try it out sometime
Does the masked like, literally just flip random switches? or does it do them all in order?
I now understand that the way this mod works is different combinations of switches on the breaker box are what triggers different effects:
i am just curious if the masked could ever actually trigger them
not currently as i set the masked to turn off ALL switches or turn ALL of them on.
if its the normal 5 switches.. then i could technically program all of those configurations.. and let the masked "choose" which to do.
well the way i currently do it is... if all are off, they are done. but i guess if the power is on.. i could just make them hit random switches, so not all the switches are off.
does BBB start with all switches on? switch power looks like it doesnt?
i think the combinations are randomized
Yes they start on
And the combos are randomized each landing
ah, so, unless i could read those combos, from BBB, i couldent leave it in a result of "lights off"? or check that the lights are on.
I check for all switches turned on = "turn them off", i then re-check if they are turned on again.. to enable turn them off again.
i could probably change that.. but the problem is, if a random combination, leads to the power being ON.. then it destroys the point of the masked turning the power off.
It doesn't really matter in the grand scheme of things
Compat would be nice if they could flip random switches if that mod is detected, otherwise its fine
I'll have a think because for me, the masked is there to make the lights go off.. but alternatively them putting all turrets on berserk mode is a win for me ๐ I just don't want the lights left on.
is it known that masked just, sit at the exits when going outside
or is this a bug with starlancer ai fix
Log please and confirm the version you are using, also if you can tell me what moon and interior you were on that would be helpful.
This should be fixed, but it maybe a rare edge case now, either way, can't fix it without information.
Also, it won't be a bug with starlancer ai fix afaik. But a full mod list will help me determine what is causing it now. x.x
0.2.8, it was on march (no log since i restared the game unfortunately)
was a normal facility
here's the code but i dont think it'll be useful considering the amount of mods (sorry)
01930bbe-d9e0-f884-7358-aa4a0dad1216
No worries
Tbh I think what's happening now is.. I disabled the vanilla exiting code because of a bug.. but the vanilla code telling the masked to go out of an exit, is still active.. so I think I just need to rework the code so "if at an exit, use it" and then my code for going to the exit, should just path to there, not actually trigger the activation.
So yeah, masked pathing there because my mod is bugging out and vanilla taking over.. but then can't actually do anything.. lmao
Or maybe I should just reenable the vanilla code and do my own code for fire exits only.. hmm
uploaded v0.2.9
- changed Main Entrance/Fire Exit usage by the LI masked to be like vanilla masked usage (passive, used when the masked are at the door itself) so even if they bug out and stand at the entrance, they should use the entrance and change what they are doing to stop them lingering there too long.
this should be fixed now (in v0.2.9).. or well, they may still bug out and go there.. but at least they should go through the door and fix themselves
Ill see how it goes tomorrow, got my group playing then and will let you know
dw my group plays tonight, so ill see long before you if its broken xD
It might just be the moon, but the masked were still standing at the door when I landed on Asteroid13 today
Version was 0.2.9, interior was vanilla facility, and here's the log:
They could leave but not go back in. It happened at the fire exits as well
It's most likely the moon because the masked were fine on Black Mesa
yeah thats what im thinking, its like the one moon my group didnt use last night xD
will look at it soon, probably just need to increase the check range or something... I tried to get the masked to look straight forward when they walk near to the door, so they always "see" the door, but it may just be that the position the door registers as being at is wrong, or something x.x
rather fond of the masked camping the doors because it kills my teammates and i laugh at them
this could be us laughing at my teammates

when i get a new version of "awayfromplayer" done, it will do the camping, but not at the door xD at the door is bad because you have 0 escape.

I dont have a log of the session but i caught some of it in the clip
i believe it was trying to leave, but its cuz starlancers' warehouse has the exit be the button just to the side
rather than the door itself
Also the camping caused a bug to happen that i have never seen before
Fella got grabbed by 2 masked at once, which then created 2 masked of him at once

i wonder if, due to zombies, they would both drop bodies
Does this work with the cosmetics from MoreCompany?
Should do yeah
i think its a ModelReplacementAPI thing, the masked support
Unsure what mod allows for normal cosmetics to work
the thumper leaves fine. and i presume this would operate off of the teleportation point of the door instead of the actual trigger of the door itself
can't believe Akiyama has undergone mitosis
thats not an issue because i just use "door location" to enact the teleport. but i will look at it, removed the warehouse due to turrets shooting through walls so i havent tested there either
tbh, assuming starlancer enemy escape doesnt just use the vanilla method, maybe i should take some tips from there if i cant get this working xD
true, so yeah more a masked issue
Tho Starlancer made both the escape mod + warehouse so i wouldnt be surprised if he extra made sure it would work
erm.. so looking at where the masked is looking, they NEVER look at the door.
They crack me up
Shenon has made both the touhou models and yakuza models mods now
so it seems the door position.. ISNT the door...
same with the fire exit... hmm
ok,.. cant teleport using imperium.. to the main entrance.. and one fire exit teleport throws me off the map, might have to ask wesley about it.
masked walk to the door
masked reach the door
masked cant see the door.. so its like the main entrance/fire escape ISNT the door object.
sorry, your right, this is exactly the issue x.x because the door "location" is the panel.
lovely. xD
well, rather than demand moons/interiors to do specific things.. (have the actual door as the game object), im probably going to have to implement work arounds for these moons/interiors x.x
it would be fine if the button.. was the teleport position as well, but its not
Maybe the pivot point of the doors is somewhere else? Idk. I would probably make a check for either The Trigger or ScanNode or if Doors use a script like Grabbable Object I would check for that.
on the warehouse its looking at the right place.. but the "entranceposition" is in front of the door.
im just going to generate an exceptions list.. or maybe somehow auto bypass the validation if masked stand near an exit point for too long.
maybe if it takes too long you can just use the regular masked logic to go outside?
nah, i fixed it now, im technically following how the vanilla masked already work anyway tbh, i just want fire exits and the main entrance all using the same thing.
uploaded 0.3.0
- fixed an issue with moons/interiors that dont use the actual door as the EntranceTeleport game object leading to masked standing at the doors.
well.. can confirm 0.3.0 playing 99% as expected...
masked dont get stuck at the door.. but did have some lingering in the "weird spot in the ship" where they were bugging out before.. might be related to them wanting a shotgun (first time ive actually seen them want a shotgun outside of testing, and i didnt modify the code yet.. lmao) and the mod breaking because of it... so ill have to look at why :S but better in the ship where you can see them before they kill you xD
@patent swift How would you rate your mod so far for normal usage
Trying to convince a friend to try it, tho he is VERY hesitant bc it's [Experimental]/beta
I put experimental because some things completely don't work, but those things that completely dont work are because I haven't updated the code for them yet and 99% of the time, those things dont occur.
Also sometimes there are bugs, but I fix known bugs ASAP.
Me and my friends play with my mod and many other mods 2 times a week with minimal issues.
If you or anyone else is worried that the mod will ruin their games due to bugs.. I honestly suggest loading your modpack with imperium and li added, and then spawning a masked and watching what they do.
Sure it takes time to see if any mod is truly busted or working via your own testing (and there is way too much in this mod to test everything regularly).. but yeah, I only put experimental because I consciously know some things are broken and need fixing as I have not looked at those sections of code yet (mainly the previously mentioned shotguns as of right now, but I'm sure other things are broken too).
But.. the broken stuff doesn't stop me and my group playing and having fun, and aside from the recent bug with masked standing at doors and killing people (now fixed afaik), most bugs go 100% unnoticed as it only stops the masked from what they are doing and doesn't interfere with the rest of the game. (Ie, a masked maybe standing far deep out of sight doing nothing, which afaik, sounds like typical vanilla behaviour sometimes xD)
Bet, tyvm
So when can we fix the mechanism that masked use weapons to attack players? lol
well it can be done anytime, nothing is stopping people contributing on github, ill review the code obviously..
as for when ill personally do it, when i get the time and im not fixing bugs in things ive already made work xD I dont have that much time at the moment.
So, with "Cunning", is it supposed to just sit at the breakerbox indefinitely? The lights are off, it did mess with it, it just kinda remains there
I wonder if it might be because of BetterBreakerBox making it so the breaker box doesn't neccesarily turn off the lights. Cant really tell from the clip or remember, but if the facility wasn't actually dark because the rework of the mod prevents the lights going out, the masked might just sit at the breakerbox indefinitely, since the condition for it to stop (lights going out) isnt met
But i thought i saw this happen prior to adding that mod so i am unsure
thanks, will have a look at it, i think though, it just failed to "reach" the breaker box as it said "walking to breaker box", but ive seen that popup after something has been reached too (love distances), do you have the full log? if not, its ok, i will try to replicate xD
also... is that a different model? it looks wide.. wondering if thats preventing it from reaching the right place?
i dont know how other models work
I do not, tho it was on default facility
The model to my knowledge doesnt affect collision despite being smaller
Its with model replacement api so its clientsided
well ill have a look at it... but as i say, looks like the masked just didnt reach the breaker... :/
can you send me a picture of which room thats in?it looks like one with the shelves, but not 100% sure.
Its the big room with the shelves, sometimes an apparatus, and most notably usually a stone staircase going down
WAIT
I do have a clip
Cuz this dumbass opened a gift that spawned bees with LethalPresents and i ran through there
The masked seen wasnt from his body though or anything, just copied his likeness
Again, i think same as the limimal pools thing that happened before, the issue can be solved by it swapping tasks once a task has lasted for too long without them moving anywhere
i just need to test and see if it happens for me tbh.
the problem is a "settings" issue, i tweak the settings, hopefully this doesnt occur. ๐
its not the same, this is.. interesting.
so.. after the liminal pools thing.. (where distance was checked).. i added in a LOS check.. this fixed the liminal pools issue due to the breaker being above an unwalkeable area.
so now there is a LOS check, as well as a distance check.
I actually tried with BBB... and it failed after turning ON the breaker box (so that maybe a seperate issue)
but i also just had it where the masked walked up to it and didnt seem to know they are right next to it.
i then teleported the masked to the other side of the room.. and then they walked up to it and used it like nothing was wrong, lmao.
"I actually tried with BBB... and it failed after turning ON the breaker box (so that maybe a seperate issue)".. ok this issue is because.. i turn all switches ON if the power is OFF, ill have to look at changing that somehow... perhaps "random switches until the power is off"
without BBB there seems to be an issue with both distance and LOS... so ill have to look at whats going on as one should trigger it.
ok, seems the main issue, is something similar to the terminal.
with the terminal.. "forward" is to the left of the terminal so "right" was in front of the terminal. (crappy diagram below)
.....forward....terminal
...........................right
with the breaker box.. forward is ABOVE the breaker box.. so yeah.. fun... hopefully RIGHT always points to the front/back... so i can use that instead, lmao.
nvm, "-up" seems to be forward for the breaker ๐
ok, i beleive ive fixed this.. + applied the same to the apparatus (and got it working on liminal pools too)
it seems that "forward" isnt always forward and is different for everything, should have known and should have checked before (but i dont think im the only one to not realise this.. xD)
might just check my "doors" code then upload.. as terminal should be already good.. and i cant think of anything else that needs it (items is a completely different ballgame)
So, what's the problem with the masked's aggressive behavior so far? I want to try it, but I'm afraid that catastrophic mistakes will happen.
They don't pick up shotguns. Or shovels, afaik.
yea i had some error spam yesterday about a masked trying to pick up a shotgun
yup, ive not seen that occur til this week xD i thought they took 0 interest in shotguns
The day aggressive masked get fixed is the day when shit gets real
arber
No
barbe
I mean... yes.. thats the day people dont wish to own shotguns when masked become nutcrackers who seem like players til you are near them xD
uploaded v0.3.1 - Hotfix
-fixed issues with routing to the Apparatus
-fixed issues with routing to the BreakerBox
-fixed issues with routing to the MainEntrance and FireExits (reverted part of the changes i made in 0.3.0 that caused the issue)
Do they run through textures? 
if you mean like the walls on experimentation.. then "no", its just those textures dont exist.. the navmesh goes through them, so its a navmesh issue from my POV, any entity goes through that, we can walk through that.. xD
did you mean somewhere else?
They also sprint funny
xD
They seem to be accelerating, but they are going slowly - a traitor
yeah maybe i need to look at why that happens, but i kinda need to know whats occuring when they do that.
its like something is setting their speed SLOW.. when it shouldent
the weird thing is.. they go faster than players.. xD
well.. got something done today which should help me with debugging xD visualisers now actually show correct for every masked spawned and dont break when i despawn them, woo ;o
idea for something masked do
throw objects (any object lmao) at players to annoy them
like imagine you turn around because you hear footsteps and a masked lobs an entire cash register directly at you
Masked also seem to get stuck abit on the main entrance on the SDM interior
i will have logs n clips later
at least after a few seconds they move away now
how stuck? never noticed xD
you'll see in clip when i get it
ok, well i just tested and there was no issue, latest version or old? :S
thats on latest version.
latest
Was on Atlas Abyss (SDM interior), i can proly upload a clip tomorrow n all to show what it was doing
was it to a fire exit? or the main entrance?
would it be possible to have insane masked do the "autopilot is leaving at [time]" thing instead of taking off with no warning with no signal translator?
Great mod, mimics now run with flashlights, I would like to customize this chance in the config, I really want to set a small chance that the mimic will appear with a shotgun, would be an imbo function ๐
In fact, the most unlike place between the masked and the player is actually the different moving speed when running, and the normal player's running speed is actually faster than the masked.So I think it's enough to make the masked run at a speed similar to that of a player holding a flashlight and shovel, and to make him not look up when running.
masked DEFINITELY have a problem with fake running. there've been multiple occasions (frequent occasions, by the way) where i've been following a masked and i can definitely notice that they run AND walk slower than me. i think it's because they have different running/walking speeds when chasing a player? because when they're actively pursuing someone, they run at a normal speed... idk
It may be because the masked has only two states: begging the player and chasing the player. In the search mode, the speed of the masked is constant, but there are two different action states. The running speed and walking speed are the same, so it looks like "masked".
example i just recorded
idk why they were ignoring me, i don't have the personalities where they ignore you on
Maybe I'm wrong, but the speed of running and walking in masked is really designed to be slower than that of players. Zeekerss is designed for better recognition, but this mod wants to make the masked more realistic, so I think it may be necessary to modify the moving speed of the masked. It may only be possible to make the speed slightly lower than that of the players but rest more frequently to balance the overall speed.
yeah i think that the mask speed wonky-ness needs to be completely removed, if not completely, then just make the masked walking/running speeds 1 number lower than players
At least according to the current masked running speed, it is very easy to be seen. If the speed players are very close, but the rest frequency is also close to the players, this effect may be better.
yeah a lot of times i'll be messing around in lethal with my friends and i'll spawn a masked, watch it bumble around and i (along with my friends) will be like "oh yeah that's totally a masked" because of the way they move
masked just move weird in general
In fact, the most obvious difference is the way of moving. When the masked moves around the corner, the visual angle will not move in the moving direction, but the whole body will move horizontally. If the player does this, he can also disguise masked. It seems that the direction of the masked is only X-axis and Y-axis, and there is no intermediate transition, unlike other enemies, it can not turn correctly.
It seems that there is no need to adjust the moving speed of the mask. If the moving direction can be added correctly, the difference in moving speed is the most easily overlooked, because the player will also slow down with heavy objects.
id certainly look into that.. the no warning bugs me, i guess i could tell insane to go to the ships hiding spot and hide.. until the time to pull the lever..
i dont give masked free items, other mods do that... (where mimicked, masked get flashlights.. etc..), not going to give them a second flashlight, etc.
yeah, i dont think weight is factored into the running speed, the original code wasnt planning for masked to be carrying a shovel, etc.
that needs re-working, its based on luck... sometimes they notice you instantly, sometimes they dont notice you at all.. it shouldent be like that.
the masked are as far as i know, set to the same running speed as players.. (in my mod), it they dont go that speed.. then.. something is interfering, i have yet to investigate what... but what i find when playing is.. when a masked is sprinting at me.. i cant outrun it... so to say they are slower... im not so sure.
i kind of like them sometimes not noticing you
because it further pushes the like "ohh wait no that's my friend he;s just messing witth me"
but also something i had an idea about..
thats intended, but as in the "known issues" bit of the readme.. they just completely ignore players sometimes when they shouldent. so it needs re-working
maybe some way to make masked idly "wander" around. but like this:
they choose a little area and make a like.. bubble of where to walk. so they just wander around in that area only, and the wandering pattern goes like, walk to a node, stop for a few seconds and just stand there, then go again
heyo is this a known issue? sometimes when a masked steals a walkie and died/leave behind they leave behind walkies floating and cannot be grabbed
and maybe something to make masked "hide" around, where they stop and wait for people inside the facilities or smth
What mod then gives items to Mimic? Mirage? just a problem with the location of the mimicโs flashlight, I wrote to you in private messages
So is there any way to make the moving direction of the mask consistent with the facing direction?
that is a bug, thanks for letting me know, ill have to look at that as it doesnt happen with normal item pick up (but i do something special for the walkies x.x)
vanilla code causes them to turn the way they do.
like with grabbing items, and their crouching/running/etc, im planning to add in something that controls where they look.. but, i d k yet if i will try to overwrite what vanilla does.. or have to disable vanilla or replace it... we shall see when i bother to work on that.
just an idea. dunno which masked would do this but crouching around dogs and running away around giants
Masked don't appreciate interiors with non-mineshaft elevators
I presume they don't know how to path to main and just end up getting stuck
this log getting spammed. did not see what happen to the masked. I assume it got killed by an old bird. I got this on embrion. can this be ignored?
What is the mod for the clock on the top left? (when you're dead)
Vanilla code controls that. Though it maybe where I have disabled the vanilla entrance teleport maybe causing issues stopping them from using the elevator properly.
One of the better spectator mods forget which, but I also use it.
tell me the name(
or at least throw off the assembly, I'll find it myself
"one of the better spectator mods".
https://thunderstore.io/c/lethal-company/p/Aelstraz/BetterSpectator/
this error seems to be in relation to the object held by the masked.
if (((EnemyAI)maskedEnemy).isEnemyDead && isHoldingObject)
{
maskedGoal = "died, dropping objects!";
closestGrabbable.parentObject = null;
closestGrabbable.isHeld = false;
closestGrabbable.isHeldByEnemy = false;
isHoldingObject = false;
}
its this line..
closestGrabbable.parentObject = null;
ill have to have a look at it.. its old code, and i think with hindsight, a lot is wrong with it.
all it means though is the item itself bugs out.. and the masked bugs out (but the masked is dead, so who cares... so its just the item existing but not being grabbable i guess..)
so that also the error of this bug?
likely
we having lag issues now with the log spam.
[15:26:41.5951858] [Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Transform.get_position () (at <e27997765c1848b09d8073e5d642717a>:IL_0000)
LethalIntelligence.Patches.MaskedAIRevamp.CheckForEntrancesNearby () (at ./Patches/MaskedAIRevamp.cs:433)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedAIRevamp.cs:1457)
[15:26:41.5962440] [Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Transform.get_position () (at <e27997765c1848b09d8073e5d642717a>:IL_0000)
LethalIntelligence.Patches.MaskedAIRevamp.CheckForEntrancesNearby () (at ./Patches/MaskedAIRevamp.cs:433)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedAIRevamp.cs:1457)
[15:26:41.5982859] [Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Transform.get_position () (at <e27997765c1848b09d8073e5d642717a>:IL_0000)
LethalIntelligence.Patches.MaskedAIRevamp.CheckForEntrancesNearby () (at ./Patches/MaskedAIRevamp.cs:433)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedAIRevamp.cs:1457)
[15:26:41.5992961] [Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Transform.get_position () (at <e27997765c1848b09d8073e5d642717a>:IL_0000)
LethalIntelligence.Patches.MaskedAIRevamp.CheckForEntrancesNearby () (at ./Patches/MaskedAIRevamp.cs:433)
LethalIntelligence.Patches.MaskedAIRevamp.FixedUpdate () (at ./Patches/MaskedAIRevamp.cs:1457)
[15:26:41.6024907] [Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
EnemyAI.SetClientCalculatingAI (System.Boolean enable) (at <d491ed1d4cc34874a2498af41192fe04>:IL_0007)
EnemyAI.Update () (at <d491ed1d4cc34874a2498af41192fe04>:IL_0333)
DMD<>?96358458.TrampolineEnemyAI::Update?-673603648 (EnemyAI ) (at <ac08388ee05a4411ab018cce1f9d5ba7>:IL_0025)
CodeRebirth.src.Patches.EnemyAIPatch.EnemyAI_Update (On.EnemyAI+orig_Update orig, EnemyAI self) (at ./src/Patches/EnemyAIPatch.cs:34)
DMD<>?545753994.HookEnemyAI::Update?894966084 (EnemyAI ) (at <093afbfd18194789bd435afe6ef40dad>:IL_000F)
MaskedPlayerEnemy.Update () (at <d491ed1d4cc34874a2498af41192fe04>:IL_0000)
[15:26:41.6024907] [Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
EnemyAI.SetClientCalculatingAI (System.Boolean enable) (at <d491ed1d4cc34874a2498af41192fe04>:IL_0007)
EnemyAI.Update () (at <d491ed1d4cc34874a2498af41192fe04>:IL_0333)
DMD<>?96358458.TrampolineEnemyAI::Update?-673603648 (EnemyAI ) (at <ac08388ee05a4411ab018cce1f9d5ba7>:IL_0025)
CodeRebirth.src.Patches.EnemyAIPatch.EnemyAI_Update (On.EnemyAI+orig_Update orig, EnemyAI self) (at ./src/Patches/EnemyAIPatch.cs:34)
DMD<>?545753994.HookEnemyAI::Update?894966084 (EnemyAI ) (at <093afbfd18194789bd435afe6ef40dad>:IL_000F)
MaskedPlayerEnemy.Update () (at <d491ed1d4cc34874a2498af41192fe04>:IL_0000)
profile code : 019345b5-9e33-b2e2-253f-d6b8c9677621
full log please.
also, when you send logs.. make sure its a file.. not a massive wall of text like the above, really helps
CodeRebirth <- not my mod.
line 433 is
if (Vector3.Distance(maskedEnemy.transform.position, et.entrancePoint.position) < 4f)
so either.. the masked didnt exist.. or the entrance point entrance didnt exist... i will need the full log though (or maybe just the moon + interior) to replicate the issue though)
i should probably add in some null checks though..
edit: will add in some null checks going forward, but that wont stop the log spam.. it will just provide better info (and hopefully stop the mod from breaking)
will need to know the moon/interior to replicate it so i can find out why its occuring.
Apparently (Some) clients can't see the masked's signal translator messages
@brazen cypress Send ur logs pls :3
Oh yeah that masked didn't attack the player who entered the ship either weirdly enough
Not sure if that's intended
ill have a look at it in a minute...
quick question for anyone though, does this look like a NORMAL player head position if they were looking straight ahead?
(that is a masked)
another angle..
so, when you say "some clients cant see the messages".
Host sees them?
Client 1 sees them?
Client 2 doesnt see them?
ok i think i maybe see the issue.. i probably need to re-work a lot of code.. the original code i started with had all clients assigning network variables... but it maybe that.. by allowing clients to set the value.. its leading to an error (maybe some changes in code at the vanilla end causing this).... which is breaking some things? thats my best guess..
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.maskedFocusInt"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.maskedActivityInt"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.enterTermianlSpecialCodeInt"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.isCrouched"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.dropItem"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.isDancing"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.isRunning"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.useWalkie"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.isJumped"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.SelectPersonalityInt"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.maxDanceCount"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.terminalTimeFloat"
[Error :LethalNetworkAPI] The client 3 cannot use server methods. Variable Identifier: "VirusTLNR.LethalIntelligence.delayMaxTime"
this is now.. fixed.. i think
I will change the code back.. and test to make sure i get the same issue you did.. but.. well.. dude is dead and dropped his item.. lmao
Yes
then yeah, i think i have to re-write a lot of code.. and i get the feeling the "dropping items" bug is also related, because i dont get the same bug as they do before my fix, so i get the feeling its being seen like that as a client.
so yeah.. may take me a short while to fix.. we shall see ;o
๐
yeah, mostly
ive since found out it is...
so now ive got them facing the correct way.. im trying to now add in a bit of a tilt for when they are walking up and down stairs, etc..
now they only want to look forward.. wahoo.
wahoo!!
