#The Locker
1 messages · Page 2 of 1
Oh hmm that's a good point.
I wonder though, in general I just check if the player has an item they are holding and if it has a light source. So it really shouldn't be that since it's a very generic and flexible implementation.
Even though my light was forced on by ghost codes it's possible The Locker's ai detected it as being turned off
Doesn't make much sense though because the way it works is when it activates it has to have a position to target. So it can't activate without moving really.
Fair, it could have been the newer version of reserved causing issues too, flip is currently working on reverting the code due to all the bugs with reservedslots v2
I'm not really sure
Reserved works too though. I target base game flashlights and I have tested with the reserved light slot too.
But it was just there idle and the eyeball and stuff wasn't active
Because I did see a bug someone had where it activates and then instantly stops its lunge when the navigation wasn't using the ingame system yet but I haven't had any issue with that since I updated that.
Outside of it being messy on some stairs and not finding the navmesh off-nodes
Which I still don't know why it doesn't but meh it works mostly
Anyway let me know if it happens again and maybe have something to record it ready?
Appreciate the feedback and troubleshooting though!
Idk it was weird lol, I've never had this any other time I came across the Locker when rapid fire wasn't having a time https://clips.twitch.tv/KawaiiSnappyNikudonLitty--G7X5fxbbiSmE3BD Also that Bracken stealth killed me lmfao
Huuuuuuuuuuuuuuuuuuuuuh.
Yeah it was just sitting there lol
That should have killed you. I literally had a moment like that yesterday when I was playing where I turned a corner with a flashlight and because of the new reactivation mechanic it murdered the hell out of me 😅💢😠
So yea this is weird. Never seen it do that before.
Would have been such a good content moment 🥲
Well they seem to be working now lol, I had 2 spawn on Offense
Fucking Offense XD
I also set custom weights for Rend, Dine, and Titan since those planets were excluded in the config, I set Titan to be 100 like Offense
Yeah Offense has the highest spawn weight at the moment 🙂
Cool! I wanted to make sure that I wasn't encroaching on the normal spawns people expect when they go to those moons. So they're still as deadly as usual.
I did 75 for Rend
Rend honestly has the least enemies spawn by default, so I don't mind having a higher chance of the Locker spawning in
Cus it lacks Thumpers and hoarding bugs
I will say they always manage to jumpscare you when they work properly cus they're always in a rude corner and I appreciate that aspect
😂
I mean it fits all of them imo
It's more of a trap type of enemy like mines, turrets, and boombas
It fits everywhere
honestly I'd also say you could look at it like a Reverse Coil Head too, you wanna avoid looking at it or using your light near it
can someone explain this config to me? as it's set up currently, does it mean that it will spawn on all moons with LockerSpawnLevels as moon-specific overrides, or does it mean that it will only spawn on the moons in LockerSpawnLevels?
Yes it will spawn on all moons with a weight of 25 but for the specific moons listed below such as offense it will have a weight of 100
that's what i thought but wasn't sure
No worries! If you have an idea how to make it more descriptive let me know. I wanted to give people the most control so there's the global option of enabling/disabling it etc and then fine tuning
probably change it to something like "(These will override the level set config option on moons you list"
also, just as a frame of reference, how likely to spawn is the default value of 50?
Good point. That's easy enough.
I've encountered it like once every 4-8 moons. But this enemy is a bit different in that it could be spawning more often but because it doesn't move on its own you'll never know if you don't explore near it.
alright, i had it set to 25 for our session last night but we didn't encounter it at all, so i'll bump it back up and see how it goes
Set it to 100 globally and you should have a mostly fun time every now and then.
But keep in mind it's best when it's sparse I think. As when you encounter it you don't plan for it and it's a real threat.
yeah, i think having enemies appear too often ruins the shock value. brackens and coilheads sneaking up on me still makes me jump every time because they're pretty rare
that's why i wanna find a good balance for this
Even with the default of 50 it rarely shows up
I think I have it set to 80 on my list
I set it to 75 for rend and dine and 100 for titan
the planets it currently has set as 0 I may up to be 25
There we go
I thought I set Dine to 75 but I think I made it 100 cus Dine is just evil Rend
Lol
I'll set it to 75 just cus
It probably seems rare because I don't think it moves after it spawn right? only charges forward during attacks and dungeon sizes do get big
God point.
Maybe it should slowly roll around the interior?
that's what originally thought it did tbh, but only if the players aren't too close to catch it moving
Yeah.
I could see it rushing down a hall randomly if it's been inactive for too long, just to change areas
if i want the locker to spawn on any moon with the default chance do i need to blank out the LockerSpawnLevels?
Yes.
It will spawn on all with default too. Just those moons on the list will have unique chances.
this mod is really great, scared tf out of me, 10/10
I've been having issues with the Locker never spawning on any modded moons I've added except Infernis (value of 70). Do I need to manually add it to the LLL config for it to appear? If not, any ideas why it's not spawning?
i assume setting it to all adds it to every moon. i still have yet to see it in our sessions but i have no idea if that's because it's rare or if it's because it's broken
Yeah, I have my SpawnLevelSet to all and I've only been able to see it on Infernis thus far. I ask about the LLL thing because I only see the locker having a spawnchance set on that moon specifically.
70 is the highest value I've used thus far and it's weird that I never see it.
would it be possible to add a reactivate limit config? like, making it so it can only reactivate three times at max?
maybe also a setting to make them not fully follow lights, but instead always reactivate atleast once if they were triggered by a light instead of a scan
I mean, I could but reducing the reactivation percentage already accomplishes this. 50% chance will generally only retrigger a max of like 4 times since the chance for it to happen 4 times in a row is 6%. Try reducing it to 40% maybe?
We're talking pure probabilities here though. Obviously can can in a freak chain of chance have it activate like 10 times in a row at 50% reactivation rate. It's just very unlikely.
reason i was asking is because i want the chance to be high, like 75%
theoretically, with bad enough luck, it can reactivate infinitely at a chance of 1%
Sure. But I think that makes out the scare of it now. The fact that it can always reactivate and keep you on your toes. At least now I find it engaging even after having made it myself and played around it for countless hours.
I don't think that should get limited personally.
I also think flashlights and lights in general should be dangerous. The play there being turning them off, finding an alternate route cutting off line of sight quickly etc
Walkies now being a liability is also nice. It means that there are legit downsides to running certain things vs feeling safer.
Thought I'd share these in here by the way. Some concepts of the Locker while I was making it.
woahhhh
first one seems to resemble the final version the most
second one is silly
At that point I had it modelled mostly so I was working with generating some different variations of the possible textures. If anyone wants to reproduce the workflow it's embedded in the images and can be imported into InvokeAI
I love all of them, the 3rd and 4th ones could easily be included with the current version tbh, with the chance of getting the different models
The 4th one was where I really wanted to play around with the more angelic/confessional concept a bit 🙂
I'd have to apply those designs though and obviously create them for it though. I'm curious still; I saw a lot of comments under a video about the mod saying it doesn't fit the art style but I don't quite understand how it could be made to fit more without diminishing some of it's main concepts and style 🤔
I hope you enjoyed the clip I sent btw, I was on Vow there I came across SCP999 and was like "Yay friend" then proceeded to get quite literally jumpscared by The Locker 😂
Oh I missed it let me go check really quick!!
Hahaha
So btw I didn't know they could hear walkies
Yea I didn't think of that at first either. But the walkies emit just a little light for it to consider them a light item.
Ahhh lol
I kinda like that though? Plays nicely into the concept of it responding to signals or stimulus 😎
I've not had a single issue with their ai breaking ever since disabling ghost codes insanity rapid fire mode btw, Idk why ghost codes made their ai not detect shit when it went nuts
i do believe you have yet to signify that in the bestiary entry though which i think you were gonna do
Sure I can still do that. Not a high priority right now though 🙂
👍
quick question, how'd ya get an image in your thunderstore readme
<img src="https://img.shields.io/badge/version-1.1.0-0AF" /></a>
<img src="https://img.shields.io/badge/lc--version-v49-000" /></a>

