#plugins-dev-chat

1 messages Β· Page 4 of 1

random scaffold
#

lol

hearty shard
#

restarted discord and now it takes more ram than it did before the restart

#

😭

harsh thorn
#

i have many tabs

hearty shard
#

its actually gonna get to 2gb

stuck peak
hearty shard
#

please and thank you

random scaffold
#

infinity

#

xd

stuck peak
#

but then they changed their coupon policy so sajj only 1 coupon

harsh thorn
#

bro was too slow

icy knoll
stuck peak
#

they changed it because of me

icy knoll
#

more bugs, less ram usage

stuck peak
random scaffold
harsh thorn
thin shuttle
#

This do not work

#

Since the rework of team enum

harsh thorn
#

kindof the wrong channel

#

thats more of a bugreport thing for the game

stuck peak
#

1586 errors left yippie

stuck peak
unique crane
#

Nice

stuck peak
#

every remaining plugin relies on Player Factories

#

so I'll have to somehow port them to Data Stores

hearty shard
#

a bit less

#

😭

restive turret
#

Oh yeah right

stuck peak
hearty shard
stuck peak
#

you may be referencing System.Collections.dll somewhere manually

#

oh

#

remove System trollcat

hearty shard
restive turret
#

Remove mscorelibClassDTroll1

hearty shard
#

its only queue that doesnt like it

#

xd

restive turret
#

And CCDict

hearty shard
#

its cuz of these

#

nvm System one isnt causing issues just the generic collections

restive turret
#

Just don't use mscorelib ClassDPlushie

thin shuttle
harsh thorn
#

confirm it yourself in community QA trollage

hexed girder
worthy rune
#

you should be able to compare by the wrapper, since there should only be one wrapper per ItemBase

obtuse spruce
#

is there nothing inside LabAPI to remake something like Player Factory ? or a Temporary Storage on the Player class ?

stuck peak
#

Player Factory no

#

Data Storage yes but not in the currently released version

obtuse spruce
stuck peak
obtuse spruce
#

seem interesting. really really interesting

obtuse spruce
stuck peak
#

if you register the datastore yes

#

if not, it will be created once you call XyzDataStore.Get on a player

icy knoll
stuck peak
icy knoll
#

im surprised exiled doesn't have this

obtuse spruce
icy knoll
#

like for me, i save player stats of my players using this same sort of method, but do it manually

stuck peak
#

(also datastores are created for the Host Player so technically you could store data for the Server too)

obtuse spruce
stuck peak
#

shrujj I never used NWAPI much

#

I just used my own framework

#

but yeah it's similar to a player factory

#

you could use it like one

obtuse spruce
#

I have my own too but actually im so lazy to recode an entire wrapper for the player. Im familiar with Player Factory and what you adding look so awesome

stuck peak
#

I am thinking about extending it to allow you to create DataStores for Items/Pickups too

obtuse spruce
#

Did you think you can add a virtual void Start() and Destroy method ?

stuck peak
#

so you could attach data to items as well

stuck peak
#

OnInstanceCreated

#

OnInstanceDestroyed

icy knoll
stuck peak
#

Internal repo

obtuse spruce
stuck peak
#

#192 aware

icy knoll
#

i wanna see the code :c

stuck peak
#

but it's merged

obtuse spruce
stuck peak
#

check dev branch

icy knoll
#

yeah i found it

obtuse spruce
#

Yipee

#

we can contribute easily to LabAPI ?

stuck peak
#

you can either do

public class ExampleDataStore : CustomDataStore<ExampleDataStore>
{
    public ExampleDataStore(Player owner)
        : base(owner)
    {
    }
}

or

public class OtherDataStore : CustomDataStore
{
    public OtherDataStore(Player owner)
        : base(owner)
    {
    }
}

but the advantage of using the generic version (first version)
is that you can do ExampleDataStore.Get(player)
if you use the non generic version (second version)
you have to specify the type CustomDataStore.GetOrAdd<OtherDataStore>(player)

obtuse spruce
#

Well well well pepe_think

#

i really like using <T> bc im a weird person so im gonna use the second personally i thinkkkkk

stuck peak
#

you can also do ExampleDataStore store = player.GetDataStore<ExampleDataStore>(); regardless of whether or not you used the generic version

#

the stores are shared between plugins so technically you can define a store in a dependency, and then use it across multiple plugins to share data between them

obtuse spruce
#

what is SourceGenerators i dont really understand why the InitializeWrapper are add with this stuff

stuck peak
#

