#plugins-dev-chat
1 messages · Page 79 of 1
stupid question, what reference does TryGetRoleBase belong to?
This should spawn a shotgun at the room the player is standing in correct?
Pickup.Create(ItemType.GunShotgun, player.Room.Position, player.Room.Rotation, new Vector3(1.0f,1.0f,1.0f));
player is the sender of the command
Make sure to do Pickup.Spawn() too
Thanks
Um im not seeing a Pickup.Spawn(); :/
Oh its at the end of the big stuff
Nvm
Do
Pickup pickup = Pickup.Create(ItemType.GunShotgun, player.Room.Position, player.Room.Rotation, new Vector3(1.0f,1.0f,1.0f));
pickup.Spawn();
If i wanted to make it so the gun didnt fall when spawned in (like mounted on a wall) and couldnt be moved by anything how would I do that?
There is a way but I dont remember
anyone know how I can apply SCP 1344 to a player? I don't need the animation to play, just for the effect, and if there is a way to alter the speed that the player pings show up
irrc
Player.ReferenceHub.playerEffectsController.ChangeState("Scp1344", Intensity, Duration);
Yu could just player.EnableEffect<Scp1344>();
public static bool TryGetRoleBase<T>(this RoleTypeId roleTypeId, [NotNullWhen(true)] out T? role)
=> PlayerRoleLoader.TryGetRoleTemplate(roleTypeId, out role);
Dw about ur question i just forgot half
Oh
I didnt reply ping
^^
There
Thanks!!
🔥
dev chat dead
Who's "normal people"
me crying because i need to remove the bom
and gets added again
by fucking webstorm
People complaining about their IDEs doing something they don't want but don't search to change it
I did now wtf a bom was
i just knew config not working
then checking the git
someone said Oh its bom without anything on how to fix it
Look it up yourself 
It's in encoding settings iirc
And yes I know it's infuriating
BOM is stupid
Use Linux
I rather change the ide then search for its problems
Yeah like vs doesn't have any problems
Solution: vim
Set up everything yourself
The dock tabs are annoying
And asking me every time to log into github nuget package store
XDDDDD
(which can be disabled but)
i'd rather explode
Disable ai assistant
I use my own GitHub packages
than changing
I use my own github
Let's go
Actual stuff
Has Microsoft heard about this thing called
Git credentials manager
Looks like they haven't heard about it enough
Kek
Roll your own NuGet
McNuGet

-# +1000000 lawsuits
im about to blow up my head
Atleast that doesn't ask for password
Edge
no because fucking next js edge everything related to /[shit]
I know im starting to hating it
I mean server
There are many program lang that solve that problem
Javascript should NOT be in server side
kill js
Joker serious
Nine tail fox file
its just for aws.....
AND ITS NOT EVEN AN INVITE LINK
Joining random js dev place and asking why are js exist in server place
ITS A CHANNEL
Lmao
do they fucking know how discord works?
Oh there's an invite at the bottom of the page
No its CLOUDFLARE
like wtf
cloudflare i love you so much for protecting me everyday
from egangster
but your docs suck
Protecting me against myself
Never used cloudfare
Bc i only host for myself and close friends
who tf ships in production "//TODO: add to the docs"
Me
you are a fucking multi billion corporation
Not yet
So does
Changing effectiveblinkdistance do nothing?
I think 173's blink distance is client-side
Yes but it will tp you further or behind your target position
Cringe
Not in my experience but I'll have to test
That's why i know
It will tp behind or further you see the actual model
@ david syncvar on that when