# The Locker #
*In darkness it lurks, seeks light and sense and only responds with hunger.*
[...]
thaaanks
Create an issue on GitHub, paste the image in there then grab it stored from GitHub static. Close issue.
I normally do that on my repositories to not have to check in images into version control since that's bloat
I rather then check in the source file for that image since that makes more sense!
No problem glad to help!
You can also just use post images that’s what I do
Click 2 buttons and I have a perm link
True, old habit to use issues still 😉
Lmao I learned not to taunt a Locker
I said "I'm not afraid" then it proceeded to charge at me 3 times and murder me
😂
I once said "im gonna edge it" and then it proceeded to kill everybody but 1 person
the locker doesn't seem to try and chase if you get around a corner
not sure if this is a glitch but most of the time when I use the locker he doesn’t move very far, stopping like right in front of where he last was. he doesn’t go far at all
like just stops so quickly
kinda sucks because I wanted him to be more of a threat in our plays, charging at us
yeah i've noticed this alot too
same happened to me today
Huh, I mean it should overshoot your position but it should stop around where you saw it. If you move backwards it can’t get you unless you’re getting chased with a flashlight or when it reactivates
And it won’t chase you around corners
I've had this happen too, I think it happens in an area it has issues pathfinding cus on the Scarlet Devil Layout when leading it into a room it did it like 3 or 4 times then finally overshot as normal
for some reason i dont see any locker spawning, here's my config
and also, they dont appear in LLL config as well, not sure if it's a bug or not :P
I had this exact issue. If you add the locker to each moon while enabling configuration it should work. Otherwise, use a program like LethalQuantities and add the locker to each moon.
example:
Most modded moons that use LLL for some reason don't have it as a default in the enemy spawn list, so you'll have to add it manually.
OH! thank you!
tho is LethalQuantities stable now? i heard some bad things about it tho
As far as I know, yes. I use it for my sessions and it works just fine!
oki, ill try it out!
Alright! If you ever need assistance with anything, dont be afraid to ask the people in #1213985212686532638 ! They're super responsive!
thank you so much!
locker seems to not do very well with doorframes
Locker is my favorite custom monster
any specific custom dungeon?
or example 🙂
Weirdly enough I think it was struggling with office
It might just be the way you're changing animations
Are you using a trigger or float? Float would definitely work much better here
I also had issues with it in SDM going through a doorway recently
It would lower how far it could charge
nah we dont use modded interiors, just noticed one time that it had trouble getting through a doorframe. didnt risk it much because I didnt want to die
it did that one glitch where it went forward a bit but then moved back a bit
What do you mean by a trigger vs a float here specifically? 😅
How do you decide when to stop the locker and open up?
I'm assuming you're using an animator controller
It’s based on the distance to its destination
Or if it hasn’t moved in X amount of time
Well something is either making it pick the wrong destination sometimes (could easily test this with checking the line agent) or its false detecting that its stopping
I think that’s it really.
The way I'd have done it is using an animator controller where the trigger for changing animations into opening up etc is when the agent speed falls off a specific number after it starts a chase state
At least what I have been suspecting but in my one day of specifically testing that I wasn’t really able to figure out which part of the navmesh agent was screwing up. I think whatever this issue is would also fix the stair traversal
That’s how it works just without the animation controller ✌️
I’m fairly certain I’m using an animation controller but like I said I don’t think that’s the issue here. More something with the navmesh agent then
Hmm something must be going wrong with the navmesh then ye
(Haven’t worked on it for like a week or two and my brain is full of other things so I’m not sure unless I check if I’m using the animation controller or another component 😉)
Lol
The easy way to check is adding the purple line to the agents destination from your enemy so you can see where it thinks the destination is
Thanks for bringing it up though. Just need to go back to testing the navmesh things.
Speaking of which; do you have some snippets to easily visualize agents and the mesh while in game? I saw there are debug methods but in my brief testing I didn’t try to use them.
It could be that it's trying to set another destination whilst moving to the first destination, which cancels both destinations
I'll send something in a bit
Awesome thanks!
https://github.com/XuuXiao/GiantSpecimens/blob/main/Plugin/src/PinkGiantAI.cs
If you go here and check for all code related to testBuild
Code isn't originally mine, I got it from @real pewter :3
But this should help visualise the agents pathing
Bookmarking this! Thanks for the help!
I've been able to scan the Locker on multiple occasions without it detecting me. Is this normal?
I dont think so? Scan range might be higher than detection range if you're far away maybe lol
Detection range is busted tho, iit should be like 90m
I was not far away
I think it there was a pipe in the way but still
this mod currently conflicts with LCVR, the locker reacts to dead VR players
does the locker naturally spawn on the tier 3 moons
because our crew usually goes there
naturally spawns on every moon except vow and march
Watch Frame Perfect Locker Dodge and millions of other Lethal Company videos on Medal, the largest Game Clip Platform.
Adding to the list of future fixes and improvements
Shouldn’t be but still small objects can block the line of sight check. I need to look into how I can make the detection more lenient in the next patch.
5 minutes later: I figured out a good way to do this. Will implement in next patch 👍
i cant seem to get the locker to spawn, even when setting it to it's default settings, or cranking it to maximum on experimentation
(not a joke i am being fr)
i have it in a rather large list of mods, but nothing in it should be messing with it, as it messes with no other modded enemies.. is there any mods that are known to cause spawning issues?
I also seem to have an issue getting it to spawn
this has to be one of the best mods ive seen this games entire lifetime have the blessing to have. amazing work dude, absolutely amazing
i got it to spawn. no clue why it took so much to do lol
What did you do? I haven't been able to get it to work
I finally also got one to spawn by going to an eclipsed experimentation with Experimentation:99999 in the LockerSpawnLevels section of the config. Any chance the weights are being applied incorrectly? I feel like with 50 weight I should have seen one in one session the last couple of days
I had my LockerSpawnLevels blank, gonna try it with that config section filled with every moon set at 50 weight and see if that fixes my issue
i have. no idea lmao
I got it working, I think having LockerSpawnLevels blank was my issue
Yeah that'll be it 🙂
Should probably add to the config that this field needs to be filled. Thought I could leave it blank with all set and the weight would be 50 on all moons
I can check if the value is empty and default it to something then.
I assumed with it empty and the other option set to all, that every moon would have whatever the set weight above was.
That makes sense!
Having to list every moon with a weight is slightly annoying😅 and I only have 24 modded moons
Once Wesley's gets ported to LLL😭😂
Actually now that you mention it it should work if it's empty so that's definitely a bug. Thanks for reporting it!
I'm thinking it is. Might want to test with the weight config maxed to be sure
I used the LockerSpawnLevels to do a better job of testing. But with 50 weight I still feel like I should have seen one
Keep in mind too that it's a bit of a different enemy that doesn't roam on its own. I've pointed that out to other people too that there's no indicator whether it is in a level or not and it can also be in some dark corner somewhere 😉
Could be that too, but I don't think I ever saw it while testing in free cam
Oh i know this myself, i started going into freecam to find it and couldnt
Its good now, still really unsure why it was weird like that
I love it alot tho, works as a pseudo "jester" type enemy where its a big scary thing only on certain moon types, but i use it specifically for the realitively "easy" moons to give players an advantage/disadvantage to playing it safe when filling low/mid quotas
(Not that it is the same enemy by any means, moreso that i put it on every moon the jester isnt)
@spare citrus Can you update The Locker for V50 support? The power level setting needs to be changed from int to float
I intend to! Though im waiting for dependencies to update as well.
I see LethalLib patch finally got released in some way. I’ll have it out before Monday.
But im in no rush because v50 isn’t officially out yet
I was gonna ask if you could maybe do a small update that just takes out the power level stuff tbh, because theoretically it should still spawn without that since you use weights and stuff right?
That way it's a quick patch that makes it compatible with both V50 and V49
what interior is that?
question, am i able to put all and then just the number, or do i have to type all the moons out individually
considering thats a bug to get it to spawn i was gonna fill it in as i also had it blank
but dunno if i need to fill all the spawn rates for all the maps individually or just put something like "all:50"
@spare citrus Is that update for V50 compat still coming out? ;o
Sure, but I have a busy life at the moment so it's not my number 1 priority.
Okay I just know you originally planned for it to be out by now so wanted to ask
I see some compatability patches have been released for dependencies. I'll check later.
💜
Yup, fair!
From what I can understand you just need to add the check for the power level to be int for V49 and float for V50, or you might be able to remove the locker using a power level tbf if you feel it's not necessary for you to use it
Since you already allow adjusting the weights and how many can spawn at max
It's not as simple as that I need to rebuild asset bundles and my dependencies in Unity are completely broken at the moment and I don't know why.
Otherwise I would have had it already out.
Ahhhhh
I feel that I feel that
Unity being Unity
Poor Xu had their scripts for their GiantSpecimens mod corrupt yesterday cus of Unity and they had to fix it
Yeah idk why Unity is breaking stuff rn for everyone, I'm guessing it was updated recently and it's being a pain?
That is no fun
x.x
@past sand What did you do to fix Unity being a butt with your scripts?
Did the engine version get bumped by the way? That might be the issue.
That Zeekers builds to.
Nothing changed with the Unity engine or stuff like that, I had couple hiccups on my side because I changed the name of my dll once, then I added lobby compatibility as a dependency and that reset the scripts too
Give me 5 minutes to boot Unity and I'll see if we have the same error and link it here. Thanks for your time!
Bet
Unloading broken assembly Library/ScriptAssemblies/Assembly-CSharp.dll, this assembly can cause crashes in the runtime
This instantly killed my motivation the other day because man do I not want to step through the reconfiguration of the project setup to change a config variable midweek haha
Hmm
Am I missing something when it comes to updating to the latest version. I hadn't done much but I copied over the newest version's assemblies and gave it a whirl but now things don't work and it's not even rebuilding them.
That's odd, just try deleting that one, verifying ingame files, and copying over the new assembly csharp
It should work
@spare citrus 🤞 Xu's suggestion works for you ^^
?
This
Need more than a minute to test lol
Dunno why you have that error though
Unity might have corrupted the assembly is my guess
Doesn't make sense though.
Who knows
Unity isn't touching that assembly but we'll see.
Could be the game borked it too, it has had 2 updates since so maybe verifying files and getting the new one will fix the issue
Unable to update following assemblies:Assets/Plugins/Assembly-CSharp.dll (Name = Assembly-CSharp, Error = 131)
[AssemblyUpdater] Failed to resolve assembly Unity.Netcode.Runtime, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null. SearchPaths: Assets\Plugins, M:\[path]\Unity Editors\2022.3.17f1\Editor\Data\NetStandard\ref\2.1.0
For some reason it's requesting an invalid version of the Netcode module?
@past sand
They'll see it when they have time 🙂
Looks like something is linked wrong in my project. I'm going to investigate further.
You got this c;
Are you referencing unity netcode runtime
Probs
Yup, referenced. Build shouldn't be going through without it.
I'll rebuilt again. See if that helps.
In your csproj you have this:
<Reference Include="Unity.Netcode.Runtime"><HintPath>../dlls/Unity.Netcode.Runtime.dll</HintPath></Reference>?
Oh Jesus what is that csproj
How did you manage to get this far
Yeah I just gave it a look
Just dump every assembly in there surely we'll have everything.
I got annoyed at some point constantly relinking references so one day I'll remove the ones I don't need.
But for now, that shouldn't be a problem.
Sure. Can't help hurt to look!
I have a dll folder with like 5 dlls including assembly csharp, lethal lib, and a couple other unity rigging etc
That's it
<PackageReference Include="LethalCompany.GameLibs.Steam" Version="*-*" PrivateAssets="all" /> this line should give you access to everything by itself but it wouldn't let you see the actual code
You'd need like dnspy or smthn
Yea it's why I have them all linked. I can see them inline in Visual Studio then.
huh wait
nevermind
And you're sure the filepath is correct and if u follow the filepath you'll find the dll you're referencing?
It might be easier to copy the dlls you need onto a dll folder that you gitignore and just keep updating that folder whenever you need something new
Like a dependency
Okay this is 100% something to do with the game's Assembly. I have no Locker or Malfunctions related plugins in my project now. Dragging in the Assembly from the game causes this.
Where do these come from? https://github.com/XuuXiao/GiantSpecimens/tree/main/UnityProject/Assets/Scripts/Assembly-CSharp
I originally stood mine up from another project somewhere @past sand. Deleting this caused a lot of issues so maybe bringing it back or updating will fix things to a degree.
Ah shi that should be gitignored
I'll need to fix that, but it's from the wonderful hamunii's example-enemy template
I use it for everything lol
Yea I did that too I think
Pretty sure that's my issue here. I've messaged Hamunii to see how the stubs were generated so I can update them to v50, built the bundle and get this shipped out.
She'll probably get back to you in like 10 houes
Hours*
Maybe more
She just went to sleep
Thanks for the heads up! Give me some time to do my real job/s 😉
Thanks for being so excited about getting the mod working with v50. Once I hear back from @real pewter I'll see what the next steps are. And once this is figured out once - and documented - it should be far easier for me to do this in upcoming versions.
Timing with other work right now is just sorta bad because I have a super booked month having started in a new full-time position and also taking another project to completion part-time so it's just really busy rn.
Yeah dw I get it I do ^^
Just wanted to clarify. My responses were a bit short and I was juggling another timed task on the side 🙂
Appreciate it! 🙏
💜
does this work in v50?
Looks like the project builds again. It's super late right now to continue working on this - but I'll see that I keep progress going tomorrow between work hours.
Seems like I can build again. However I lost a bunch of metadata during the conversion process I'll have to re-do and piece together such as the monster entry etc. I'll try to capture this from the previous version as closely as possible but it's a bit of a pain.
I'm glad you're at least finally getting progress done
😄
It does suck you lost some stuff though
Here's the release for v50 https://github.com/zealsprince/lc-locker/releases/tag/1.1.1
Patch for v50
Full Changelog: https://github.com/zealsprince/lc-locker/commits/1.1.1
The Locker (v49/v50)
@marsh tartan 🙂
Thanks for the quick help @past sand the other day. I cleaned up my .csproj as a housekeeping due to you calling them out haha.
Also thanks @real pewter for pointing me to the asset ripper. Did that last night. Now for whatever next update I have my dev environment fully ready to get patches done quickly!
good, i hate seeing ones like that lol
dont let me look at how you do configs as well, ill prolly hate it
There are worse things to get upset over haha :^)
It's still fairly the same. I'm not a huge fan of how you did yours in some parts but as long as it works and is readable all is good! Personal preference!
okay the config isnt actually done badly, its fairly close to mine
Also I think the config is fairly nice. It's a rather standard format after all.
Off topic general discussion: Also I was able to reproduce the rubber banding Locker issue. Looks like for some reason some times it doesn't get placed on a navmesh for an entire moon? No idea.
the only thing i dont like with mine is the config parser i use, apparently it didnt work for another dev (dunno why but skill issue on them), i just barely understand mine lol
weird
Eventually you'll get around to fixing it right. I mean that's what I tell myself 😄
Lunch. Brb
have fun
uh uhhhhhhhhhhh when thunderstore 
When v50 officially releases. I don't intend to automatically automagically brick people's existing installations.
@spare citrus
I stumbled across this on youtube and died laughing.
#funnymoments #gaming #gamingvideos #funny #scary #spooky #lethalcompanygame #lethalcompanyshorts #shorts #horrorgaming
Both the scariest and funniest death I've ever gotten in Lethal Company.
Big thank you to https://www.youtube.com/@Bread3377 for his POV!
I love the locker
As long as you set it up to recognize both v49 and v50 it should be fine
the power level needs to register as int if it recognizes v49, and float if it recognizes v50
Doesn't work like that sadly. The new version of the game has changes to other things too such as the EnemyAI. I can't just make it accept arbitrary types from both versions when compiling.
Ahhh
You really have no idea what this means lol
I don't know code so
Yeah but I already told you it's nonsense :p
The setting of power level is done in Unity, stuff like that isn't handled by the mod dev
Unless they do some shenanigans, but all int values would be accepted as float values because while 1.5 can't be considered an int, 1.0 can
Well I mean a couple mods managed to make their mods work with both V49 and V50 so I didn't know what all it needed
v.v
But @uncut ocean and @raw kernel did it lol
@spare citrus sooo the v49 build has a bug atm, capping it so only 1 can spawn doesn't work I had 2 spawn lol
Huh weird. Maybe I don’t set the value right but I believe I do. I’ll double check later!
forgive her, reading isnt her forte
It was my fault, I thought the default max spawning amount was 1
its also 5am
But that was the power level
or close to
Lol
@spare citrus The Locker is probably gonna need another update for V50, cus Zeekerss did a QOL change to enemy ai that breaks enemy mods
Sure makes sense I can do that later but not this weekend. Probably start of next week.
We'll see. If the update drops I obviously get on it ASAP though.
Yeah the current beta feels like it's the last stretch before full release with that changelog Zeekerss put
try getting hit
im not updating my enemy to be v50 until full release
Got hit and schmoilered. The death animation is still as brutal as usual 😄
Thanks for the suggestion though. I also ran around and checked spawns and it looks good to me?
oh you probably dont use the HitEnemy function
you only deal with player damage and your enemy is immortal
so that makes sense
Ah nope, I have custom logic. I was wondering about that. Either way, I'd have received build errors because of method and type mismatches but didn't so looks like we good here!
Curious though, what was changed about the hit states?
yeah i completely forgot about immortal enemies just simply not using that function lol
every enemy is now assigned a hit ID so you know what enemy hit what
makes things so much better
Ah that's nice. No more having to get components etc then?
that wouldnt even work, i tried
i had to base it off of the force of the enemy's damage
VERY finnicky
That sounds annoying
yep
this was my logic for
"if hit by force of 6, which is a missile from old bird, run"
Oh I see. I wasn't even aware it was being handled like that. Kinda dumb honestly to not have a caller reference.
For enemies I mean
Because it exists for the player.
yep, it looks like now that he's added the old bird he remembered he needed an enemies one
same
The next enemy I am planning to work on will be able to exist outside too so I'd definitely have to work with that method eventually anyway. Nice to see that's easier.
hi
V50 is fully out now
oh dang
well, i'll push the packages then
Live on Thunderstore! 🙂
Thanks for the ping @marsh tartan !
Yw ^^
I'm aware of an issue right now that it doesn't move when another player or more are connected. For some reason on the client it will think the Locker isn't on the navmesh. Not sure why.
Oof
Can you link the part of the AI code that tells you where to go?
I think it would have something to do with the SetDestinationToPosition calls.
[Error : Unity Log] "CalculatePolygonPath" can only be called on an active agent that has been placed on a NavMesh.
Seeing this on clients. I feel like it has to be the culprit since if the client disconnects it works again.
That is an error I've never seen before except on Wesley moons when he's doing weird shit, well and when enemies try to move on a non existent mesh
Wait you use ClientRpc there?
Are you sure you need to Rpc this stuff?
If you look at my code I don't Rpc anything
Except animations
And I do use SwitchBehaviourToClientRpc to switch between states but that's just an EnemyAI function
Yea I'm not using the enemy as state because I realized that existed after I had implemented my own state machine.
So I'm doing the RPCs mainly for the Locker state
Gotcha
It's noted in a possible rewrite but it's not the end of the world
Should be IsServer. Already swapped out but essentially in Unity Netcode for GameObjects, non server clients can still be owners of gameobjects
In LC, generally only the server is the Owner
I'll debug this tomorrow
## 1.1.2 ##
- Add reaction to hit events
- Fix Locker pathfinding getting stuck
- Fix path calculation if off navmesh
@past sand The issue stemmed from the fact that I was now using AI Intervals. Someone pointed out that at 0 it technically infinitely intervals vs the expected outcome of not updating through the intervals. This meant that touching doors could crash on custom moons through a stackoverflow.
I fixed this but it also introduced the problem that now it technically had the game take control of it and use its update functions causing it to rubber band from my code updating the position and the base game enemy AI updating it too, and having to play nice with the properties there.
So not really a code issue but rather having to adapt to using the built-in system on an enemy that really doesn't fit that system.
It was kind of funny, when I first moved it over to having the default interval of 1, all the Lockers started moving around on their own which was a bit uncanny lol 😄
thats interesting lol
I don't think other modders will encounter the same issue because probably in 99% of cases enemies will use the built in behaviors that Zeekers has.
I'm kind of used to that, I've noticed when they spawn in they sometimes charge instantly but then are still til a player triggers them
thats not the problem
why were your intervals reaching 0 anyway?
No I know
I was just stating I was already used to them moving on their own
Wasn't reaching it, was set in the EnemyAI parameters.
lmao
well if you dont do base.AIInterval() does it still use the ingame's AI Interval?
Good question. I could just not do that.
im not too sure about the complete problem nor how i'd solve it since i just use the ingame system lol
I mean, it works for now
fair
So v50 yes or no in to lazy to read the full conversation
too lazy to read the name of the thread too apparently lol
Anyone have a sweet spot for the spawn weight? Feel like 50 (default) is way too infrequent
I have it at 30-40 early game, and then less later game
Since it doesnt move on its own, its excels more in smaller interiors
In large interiors its a minor hazard you might be able to capitalise on
byeah
I had to bump it to 10000 just to have it spawn on Artifice, only time my group ever saw it 😦
Ayyy I finally decided to use this mod earlier and one of my friends had it ram him and clip him through the wall, out of bounds, which killed him. Is this scuff normal or he just get really unlucky? Lol
It should kill on contact I think lmao
WELLLL it didn't XD It was quite hilarious admittingly but I have no idea why it happened. I didn't even touch its configs cuz I don't mess with configs of mods I never played before.
I had that happen once but I'd say that's super unlucky.
And by once I mean it happened in a really specific test setup with me being invincible. The hitbox around it while it moves is rather unforgiving so it should kill every time
The Locker
Hi! Is this mod v50 compatible? 😦
yes
It doesn't seem to be v49 compat anymore, needs to be on the older version
The latest gives an error on 49
I remember reading something about zeekeers changing enemy code so it can't be backwards compatible anymore
For v49 you'd have to use the 1.1.0 version of locker
u know what i just realized
this mod is like
the mimic mod if it wasnt questionable game design
actually intuitive and fun addition
huh? lol
they're both inanimate objects that attack the player by opening the door and "eating" them
the locker is really mechanically interesting and can even be useful for breaking locked doors down
the mimics are just kind of
artificial difficulty?
theres absolutely no skill involved, its just, either notice the difference or die
or bring a shovel
or enter from exit
isn't really a mimic honestly
no not by design or concept but mechanically it essentially just functions as a properly designed version of that enemy imo
😭?
the way the mimic works just
kinda Doesn't
and our entire group wanted it removed and we agreed the locker was a really cool replacement for it
i just really like this enemy
mimic and locker are like 2 diff things whar
i mean yeah my entire point is that the locker works better because its different i think it just approaches the idea of a player eating box better lol
i think the mimic mod is really well made its just that conceptually theres not a ton you can do with the idea to make it be a fun addition to the game
unless its like your thing then that's cool too, just imo
They don't even have the same goal or even function the same lol
the resemblance hard stops at "box-like that consumes"
they're both objects that are usually inanimate that were changed to be entities that kill the player
i feel like that's pretty broad
when the fuck have u seen a locker with wheels
like when u first see it u dont expect it to start moving at first unless you've already seen it beforehand
because the thing just looks like a locker
buddy nobody thinks the locker is imitating something. No one goes like "Oh look a locker, let me pick up some loot from it", unlike a fire exit which is "Oh look a fire exit, im lost perfect way to get out, oh noo its a mimic!
idk i got some pretty cool first reactions from it, i recorded my friend walking up to it and for some reason it didnt move at first but then it turned around and ate her lol
never said it was imitating anything
you literally did here
go sigma alpha skibidi your self
it just uses the same factor of unexpectancy like u wouldnt expect a huge box to turn around and crush you the same way you dont expect a fire exit to eat you
there still different gameplay wise
different counters
thats why i like it better
i just feel like the locker accomplished the surprise element that mimics were widely praised for initially a bit nicer without being nothing more than a mild annoyance after playing against it for a few runs
ig
I kinda get what you're saying. A hostile seemingly inanimate object, that only is dangerous once interacted with in certain ways rather than seeking you out, and seems somewhat mechanical yet a bit biological too
And it seems to eat you too, yes
And i do agree its a more interesting design that the fire exit mimics, they are proly my least favourite modded entity
Just to chime in and give a take for both sides: The Locker is definitely different from the mimic as a mimic doesn't synergize with other enemies for instance. I tend to think of it more as a hazard that can turn into an enemy.
Just like mines and turrets aren't too bad with, neither is the Locker. Until it is due to other circumstances 😉
Hey settle down ok.
https://clips.twitch.tv/ArborealSpookyIguanaTinyFace-ekUm69VRmYXy9OS3 @spare citrus I kind of appreciate how much more threatening they are now after you did the most recent update 😆 they charge so far now
how did they become more threatnement
Zealsprince did some fixes in the more recent update XD
They always worked like that for me, what is different?
Not for me they didn't, they were bugged for a while where they would barely inch forward
are spawns weights funky, it seems like the Locker is spawning at various values of like ~35-45 on every moon(?)
yeah well, as an example, when the configs are 0 for vow and march and it's still spawning... 😔
I have everything default (minus max amount of spawns and volume)
Which would include an all
What's your global spawn weight at. Because when you set LockerSpawnLevelsSet to all it will apply the LockerSpawnWeight to all moons which by default is 50. If you set LockerSpawnLevelsSet to none, only your overrides are enabled.
For clarity (and I should make this clearer in the LockerSpawnLevelsSet description) these two values are linked technically.
I think renaming it to LockerDefaultSpawnWeight and LockerDefaultSpawnLevelSet would make that clearer.
And then LockerSpawnLevelOverrides for LockerSpawnLevels
I think I was basing these off of other mods that had similar nomenclature but I should definitely have improved on that 👍
I'll see that I release a patch with that in it later. It's a low lift and I have gotten questions around that before here.
If anyone wants to sign-off on this being the right/better description let me know 🙂
so if I set it to none it should use LockerSpawnLevels?
I'm either missing something or it's a no because it doesn't spawn at all with it set like that
It already uses it. It acts as an override of the previous "default" values
So with the default config, the Locker never spawns on vow or march for instance, even if all is set and spawn weight is 50.
I think i'm still missing something because it was still able to spawn on vow and march like that
When can I [[romance]] the Locker
they took away our loving company
||😰😨
How would that even work. Nevermind don't answer that.||
It would be really funny if there was a locker variant (visually different) that responded to sound instead of light
let me pitch a design concept
HAA
I know
I just meant like an interior dog
But an interior dog would be really unfair
With the Insta kill on hit
The lockers attack design is more fitting
ok seriously though I don't think LockerSpawnLevels is doing anything, it's still spawning on Vow and March with everything default, and changing numbers in it keeps the numbers in-game the same in the log (LockerSpawnWeight seems fine though)
can I let the locker spawn on modded moons
how did you change it to all?
oh wait nvm I saw it
Locker
cant detect boomboxes?
Watch Locker aint hearing shit? and millions of other Lethal Company videos on Medal, the largest Game Clip Platform.
it gets set off by lights and the scanner
you said, and i quote "Locker aint hearing shit?"
i must be losing my sight
cant, im adding the sickest feature to the redwood right now
the redwood shaker
Doesn’t make sense lore wise to me. It’s sound is it not?
Is the locker lore wise supposed to detect electronics
Hense why Scanning, flashlights, and walkies, all set off the locker
on what maps does the locker spawn? does it also spawn on Wesley's Moons ?
The way I "interpreted" it was that it responds to touch. Think of it more as awareness to a degree. A flashlight shining at it makes you aware of it so light kind of falls in that category. The scanner is also a sort of touch on it. Though I extended that to be more around objects with light so walkies fell into that category too. So it's a bit of a grey area.
I don't think generic electronics fall into that though such as the boombox.
The boombox could be a goofy gameplay implication that I can see fitting into that, but then you'd have players in general thinking it responds to sound which I don't want to happen.
It ain't an indoor eyeless dog after all and I want it to remain in its niche since that's kind of what you all seem to enjoy 🙂
bump
It should spawn on them if the spawn level set is all
So the enemies scanner also falls into touch?
Yes.
Especially since it's kind of a wave that's visible to the player.
Think of it more like a sonar.
Which is also indicated by the fact that it takes a second to hit the locker
Tool?
Watch >:( LORE BAD and millions of other Lethal Company videos on Medal, the largest Game Clip Platform.
Well, that ain't base game now is it lol
It has a light on it so walkie rules apply I suppose 🤷♂️🤷🤷♀️
And the jetpack as well
And all of LethalThings + other mod's electronic devices
I'm just saying from a gameplay perspective
You activate something near a locker
locker activates
You shut off that thing Locker stops chasing
Gamer brain says = Electronic devices is how this entity detects you
So Im kinda surprised the only powered piece of equipment that does not trigger the Locker is the boombox
Not because it can hear the boombox
But because I thought it could detect active electronics
In that case, maybe allow Lockers to be distracted / activated with flashbangs, according to it detecting "light" @spare citrus
I agree. I think electronic devices mostly fit into the lore of it.
Since a lot of the other ones technically already do it
I think the flashbang fits as well
I would LOVE if flashbangs sent it into a random frenzy
Funny and scary as hell
there is so many times i would flashbang it near one of my friend just to cause chaos
@spare citrus can you look into the LockerSpawnLevels not working in the config? @royal viper has experienced an issue where regardless of what it's set to it sets the weight to around 30-40
It goes down after the first spawn wave or w/e it's called too which is funny but that's probably not abnormal(??)
Is there an easy way to show the spawn weights for a level?
I think there’s a tool or mod right?
Uh I can give u code rq
SpawnableEnemyWithRarity RedWoodGiant = RoundManager.Instance.currentLevel.OutsideEnemies.Find(x => x.enemyType.enemyName.Equals("RedWoodGiant"));
if (RedWoodGiant != null) {
LogIfDebugBuild(RedWoodGiant.rarity.ToString());
}
You can probably run this at start of round and instead of just specifically redwood giant you just go through all the enemynames.rarity.tostring
Thanks! 🙏
why is the locker in my game always stuck or can't attack. please fix this bug
Works fine for my group, sounds like a you problem
Are you on the latest version?
Feel like that was unnecessary
what version is it now?
agreed
v50
ok
a big issue i've noticed with the locker, it gets stuck on things way too often. it seems to get stuck on webs, corpses, random decoration objects like pipes, etc. alot of this causes it to not really be too impactful alot of the time
Do cosmetics and suits with emissive textures attract the Locker?
yo what cosmetic mod adds that cap?
I'm not the first to report this but the locker keeps getting stuck most of the time. It slingshots. It would attempt going to me but then moves back into place. I have the latest version but even then it went on for a while. Is there a mod incompatibility?
Which version of the game is this? Latest version with latest version of the mod?
No
I have a cosmetic that adds glowing goggles I wear, from NikkisCosmeticKingdown
They don't count as a light source
Yes and yes. V50. 1.1.2.
Are you playing with a mod that modifies enemy speeds or anything else around them?
In terms of modifying their speed, I don't believe so, no. There shouldn't be anything I have that affects enemies that way.
It's definitely a mod conflict issue since I tried it by itself. I'm trying to figure out which one.
Okay whew that’s a relief at least
Okay I can't figure this out. Even if it's by itself, it does behave strangely at times like it wouldn't lock onto the player correctly (pun not intended). Like if you scanned across the hall and then move around the corner, it would stay in place; move in its line of sight, and it zooms toward you. And idk if it's a mod conflict or not, but it tends to rubberband a lot even if it should have been able to go toward the player. Someone skilled in coding would have to look into that; I tried process of elimination but I can't pinpoint.
Were you trying this solo or in a lobby with other people?
Solo
@spring sleet if you have lethalconfig try seeing if the rate to attack again is changed from a high % to a low %
I haven't been using LethalConfig. I had it set it to 99%. It can attack almost all the time if it has a clear path but it gives up when it has no pathing or it no longer sees the player. I'm expecting that part's fine, but not pursuing to begin with is another.
Real question does this mod work with it https://thunderstore.io/c/lethal-company/p/Command293/LocalFlashlight/
it doesent
i tested it like a few days ago
Config works on modded moons right
For setting the spawns to specific levels or nah
Not at home so can’t test
Just curious
It should I believe? It's down to LethalLib's implementation. I'd have to double check that some time.
it does ye
hey guys. i got a question:
is it possible to let lethalquantities manage the lockers spawn weight? i couldnt find an option in the config to use vanilla spawns (let another mod manage it). i dont want those mods to argue about the weight changes.
is setting Locker's spawn power to 0 gonna break anything?
Can confirm this issue exists. I have had it happen in MP as well
I cant understand the issue well enough, what's happening?
I think it's the one where it's not placed on the navmesh for whatever reason
I don't know why this happens, but it can.
The locker seems to get stuck at spawn. It's Ai will detect the player and activate its animations, however the animations are very wierd. It seems it is unable to path to the player. It turns to face the player and is unable to procede.
When it tries to charge the player can visually see it move towards them in a very janky teleporting way. Then it Snaps back at the end of its charge to its initial position
When it happens, the Locker will instantly close when starting a chase because it can't navigate to the next node on the mesh as it's not on it.
If it tries going somewhere and it can't it'll throw errors though
It does, I'm catching them though because otherwise it floods the logs so that's why you don't see them.
Ah ic
I'll try and get a build going tonight and look through the code
It might be a good start porting to LLL
For me in SC this navmesh bug happens 100% of the time
SC?
For the locker or for all enemies?
His modpack iirc
Gotcha!
Specifically the locker
@past sand if you need any help getting it set up let me know!
I'd take a look at this but I'm still busy for a while with other things. And debugging navmesh things has been a pain so far with the customer behavior of this enemy.
Yee, will do, I just hope everything isn't pointing to random files I dont have haha
I've never had to debug navmesh weirdly
You should be able to do a search and replace on the csproj I believe for the paths.
Despite having... a larger than normal enemy
Great
Even the driftwood moving as the current fastest enemy and potentially fastest custom enemy, no problems
I zipped up my Lethal Company setup/game as well as the Unity project for another person already. So if you want to use that as your starting point which includes the Locker scenes in case you need to rebuild asset bundles let me know
Ah if the Unity project isn't on github do send that to me
Unrelated question. In immersive scraps did you remove the weapon function from all included scrap items like the plunger and axes? I can not seem to get them to swing in SC anymore.
I'd like to look at the navmesh settings
Yeah I'll fix that later, something in porting went a bit south
Driftwood enemy looks cool! And yea speed is not really an issue here. I think it's the fact that it doesn't play into the normal behavior states the game expects.
So some logic might not get triggered in the same way the game would like it to
Which makes sense though for this enemy imo.
Let me know if/when you guys figure this out. 🙂
If I have to I'll try to rewrite it to use ingame logic, it shouldn't cause any issues and should've used ingame logic to begin with lol
I wonder if most of this is solved by porting it to the game's behavior states. I just kind of glanced over that and disabled it when it actually started moving around on its own lol
I finished the monster weights, forgot about it, and the nearly shit my pants with the first encounter.
Could it be desyncing lol
It should work multiplayer fully now btw
Plus it's the first LLL enemy 🥴
Oh it works... we were screaming while testing.
Lovely
Darn monkey tree
Alright. Well you can already enable that mostly via the following.
- Set AI Interval to something that's not 0.1 (It'll move around on its own by doing this)
- Set speed to 0 in dormant, reset and consuming state calls
- Set speed to X when chasing where X is whatever speed makes sense
- Set the built-in AI behavior target player on chasing state call
- Unset the built-in AI behavior target player on dormant, reset and consuming state calls
It doesn't look like it at first, but it does have the fastest enemy speed ever
Well for moving around just do StopSearch(currentSearch)
Gotcha didn't know that 🙂
That's how the enemy which point on the navmesh to go to
I'm sorry I should've said it before 😭
StartSearch(transform.posigion) to let it randomly pick surrounding points on navmesh to travel to
It was for a while but that got fixed. I specifically asked about single player though because of this as in that mode it shouldn't be happening if it was a desync
And StopSearch(currentSearch) to end that
True
Also just a good rule of thumb to turn agent.speed to 0 when it's not supposed to be moving
If you don't get around to it, I'll see that I have time next week to do a build and mess around with it.
@past sand +1 on the agent.speed thing
It's the weekend so I got a bunch of time
Keep in mind when I made this enemy I didn't know about the AI type to be fair. It's only once I made it compatible to be placed in game via LL that I extended that type and noticed all the things I could have used.
I think the part about states that isn't explored well enough in the guides
So that's why it has its own state machine for instance
Is that you need to put the state names in the same order you have in code when making them in the Unity project for the enemy
So if u have the following states defined in the following order:
Chase
Wander
Die
You absolutely need to make sure the Unity project enemy has those states
Otherwise it fucks with desyncs majorly
I know I know
You could probably port it over to the states fairly easily. Still a few hours of work though.
Since it's just refactoring left and right
Shouldn't take too long, I've made like 4 or 5 enemies by now with the similar/Same format lol
Yup. Once you're locked in you're good hehe
I'm going to send you the Unity Project still. Contains the nodes and other things you'll need since you'll want to export the asset bundle I believe if you are using states
I'd ask if you're interested to help work on it but you might be too busy with irl stuff kek
Yeah I'll need to modify the Asset bundle too anyway
@spare citrus will it?
I don't think so
Only thing I can see is eventually you'll have a map full of them
Because the ticket system is just going to keep spawning them as they don't take away from the level's power
Having a weird issue
havent seen a locker spawn in forever
nevermind lol
found one
Having this error, as I understand it's related to The Locker mod?
[12:49:29.8080434] [Info : BepInEx] Loading [Locker 1.1.1]
[12:49:29.8390215] [Info : Locker] Loaded asset bundle from path: C:\Users\Administrator\AppData\Roaming\r2modmanPlus-local\LethalCompany\profiles\2.2.3\BepInEx\plugins\zealsprince-Locker\Locker
[12:49:29.8566282] [Error : Unity Log] ArgumentException: An item with the same key has already been added. Key: secretlabs
Stack trace:
System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) (at <787acc3c9a4c471ba7d971300105af24>:IL_015A)
System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) (at <787acc3c9a4c471ba7d971300105af24>:IL_0000)
Locker.Plugin.Awake () (at M:/Dropbox/_Development/Personal/lc-locker/Locker/Plugin.cs:129)
UnityEngine.GameObject:AddComponent(Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.Rendering.HighDefinition.HDRenderPipelineAsset:OnEnable()
[12:49:29.8566282] [Error : Unity Log] ArgumentException: An item with the same key has already been added. Key: secretlabs
Stack trace:
System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) (at <787acc3c9a4c471ba7d971300105af24>:IL_015A)
System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) (at <787acc3c9a4c471ba7d971300105af24>:IL_0000)
Locker.Plugin.Awake () (at M:/Dropbox/_Development/Personal/lc-locker/Locker/Plugin.cs:129)
UnityEngine.GameObject:AddComponent(Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.Rendering.HighDefinition.HDRenderPipelineAsset:OnEnable()```
I assume this is just lag? or is it supposed to kill from this far away? lol
lag yeah
I had it kill me similar to that as well
Felt like I was far enough to the side but got absolutely shredded
You should proably update to 1.1.2 first of all. Also the error I'm seeing there appears to pertain to secretlabs? I think it might be a custom level incompatibility?
secretlabs is a moon yeah
@spare citrus @past sand
How goes the locker fix?
Whenever zeals gets a breather and decides to go through it, I didn't do much personally
I have updated The Locker to the latest version 1.1.2, and even with SecretLabs disabled i have same error.
I’d have to test this specifically with secret labs. I can do that this weekend maybe.
I just launched a new startup product so I’m super busy with that alongside my day job
I’ll see that I make some time tomorrow night to get it fixed before the weekend
I started messing with the changes @past sand and there's a few new things that are buggy now so I'm going to need more time for this.
Nothing against the changes, it's just it's not a drop in replacement 🙂
ye i expected that, it's a massive difference to what you were doing before
and EVERYTHING against your code, the amount of switch states for states makes me sick 😭
It's not bad. It's just the game gets to do its things now 😄
yeah fair
You'll come around to switches one day
i have ONE switch statement for all my states
that's all you need 😭
two things, A. i have no clue how you managed to make the locker work to begin with.
B. same thing actually, i dont know how you made it work
I have two switch cases by the way lol
It's whenever I work with an enum it's like normal to do that though and good practice 🙂
You're free to answer that question by making it from scratch yourself 😄
the redwood and driftwood code combined are smaller than the locker 😭
smh if only i had the free time to do dat
that was the original plan tbh lol, but still it would've taken a bit of a while lol
but yeah i hope you can actually figure out how to make it work
I agree it's unexpected that there's so much code but it also has completely different behavior
I know you're just goofin tho. Unless 🤔
🤔🤔🤔
im mostly goofin, i do feel like the code could've been done in a much smoother way though
Knowing what I do now about the things I would make it do and effects it would have, I would add more functional decomposition and probably work more with Coroutines since that's fairly standard for Unity scripts but outside of that I'm fairly happy with it
It's a Unity convention though and I hadn't done anything with Unity in years so I kind of ignored them.
Yea great decomposition there!
Exactly what I am talking about. So it's in smaller chunks and not nestled in the main reactive functions like Update etc
Absolutely agree with that point! 💪
These are the main pain points
Update, FixedUpdate and SwitchState
plus i do a lot of things through animation events rather than calling it in code, problematic in some sense if the animations go wrong but could be okay if the code is foolproof 
Yea!
Another thing I wasn't really working with or aware of when I started. Good point.
Are you studying CS by the way?
i will if i get into the uni im trying to, but im relatively new to coding though
so might not get in
Well fingers crossed for you. You seem to have enough experience to beat the other candidates for the first few semesters!
it's probably just me getting used to copy pasting stuff than actually figuring things out xd
Honestly, back when I was in university most people didn't know how to code at all. Was a big reason I dropped out because the people I was studying with were morons.

ah geez lol, i use that maybe like once a couple weeks if theres something i have no idea of implementing lol
though i've been trying to get these particles to work for hte last hour so i might just ask gpt later what im doing wrong lol
Yea I don't really use it for coding but beginners I have worked with find it really useful. And sometimes it's good at explaining a random issue.
hmm true
i got em from an asset thing in the unity store, supposedly im supposed to just change the shader into one they give and it'll fix the particles for HDRP, which is what LC uses
but it just doesn't match what they show in the pictures
this being the image
😵
maybe i need to change the texture type or smthn? no clue tbh
Actually looks fine there though doesn't it? Outside of the preview having a different background.
well this is what the particle system is giving off rn lmao
yeah amazing loooking explosions 
Well whatever conversion it's doing it's messing up the alpha channel is my guess but I feel like there's a few other things going wrong here.
Time to make your own shader let's go
ShaderGraph and VFXGraph are fairly fun tbh
im sure it is, i just have a lot of stuff i wanna add before i mess with misc stuff like that
not sure if u could tell on the background of the screenshot
but im almost done with my new weather type lol
Aha, a meteor shower huh?
yep
(Great idea)
it works pretty well in game so far
That's awesome. More content like that please!
It's in the same vein as Locker and Malfunctions; things that could already be in the game. And weather is definitely something that modding has overlooked so far (Outside @jagged field doing things) 😄
How easy is it to create a new weather type?
pretty easy, the only problems with weather is the api side of things
I can imagine
which i dont handle at all
lethallib does to some extent, enough so that i can make a weather
but not enough where a moon creator can apply the weather into their moon
i literally have no time to do the stuff I want to, sadly
but my (planned) system would enable doing that very easily
anyone else having a problem with the locker making 90 degree turns and homing in from far distances around corners
from what i have seen it seems like its supposed to be a straight line charge, but it turns to follow the player when it charges, and has been nearly impossible to dodge and avoid
are you talking about the (default) 50% chance of it turning and charging again after charging at you once?
no. it charges in a line. then if we move out of the way, it turns to follow our movements and kills us
even around corners
havent had that no. maybe a mod conflict?
not sure what mod would do that
time to enable/disable till you find it then lol
could also check the logs and see if you have anything red errors
do you by any chance provoke it
late but the issue brought up is probably in reference to it doing this
intentional
Yea due to it using the pathfinding and players wanting to be a little smarter it will turn corners to a degree.
Though it should be facing the angle of velocity which is a little weird
I can look into this when I take a swipe at updating it again
# 1.2.0 #
- Rewrote state management to be mounted on the game's EnemyAI system to improve stability and mod compatibility
Thanks @past sand for the initial rewrite and motivation as well as good feedback!
This should hopefully fix any issues anyone is experiencing with the Locker stopping instantly.
I've also played with the mod over the last two weeks online with friends and offline as well and never been able to reproduce it doing this behavior anymore so I'm about 99% sure if it does happen it has to do with another mod.
is the locker being able to kill old birds intended?
oh lol
Umm… why the Locker roaming outside
Goofiest ass enemy ever then. You guys know there’s a reason I don’t spawn it there hah
But umm… does it kill the Old Bird? Just asking. For science or something.
(Just so we’re all on the same page: I’m not patching any issues with it being outside unless there’s a really good reason for that)
prolly one of the enemy escape mods goofing
Biggest chomp ever
Does it home in on Old Birds because of the light source on face?
from what i tested the locker does not hunt the old bird but if it hits one it will kill it
it only homes into players with light sources, not any other entities
lowkey I kind of like that idea
lockers outside
I would love to see that happen lmao
Honestly would be funny seeing an old birds light active a locker just for it to slam into it, explode, and do absolutely nothing to it
Hey, so I have a small issue with the Locker dude
The Locker enemy spawns, but then is stuck in some place
If I scam or use a flashlight on him, he does the animation that he's supposed to but doesn't move
Everything works correctly, he just doesn't move at all
Any insight into this would be appreciated
small suggestion, but i'd love a slight silver lining to encountering lockers, i adore its gameplay design but i've noticed alot of people who i get to play modded with me sorta dread encountering it since it's real aggressive compared to alot of other monsters
something small like a cheap piece of scrap you could get through interacting with it somehow would help w/ perception of it alot imo
or if you wanted something slightly more nuanced, this was an idea i had
would create a bit of risk/reward to baiting them out (the trail would stay behind and could potentially assist with travel throughout the day), and make times when they charge several times in a row a bit more engaging to deaL w/ imo
I mean its not really aggressive if you dont scan / flashlight
'aggressive' in the sense that not being able to scan is fairly oppressive compared to many other monsters
It's like it's whole gimmick
i mean yeah i don't think adding a silver lining really like
detracts from that
but it's comparable to how butlers and nutcrackers have upsides to them
or hoarding bugs
scanning really isnt that crazy im ngl
Even more so when you play with true darkness
I always play in darkness
The moment I hear the start up of the Locker, I'm already running to avoid
This is a mod incompatibility issue but I don't know with which mod since no one has posted their mod list or actually gone through debugging this. I've tested this countless times locally and can't reproduce. Any insight you could give would be great! 🙂
I'm confused, what upsides do they have to them? I find Hoarding Bugs to be the pests of the game personally.
And coils
I don't have a clue whatsoever either
All I know is that it's an enemy mod that's causing it
Or an enemy fix mod
I have I think 5 enemy mods and more or less 6 enemy fix mods
What are these enemy fix mods?
I don't remember them nor can I access them rn
But I know most or all of the enemy mods I har
hoarding bugs have the slight silver lining of gathering scrap into one consistent place
which can lead to emergent gameplay where you take advantage of that by having them lead you to their nest, killing them, and getting a free pile of scrap
thank god locker cant break doors
cant break the school ones apparently
is this something the dungeon author should do compatibility with?
This is definitely a custom map problem cause the locker can destroy doors on the mansion and facility layouts
Yea this is not something I'm going to add support for. It boils down to this: Right now there's no generic door component in the game. What this means is I can't really check for objects that are doors. Instead I have to check for objects that have triggers and are called doors.
Additionally, I have to then do a hacky way of destroying them by going up the found object's parents and deleting those. If a custom mod does this incorrectly, it can mean that I delete like a whole room for instance which can happen.
Until Zeekers makes doors generic, this is going to be an issue going forward that interior mods will have to work on making compatible. I think the best approach is to take the existing interior doors and swapping out their models, keeping the name intact.
// Get all doors in the level and check their distance to the locker while chasing.
DoorLock[] doors = Object.FindObjectsOfType(typeof(DoorLock)) as DoorLock[];
foreach (DoorLock door in doors)
{
if (!door.isDoorOpened) // Ignore open doors.
{
if ( // Check that we're in range of a door.
!door.GetComponent<Rigidbody>()
&& Vector3.Distance(door.transform.position, transform.position) < 3f
)
{
Utilities.Explode(door.transform.position, 2, 4, 100, 0);
Destroy(door.transform.parent.gameObject);
}
}
}
This is how I check it right now. Essentially I have to look for "Door locks" and then get the door lock's parent. I think this works mostly, as long as modded doors have a door lock component on them.
Is this intended?
Tokyo Drift
You kept scanning so yeah probably XD
It picks up the scanner lmfao
Yeah but it can also double charge
So it did a double charge after the second scan
and yeah
XD
TIL
By default it has a 50% chance to "reactivate" after a charge. Was too easy to bait otherwise. This is definitely my favorite change I made that seems to have had the most impact.
That drift though 😂😂😂
OOOOHHH
That explains everything…
I always thought I had somehow re-activated it instantly lol
Would it be possible to add the option, to configure the Locker turn speed/rate or something? It drifting so hard, kinda funny, but not fair sometimes
So I basically got really unlucky lmao
Fair
https://clips.twitch.tv/InquisitivePlausibleDurianTooSpicy-yEEcPvJEn-sfKTli @spare citrus never in all my hours have I had them go this insane until last night XD
this is what happens when you hold the apparatus
Daaaaamn



