#plugins-dev-chat
1 messages Β· Page 65 of 1
wait
what effect
because then the game does this
The animation
animation without animation?
No, Animation without giving using the item
patch UsableItem thing
i think i can do is just ev.IsAllowed = false
and send the packet manually to Auth
because if it works im setting a value on my custom items
Did u make issue about it
not yet
Hey david is it possible to send the animation for an item that isn't consumed?
These are most likely client side?
i mean server just needs to not remove the item after animation
which should be possible
I mean in some way the server is authenticating in the method UsableItemsController.ServerReceivedStatus
Is calling the using effect
what im trying now to do is replicate but im doing all manually to send the packet
just send the UsableMessage or whatever
Yea i did that and it works
but now big problem
the animation remains stuck 
current item to none
I mean i could do that
but how do i get the time for the animation
usable.usetime
I guess i can do it
but i wanna try a theory
to bug this game more
if my client crashes is not my fault

It works, for comodity i did as an event for my custom items and obv it works with base game too
Yipeee
actually
@unique crane heyyy
bestiee
do you know how to do the base call
from prefix patch
oh...
Get the base and rhe .ctor
@hearty shard
Harmony.MethodInvoker.GetHandler(
AccessTools.Method(typeof(ClassYouViewingRightNow), "ClasChanged")
);
Have fun
Not really what u wanted but atleast you can call the base
Room.Doors why it can contain null door
Im trying to do
player.Inventory.ServerRemoveItem(player.Inventory.CurItem.SerialNumber)
but the function wants an ItemPickupBase from me, what does this mean?
I just want to delete an item from a players inventory. Dont drop it, just completely delete it
Oh i think its just player.RemoveItem(player.CurrentItem);
that or pass null for the second argument
Check how the game does it like duh
Hi guys
why
Server.AmmoLimits[item.Key]
have wrong limit by default
but config
has
limit_ammo12ga: 350
limit_ammo556x45: 350
limit_ammo44cal: 350
limit_ammo762x39: 350
limit_ammo9x19: 350
RAUtils.ProcessSomething
ProcessPlayerIdsOrNamesList maybe
hiii
hi
can I somehow get what objects are drawn for player?
basically all objects the player sees?
why exactly do yo need that
making self learning ai 
why not use navmesh
or run a client, get a low res screenshot every x frames, and simulate input given by the AI
navmesh? I need even players it sees
Axwabo could you do smth for me?
vision information? I heard about that on Exiled and then never saw it again what is this?
it checks if you can see another player
NW uses it for all player vision based stuff
e.g. 096, 173, 1344
also, VisionInformation includes much more info than a simple raycast
I can imagine what does it include though?
I'll load the picture in 1-3 business days give me a minute
How are you doing?
meh
Ok so sl introduced that alot of time ago
but never actually sponsored it
enough lol
wha
DebugLines
Oh ok totally different
lol
i interpreted it in a different type of drawn
oh talking about fake rendering
I semi have that?
so is it in functional state?
and in which way did they implement this?
like its not perfect
No it was drawing object like lines
etc...
like... the AI learns entirely on its own? surely not...
Nah not in that sense
but its not determinalistic
so is there way to get objects that player sees?
VisionInformation
VisionInformation.GetVisionInformation()
i think it's a horrible way to do this on the server
Same
and in the get visioal information I input game object?
.
to get all "gameobjects" you'd need a view frustrum and some way to check the objects in that frustrum
order by depth
etc
recreating a rendering pipeline on the server sounds
shit
xd
btw i was bored this morning so i decided to litteraly debug the source engine (VPhysics) to actually implement the physics of half life 2 in SL just because why not
https://ratcentral.is-a-good.site/π/v32ulsmu.mp4
(its using the mass of gordon freeman / any player in every Source Game 70KG)
source is player
source cam is players camera position
target vector3 is gameobjects position
try not to be bored challenge
FR
(and its all client side)
the prim is clientside
the video stopped halfway π