If I want to change scp173's blink timer, patching TotalCooldownServer getter will do what I want right?
Because I'm having issues with it being inconsistent but I think it's just me
šebest
I can imagine something similar as with autosync stuff
Sebes
Sebesvonat
Crying
Or idk
I have been searching through this assembly csharp and can't find method for cuff verifiecation
Disarming
DisarmingHandlers. ServerProcessDisarmMessage(NetworkConnection conn, DisarmMessage msg)
Yep
And you cannot prevent the circle from appearing
where tf is DisarmingHandlers
Fun fact
You can look for usages of labapi events
found it
Why? I wann have peanut distance can be set further or behind.
And the cooldown timer too
"Import missing references in file"
Everything is const and static it just sad
Guys what missing references do I have 
What's fucked up with teh cooldown timer
I'm not saying there won't be ways to change it, but sync vars aren't an option for roles
It's const that's it
Double shift 
/*
I was editing the cooldown inside the thing
I said that isnt great thats it
For modding purpus but good for dev
VALAHOL MEGÁLL
This requires the classes to be decompiled already IIRC
I gave up on blink distance cause no sync
YOU CAN CHANGE THAT????
I just dont care about that
It works for everything else :(
I know editting the cooldown works
I just
DOES NOT SYNC WITH LIENT
There's a guide explaining what vonatnem is which
But then there's Z72 
;(
@restive turret do you fuck w/ blink cooldown?
S Személy, Z Zónázó, G Gyors
Yes
No
To do that do you just run a patch for the TotalCooldownServer getter?
G is gyorsított
Gy is gyorsvonat
oh right
Gyorsított szemelyvonat
the fancy GY
Y is lowercase
btw i fixed alone that problem
Bruh
Interesting
hagyma, csipős also comes with the train if it is Giroszos
Very intereting
I like the plain girosz
Why 0.0f * (float) (current - prev)
Lmao
I assume lag compensation
So I should just scale the _totalCooldown and the random 2.0 in OnObserversChanged to achieve my desired result?
Gotcha
Might need to change sustain time
Because previously peanut had extra cooldown time per observer
Which has changed
to 0 now
why not removing it?
honestly im confused
i have an error on cloudflare workers but not on my local build?
and the error doesn't even reference my code
debugging air
step 1: install a compiler framework instead of a runtime framework
i know but like its strangwe asf
It works the website
but calling one endpoint throws an error
Js devs only know how to create a next app 
im using ts :3
Yeah
you know i hate nextjs and i work in js/ts smh
Ask my magic 8balls
Yes, but you know typescript
Typing while i scripting like a skid
it means the thing before definition is undefined
well… skill issue
nextjs issue
or whatever
yes i do understand the code
Maybe nextjs isn't built for cloudflare workers
nope

mfw cloudflare workers needs a static build…
APis do work fine
even auth works fine
blog post
everything
What breaks then
eh well idk, i don’t use shit
XDDD
Does it pnpm install correctly on CF?
the thing is also ax, zero stole my whole website and recoded it in nextjs as they didn’t like sveltekit… like a full on 1:1 rip off
Nope its not even for that website
and stolen
is big words
i just took the design like a pirate and made it mine

honestly its 2 modals
lol
oh i found out why
honestly i wouldn't use stealing
Fucked up imports?
zo like it's my first time making patch and kinda not working. Registering was
var harmony = new Harmony("saskyc.com");
harmony.PatchAll();
else i would've stolen other stuff
You can't force disarming that the client doesn't send
The client checks if they can disarm and then the server validates
fuck
You never get the request for same-team
obv no disarm is an item if i remember
every SCP has inventory
But they're not an IInventoryRole
But detain checks for that??
give + fequip 
No
does client process opening inv?
The command doesn't
why does client do so many things :(
can the client destroy your pc
I keep forgetting that I connected in game ranks to my local DB for testing 
And that I have to manually start mysql service
i connected the entire permission system to a db
so when i check it does
Base Game
Cedmod
Database
MySQL 
Do you use XAMPP
That auto-starts services by default
So when I try something with caddy and port 80 shits itself
I angry
Do you write Italian 
Screaming italian
Bruh

Ok what's next
Ok , what's the nuxt quests
SL in SL
Does anyone know how to make it so that a shotgun spawned in using pickup has no collision or gravity? Something so that it will stay still until picked up like when mounted to a wall.
Get its rigidbody and set isKinematic to false
Omg is that it
Thank you
Not sure but give it a try
There might be something else to do
Check how the uh
Item distributor does it
Derives from SpawnablesDistributorBase iirc
-# ... false?
Mb, set it to true
Lmao thanks
Np
Once im off work ill get it implemented
Work 
Can I hate my job if I'm unemployed?
Based
sameeeee
at work i plan out what im gonna code after work xD
just one more feature
just one more method
nah gotta finish something for work
at least i'll be up when my gf wakes up, our work schedules kinda make us miss each other since she wakes up early for work and I tend to insomnia my way into sleeping in late
Lmao
Thats nice
aye
hi gng
nah i always work on anydesk
so im safe
ew
I know
Thats not my actual job btw
I scanning an url with vulnerablilities and I just waiting
Dw url is the corpos one
Hi! does anybody have a patch for that error when I spawn a dummy?
Huh?
I get no errors when spawning dummies
14.1.2 fixes it
How can I cut off my hands in the game on my own? (this for school project i promise)
Ah okay
Set SeveredHands effect
Until that, probably Cyn has it or idk
ty
its before round start
Now it's time to wait 3849 year until next update trollface
No
Can replicate it when round already running
oh
ive never done it on a round
at least with it erroring
14.1.2 best waited update
Yup
i do always wonder something
Cant wait for daily david ping after 14.1.2
hope not 
nah i don't wanna disturb most likely just wait or it will be forgotten
its like something that i wonder alot like how tf they didn't see that error
me just testing the version in 2 seconds i saw it
Anydesk is best friend of 2 Categories
- Me
- ||Indian Scammers||
The 1 and 2 are the same
2 are more afraid to use anydesk
Are you sure
Now yes
Yes 100%
🦈 Go to https://surfshark.com/trilogy or use code TRILOGY at checkout to get 4 extra months of Surfshark VPN!🦈
In the biggest global scambaiting collaboration ever assembled, we teamed up with legends @JimBrowning @AgentG9 @irlrosie @KitbogaShow @PleasantGreen @DEYOCLUB @KarlRock @_JohnHammond @AnyDeskSoftware @ScammerPayback @SkeletonSys...
I have a birth certificate that says Italian and were i was born, both of my parents are italian so yes
im NOT indian
You're a big fat LIAR
Your pants: on fire
LOL
Scanner
im not a Scammer either because i don't get paid by none
and i feel bad just by asking money
nah bro
NAH
The great purge
the great destruction
use rustdesk
No i love the guys at anydesk
they help scambaiters and do something about them
they deserve to be installed and used :3
Only missing feature is cursor locking
Rn it's not very convenient to play SL through AD, minecraft is almost impossible
thats so true
i still developed on sl
We test animals' code in prod 
10% of atoh is written while i was in school with my laptop
The constant need to escape and reposition your mouse is not very nice
But I do it often
Cuz I have to
prob from when they stopped using seperate branches for halloween etc
that is smart honestly
so now flamingo is part of the game always, just disabled
btw
"Christmas"
"Revert christmas"
"Reapply christmas"
Ye would be cool to can do stuff with them as modders
always Christmas
Just set the date to christmas on clients 
btw someone knows how accurate is the Region in the auth? and if i could take it from the referencehub
Wouldnt be so seasonal event then xd
I WANT MY SERVER TO ALWAYS BE CHRISTMAS
I love christmas
and nw cannot remove my right to have 365 days a year christmas in my server
very jolly
btw david you know something pre authentication and the region?
no
so sad
i want to understand how accurate it is
and if i could use it
oh wait
game doesn't even save it
why tf in the server there is a check called UseGlobalBans you could disable it
like wtf
Me when geolocation
Yo axwabo you know if its possible that i can use like a single Class for alot of yaml?
Like i make a class for translation
and like translation es and us use the same keys
but with different stuff written inside
like do load() and in load deserialize all of the files under a category
and save them in a dict

g;s;
im not doing it like pirate software massive array 
Get sad
Per player hints
No i know that
its already like that
the problem is like getting the text
and replace stuff
for each player
isn't that heavy?
p.Translate(TranslationKey.Amogus)
It might be but you can cache them per language if it becomes a problem
like as of rn im doing like this
i think i will do this
Rider is screaming
wtf is genetics?
Generics
why is the method being called even though the door wasn't even open? (even the animation is)
for all doors except 096 it wasnt called
Because interacting doesn't equals opening?
Interaction = press E
or whatever your binding is
you dont have RMB to open door
Ctrl
Well
You mean zoom?
The forward button on my mouse
Mouse4
I think my binds aren't as bad as pressing shift with the thumb
need check ev.CanOpen?
or how i can check if the fucking door was opened
Door.Base.GetExactSomething() is 0 or 1
Check for the opened state in the interacted event
Interacted ev.IsOpened or smth
PlayerInteractedDoorEventArgs -> ev.CanOpen
but yeah if u want to know the new state theres like door.IsOpened
Anyone knows what is the point of the server listening for OnWaveUpdateMsgReceived? 😭
does it
Yes
Everywhere a client would
yea but the event
WaveManager
crazy work ngl
I had to restrict my messages to verified client, otherwise the server would override its timer (I have to sync it more often)
well you should use Player.GetAll()
I just did
new WaveUpdateMessage(__instance._wave, UpdateMessageFlags.Timer).SendToHubsConditionally(x => x.authManager.InstanceMode == CentralAuth.ClientInstanceMode.ReadyClient);
😭
dnspyex is worse than dnspy
its frustrating cause dnspy could be so much easier to use with just a couple (probably easy) changes
Use ILSpy
How do I change explosion damage?
Am I able to set a base damage and have the game calculate the actual damage?
wdym
I want the set the damage that would be dealt if you were in the middle and have it curve from their using the base game for the logic
youll have to do the math on the animation curve and change it
Damn ok
shouldnt be too difficult
grenade._playerDamageOverDistance.keys
the time variable is the distance
value is the damage amount
literally no clue
might work
@unique crane hey nerd
whats the best way of doing this
Why is there a red squiggly line
me when i
it wants a space
Omg
Huh?
Okay
Why tho?
fair
I hate stylecop
Rider formats it the way I want it, I don't need 1000000 style errors for myself
So anyway how do I get the keyframes for AnimationCurve?
You think 
I have legit never messed with animation curves
me neither
Just give it a time and value
_playerDamageOverDistance is private for me
you need to publicize
omg
Publicize 
<PackageReference Include="BepInEx.AssemblyPublicizer.MSBuild" Version="0.5.0-beta.1" PrivateAssets="all" />
<Reference Include="Assembly-CSharp" HintPath="$(SL_REFERENCES)\Assembly-CSharp.dll" Publicize="true" />
You're not typing
Also need to enable unsafe code if you access publicized code
What?
Can't find an event on warhead for that
Nope
so patch it ig
you could do 2 things
patch this BaseNukesitePanel.Networkenabled
Enable unsafe code in your project settings
or use this AlphaWarheadNukesitePanel.ServerInteract
and patch one of the 2
but i would reccomend to use AlphaWarheadNukesitePanel.ServerInteract
because more stable
Where do I do that and why is it nessecary?
ok thx
In your IDE
otherwise you won't be able to access those "public" members at runtime
You'll get a MethodAccessException or FieldAccessException (idk what they're called exactly)
(I'm an idiot for not asking this before) How do I set the damage for any of this?
Thanks
how can i get the players floor position?
Maybe my code is dumb but just doing position.y - (scale.y / 2) doesnt produce the intended position and even changes vertically based on the players scale
Player::Position maybe?
add new Vector3(0, player.Scale.y) to the position
don't divide by 2
the player is "anchored" 1 unit above the floor for default scale

tf?
System.Linq missing from dependencies?
I have no clue how
you're using the .NET 8 SDK...
^
Oh shit yea
Your a little late to that video
what video
This one
I made an ender pearl, that's what
Is there an event I can use for the player starting to pick up an item? I tried OnPlayerPickingUpItem and that's just as soon as they actually pick it up
playersearching maybe
ty, I'll give that a shot
np
Is there any way I can override the duration of scp 1344 sprites, how frequently they appear, or how far away they can see?
not really
Alas
How can I get the serial of a grenade that is trying to cause damage in HurtingEvent?
i dont think you can
u might be cooked
is that a thing
yes
well this doesnt rly work
AllowSelfDamage needs to be false too
@barren pasture ^
it's joever
just check if the thrower is the same as the hurt player
yes but
and cancel
that doesnt fix getting serial
of a grenade
from the damage handler which doesnt have it
they wanted it for 1 specific grenade not all
crooked
also
explosion damage handler has an itty bitty issue

public ExplosionDamageHandler(
Footprint attacker,
Vector3 force,
float damage,
int armorPenetration,
ExplosionType explosionType)
{
if (armorPenetration == 0)
return;
this.Attacker = attacker;
this.ExplosionType = explosionType;
this._force = force;
this._serverLogsText = DeathTranslations.Explosion.LogLabel + " caused by " + attacker.Nickname;
BodyArmor bodyArmor;
this.Damage = BodyArmorUtils.ProcessDamage(!(attacker.Hub != (ReferenceHub) null) || !attacker.Hub.inventory.TryGetBodyArmor(out bodyArmor) ? 0 : bodyArmor.VestEfficacy, damage, armorPenetration);
}
any song recommendation?
shinedown - killing fields
I was listening to Friendly Fire by Linkin Park so I guess that?
Fair
What exactly would I partch?
ExplosionGrenade.ExplodeDestructible
this line
youll also need a custom damage handler
well actually
you could prefix it and prevent the damage in the first place
idk both of the songs remind me of ai generated songs
I promise Friendly Fire is not AI generated
The one I was listening to was sung by Chester, who left the band in 2017
private static bool Prefix(IDestructible dest, Footprint attacker, ExplosionGrenade setts)
{
if (setts.Info.Serial != 0)
return true;
if (!ReferenceHub.TryGetHubNetID(dest.NetworkId, out ReferenceHub hub))
return true;
return hub != attacker.Hub;
}
@barren pasture
i cant test but smth like that
change the first serial condition
to your serials
@pseudo python Do not dm me
If you have issue with a plugin that I maintain, create a github issue or send a message in the thread with it
update your pink candy plugin then
so why it does not work if u putgted in lab api plugins section
show error
there is no error but it like dont give me the pink candy tried like 50 candy and none
pink
and whats the chance set to?
config
idk how to even find it
i ate the config sorry
Spit it out then
@hearty shard u ,eam home container scp sl and the config
Well, that's all I can try
then
there is not candy utils or config yml
did you install it
yes
oh new server build wooo
and console says it loaded?
no
then you didnt install it
the plugin is in .config scp sl lab api plugins
reminder that this is dev chat and not support
they dm'd so i went into first chat i was in and pinged 
Fun fact: Harmony patches work a LOT better when you remember to actually PatchAll
trolled
I'm just trolling myself at this point
btw does anyone know how to fix scriped events
contact their support
afaik they have a discord
what now when i restarted it
alr
and now you have candy
whats the chance?
3 by default
^
so now its 100
if thats what u set the config value to
so it one in 100
works for me
the plugin you just installed...
Patching works even better if you include the attribute
Fuck you pinging her for now?
so ten is ten
1 in 10 is 10%, yes
i outted 25 and i did not get any yet
dead chat
not really
?
its not
unless you mod client side, which you need to figure out IL2CPP modding
also you cant run a verified server then with it
oh no
il2cpp
impossible
idk how to reverse engineering
u shouldnt do it anyway
unless u plan to only play it w ppl you know already for an event or smth
i think there are tools for il2cpp unity modding
someone gave me recommednations
reverse enginering isnt even necessary i dont think, but i wouldnt doubt it would help
foreach (Player player in Player.ReadyList)
{
if (player.Role is PlayerRoles.RoleTypeId.Scp173)
}
like this?
Should work
ty
Player.ReadyList.Any(player => player.Role == RoleTypeId.Scp173)
that’s all you need
so
i cant change default parameters for some weapons?
i have tried to use custom items API but I didn't understand anything
Idk
But ur question was custom models originally , idk about firearms logic not smth i interact with
that question was an piece of custom item
HUH
nvm
or with upgraded custom microhid
its very important to me, i need this in game (my fren asking)
i am traumatized from this chat
Sorry
I wasn't trying to harm you psychologically, it's just for fun, we're not gays
Hey i know this isnt plugins but i thought this would be a good place to ask this:
My friend is having issues with SCP SL crashing when booting up. It will reach 100% show a few frames of the menu then crash. He has verified the files, reinstalled the game, reset settings, and updated his gpu.
thx
Gave them every detail including player log etc
I've got a bit of a challenge, I've got a fictional role that is basically an amped up scientist, they spawn with some handicaps as well as some interesting items, but I want to make it so that on death, those items that they start with are destroyed and not dropped. As for my implementation, I tried this:
private void OnPlayerDying(PlayerDyingEventArgs ev)
{
Player player = ev.Player;
if (ScienceTeamMembers.Contains(player))
{
foreach (var item in ScienceTeamItems)
{
try
{
player.RemoveItem(item);
}
catch { }
}
ScienceTeamMembers.Remove(player);
}
}
however during testing I noticed the items were still dropped. Thoughts?
Not sure about the dropping of the items but just throwing a thought in:
I would loop through player.Items.ToList() instead and check with ScienceTeamItems.Contains(item) and remove the items from the player. That would avoid issues with having the same item multiple times and only one getting deleted
interesting shout, I'll give it a go and see if your theory is right!
if (room == RoomName.Unnamed)
return;
var r = Room.Get(room);
var rm = r.ElementAt(UnityEngine.Random.Range(0, r.Count()));
CustomItem.Get("EnderPearl").Spawn(rm.Transform.position + new Vector3(0, 1, 0), ItemType.GrenadeHE);```
```public virtual Pickup Spawn(Vector3 position, ItemType item)
{
var pickup = Pickup.Create(item, position);
TrackedSerials.Add(pickup.Serial);
LabApi.Features.Console.Logger.Debug("Spawned object.");
return pickup;
}```
My object does not seem to be spawning. What am I doing wrong here? (This is a custom class btw)
so ur gonna wanna use a unity asset bundle loader to load a bundle with a pink dildo into the game, and use bepinex to inject code into your client side game to make a new item type that uses that model
easy peasy
i would also recommend decompiling SCP SL to unity project. you wont get any code but you will get a good idea of how it's structured and how to most closely abide by the coding / asset management practices used by NW
do any of u wanna help test out ruei v3
You need to call spawn on the pickup
What?
Pickup::Spawn();
Ok thanks
Me when gmod exists
never go the easy way, always do the unnecessarily hard, contrived, and ultimately pointless thing
im lazy and cba to test EVERYTHING
What are the requirements?
At zero 
u help
I don't use RueI at all
I'll help test it, why not
I need to add compatibility between it and my framework anyway
ill send the stuff tmrw
yuh huh
Alr
i would like a copy of ruei 3
Nah, you'll only rent it 
drm on a plugin is insane work