(only works inside of LabAPI, don't try and use it inside of your plugins lol)

#
public static partial class PluginLoader
{
    static partial void InitializeWrappers()
    {
        LabApi.Features.Wrappers.Door.Initialize(); // 128
        LabApi.Features.Wrappers.Hazard.Initialize(); // 128
        LabApi.Features.Wrappers.PocketItem.Initialize(); // 128
        LabApi.Features.Wrappers.PocketTeleport.Initialize(); // 128
        LabApi.Features.Wrappers.LightsController.Initialize(); // 128
        LabApi.Features.Wrappers.Room.Initialize(); // 128
        LabApi.Features.Wrappers.Structure.Initialize(); // 128
        LabApi.Features.Wrappers.Camera.Initialize(); // 128
        LabApi.Features.Wrappers.Warhead.Initialize(); // 128
        LabApi.Features.Wrappers.Item.Initialize(); // 128
        LabApi.Features.Wrappers.Pickup.Initialize(); // 128
        LabApi.Features.Wrappers.Ragdoll.Initialize(); // 128
        LabApi.Features.Wrappers.Player.Initialize(); // 128
        LabApi.Features.Wrappers.Tesla.Initialize(); // 128
        LabApi.Features.Wrappers.Elevator.Initialize(); // 128
        LabApi.Features.Wrappers.Server.Initialize(); // 128
    }
}

This is the generated output at build time

#

saves us from manually having to run these methods and makes sure we don't forget to initialize any wrappers

obtuse spruce
#

Oh okayyy i see

stuck peak
#

similarly I made generators for events
so we don't have to write 10000 invokers

obtuse spruce
#

πŸ‘οΈπŸ‘„πŸ‘οΈ

#

actually if i want to contribute to LabAPI. Can i ?

stuck peak
#

yeah sure

obtuse spruce
#

Nice

#

in any case I thank you for replying and also showing me what you plan to add that I think I'll use :))

hearty shard
#

@harsh thorn is there plans for Role wrappers ?

#

also something like Queue doesnt work when referencing mscorlib, even in labapi, is there a fix other than removing the reference?

restive turret
#

Not using queue?

hearty shard
stuck peak
#

no problems here

#

yippie electrician here so no internet for a bit

#

will finally have proper grounding in my sockets I think

icy knoll
#

in the UK, it is required to have grounding in ur sockets

#

by law

#

:3

stuck peak
#

old house

#

the sockets have fake ground

#

as in they aren't grounded but have the socket with the ground prong

icy knoll
#

that's so smelly what

rain isle
stuck peak
#

my server hasn't gone up in flames yet GULP so it's not that smelly

icy knoll
stuck peak
#

oh god wait

#

I was planning on watching youtube videos I downloaded to my server

#

but my server will be offline sajj

#

wtf am I going to do for however long it takes

icy knoll
#

download the videos to ur pc then

#

not ur server

#

or download to ur phone

stuck peak
#

pc will be off to

#

I am trying RAGEY

#

seal only lets me download 1 video at a time

icy knoll
#

me when youtube premium

stuck peak
#

me when I cancelled it a few days ago

icy knoll
#

ha! poor!

#

/j

stuck peak
#

stupid price increase

#

also youtube kept being slow

#

so I decided I'll stop paying for that trash

icy knoll
#

it's perfectly fine for me

#

i could probably cancel it tho as the only reason why i got it was because of the ads on mobile

stuck peak
#

Revanced

icy knoll
#

but knowing me ill get a mf tv or smth

icy knoll
stuck peak
#

uYouPlus

icy knoll
#

cba dealing with that shit, gotta reinstall every 2 weeks or smth

stuck peak
#

Erm dev certificate

#

no reinstalling ever

icy knoll
#

cba getting one LOL

stuck peak
icy knoll
#

damn

stuck peak
#

I will take your advice

#

you are liable

worthy rune
hidden hearth
stuck peak
#

what's the problem?

#

it's properly grounded

hidden hearth
queen parrot
#

Hi

#

One question, is there an updated version for the PluginApi?

stuck peak
#

no

#

you can experiment with CustomDataStores

queen parrot
#

thanks ^^

restive turret
#

.pdb ClassDPlushie

stuck peak
#

yeah in case you want/need happ

restive turret
#

What about the .xml ClassDTroll1

hearty shard
#

meow

stuck peak
#

<returns>Coroutine thingy.</returns>
ah yes

#

I guess IEnumerators are now Coroutine thingies

hearty shard
hearty shard
#

what else would it be trolling

stuck peak
#

an IEnumerator...

hearty shard
#

fake

#

coroutine 2.0

stuck peak
#

hope people end up liking the custom data stores

hearty shard
#

nuh uh

stuck peak
#

oh ok

#

I hope people will hate it

hearty shard
#

YIPPIE!

stuck peak
#

RAGEY how dare you

#

be upset now

hearty shard
#

oh

#

:(

stuck peak
#

awesome, thanks

hearty shard
#

πŸ’”

stuck peak
#

too far

#

I do not approve of the action of jaggedly cutting hearts

hearty shard
#

awh

stuck peak
#

if the cuts are straight & smooth then I do approve

hearty shard
#

is that good enough

stuck peak
#

nope

hearty shard
#

awh

stuck peak
hearty shard
#

sorry what

#

why is there no item here

stuck peak
#

just to annoy you

hearty shard
#

awh

stuck peak
#

I was planning on going to bed but

hearty shard
#

fix :(

stuck peak
#

yeah I am

hearty shard
#

WAHOO

icy knoll
stuck peak
#

yeah

hearty shard
#

by just taking the docs file

#

.pdb

icy knoll
stuck peak
#

be that Managed or wherever you store your reference

icy knoll
#

why does it not come packaged is my question lol

hearty shard
#

beta moment

icy knoll
#

no like i mean

#

why doesn't microsoft make it packaged inside the .dll

#

rather than requiring another file

hearty shard
#

it would make file larger

icy knoll
#

ofc it does smh

hearty shard
#

yeah but

#

a lot of times you... dont need that

icy knoll
#

smh

#

just make the server files bigger!!!!! yeah!!!!!

hearty shard
#

do you need a docs file for your own private server plugin ?

hearty shard
#

what

stuck peak
# icy knoll hm?

they're saying that bloating the LabAPI dll running on the servers has no benefit

#

if we end up making a nuget package then the xml doc would be bundled inside of it

hearty shard
#

also when you have a custom plugin made a lot of times you also dont need that

stuck peak
#

cedric will review it when he is free

hearty shard
#

Wooo

restive turret
stuck peak
#

not my opinion

restive turret
#

Ah ye, missread

#

Maybe because its 2am

hearty shard
#

idk

#

also i was also replying about putting directly into dll, which System (or other large scale things) has dlls and if it was in those it would increase I think a decent amount? Maybe its nothing idk

restive turret
#

Well the expected size increase definitely would be same as the xml size.
You can try building & bundling the xml

#

Nvm bundling xml to .dll not works , but the nupkg should be package that

viscid raven
#

Well once the server hosters use my dll it'll work

normal pawn
#

Like wrappers for roles e.g. wrapper that will contain all subroutines for SCPs

limpid fjord
#

bad apple

unique crane
#

Now make it hint

icy knoll
unique crane
#

You can do that

icy knoll
#

ik

#

i just gotta spend the time tryna convert a video into ascii

#

luckily black and white so i can do that easily

carmine prawn
#

make it on hint

carmine prawn
#

can't wait watch 60fps video on hint

icy knoll
#

hopefully those servers wont be verified

carmine prawn
#

oh no

#

help me VSR 😭

icy knoll
ashen hornet
#

ik

#

I just like to share this video each time "playing bad apple on something" is mentioned, lol

turbid socket
#

we need to play doom on primitives

limpid fjord
#

bad apple in SL

icy knoll
limpid fjord
icy knoll
#

why not use unicode square instead of @ signs?

ashen hornet
#

Do unicode squares get displayed?

#

not everything can be displayed by hints

icy knoll
opal flint
#

Π ΠΠ—Π’Π•Π ΠΠ˜ ΠžΠŸΠ˜Π‘ΠΠΠ˜Π•

β–°β–°β–°β–°β–°β–°
| Бсылки:
| DIscord [SCP:SL Classic] - https://discord.gg/jyPAcwePez
| Boosty - https://boosty.to/meganeko

β–°β–°β–°β–°β–°β–°

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚! Π­Ρ‚ΠΎ Π²ΠΈΠ΄Π΅ΠΎ Π±Ρ‹Π»ΠΎ создано благодаря ΠΌΠΎΠ΅ΠΌΡƒ Π΄Ρ€ΡƒΠ³Ρƒ Griefer, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ смог с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠ΄Π΄ΠΈΠ½Π³Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΈΠ³Ρ€Ρƒ Bad Apple!! ΠΈ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ это ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅. Когда ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ 14.0 Π²Ρ‹ΠΉΠ΄Π΅Ρ‚ Π² Ρ€Π΅Π»...

β–Ά Play video
icy knoll
#

not plugin

opal flint
#

we need bad Apple made on ragdolls/items

#

or ammo holes

hearty shard
unique crane
#

i dont see why not

hearty shard
#

Yippie

restive turret
#

Making david work overtime just to apply for our requests ClassDPlushie

harsh thorn
hearty shard
harsh thorn
#

I guess

restive turret
#

Cant wait for subroutine wrappersClassDTroll1

upper vapor
#

I think it would be better to add more crucial stuff to the role wrapper and add extensions for more niche stuff

limber silo
# limpid fjord

want a lil trick? try doing <font="RobotoMono">{text}</font>

spare zodiac
limber silo
#

no

#

but this one does work

#

because it was added for staff chat

#

recently

spare zodiac
#

Add more!!!!!!!! AAAAAAAAA

inner citrus
#

There’s also the second font if it wasn’t yoinked

faint sparrow
limpid fjord
limpid fjord
opal flint
#

but i forgot where i saw it

limpid fjord
#

okay

opal flint
upper vapor
unkempt silo
stuck peak
#

I knew I should've made bad apple hints before the public beta released

#

but you did a great job and I can't top that

#

I want to know whether people hate my commits

limpid fjord
unique crane
icy knoll
#

what is the intention with labapi btw other than events and wrappers? is it intended to wrap around all base game stuff to like make it easier for devs + documentation or? because i dont want to start wrapping stuff and then get the pr closed saying "this isn't exiled" lol

ashen hound
#

huh

#

wrapping is already done for some stuff

#

I dont think we will deny any prs in case of others

icy knoll
#

im gunna work on RoleTypeId extensions tho because those are useful

ashen hound
#

you can always ask someone from team

icy knoll
#

just idk why you guys made labapi 4.8.1 and not 4.8 because 4.8.1 wont load on macos :c

restive turret
#

game not even mac compatible

icy knoll
#

ik

restive turret
icy knoll
#

well

#

it is

#

if you fuck around

#

but like i can work on exiled and my plugins on mac but not this apparently smh

icy knoll
#

hm?

hearty shard
#

there is a project in there with 4.8.1 tho

icy knoll
#

yeah

#

CommandsPlugin2

#

smh

stuck peak
#

probably my tests or source gen

#

oh

#

@unique crane how dare you

#

oh ew that csproj file is a mess

hearty shard
stuck peak
#

yeah usually the first thing I do when making a new project is delete whatever msbuild decided to generate

restive turret
#

just use newest sdk type then edit to net48

icy knoll
#

and we are on mono

#

so

limber silo
#

imagine using a macos tho nyooo

icy knoll
#

i use it for work

unique crane
icy knoll
#

ive got no jira tickets rn

hearty shard
limber silo
restive turret
stuck peak
#

already on it

restive turret
restive turret
#

it is msbuild or netframework template instead of new sdk type

ashen hound
#

bruh not using new sdk type, aaa

restive turret
#

tbh I blame Rider ClassDPlushie

stuck peak
#

yeah I blame Rider too

icy knoll
ashen hound
#

VS has converter which does it for you, converting to .net format

icy knoll
#

what would Extensions go under? Features?

#

because I see Enums and Interfaces there

spare zodiac
#

Yeah fuck Rider!

stuck peak
#

I love Rider

#

I had to use Visual Studio 2 days ago and its debugger was so fucking slow

#

and the breakpoints failed to set

#

then set up Rider as my JIT debugger and innerpeace everything went smoothly

mild ice
#

I will never understand people that prefer Visual Studio

stuck peak
#

me neither

#

genuinely one of the only pieces of software I believe are worth paying for

restive turret
stuck peak
#

pay for 1 year = lifetime license for the version released at the time

stuck peak
#

I need to inspect the Symbols

restive turret
#

well ye

stuck peak
#

well that's what I was doing

icy knoll
stuck peak
#

just make it its own namespace

restive turret
#

and place

icy knoll
#

unless that's not what you mean

#

i just need to know if it goes under LabApi/Features or what

stuck peak
#

shrujj can always move it once we review

icy knoll
#

fair

restive turret
#

LabApi/Extensions

stuck peak
#

Susge is my mouse dying or is my computer dying

rain crag
#

both

stuck peak
#

no

restive turret
#

well the 500 hour

stuck peak
#

500 hour?

#

you mean 900 days Clueless

#

electrician didn't end up doing the plugs in my office

#

but he's coming back today I think

opal flint
#

beta version is disgusting

#

grant loadout button is broken now

languid temple
restive turret
#

I tried Rider and it screamed on me when I misstyped english words, like come on i dont care about that

stuck peak
#

get a lobotomy (legal and medical advice) to forget about pycharm
use Rider and instead remind yourself of Rider when seeing Pycharm

mild ice
restive turret
#

i already deleted it since low on storage

stuck peak
restive turret
#

i cant recall the place and exact comment

restive turret
hearty shard
#

it does suggest what it thinks you tried to say

restive turret
#

but i dont want it if i create a poc or anything

icy knoll
#

@hearty shard does EXILED_REFERENCES match SL/UNITY_REFERENCES?

#

because i stg i keep on getting errors

restive turret
#

should be

#

but you need 1 dll

icy knoll
#

which one?

restive turret
#

Mono.Posix.dll

icy knoll
#

already in exiled references

#

lol

restive turret
#

or Mono.Security.dll idk

icy knoll
#

also there

restive turret
#

well

icy knoll
#

oh

#

Assembly-CSharp.dll is missing

restive turret
icy knoll
#

that may help

hearty shard
#

πŸ’€

icy knoll
#

i was expecting the game to use publicized 😭

hearty shard
#

why would the game do that 😭

icy knoll
#

sorry

#

labapi

hearty shard
#

same question 😭

icy knoll
#

why is it packaged in exiled's stuff if it's not used then 😭

hearty shard
#

exiled uses it to access private / internals

icy knoll
#

oh

hearty shard
#

labapi doesnt rly need it

static osprey
#

why is everyone sad 😭

harsh thorn
#

we dont need it because we just make things we need public

restive turret
hearty shard
static osprey
#

oh

icy knoll
hearty shard
#

i cant tell if thats copypasted from exiled

icy knoll
foggy stirrup
#

whole lab api looks like an exact copy of exiled

#

naming, structures

hearty shard
icy knoll
#

and also, exiled follows a strict structure for all their stuff

#

like everything is pretty much industry standard lol

harsh thorn
#

its almost as if both use the same coding industry standards

hearty shard
#

yeah

icy knoll
#

yeah

#

eve dont be a copycat smh

hearty shard
#

says the copycat

icy knoll
foggy stirrup
#

so qurre did similar thing

icy knoll
#

lies

foggy stirrup
#

and got dmced

icy knoll
#

defamation

icy knoll
foggy stirrup
#

lab api also

icy knoll
#

whereas labapi was from scratch

icy knoll
hearty shard
#

labapi was NOT copy paste 😭

icy knoll
#

you can legit tell the massive differences but ok

harsh thorn
foggy stirrup
#

it wasnt when it was named "nwapi" xD

harsh thorn
hearty shard
#

nwapi was not an api

#

it was a loader

#

or at least it might as well have been

#

labapi follows standards, a lot of the devs are also previous exiled contributors so itd make sense stuff is close

harsh thorn
#

Fun fact, most of the api in labapi (methods and properties) actually came from what the nwapi had

#

rest was added based on what the maintainers thought what was needed (as they are plugin devs themselves)

hearty shard
#

delete labapi and exiled

#

and nwapi

#

back to synapse we go

foggy stirrup
#

wouldn't complain

#

synapse was good at its peak

harsh thorn
hearty shard
#

me neither

foggy stirrup
#

noobs

harsh thorn
#

i went from
smod -> making my own loader for the assembly csharp cuz exiled wasnt there yet -> exiled

#

and well, then nwapi and now next up is labapi

unique crane
#

"Bro I stole your code"
"Thats not my code"

stuck peak
#

Susge LabAPI uses interfaces

#

Susge Exiled does too

hearty shard
#

omg labapi has a player class

#

clearly theyd have called it LabReference if they werent copy pasting shake

stuck peak
#

ironically the Player class is mostly copied from NWAPI

#

(I just fixed some stuff and then others added more features as they saw fit)

upper vapor
stuck peak
#

I'm totally fine making more source generators as needed CATTHUMBSUP

#

but I think you are kidding

upper vapor
upper vapor
#

can't be a copycat if we add custom language features shrug

stuck peak
#

ah

#
public ImpeccableObjectPart HumanControllerObject
{

}

what's a class? we only use ImpeccableObjectParts

upper vapor
restive turret
#

IMyObjectWrapper<>

upper vapor
#

generics? nah

#

SemiUnknowables

#

are we gonna make an SL# language 😭😭😭

stuck peak
#
public ImpeccableObjectPart HumanControllerObject @ SomeBase%$#SomeSemiUnknowable#$%
{

}
#

good ideas ty ty

upper vapor
#

ooh

#

why not integrate emojis into the language

stuck peak
#

no emojis

upper vapor
stuck peak
#

except for special ascii characters

#

β–ŒβŒ β†

upper vapor
upper vapor
stuck peak
#

well requirement introduction will be required

#

there is no static anything

#

meaning everything will have to use requirement introduction

#

also any ImpeccableObjectPart you create will need to introduce all other ImpeccableObjectParts

upper vapor
#

hmm i like

stuck peak
#

so that you do not lose them

#

and that you can see all available ImpeccableObjectParts in the solution

#

otherwise one might forget

upper vapor
#

solution? mixture

stuck peak
#

oh sorry

#

stupid me

stuck peak
upper vapor
#

😭

stuck peak
#

anything you make with Lab# will be a problem

#

so it's good naming if anything

upper vapor
#

"sorry it's not my problem" (i didn't create it)

stuck peak
#

"what's your problem?" = share all of your origin cipher (source code)

upper vapor
#

peak

#

what would we call the plugin class category?

simple cradle
#

How can I install lab api on my server?

worthy rune
#

have you switched to the labapi-beta branch on steam for both server and client?

simple cradle
worthy rune
#

yes, its just like with 14.0 beta

simple cradle
worthy rune
#

this is a beta period for porting plugins and finding bugs

stable shore
#

hear me out

#

push to prod

#

IMMEDIATELY

stuck peak
#

uh

#

no

stable shore
#

yes!

#

give me ONE reason why this isn't possible...

#

thats right

#

you cant!

stuck peak
#

I can

#

many plugins rely on nwapi still and have not yet been ported

hearty shard
#

skill issue

stable shore
#

ok mr. market

hearty shard
#

let them get cooked

stuck peak
#

there is no way to separate configs/plugins between servers

stable shore
#

the reason must contain the word "one"...

#

well i think the only solution here is to fire x3

#

without hesitation

stuck peak
#

ok

stable shore
#

ill take over

stuck peak
#

Java user

#

bye

stable shore
#

hear me out

#

switch SL to source engine

stuck peak
#

I agree with that

#

C++ ❀️

#

good movement ❀️

#

better networking ❀️

worn gull
#

Hi Is there an event where the player is triggering a tesla gate

stuck peak
#

just checked and no doesn't seem like it

I am going to bed, but I will add it later

worn gull
#

Okay thanks

worn gull
languid temple
#

*OnNicknameChange

#

Sounds better

worn gull
#

I just copy pasted from my code I was lazy to write it down xd

languid temple
stuck peak
languid temple
#

but it sounds so bad

stuck peak
#

OnNicknameChanging is better???

#

imo it's not

languid temple
#

no

stuck peak
#

that's what you said though

languid temple
#

no

languid temple
stuck peak
#

there is a before and after

languid temple
#

and there is this

stuck peak
#

before, deniable
after, confirmed to have happened

languid temple
#

hmm

#

then OnNicknameChanged no?

#

if already happened

stuck peak
#

again all events follow the same pattern, and having one outlier that imo sounds WORSE than following the same pattern in the first place - is just bad

languid temple
#

Still both sounds kinda bad

#

Both it's not my call so

mild ice
upper pike
#

Im sure testing in production has never gone wrong ever

#

Not like it can take out the world’s entire computer system out

languid temple
#

Nah it would never

stuck peak
# languid temple Still both sounds kinda bad

All options sound "bad"
just one makes it very clear what it does
having Change and Changed for one event would just lead to pitfalls - i.e when doing things for CT I've noticed that some Exiled events make no sense in their naming and finding the counterpart to some events is nearly impossible without reading their transpilers

stuck peak
languid temple
upper pike
stuck peak
#

innerpeace not my problem until monday

languid temple
#

But then how would the DidXyz would sound?

stuck peak
#

PlayerEvents.ChangingNickname
PlayerEvents.ChangedNickname

#

which the sourcegen compiles to OnPlayerChangingNickname and OnPlayerChangedNickname

hearty shard
languid temple
stuck peak
#

i.e setnick command

setnick gets ran -> command calls ReferenceHub.DisplayName = xyz -> PlayerEvents.ChangingNickname is invoked -> Plugins subscribed to the event can change ev.IsAllowed if they want to (default true) -> server checks end-result whether it's allowed. If not, then nothing else happens. If it's allowed, server changes Players' name, and PlayerEvents.ChangedNickname is invoked -> Plugins subscribed to the event can guarantee that it was allowed & happened

languid temple
#

ah I see

#

For some reason I thought it was way more complicated

restive turret
#

if (true)
shutdown

stuck peak
main zenith
#

is there a way to play in game sounds like Ci respawn ambient or logicer shot sound?

stuck peak
#

Shot sounds yes for sure

#

ci I will have to check

main zenith
restive turret
#

with magic of friendship

restive turret
#

lemme pull up the stuff

#

InventorySystem.Items.Firearms.Modules.AudioModule.PlayGunshot(clip)

#

i guess

#

in same class you have audio clips (they are private)
have fun searching which one is which ClassDPlushie

harsh thorn
#

actually, no

#

yeah no its both

#

it can be called on both server and client

restive turret
#

or you funny enough and send ServerSendToNearbyPlayers

#

(its private)

stuck peak
main zenith
main zenith
limpid fjord
#

Is it possible to display custom text on the workstation from the server side?

harsh thorn
#

Dont think so, no

upper vapor
restive turret
#

Show hint to user if close

sick flume
#

Is there still limitation on hint's length?

upper vapor
#

~64k chars

#

2^16 - headers

#

wait no

#

cut that in half cuz the text is present twice

#

😭😭

#

either it's 32k or 64k

sick flume
unique crane
#

64k

worthy rune
sick flume
untold raft
#

How to check if damage is from scp207?

restive turret
#

Probably Universal Damage and from Translation Id I guess

stuck peak
restive turret
#

Since the Enum is no longer exists you either make your own or idk

#

Also for dmg.
I see some Scp ones using SpcDamageHandler others using AttackerDamageHandler

#

049 and 069 using first others using the second

restive turret
#

There is a Dictionary and static damage stuff for most of it

#

207 is Id 10

#
if (ev.DamageHandler as UniversalDamageHandler {  TranslationId = 10 } )
{
//Dmg made by 207
}
stuck peak
#

or DeathTranslations.Scp207.Id

#

which is way easier to read and maintain

restive turret
#

Well yeah

untold raft
#

I just wrote something similar just wondering on the id

#

Okay thank you guys

restive turret
#

I just made myself enums and stuff for whole damage stuff

stuck peak
#
if (handler is UniversalDamageHandler universalDamageHandler && universalDamageHandler.TranslationId == DeathTranslations.Scp207.Id)
{
    //Dmg made by 207
}
stuck peak
restive turret
#

Isn't x is y { } is already checking if valid?

restive turret
stuck peak
#

you can't use { } with non compile time constants

restive turret
stuck peak
#
if (handler is UniversalDamageHandler {  TranslationId: 10 })

would work, but

if (handler is UniversalDamageHandler {  TranslationId: DeathTranslations.Scp207.Id })

would not work because that's not evaluated at compile time Erm

stuck peak
#

will add Damage types in the future

#

probably

untold raft
#

And damagehandler type Pray

stuck peak
#

what would that add over the base ones anyways

#

oh I guess damage types

stuck peak
restive turret
#

:yippee

stuck peak
#

so it's always accurate as to what's in base-game

#

and all that's needed is a rebuild instead of manually adding support for new types

restive turret
#

Wrappers for dmg ClassDTroll1

untold raft
#

I tried to make a variable dmg for cola but I can't seem to modify the damage dealt by scp207 but well it doesn't work 😦

unique crane
#

NewUpdateFixes.Instance.Config.OldColaHealthDrain

#

Shouldnt you negate this considering its name?

restive turret
unique crane
#

Also I wouldn't make dictionary keys floats.. since the cola damage is based on player movement you have to get it's movement type (sneaking, walking, sprinting) and set the damage based on that

#
if(player.RoleBase is IFpcRole fpc)
{
    PlayerMovementState state = fpc.FpcModule.CurrentMovementState;
}
#

I might add the movement state to the player itself

restive turret
#

zou can also print the dmg itself and see if the dic return true. Otherwise your damage will be 0

#

(or NaN dont remember default of float)

untold raft
unique crane
#

Well then change it to use the PlayerMovementState which is much more reliable than whatever values are these

untold raft
#

wait what

#

Crouching?

#

lmao

icy knoll
#

dog probably

unique crane
#

Standing with C I think

icy knoll
unique crane
#

No clue

#

I can look

untold raft
#

Rather, standing is no different than standing and holding c

#

Unless for the dogo

unique crane
#

so its just standing still

upper vapor
untold raft
#

I did something like this but I can't overwrite the damage

#

The property or indexer 'UniversalDamageHandler.Damage' cannot be used in this context because the set accessor is inaccessible```
stuck peak
#

yeah the setter is internal atm

unique crane
#

Oh right

stuck peak
#

could probably make it public

spare zodiac
#

Best use

stuck peak
upper pike
#

Im sure everyone who joins the server will love it

stuck peak
#

adding to labapi right now YesYes

upper pike
#

They should add it to vanilla

stuck peak
#

anyways - anyone find any more events that are missing/they would want?

spare zodiac
#

If(ev.plaxer.name.contains(Racism){
ev.IsAllowed = true;
return;
}
ev.IsAllowed = false;

trollface

stuck peak
#

I'm working on adding as many as I can find and adding missing parameters

  • Adding Item instance to coin flipping/flipped
  • Adding Name Changing/Changed
  • Adding Idling/Idled Trigerring/Triggered tesla event

Anything else (event related) you guys found that you are missing/needing?

upper pike
#

Wait misread it

spare zodiac
#

Ye XD

upper pike
#

Code block it

spare zodiac
#

Anti racists hate this one simple trick!

spare zodiac
unique crane
#

If you could please

spare zodiac
#

Hey Sebesta

#

Ε ebesta

hearty shard
#

davidddd

unique crane
#

ello

stuck peak
stuck peak
spare zodiac
#

Will 3114 be added back?

hearty shard
#

get gud

#

remake the entire code trolling

spare zodiac
#

Fr

stuck peak
#

I will just pretend you did not mention candies

upper pike
hearty shard
#

i dont wanna have to patch 2 methods for this

spare zodiac
#

You mf

hearty shard
upper pike
#

Good riddance to skeleton

#

It can burn in hell

hearty shard
#

and yeah i wanna be able to do pink candy without 2 patches btw_stare

stuck peak
#

Yeah I want to eat pink candy while standing inside the Candy code

spare zodiac
hearty shard
#

exiled did it in a wonky way of storing it in item (pls dont)

hearty shard
upper pike
spare zodiac
#

Time to rewrite Hubert code trollface

hearty shard
#

hubert isnt real

#

ngl

stuck peak
#

who is Hubert?

#

never heard of him

spare zodiac
upper pike
#

Hubert is a lie, just a figure head to blame all our problems on

stuck peak
spare zodiac
unique crane
#

Okay I think I cooked whole HE Grenade code by addind explosion event

#

It kills me no matter where I am

#

XD

stuck peak
#

how did you manage that

hearty shard
#

😭

upper pike
#

We all know ced is the real leader of NW

stuck peak
#

Beryl*

unique crane
hearty shard
#

πŸ’€

spare zodiac
hearty shard
#

david is NOT cooking

spare zodiac
stuck peak
#

that will fix the issue

spare zodiac
hearty shard
upper pike
#

Genius

unique crane
#

Yeah its going to be just warning shot grenade

unique crane
#

How do you know so much about swallows

hearty shard
#

okay i go shower

#

have fun stinkers

spare zodiac
stuck peak
unique crane
#

ah

#

this reminds me when I made Holy hand grenade of Antioch in SL

upper pike
unique crane
#

It just gave you the whole speech when you equipped it

#

and killed everything

upper pike
stuck peak
unique crane
#

Aha

#

why is explosion location equal to the player one wtf

upper pike
#

Imagine being the first one to join the server and eternally cursed to take every explosion

unique crane
#

Curse of Remote Admin

#

(RA)

upper pike
#

Repent else the god RA will smite you

stuck peak
#

Scp0492ConsumingCorpseEventArgs or Scp0492ConsumingBodyEventArgs?

upper pike
#

I am not qualified for this

#

Corpse sounds better imo

stuck peak
#

agreed

upper pike
#

Since it’s consuming, does that mean you can deny 049-2 from eating the corpse?

stuck peak
#

yea YesYes

upper pike
#

Just say No to cannibalism

hearty shard
#

hashtag domorecannibalism

upper pike
#

Why did it take him 160 hrs to do that

#

I would have done it after 5

hearty shard
#

it was 160 hours of that

#

not 160 UNTIL that

unique crane
hearty shard
unique crane
#

Okay I found out why did that grenade incident happened

hearty shard
#

i havent played much of the 2nd game

hearty shard
unique crane
hearty shard
#

πŸ’€

unique crane
#

Idk why was .Player. there

hearty shard
#

cuz ur dumb

#

clearly

unique crane
#

):

hearty shard
#

im sorry

#

forgive me

unique crane
#

Sentenced to 5 months of Helper role

hearty shard
#

oh...

#

...

#

why cant i send code

#

so rude

unique crane
#

U should now?

hearty shard
unique crane
#

Yeah erm

hearty shard
#

gotta test it probably but i think this would prevent teleporting players to the void Hmm

unique crane
#

avoid tesla too

hearty shard
#

o

#

yeah

#

😭

#

forgot teslas existed

unique crane
#

Also I would rename it to IsSafeToTeleport

#

Cause like

hearty shard
#

true

stuck peak
unique crane
#

IsConsideredSafe sounds like if there is no danger

hearty shard
hearty shard
stuck peak
#

question

hearty shard
upper pike
#

How much control over firearms does LabAPI have

unique crane
#

let me see

#

37.6

hearty shard
stuck peak
hearty shard
#

but only if ur labapi maintainer

stuck peak
#

soonℒ️

unique crane
hearty shard
#

rn

unique crane
#

soon

upper pike
#

Anything i can change now?

hearty shard
#

wait

upper pike
#

Would be neat if i could adjust attachment stats as well

hearty shard
#

IM LVL 30??

unique crane
#

I mean you can change a lot it just wont get synced to the client most likely

hearty shard
#

since when

stuck peak
#

since like 1 minute ago

#

saw your role color change

hearty shard
#

oh

#

so im blind

stuck peak
#

I'm level 60

upper pike
#

No longer piss orange

hearty shard
#

can u tell hubert to make me lvl 1000

unique crane
#

im level 5

hearty shard
#

ty

unique crane
#

gg

hearty shard
#

david...

#

πŸ’”

unique crane
#

I dont talk here ok

upper pike
#

That’s fair

stuck peak
#

I think all my messages were in official server host

#

and regular serverhost chat

hearty shard
stuck peak
#

and weren't Susge

hearty shard
stuck peak
#

our old discord server had like 100+ million messages

#

thanks to sl logs

#

kings probably has close to a billion

unique crane
#

Ah yes good old logs where 1 line per each damage

stuck peak
#

I queue messages and combine them

unique crane
#

Gooood

hearty shard
#

david

#

get grinding on the forest

unique crane
#

No

hearty shard
#

:(

unique crane
#

Im grinding KCD 2

hearty shard
#

the what now

unique crane
#

Kingdom Come Deliverance 2

hearty shard
#

damn

stuck peak
#

would you want the StartingConsumingCorpse event to be called even if it's an 'invalid' request

#

i.e corpse has already been consumed etc

unique crane
#

Yea do that

#

so it can be consumed more

stuck peak
hearty shard
stuck peak
#

Shared meal

hearty shard
#

oh yeah

#

i forgot

#

theres ez shelter thing

#

EzEvacShelter

stuck peak
#

that's a safe room

#

obviously

hearty shard
#

totally

unique crane
#

Yeah but like if you tp there

hearty shard
#

well

stuck peak
#

evacuation shelter so has to be safe

hearty shard
#

ig its safe

unique crane
#

you cant get out

#

XD

stuck peak
hearty shard
stuck peak
unique crane
#

Sealed for eternity

stuck peak
#

just you and the squeaks

#

squeaks are probably my favorite easter egg

unique crane
#

yes

hearty shard
#

EzEvacShelter and EzCollapsedTunnel

#

wtf is collapsed tunnel

unique crane
#

Well

#

the end room