nuh uh
Next thing recreating lovely models / physics dummies
Why?
because why not
Btw source engine physics is really really really strange
they do alot of calculation
but on unity they can be done with just 3/4 lines
this is goated
next thing 3D models (im too bored to do that)
is there even a plugin who used visual information?
zer0 pretty please could you decompile some use of this and show it because it would make more sense to me
ok
Ok i now understand
As you can see the method is used for example in the effect That gives danger the Shrek stuff
Now make portal
In SL
Oh my god
if a toy for making portals (like camera poiting and mirroring a position) would be added
i would do it INSTANTLY
like
i know ;(
nuh uh
david bully
You should absolutely not make alt account as a bot
and absolutely not use that for image rendering
so I can just put position of gameObject and check if it sees it and I can do this for all approximate 15000 objects
and surely not send that as image toy as a portal image
THATS SO laggy
asf
Wait....
wait....
The server has a cam
But there is no graphics on the server
its all stripped
you are delulu
i tried rn
add it!!!
sl doesn't even start
No
Thats so stupid
Im honestly tempted to recreate half life 1
on SL
or even 3D doom
by loading wads
wouldn't just setting position and rotation of player camera be enough?
?
Are we talking about the reflection from portals or the gmod's camera object?
Thats not called reflection is called directly portal
like its a portal
In computer-generated imagery and real-time 3D computer graphics, portal rendering is an algorithm for visibility determination. For example, consider a 3D computer game environment, which may contain many polygons, only a few of which may be visible on screen at a given time. By determining which polygons are currently not visible, and not rend...
I mean reflection as reflection the normal reflection not reflection as proggram reflection
Oh I see you need different perspectives in the portal even
I would love portal effect to exist so door teleporters could be more realistic with sound going through also trust this will be epic
and that would be a nightmare for nw but i guess it could be cool
possibly setting the players camera's position and rotation would be cool
third person is reaaaaal!!!
Nice now do gravity gun
Crazy i could do it
hmmm :3
Physgun would be easy
So David, when GameCameraToy
Nop
So David, when SCP:SL 2 / SCP:SL Sex Update / SCP:SL Client Modding
Wdym nop
In computer-generated imagery and real-time 3D computer graphics, portal rendering is an algorithm for visibility determination. For example, consider a 3D computer game environment, which may contain many polygons, only a few of which may be visible on screen at a given time. By determining which polygons are currently not visible, and not rend...
I think it would be a mess thinking how sl works
so its a bad idea
especially for the culling
Idk how would it work
Best I can do is camera with NxM resolution and like 5 fps
crazy
#removeCulling

π
cullingtoy 14.2 
MeshToy
Or TextureToy
Custom Character Toy
you should add picture toy with us being able to input pixels into it and it would show
Destroy Your Computer Toy
Setting an already existing texture/mesh into the parent
#killslejm
wait triangle would be useful though
fr
I think it would be better to finish up missing stuff from labapi
than adding new and new toys
even tho they are cool
thats the plan
How many internal pr/issue labapi have
Many has been merged recently
500k
Its not like you tested any of my QA requests π
BrainrotToy

We have merged over 30 prs in less than 20 days
because everyone else does them before i get the chance, or im busy and i forget about them...
Yeah its fineeee
im not brainrot im just bored
I dont blame u or anything
david you are wrong!!! add mesh toys from existing meshes in game rn!!
x3rt's pr would go hard π₯
We build the game on gitlab pipeline
Make post it on QA channel
yea but then on steam? or what?
They download the depots yea
Ye it auto push to one of the steam branch
Crazy cool
No not branch
You cant push to public via api
just depot
if it was a branch it would fucking suck lemme tell u that rn
OH
I KNOW UNDERSTAND
Now i see why on steamdb there are constantly depots being changed
lol
Wdym? You need a new manifest to download it
Yeah thats why
Deep within a secure underground facility, a sudden containment breach allows many of the secured anomalies to escape from their chambers. Assist the Foundation in re-securing the facility, help the Insurgency in their goal to capture it, or wreak havoc as an SCP in a frantic bid to escape.
SCP: Secret Laboratory Steam charts, data, update history.
You pushing into a qa branch
I know how steamworks
Yeah u download depots based on manifest ids
Ye that's auto build / push
ok so we can "spy" on nw 
Not really
2 month ago steam removed the branch seen by public
sadly
You only see public branches, and password opened one
i have the public qa one
because i tested it and contributed to it lol
with my amazing video
I had the Patreon beta one
im still wondering if someone saw it
delusional
she always was
fr
devs used branches before
but steam limits them
the good thing about branches is they are really easy to use
compared to manifest ids
Well
Ye if you know how to use manifest ids
I remember it needs what branch it has
To use manifest ids you need the steam depot downloader
while with branches you can just put them in the app
DD can do it.
Usually like
depotdownloader -app appid -depot depotid -branch qa_testing2 -manifest manifestid -qa -dir "Lel"
then u need the password
No
If you already know the depotid no
*manifest
u can password protect
^
Not matter if you know what branch it comes from and what the manifestId
so in theory
well in this case we have private builds so it needs you to either have the license in your steam account or a password for the depot downloader
it wont work just with the manifest id
if we have just this we could download them :3
If you have the encrypted manifestId yes you need the password
so sad no internal leaks ;( (im joking i don't wanna have a lawsuit under my doorbell :3)
I can download PayDay 3 manifests that are not public by only the manifestid and branch name
Yes even if someone downloads them cant play since the game verifies your thing
You download PD3 testing branch or what? XD
Ye, I can download any version of pd3
but why?
LOL
You need something called "WebToken"
I think yea because if its internal testing branch
btw i think its illegal even leaking info from those build
idk why i feel like it is
Yes it is
That's why you not see me doing anything with it lol
I respect them, i just see what they do thats all
I love seeing dev builds, funny and entertain me
probably nothing
because from a build to another probably doesn't change much
Check the changelog on pd3 too then
PD3 changelog be like: errm added something
The actual changes: 10 A4 pages
Never understood why they do that
I've seen alot of companies do that
and then we have Stress level zero doing
https://store.steampowered.com/news/app/1592190/view/4182232471524699594?l=english
an update every 20 years
didn't mean it that way
Steam won't let you download them at all
If you dont have the license in your account or provide a valid license
To the depot downloader
if I gave you rn a manifest id you wouldn't be able to use it
Btw its either webapi key or access token.
If you have permission you can request a specific webapi key with that tied of the app
Well sl is available to anonymous account, no?
I had patreon one but didn't had any dlc
Bonelab my beloved
Yea
But ye, you need a valid steam account that "owns" the game
You found the other person who bought it
i have bonelab too... bought it because my friend was on vr tho and i had like no games for them to play LOL
Its crazy good
in multiplayer
Deep within a secure underground facility, a sudden containment breach allows many of the secured anomalies to escape from their chambers. Assist the Foundation in re-securing the facility, help the Insurgency in their goal to capture it, or wreak havoc as an SCP in a frantic bid to escape.
SCP: Secret Laboratory Steam charts, data, update history.
but the problem i always find fucking british children stabbing each others
Peak VR game is still Walking Dead Saint and Sinners
Oh you mean the bot pushes the manifest into different depots than what the public have access to
For example depot 859211
Ye than you need access for that depot yes.
Might be oculus 2 moment
i have an oculus 2
Pavlov VR also peak
BUT if you push to one depot that is contains with the basic license (700331) then you dont need to own that package/license
I played the legal version
and it wasn't that fun
chinese people were too weak probably
nah cs is peak
Idk what depots does SL's gitlab bot uses to push update so
btw when SCP:SL VR
I have PD2 but never played it nor normally or in VR
I played lethal company in vr
and i need to say i cried
and on fallout 4 vr
im never touching those game in vr ever again
I was gonna say have you played "just dance" in vr
HAHAHAHHAHA
you can make it right?
when they give me scp sl src
why not
but without that impossible
lol
someone made it without src
β
or it would suck
Oh the name would be
Beat Saber
Yes but it sucks ass
It sucks ass
are you talking about Taj's thingy?
no, that's not SL
No
probably and would have to use your own primitives for skin
I am not
it was just the skeleton made with moving
but you cannot even see the cam while moving etc...
???
so it sucks ass
it was pretty smooth
I wanna see my character while playing
White Knuckle VR would be pretty cardio
I must not agree
bonelab parkour map
those are like training and pain neck
lol
What about Beat Saber?
Boring
fr
:(
Beat saber sucks
idk i don't like it at ALL
But we can all agree on one thing
VRChat got worse
i remember when i got it it wasn't that bad
Im not even touching anymore and i have it hidden
I don't even have it
BRO
Ye
eh
Moderation wise yes
community yes
development idk
you cannot even mod vrchat so
tfym you can't mod vrchat
officially, no, but there are 3rd party solutions
would be crazy
@celest thorn Which triangle tho
wdym?
90deg triangle
like a 2d triangle
doesn't matter tbh
yea
it's rotatable
Me on my way to do custom enum for primitive types just to add triangle to it
OH MY
I mean
why nw is cooking
I will have to do that
at this point just make meshtoy π
If its gonna be in primitiveobject
At this point make SL client side modding 
No
sad
public const PrimitiveType Triangle = (PrimitiveType) 420;
please don't break avery single map loader
or make a separate TriangleToy
it's gonna have horrible performance though
but
meshes
imagine that
you can create goku
tposing on sl
you can create meshes already
how
because using algo is almost impossible
and they look like shit
using what
convert the mesh to quads in blender
wherever possible
oh wait that doesn't create perfect quads

Not only cube
you can make an empty gameobject and attach an entire house
The sphere
imagine throwing a house at someone
me when eu-central official
wtf did i come back to?
would it be against VSR if I would take players inputs and train AI based on it? DNT player would not be ofc included
in theory not against the VSR but against the EU laws because you should tell a player how their data is processed and for what reason
But you should search on google or generally ask someone who is in the matter of Ai training
especially right now
in the EU
in the US they don't even care enough lol
"why do you need to know where their eyes are if you're not seeing if they're dilated"
Cant you just train on like videos
No?
Like the way they trained ai to play MC?
that doesn't include map data
Sl is different from mc
there's millions if not billions of minecraft video seconds out there
twitch streams
True but most of them are old asf
The legendary βFIGHT ME DEMONβ
i'm following a twitch streamer who often streams sl
Crazy
Sl content rn is admin abuse
Admin abuse
And allegations
Thats what shows up if i search sl
Real
Me when internet drama
βThe internet is not a safe placeβ
Lmao
Me when parents give their kid access to whole internet
Not my issue
gen alpha playing sl... 
Me when your kid is stopid and doesnβt understand the concept of candies
xd
I just kill kids in SL
WHAT
I would not have data of gameObjects around player which I think would give me better perception
can you add a command in the game
that crashes kids' games
Thats why I added the in SL at the end
is it against vsr to crash kids computer?
still funny
and not in seperate message
Yes
Yes
but if you want i can give you a method
Is it against vsr to ban kids?
this shall be fixed
the easiest cams
Is it illegal if a bully kids on SL
oh wait
erm actually it's CSG now
counter-strike global
please
is it Illegal if i get them hooked to my server and make them spend money? (IM JOKING)
You can ban for any reason
if (player.UserId.Contains("northwod") ban(player);
I had that alot of time ago
Yeah you cannot prevent NW staff to join
(those who have ban bypass)
if there was a nw staff
wait LOL
6.4
underage gambling is illegal in most countries i'm pretty sure
That code wont even work
Auth
like I physically cannot or against rules?
Not gambling
cosmetics
You would have to patch auth check for ban bypass
because I can make their time on server horrible
You make them bright and like youtube thumblains
and so they get hooked
on having the brightest and coolest cosmetics
with network play earape with audiotoy for NW staff only and send a hint over their screen with mark padding so big it's over with blicking color
I am so smart
yes that's also against CSG
david...
what is CSG?
did you know that toilets have flashing lights
That is possible
that is bullshit
we love the word VSR and now it's CSG
I will make NW staff suffer muhahaha
tf have I done XDDDDDDDD
WARNING ITS LOUD ASF
WAIT SL DEVS MOD?
im shocked
i thought they only worked on SL src
revelation of my life
bruh
Thats actually pretty cool
i thought it sounded like a microwave
Surely I did not start after labapi release...
when i test ATOH i make a tower and just put the thing to the test
porting vending machines from real life to SL speedrun any %
lmfao
Porting doom to SL
gotta add item physics
(already done 2 times)
both by zer0
@unique crane https://www.youtube.com/shorts/igMGXcAP9iE
Made with the help of Binary Waterfall:
https://github.com/nimaid/binary-waterfall
Inspired by: https://www.youtube.com/watch?v=fXaT3kcT_Ec
Wtf
I think this is considered piracy lol
can you like not post loud ahh sounds
I mean you can understand a raw video with audio of an exe
is not going to be not loud
so
but i usually listen to this videos
idk why
i found User32.dll from windows
my fyp is really weird like not in a strange way but just like stuff you don't usually expect from someone
nah its like i listen the first 20 seconds
they start to become annoying lol
or they go in autoplay
No shit
so im listening to some cool shit
and then i hear windows xp executables getting installed in my brain
can we get fonts for the text toy
make rulete playlist with this being their once and 7 times some goos songs and set it to random
trust
dunno why it was removed from the fonts
no
you can make mono with tags iirc
that's not a mono font though
zero
please
<>
?
yes
HAHAHAHHAHAA
my favorite song in all of this playlist i must say is this 2 songs
https://open.spotify.com/intl-it/track/0Ldi9pJ7Gs3WqUd80AtUGw?si=3d5e327a92d74087
https://open.spotify.com/intl-it/track/3VoY2M955hxgj9i6g3e5Yj?si=2b6b9aa22d6d4b58
crazy i know
why call OnPlayerFlippedCoin(PlayerFlippedCoinEventArgs ev) before animation
lol
why it have void
nw moment
because they always do
when a player leaves, what is the last event that is ran in that sequence? Left still keeps the player instance so i need smth further down the line
Destroy player
thanks :3
i just guessing idk actually
What is an effective event for give ammo (infinty ammo system)? Dry fired is not called if there are no bullets in the inventory
cant find an event for destroying player
unless it's a server event
no server event
hmm
OnPlayerReloadedWeapon
Give the ammo when they finished reloading
and OnItemPickup, give them ammo for the gun they picked up
Dry fire is only called when you pull the trigger and there is no chambered ammo
and only 1 time until it is recocked
also since you have inifinite ammo, don't forget to delete all ammo items when they are dropped
But honestly, giving player 65K ammo is enough
its already
stack overflow
already tried
wdym stack overflow π
player.SetAmmo(type, ushort.MaxValue)
there's no setammo on player
player.Inventory.ServerSetAmmo(type, ushort.MaxValue)
nvm
error
why
idk
show the stack trace
that was a long time ago
how get itemType for ammo from FirearmItem?
get the primary ammo container module
@unique crane sorry to ping, but as there is no player destroying event would i just use ReferenceHub.OnPlayerRemoved or is that the same as the leave event?
I believe its both called in OnDestroyed in RefHub
So yea
it works that?
what u want
i want to update player counts in discord when a player disconnects and connects, but when a player disconnects and i use the leave event, they are still in the player readylist and i dont want that
Timing.CallDelay(1)
ReadyList.Except(leavingPlayer).Count()
ReferenceHub.OnPlayerRemoved += RemovePlayer;
Well ye you should wait atleast 1 tick
OnPlayerRemoved should work
thats inside LabApi wrapper
ReferenceHub
ah yxe
idk how to get leaving player tho lol
but if player removed works
okie
did you use LeavingEvent
did you made a wait?
since it runs before the player being removed from Dictioanry
no
then the player is there
cant use that
why
because im making a translation builder
and that doesnt contain the leaving player
smh
the translation builder
bruh
it uses Server.PlayerCount
automatically replaces {playercount}
i really dont know what u want
okie cool
there is
onbeforepostleftpreplayerdestroyed
then i gotta wait a frame π
why
Player.List doesn't use hub list
dont use player list 
just try it π
because it's removed from Player.List when OnPlayerRemoved is called
this better work bruh
what's the problem with waiting for one frame
thats what I been saying the entire time
dont wanna do it if i dont have to
fuck you
WHAT DID I DO
:3
then postfix ReferenceHub::OnDestroy
π
thats me !
ew
:(
AdminToyBase.MovementSmoothing is a byte
What does the byte mean?
frames to interpolate?
seconds?
and does = 0 disable smoothing completely?
Yes, 0 disables the smoothing completely. Any other values causes the position and rotation to be lerped on the client
With higher value moving the toy faster
ah thank you
where are they
like compared to each other
u need to reference the namespace using of the extension
DoorExtension is inside namespace Site12.Extensions
and the other script has
using Site12.Extensions;
oh yeah
i didnt even realize
yeah u cant have a static property
@plain gazelle dont make it an extension
remove this Door door
and just do DoorExtensions.GetClosest(player, out float distance)
ohhh
probably smarter
Thank you!
Does Door.IsOpened = true open the door? 
Exiled has a lot clearer methods and properties for their doors x.x
well
if you set it as opened
id assume itd become opened
assume, yeah, but its just not thaaat clear
i thought it was but idk
hm, this is how i used to break and repair doors using exiled
How can i do it using LabAPI/Interactables stuff?
um
ask in exiled
door is BreakableDoor breakableDoor
breakableDoor.IsBroken = true
eve
mb
i saw the image
Oh you can even tell it the damage type for breaking it, neat!
Hello!
I'm trying to compile a plugin for SCP: Secret Laboratory using NWAPI, but I'm missing some essential dependencies, specifically MEC.dll and PlayerRoles.dll.
I've checked both the dedicated server and the official NWAPI repository, but these DLLs are not included.
Could someone please provide a download link or a package containing these development dependencies?
Alternatively, if you have a recommended source or method to obtain them, I would really appreciate your help!
Thank you very much in advance!
Hello, NWAPI is no longer in game. You need to use LabAPI
For missing references, download dedicated server from steam
And go to SCPSL_Data/Managed folder
[2025-07-12 18:24:42.803 +03:00] [STDOUT] NullReferenceException: Object reference not set to an instance of an object.
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at UnityEngine.Bindings.ThrowHelper.ThrowNullReferenceException (System.Object obj) [0x00018] in <0deee1b9576d40a7a211b55014778fa6>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at UnityEngine.Component.get_gameObject () [0x00006] in <0deee1b9576d40a7a211b55014778fa6>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at ReferenceHub.GetHashCode () [0x00000] in <d9731e675e55453197cf28cd60eed3f2>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at System.Collections.Generic.Dictionary2[TKey,TValue].FindEntry (TKey key) [0x00035] in <069d7b80a3914a08b6825aa362b07f5e>:0 [2025-07-12 18:24:42.804 +03:00] [STDOUT] at System.Collections.Generic.Dictionary2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <069d7b80a3914a08b6825aa362b07f5e>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at CollectionExtensions.GetOrAdd[TKey,TValue] (System.Collections.Generic.Dictionary2[TKey,TValue] dictionary, TKey key, System.Func1[TResult] factory) [0x00000] in <d9731e675e55453197cf28cd60eed3f2>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at InventorySystem.Items.Firearms.Ammo.ReserveAmmoSync.UpdateDelta () [0x00032] in <d9731e675e55453197cf28cd60eed3f2>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at InventorySystem.Items.Firearms.Ammo.ReserveAmmoSync+<>c.<Init>b__2_3 () [0x00008] in <d9731e675e55453197cf28cd60eed3f2>:0
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at (wrapper delegate-invoke) <Module>.invoke_void()
[2025-07-12 18:24:42.804 +03:00] [STDOUT] at StaticUnityMethods.Update () [0x00009] in <d9731e675e55453197cf28cd60eed3f2>:0
How can I understand which plugin caused the error?
Isn't this already got reported
it happens when plugin errors when using StaticUnityMethods.Update
entire thing dies
idk why error always goes back to firearm ammo
but oh well
Skill issue idk
Hello!
I'm trying to compile a plugin for SCP: Secret Laboratory using LabAPI (version 1.1.0.0), but I'm missing some essential DLLs or the correct version of LabApi.dll.
The DLL I have does not contain the expected types (such as LabApi.Plugins.Plugin, Player, PlayerChangeRoleEvent, etc.), so the plugin won't compile.
Could someone please provide:
- The correct LabApi.dll (and any other required DLLs) for plugin development
- Or a working example plugin with all the dependencies it uses
Thank you very much for your help!
Yes there should be nugget package called "LabAPI" if I remember correctly. Installing that should ensure thet all missing references you currently have will be present when building your plugin.
LabApi.Loader.Features.Plugins.Plugin not LabApi.Plugins.Plugin
LabAPI.dll should be pre-installed on existing server
also PlayerChangingRoleEventArgs not PlayerChangeRoleEvent
^^
PlayerEvents.ChangingRole += OnChangingRole;
private void OnChangingRole(PlayerChangingRoleEventArgs ev)
or smth
haiii
i take it there is no way to disable command loading right?
remove the attribute
just wanted to write that
how when labapi registers for us? or is there a way to disable...
disable the attribute
and labapi wont register it
ah
QueryProcessor.DotCommandHandler.RegisterCommand(command);
CommandProcessor.RemoteAdminCommandHandler.RegisterCommand(command);
GameCore.Console.singleton.ConsoleCommandHandler.RegisterCommand(command);
Shhh
It smells like chat yappity
Download the dedicated server from steam, and you'll find the assemblies in SCPSL_Data/Managed if you open the directory of the server
Use the NuGet LabAPI and reference Assembly-CSharp UnityEngine.CoreModule in your project
If anything else is missing, your IDE or the compiler will scream for it
Hiii
hi
how are you doing :3
dedd
Thats so sad
Does a constructor count as an entrypoint
i mean it runs automatically but why dont people use it as an entry point for dependencies?
what
be more specific
static constructor only runs when the class is called
if i have a variable and set it as new(); as the initializer, it runs the constructor
ah
when the program starts
yes....
technically this could be used to run code without a plugin entry point
this sounds bad to me but im not sure if it is.
actually a lot dont
and creating a per plugin instance to store feels wasteful if its not needed
which is why ruei eg uses .EnsureInit()
idk if i fully get it
still needs yk something to call the new()
so would you prefer Dependency.Init() or new Dependency()
if im understanding ur thing
i dont fully know C# lore
but i do believe for a field to be intialized you need to call it
which needs smth that runs on startup to then call it
okay i see lol
eg fields are created in a ctor
if theyre static theyre created in the static ctor
A static constructor is used to initialize any static data, or to perform a particular action that needs to be performed only once. It's called automatically before the first instance is created or any static members are referenced. A static constructor is called at most once.
Static ctor is also called only when you access the static class for the first time
Not on assembly load
yeah





