#plugins-dev-chat

1 messages · Page 176 of 1

thin shuttle
#

But that probably because this system is old

#

And haven't been rewrite since that

obtuse spruce
#

cuz actually

call damagehandler ctor + network serialization + an other network message serialization

and with my idea you remove the second call ~(trivial cost) but it remove an foreach loop :))

obtuse spruce
thin shuttle
#

Oh yeah ok

#

I see

slate flume
#

SpeakerToy reverb changing and player variable for client-side mutes when?

#

They were mentioned as likely possibilities months ago

#

I wish to improve the systems I have using SpeakerToys but I can't until these two things (or comparable changes) are made
I know at least one of those has been on the backlog since like April of last year

#

Is there a place I can petition to get these things done more expediently or am I just at the mercy of whenever it's decided that the devs can start doing something about it

hearty shard
slate flume
slate flume
#

Honestly, I hate that I keep having to come back to these same points but it's really frustrating and I just want to have some of these basic features

#

I have multiple community members every month coming to me asking me to "fix" some of my implementations that use SpeakerToys because of these problems

#

And every time I have to say I can't do anything because I'm stuck dealing with the whims of Northwood

celest thorn
#

i can give you a solution

#

leave the game

#

trust

slate flume
#

I mean it's at the point where I might have to do shit like implement my own server-specific muting system

#

This shouldn't be a consideration I have to make

#

And yet I'm at the point now where this is just about my only option moving forward

#

I don't know if I can express enough how tired I am of shit like this

celest thorn
slate flume
celest thorn
#

so the devs

#

by your logic

slate flume
# celest thorn so the devs

You believe the LabAPI maintainers created the bureaucratic processes they have to deal with?
That's like blaming a Walmart cashier for inflated grocery prices

slate flume
celest thorn
#

btw i honestly have my thoughts

#

on the stuff i saw with my eyes, and the stuff i got told

#

and ngl i feel bad for the devs

#

lol

#

thank god i don't open much this game anymore

slate flume
#

I know at least some of the devs are passionate about making changes and getting stuff done, just they're not allowed/able to

mild ice
#

I'm not educated on the internal processes they follow, but they do indeed get stuff done kek

#

We handle a lot of QA requests for LabAPI changes / updates / fixes

hearty shard
#

evil lucy

slate flume
#

I'm not trying to say stuff doesn't happen

harsh thorn
#

So, was this issue raised into a github issue?

harsh thorn
#

and it wasnt fixed?

slate flume
unique crane
#

Jesus marked them as done and moved it into internal repo

slate flume
unique crane
#

I would like to change that in future

#

just not closing and adding tag "moved to internal"

#

or something

slate flume
#

I just want changes to happen so I don't have members in my community constantly asking for fixes on things I can't change

harsh thorn
#

ok i might be blind but i dont actually see the issue for this in the internal repo

slate flume
#

Like we still can't even remove the speed cap imposed on micro HID

#

I have no control here other than being annoying about it in an effort to see these things happen and I apologize for that

#

I just hope my viewpoint is at least understandable

harsh thorn
#

well, if you have genuince concerns thats something you should contact the labapi lead about (david)

slate flume
#

How should I go about dictating such concerns and getting them sent to an official channel

harsh thorn
#

well, for normal issues you would probably want to report them into the github as normal

harsh thorn
#

if things get marked as fixed/closed but not actually fixed you may want to re-open such issue
and if that doesnt work you may want to contact david himself

slate flume
#

I just mean I want to see forward progress on some things that I haven't gotten any new news on for months

unique crane
#

Might be named differently

#

But there is another issue that resolves his aswell

harsh thorn
unique crypt
#

this works as you said but FallDamageSettings dosent seem to get reset on class change

[2026-01-25 02:37:19.540 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = True
[2026-01-25 02:37:19.555 +05:00] [INFO] [FallDamageControl] Disabling fall damage for Tutorial
[2026-01-25 02:37:36.299 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = False
[2026-01-25 02:37:36.314 +05:00] [INFO] [FallDamageControl] Not modifying fall damage for ClassD
[2026-01-25 02:38:03.149 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = False
[2026-01-25 02:38:03.165 +05:00] [INFO] [FallDamageControl] Not modifying fall damage for Scientist

unique crane
#

so it might not be imported becuase of that

#

Like this solves his issue aswell

slate flume
slate flume
unique crane
#

and I would rather go with this yea

harsh thorn
#

makes sense then

unique crane
#

Something I can ask beryl next time I talk with him

slate flume
#

I'm hoping and praying to see these things happen soon because I have multiple suggestions and bug reports open on my server relating to this

#

It gets frustrating telling multiple people every month that I can literally do nothing other than potentially overhauling the muting system with a server-side implement

#

I only started messaging here about it because I got yet another forum opened about it today

#

And this is the most power I have to see any progress

unique crane
#

Sending preferneces of muted players is not a big deal in my opinion.. but again, something not completely up to me

unique crane
#

I get its it might get annoying with you being pushed by players that it doesnt work properly

#

and so the cycle continues towards me

slate flume
#

Thank you for understanding David it means a lot

unique crane
#

But yet again

#

Something that you have to keep in mind

#

Is that stuff just takes time here

slate flume
#

I get that

unique crane
#

Its not because we wouldnt want to get them done

#

No

#

But look

slate flume
#

I mean I'd expect a suggestion to take a month or more to get in the game it's just we're starting to edge on a year for this and I didn't think it was a big ask

unique crane
#

Just to get something to be done already takes time, especially the "getting to it" part

unique crypt
#
    public override void OnPlayerSpawned(PlayerSpawnedEventArgs ev)
    {
        if (ev.Player == null)
        {
            Logger.Info($"Null player {ev.Player.UserId}");
            return;
        }

        if (ev.Player.ReferenceHub.roleManager.CurrentRole is not IFpcRole fpcRole)
        {
            Logger.Info($"NoFPC role {ev.Player.UserId} ({ev.Player.Role.ToString()})");
            return;
        }

        bool bOriginalFallDamageEnabled = fpcRole.FpcModule.FallDamageSettings.Enabled;
        Logger.Info($"bOriginalFallDamageEnabled = {bOriginalFallDamageEnabled}");

        if (_config.DisableFallDamage || _config.IgnoredRoles.Contains(ev.Player.Role))
        {
            fpcRole.FpcModule.FallDamageSettings.Enabled = false;
            Logger.Info($"Disabling fall damage for {ev.Player.UserId} ({ev.Player.Role.ToString()})");
        }
        else
        {
            Logger.Info($"Not modifying fall damage for {ev.Player.UserId} ({ev.Player.Role.ToString()})");
        }
    }
unique crane
#

but your not the only one suggestion things

#

There is plenty of things that has to be done

#

and its not only suggestion

thin shuttle
#

i am just kinda surprised

unique crane
thin shuttle
#

because it's under IFpcRole

unique crypt
unique crane
#

Code has to be adjusted over time aswell to match base game

unique crypt
#

I was thinking maybe i fucked something up already

slate flume
# unique crane but your not the only one suggestion things

Right I get that it takes time to get things done, it just feels at times like there's not a lot of stuff getting done even where the things might be relatively simple
Like it took about half a year or so to get one line of code changed in the game and that was tough
I feel like there's definitely room for improving the system in which these changes have to go through to get implemented, especially since I know some of you guys are very passionate about doing stuff around here
I can empathize with your viewpoint and understand it I just want to also express where I'm coming from when I talk about this stuff

#

I don't mean to come off as pompous I just think it's important to express especially when I have a lot of people coming to me asking me to fix stuff I can't do anything about

thin shuttle
#

but you can probably get Server.Host as reference to reset it at every changed class

unique crane
#

might work

unique crane
slate flume
hearty shard
#

oioi

thin shuttle
#

at every changed role

slate flume
unique crane
#

Idk, but its common fix for most of things

thin shuttle
#

if Spawned is correctly put

#

you wouldn't need a delay fix

#

let me check

#

where it's put

unique crane
#

No clue on this one

thin shuttle
#

okay

#

yea

#

it's might fixed that

#

@unique crypt instead of using LabAPI event can you use this SL event
PlayerRoleManager.OnRoleChanged

slate flume
#

Very interesting

thin shuttle
#

if you haven't already

unique crane
#

oki

unique crypt
#

Do I do something like PlayerRoleManager.OnRoleChanged += Handler; or

#

and PlayerRoleManager.OnRoleChanged -= Handler; on disable?

unique crane
#

Ye

thin shuttle
#

PlayerRoleManager.OnRoleChanged += Method;

public void Method(ReferenceHub userHub, PlayerRoleBase prevRole, PlayerRoleBase newRole) { your code }

#

@unique crypt ^

unique crypt
#

How I can get a player from SL event?

hearty shard
#

Player.Get

#

on referencehub

unique crypt
#
[2026-01-25 04:16:18.838 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = True
[2026-01-25 04:16:18.854 +05:00] [INFO] [FallDamageControl] Disabling fall damage for Tutorial
[2026-01-25 04:16:34.991 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = False
[2026-01-25 04:16:35.006 +05:00] [INFO] [FallDamageControl] Not modifying fall damage for ClassD
[2026-01-25 04:16:35.933 +05:00] [INFO] [FallDamageControl] bOriginalFallDamageEnabled = False```

yeah unfortunately that dosent work either
#

nor with Timing.CallDelayed Timing.WaitForOneFrame

restive turret
restive turret
restive turret
restive turret
# slate flume Right I get that it takes time to get things done, it just feels at times like t...

Ye its not easy to get merged into main, many stuff is easy and many stuff has been done but the code is changing constantly (ie: knife stuff was changed 2 times publicly i believe) and other stuff isn't as much priority as other stuff. I have many ideas and maybe ready implementations.
And since many people working on it it isn't really straightforward "get it done, qa it and push asap".
Everything has priority and everyone sees them differently.
(Bugs usually gets the most priority for me, while for example others like to do implantations, etc).
It takes time to read and understand changes, and even suggestions different ideas/implementation over it.

#

Man 1 am brain

#

Btw (another ping) @slate flume
Feel free to ping me if your idea/bug hasn't been completed [and you still can replicate the bug] and the issue is closed

slate flume
# restive turret Ye its not easy to get merged into main, many stuff is easy and many stuff has b...

Yeah I have no hard feelings towards anyone involved in the process, I just definitely think there is room to improve the way things get done if there are small, but important, changes that are taking close to a year to get implemented
I can't claim I know the first thing about your guys' process, and I know the scale of a game is much larger than, say, the scale of one server, but for me it can be very difficult to deal with when I have a bunch of people expecting changes that I have to rely on Northwood to get done
I wouldn't be talking about it if I wasn't accosted a lot about certain client-sided issues or features that I can't fix
Luckily, I have the technical ability to figure out and patch server-sided problems, which is the main reason I got so good at transpilers, but for other features like the Micro H.I.D. speed cap or, in this case, SpeakerToy reverb and client-side mutes, I just have to sit and wait for the day when the SL or LabAPI changelog includes "Added X" or "Fixed Y"

#

On the personal side, a few months ago I kind of burnt out making new GitHub requests and bug reports because it's not very often I see any news, updates, or changes regarding the things I post
I have no way of knowing when you guys plan to address the ideas or bugs posted, and I've seen maybe 2/3 things I've posted in my entire time in this community get implemented
Now I know that that part's a bit selfish, and that's why it's not the main thing I bring up but I've ended up resorting primarily to just fixing the bugs myself

restive turret
#

Ye i definitely get that.

slate flume
# restive turret Ye i definitely get that.

I have a lot of respect for what you, and others on the team, do
I really appreciate seeing bug fixes and new features, I just wish things happened a bit faster or a bit more because from my side it's like I'm throwing all of my issues into the void

#

Kind of what it's like on this side at times

#

And it's not your guys' fault, I know how much you guys work and the passion you all bring

#

I just wish it could be easier for you guys to do the things you want to do and make more changes for the community

restive turret
slate flume
restive turret
#

I already added my own ideas in internal one that only changes code inside labapi (ie: latest langver)

slate flume
restive turret
slate flume
restive turret
#

It was a silent change but if u wish I can write 2 paragraph about it

slate flume
#

If you'd like to share I'm always willing to listen

restive turret
#

I also do lot of PoC both in labapi and ingame

#

@slate flume
// Unofficial announcement
We added new labels in LabApi repo which should be make us little bit more transparent.

"Accepted" label indicate your idea has been accepted and the team will work on it.
"Denied" label indicate your idea has not been accepted and will be written why does the team thinks your idea is not a good addition to the game/api.
"Idea" label indicate the issue is an idea to implement in-game or in labapi itself, for further check above 2 what can happen to your idea.
"Imported" label indicate the issue has been moved to our internal repo for better management.

slate flume
restive turret
#

I aint even know what happened to it and I can see internal stuff

#

(maybe github being wierd in mobile)

restive turret
slate flume
#

I really appreciate that things are happening to improve the pipeline for bugs and ideas from the community

restive turret
#

I mean that will be the future ig i try to be more transparent but still making some hype and stuff around it

#

Bugs usually i jump into it

#

Fix what i can and pray it works in public

#

Bugs has different pipeline but kinda same

#

Wait time can be idk, lot

#

And i been busy just adding ideas to internal one that i like to be added and changed

#

Idk if u want that to be public or not will ask David about some of mine can be public but mostly it's just simple stuff

slate flume
#

Is there an open issue about being able to modify the reverb on SpeakerToys?

#

Life would be so great if that's implemented along with this and the aforementioned syncing of client mutes

GitHub

The way to recreate the issue just use AudioPlayerAPI and create a speaker PlayerExtensions.Audio.Add(ev.Player, AudioPlayer.CreateOrGet($"{ev.Player.Nickname}-{Guid.NewGuid()} " , onInti...

#

We could finally be able to create a true prox chat experience rather than reverberating effects-attached client-mute-ignoring current state

#

I was originally planning to use dummies to replicate proximity chat but the problem with that presents when trying to hide said dummies from players while keeping prox chat working (it's impossible to do)
It would be epic to have a way to integrate SCPs and others into actually being able to use proximity chat and have it sound like proximity chat

upper vapor
#

because this is supposed to be controller by the server
and how would the client know how much another person fell

upper vapor
soft turtle
#

Is there a single check that verifies whether a player is valid?
Or do I have to write a long validation check every time?
Like this:

if (!player.IsDestroyed && !player.IsHost && !player.IsDummy && player.IsReady)
upper vapor
#

yeah you'll need to do this
make an extension method or property (C# 14)

#

player is {IsDestroyed: false, IsHost: false, IsDummy: false, IsReady: true} might be cleaner

slate flume
#

I'm all for more things being network messages instead of fully client-sided

#

I like having more control and flexibility in the changes I can make

#

If more things required server-validation, then situations like, ahem, an unchangeable Micro H.I.D. speed cap wouldn't exist

#

I'm a Day 1 hater of that change and I always will be

#

And I mean it, as soon as it was announced I was dogging on it

#

Major-league bad move

#

I legitimately crashed out

slate flume
#

So peak

#

Check it

upper vapor
#

🗣️

slate flume
# soft turtle Is there a single check that verifies whether a player is valid? Or do I have to...

Correct me if I'm wrong but could you not just
player.ReferenceHub?.authManager.InstanceMode == ClientInstanceMode.ReadyClient
If the player is a host, their ClientInstanceMode is DedicatedServer
If the player is a dummy, their ClientInstanceMode is Dummy
If the player isn't ready, their ClientInstanceMode is Unverified
And the null conditional on the ReferenceHub should check if the ReferenceHub is null

#

One check instead of four

#

Well technically two but it's disguised as one

soft turtle
upper vapor
#

null-coalescing doesn't work for unity objects

slate flume
upper vapor
#

we should kill unity

slate flume
#

0 ong

upper vapor
#

okay why is it that when i open the hub from the task manager it doesn't steal focus for the first time
but when i'm on a different desktop and it starts compiling scripts, the editor steals focus AND switches to its desktop THREE TIMES

slate flume
upper vapor
#

var doesn't do a null check

#

yeah you should ==

#

or the implicit op

slate flume
upper vapor
#

that wouldn't (or shouldn't) work

soft turtle
#

Lol. Why does a player who left the server have InstanceMode ReadyClient?

slate flume
upper vapor
soft turtle
slate flume
restive turret
slate flume
#

Neither I, nor my server's community, have any desire to keep the speed cap

#

It's a very divisive change but my community voted majoritarily to entirely get rid of it

#

It also appears like most people looking to modify it just want it disabled

#

And these kinds of issues really bog it down

restive turret
#

So only disable no other value change

slate flume
#

That's about where I'm at

restive turret
#

That's easier than the other so that's why I asked

slate flume
#

Not sure if other devs are looking for something else

#

But I think that's the thing most people are looking for

restive turret
soft turtle
# unique crane

It will still return true even if the player isn't on the server. That is, the player has left the server, but the check will return True.

restive turret
#

Connection should be null when left

unique crane
#

Yeah but you wont get disconnected player in Player.ReadyList

restive turret
#

But you get in on left event no?

unique crane
#

obviously

#

thats what the event is for

restive turret
#

Also dummies arent running OnLeft

slate flume
soft turtle
restive turret
slate flume
unique crane
#
override OnPlayerLeft(PlayerLeftEventArgs args)
{
  PlayersToSpawn.Remove(args.Player);
}
soft turtle
restive turret
#

Also since LEFT running BEFORE the actual player being destroy add 0.1f wait timer into it

#

0.1 because that's the default for unity (ie: next frame)

unique crane
restive turret
soft turtle
slate flume
restive turret
#

OnDummyCreated/Destroyed

slate flume
unique crane
slate flume
restive turret
#

We don't know what u doing since you ain't share any code or information to get any clues

unique crane
#

Well then where is the issue

#

Just dont add them during preath event to the list?

slate flume
#

Why even have a static list for something like PlayersToSpawn

unique crane
#

Thats their thing

#

But a code of what they are trying to do would be helpful

slate flume
#

Just make it a getter for an IEnumerable over Player.ReadyList

soft turtle
#

You don't understand what plugin I have, and arguing blindly is stupid.
I've already done everything I wanted and created a normal check to ensure this is a real player.

restive turret
upper vapor
#

there's a uh method for this

restive turret
#

I did this from memory

#

I'm in bed still

upper vapor
#

WaveSpawner.CanBeSpawned

restive turret
#

Lool

#

I didn't think it had a list for these

slate flume
#

So all we can do is speculate blindly because you've given us nothing to work off of

#

We have an incomplete picture because you have not completed it

upper vapor
restive turret
#

Here is a complete picture

slate flume
#

So tuff

upper vapor
slate flume
unique crane
slate flume
restive turret
#

Anyway feel free to ping me if i 🐸et to say anything about my PoC implementations.
Since those are poc it wouldn't be fully completed & ready but idea behind should be goog

upper vapor
slate flume
upper vapor
#

thx

restive turret
slate flume
upper vapor
#

i feed off water and salami

#

and ram

unique crane
#

Woah thats more evil than eve

slate flume
upper vapor
unique crane
#

cause of ai

slate flume
#

Did you guys hear

#

OpenAI is seeking more donations because they're operating in the red

upper vapor
#

"guys we might have put ourselves in a sticky situation because we totally give a crap about safety"

#

"we absolutely ensure that ai is safe for everyone to use"
-# -nobody at closedai

restive turret
#

I heard many security researcher literally tell sama to duck off

upper vapor
#

saltman

slate flume
upper vapor
#

it was expensive af

slate flume
upper vapor
#

no

restive turret
#

And still living in a hut

upper vapor
#

i'm axwabo

restive turret
slate flume
upper vapor
slate flume
restive turret
#

🛖

upper vapor
#

wild west reference

slate flume
restive turret
slate flume
#

Microsoft is on my shit list

upper vapor
#

"30% of our code is written by ai"
yeah it shows

slate flume
#

I hate them

upper vapor
#

can't start explorer

#

can't start notepad

#

can't start my life

#

can't shut down

slate flume
restive turret
upper vapor
#

what else can't you do on this os

restive turret
slate flume
upper vapor
upper vapor
#

switching to linux

restive turret
#

I can't

slate flume
#

But I want full game support

upper vapor
#

oh nahhh

#

kernel level anticheat

#

hmm yes i love

restive turret
#

I do shady things that requires windows

upper vapor
#

surveillance over my entire system

restive turret
#

And i play rust sometimes

upper vapor
restive turret
slate flume
#

I know I have some games in my library that aren't ported to linux

upper vapor
restive turret
#

I don't play those games

upper vapor
#

go9od

restive turret
#

Anymore

slate flume
#

Someone needs to make a Windows competitor that is just Windows but without the bullshit

restive turret
#

Win7 partial source code is leaked so

upper vapor
restive turret
#

Real

#

Doors9

upper vapor
#

XD

restive turret
#

Or

slate flume
restive turret
#

D8rs

upper vapor
upper vapor
#

wine & proton exist for a reason

slate flume
slate flume
upper vapor
#

the bait did not work

restive turret
#

Cus not a fish

slate flume
#

I don't think they ever even got PUBG working for Linux

#

I don't play the game but that was interesting to me

upper vapor
#

i wonder if you could run it with winboat

#

-# i don't really play games so idk

slate flume
#

Win boat doesn't really do that afaik

upper vapor
#

right

#

solution: don't play any games

slate flume
#

All I know is Microsoft cornered the market and are gonna do whatever they can to make sure users can't escape their ecosystem (just like Apple)

#

Two of my least favorite companies ever

upper vapor
#

lmao

#

ap*le

slate flume
#

I hope Microsoft tanks and stops existing

#

I wanna see some IBM -type shit

upper vapor
#

bruh

#

let's keep the .net team though

slate flume
#

Praying on their downfall 🙏

upper vapor
#

(not the visual studio team)

slate flume
#

I introduced a new dev to Rider a few days ago

upper vapor
slate flume
#

He messaged me a few hours after I did and was praising me

#

No lie

upper vapor
#

🗣️🗣️🗣️

slate flume
#

He used to use Visual Studio lmao so I get the pain

#

Exactly where I was a year ago

upper vapor
#

some people just don't realize that they're being gatekept

slate flume
#

Ong

upper vapor
#

the previous sentence has weird grammar

slate flume
upper vapor
#

they

#

okay

#

they're gatekeeping themselves, preventing uhh

#

a true developer experience

#

it's a different thing if you don't like Rider because this or that

#

but at the same time, you can just... configure Rider

#

🤯

slate flume
#

Double shift is peak

#

Built-in decompiler >>>

#

Huge

upper vapor
#

I KNOW RIGHT

slate flume
#

Saved me actually SO much time

upper vapor
slate flume
#

Jet brains gives me faith in tech companies

upper vapor
#

railjet brains

restive turret
#

Rider is wierd to me as all their product UI

#

The java one was same

upper vapor
#

says the one whose IDE has the solution explorer on the right by default

#

that's just so stupid

restive turret
#

You can configure that one too

upper vapor
#

yeah but who had that brilliant idea

restive turret
#

Idk

#

Even vsc has it in right

#

Wait nvm thats left

upper vapor
thin shuttle
wary gust
restive turret
#

@slate flume yo.
Hey since I got cold again (or i have zero clue what/how happened) i can't do anything
, head hurts and my nose doing its funny where it doesnt stop being annoying.
Dont think I gonna show what would be an impl poc for microhid.
I usually be better after 1 or 2 days so maybe in weekday or something.
Anyway if you have more ideas to add in labapi/basegame type out here / git issue (i prefer here first then git issue)

#

I wanted to do so much today waaa

thin shuttle
#

i was bruh lol

#

and now i am asking what is 0F in Celsuis

restive turret
#

Is it flu? Idk something usually happens in winter time

#

My immune system is shit so

unique crane
#

Bro ive been sneezing and coughing for a week

next jungle
#

rip

unique crane
#

This is what happens when are we all locked up in the same basement smh...

restive turret
soft turtle
#

I don't understand how this works. I unsubscribe from the event, but it doesn't care
I call Unregister in RoundStarting and Register in WaitingForPlayers, but after the round starts, it doesn't respond.
(Register isn't called anywhere else except WaitingForPlayers.)

#

Does anyone have a similar problem?

upper vapor
#

log out something in Unregister

restive turret
#

Because it goes as "waitingplayers" then "roundstarting" then "RoundStarted" so after the round officially started it unregisters those making your actions completely nulliflied

soft turtle
#

BUT for some reason the events don't unsubscribe and continue their work

restive turret
#

The last 3 events will never be called

upper vapor
upper vapor
upper vapor
#

try using CustomEventsHandler

soft turtle
upper vapor
#

where do you set it

#

also, if the methoids can be marked static, mark them static

soft turtle
unique crane
#

Well your Unregistering it when you disable the plugin..?

#

I dont see any RoundStarting unsubscribe

soft turtle
upper vapor
#

could you put logs in server events to verify that they are being called?

soft turtle
soft turtle
# unique crane Wdym?

I mean that players have subscribed to events but don't want to unsubscribe for some reason
I know the events are subscribed because they spam errors because I make the List null in RoundStarting

unique crane
#

Wait

unique crane
#

Player or Server events?

soft turtle
unique crane
#

Can you please in fact confirm via log that they do get called

#

And show the method where you register them

unique crane
#

and the registering too

soft turtle
unique crane
#

Log the registering the events too

soft turtle
unique crane
#

just in case it doesnt get called twice or anything

#

then show the la how it gets called

unique crane
#

@upper vapor any idea

upper vapor
#

idk what to tell you

#

this is impossible

#

try using customeventshandler i guess

soft turtle
upper vapor
#

i blame it on c# delegates

next jungle
#

uhhh is there some other maintained custom role api besides UCR?

unique crane
#

I believe so

#

check plugins

upper vapor
next jungle
#

yea but that one is purely yml based 😔

#

there was another one that looked decent but its archived

hearty shard
#

exiled Trol

next jungle
#

that would require rewriting my entire plugin and switching out multiple libraries

unique crane
# soft turtle

Geniuenly 0 clue on this one then. Can you make a very basic plugin without anything else than this unsubscribe, subcribe behavior and then report it as an bug if it still persistst?

next jungle
#

:dread:

#

forgor

restive turret
next jungle
#

I mean UCR does support c# but like the api itself is very limiting

restive turret
#

ye we using my Yaml roles and has an extension that we work to do more funny roles

#

idk if i wanna expose that

next jungle
#

not really needed ngl, im already half way through writing a basic custom role api

unique crypt
#

bettersinkholes rewritten/ported to LabAPI, if the original author permits me to release it on github with CC0 or any other license i'll put it up, feel free to poke around & offer suggestions (dll + src inside)

slate flume
#

I'm going off the grid the next several days so I'll be unreachable during that period

restive turret
#

But...

restive turret
unique crypt
slate flume
#

Seems like a pretty easy plugin to make

waxen kayak
#

i want to know how to stop culling player

true cedar
thin shuttle
upper vapor
waxen kayak
#

no need

#

i found how to stop culling players

#

(in server)

upper vapor
#

I don't think anyone besides you understood what you were trying to achieve

languid temple
#

!softban 769887313806229564 account compromised; change password

regal lakeBOT
#

Done. Enough chaos.

pulsar locust
#

Mods, blkdiscard their ssd

sinful bronze
#

Discord mod's snipers was sent to this person

soft turtle
unique crane
balmy bay
worn gull
upper vapor
thin shuttle
unique crane
worn gull
#

That is my nightmare 💀

upper vapor
#

Gotta love calculus

worn gull
#

(I failed that class and I need to re-take it at September)

upper vapor
#

I've forgotten most of it (we learned it last semester)

worn gull
#

Next semester we will learn OOP happy_pepe

worn gull
upper vapor
#

@Mátyus Katalin

next jungle
restive turret
#

me when i cant even get my classes assigned

worn gull
#

How can I get this working NamingRulesManager.ClientFetchReceived(player.Team, player.UnitId) it gives me an empty String bruh

worn gull
#

Oh

unique crane
#

It uses GeneratedNames which is populated by received the message

#

so its empty

#

=> return string.empty

upper vapor
#

The client in "client" stands for "not server"

#

Crazy ik

worn gull
#

Yeah then how can I get the unit?

unique crane
#

If we dont have player property for that (which we probably dont), you will have to store them locally via a patch I guess

#

unless there is other way

#

Also make a suggestion in case it doesnt exist

upper vapor
#

UnitName

wary gust
#

maybe I shouldn't have pinged but it's kinda late now so

hearty shard
#

conclusion

#

we sell slime boy

restive turret
#

@thin shuttle
Can you check if https://github.com/northwood-studios/LabAPI/issues/340 happens only in there or it has other places:

SnowballProjectile
AlphaWarheadController
Metal
Spicy
Strangled
FpcMotor
Scp106Attack
Scp939LungeAbility

I seen other places for effects that doesnt really matter (multiplying and trying to dmg you again)

#

& also the DC image is unabailable

thin shuttle
restive turret
#

ah the falldamage one

thin shuttle
#

So should be easy to put a fix

restive turret
#

I validated all of those

#

i give you a list where i found them but if you find more lmk

thin shuttle
#

Can i suggest to add new DamageHandler for few damage?

#

Like being killed by bulkdoor give you info what door killed you

#

That would be good for dev side

restive turret
#

Create a list and pass it down the github issue / ideas

thin shuttle
#

I will also report the Scp939 camera bug
And Scp106 can't go through door (but please with an addition to permit to make than 106 can't go through door

restive turret
#

939 camera bug? what

#

106 cant go tru doors after being re-set to its role is no idea why happening

thin shuttle
#

@restive turret they are both same bug

#

They arent correctly reset

#

When changedRole

#

To the same

#

It's something on client side

#

So i can't help you more than that

#

And camera is about when you prepare jump as 939

swift nexus
#

specifically the camera angle

#

in lunge

thin shuttle
#

Yeah

#

Not QA accepted bug

#

Tho it's annoying

#

Lol

#

On our old github

#

Lol

restive turret
thin shuttle
#

Cursed

#

And probably won't fix

#

Because i thinks it's just not reapply for 939 at least

#

For 106 idk how that happened

restive turret
#

ye we had that bug for 106 custom roles

#

i added artifical waiting time to set the role again

thin shuttle
#

?

#

That not fixing it

restive turret
#

I wasnt at NW atp so

thin shuttle
#

I talk

#

You keep the bug even with this

restive turret
#

ya i know i just ignoring it and doing another band-aid fix

upper vapor
#

We should just rewrite the role system

thin shuttle
upper vapor
#

Because it has design flaws

thin shuttle
#

why you guys at NW always want to rewrite everything i do get it for old stuff but Role system isn't old

upper vapor
#

Like
Stateful rpcs

#

At cyn (they're no longer in the server afaik)

thin shuttle
#

Weapon have been rewrited/modify every update

thin shuttle
hearty shard
#

a human being

upper vapor
#

Yeah

hearty shard
#

damn buddy vanished

#

average sl dev

thin shuttle
#

@upper vapor @restive turret do you guys know why RoleTypeId.Custom has been kept ?

#

Has it's never been a things on it

#

And beens here since 939 rework

#

That was 4 years ago

upper vapor
#

Surprise perhaps

#

Idk tbh

#

They probably didn't want to break the roles following that

restive turret
#

prob not to break million things

upper vapor
#

@mild ice craziest post moderation ever conceived

mild ice
thin shuttle
hearty shard
thin shuttle
#

Yeah

upper vapor
#

let's do this in SL

thin shuttle
#

why this is not accepted

icy knoll
thin shuttle
#

can you add imported :3

icy knoll
restive turret
thin shuttle
#

NW Command trying to use ClientSide command on a ServerSide command

#

@icy knoll could you fix it please :3

#

we at the moment can't remove line but it's was clearly intented to be possible

#

also i thinks the above method should call CleanupExpiredLine after it's finish modifying _timeStamp

sinful bronze
#

i allow to do this

thin shuttle
#

?

sinful bronze
#

i allow you use ClientSide command on a ServerSide command

#

only for you

#

no one must know

sinful bronze
icy knoll
thin shuttle
icy knoll
#

no

hearty shard
upper vapor
restive turret
thin shuttle
#

That why i notify it to here and to beryl

soft turtle
#

How can I give SCP-106 the ability to stay underground indefinitely?

real spade
#

help

#
        public string HudTemplate { get; set; } =
            "<align=left><pos=-45%><size=25></size> <size=15>TPS {tps}</size>\n" +
            "__________________________________\n" +
            "<size=20>ИНФОРМАЦИЯ О ПЕРСОНАЖЕ</size>\n" +
            "Имя: {name} | ID: {id}\n" +
            "CInfo: {cinfo}\n" +
            "__________________________________\n" +
            "<size=20>ИНФОРМАЦИЯ О РАУНДЕ</size>\n" +
            "Живых игроков: {alive}\n" +
            "Время: {time}\n" +
            "__________________________________</pos></align>";```
#

what code is needed to display setname?

halcyon kite
#

Или что то такое

real spade
#

да мне надо чтоб было видно setname а то не работает

#

в коде видно

real spade
#

help

upper vapor
real spade
#

and how to write a plugin

wary gust
upper vapor
#

!c#

regal lakeBOT
upper vapor
#

And check out the labapi wiki too

real spade
restive turret
#

CustomHandlersManager.RegisterEventsHandler(Events);

I dont think there is even an EventManager

real spade
upper vapor
#

Please learn C#

sinful bronze
#

Vibe code of mind

wary gust
rustic pecan
# real spade

Speaking of Logs...
I am like super new rn, but when I need logs I use:

using Logger = LabApi.Features.Console.Logger;
And then instead of Log.Error type Logger.Error

hazy kelp
#

man, you need to read tutorial

rustic pecan
#

Also could anyone help me plz, how can I add some clarification text for commands like the yellow text on the screenshot?

#

I made a new command but when I type it in RA it just shows the command itself without the parameters which I want to be shown like here

#

Sry for dumb question

upper vapor
#

IUsageProvider

#

Implement that

rustic pecan
#

Also can anyone advise a good guide for beginners?

upper vapor
#

Np

upper vapor
rustic pecan
#

K, got it)
Yeah I have some basic knowledge of C#, finally something useful from 4 years of studying in college 💀

#

Ty!

upper vapor
#

Np

upper vapor
restive turret
#

.netcore 2

obtuse spruce
#

is there an easy way to change the clipSize on an Firearm Prayge ?

restive turret
#

Only conplicated

#

Check some interface

unique crane
obtuse spruce
#

make MaxAmmo has a setter Prayge

unique crane
#

Quite sure it does

#

ou

obtuse spruce
#

with a setter

static meteor
# obtuse spruce MaxAmmo has a getter only and we have ChamberMax

Patch it

    [HarmonyPatch(typeof(MagazineModule), nameof(MagazineModule.AmmoMax), MethodType.Getter)]
    internal static class MaxAmmoPatch
    {
        [HarmonyPostfix]
        public static void Postfix(MagazineModule __instance, ref int __result)
        {
            if (Utilities.TryGetSummonedCustomItem(__instance.Firearm.ItemSerial, out var summonedCustomItem) && summonedCustomItem.CustomItem.CustomData is WeaponData wd)
            {
                __result = wd.MaxMagazineAmmo;
                __instance.ServerResyncData();
            }
unique crane
#

oh yea I didnt add it because I didnt do proper server -> client sync of the max value

#

You can set it via a patch or something

#

but on client it will look like
60/20

#

or such

static meteor
# obtuse spruce Love u man <:RealMan:1319171681104822362>

You'll also have to do this too

    [HarmonyPatch(typeof(AttachmentsUtils), nameof(AttachmentsUtils.AttachmentsValue))]
    public static class AttachmentParameterPatch
    {
        public static void Postfix(Firearm firearm, AttachmentParam param, ref float __result)
        {
            if ((firearm.IsSummonedCustomItem() || firearm.IsSummonedAPICustomItem()) && param is AttachmentParam.MagazineCapacityModifier)
                __result = 0f;
        }
    }
carmine prawn
#

patch all assembly💀

obtuse spruce
upper vapor
upper vapor
strong lagoon
#

Hi all I was wondering if anyone is available for plugin dev work?

static meteor
#

What did you want it may already exist

next jungle
#

uhhh what was the way to change playeer vc to scp one?

hearty shard
#

check proximity chat

static meteor
hearty shard
#

thats 106 issue

strong lagoon
#

we are more so just looking for a plugin dev as our coder is basically doing everything by himself and we are just looking for help, the server is going to have plugins inspired by chaos theory, candy cult, and dr brights

next jungle
hearty shard
#

well

#

specifically in prox chat

static meteor
#

never tried it ¯_(ツ)_/¯

next jungle
#

yea im trying to make tutorial speak in scpchat

#

i did it once but forgot how

hearty shard
#

its old

#

but it is the way thats used

static meteor
strong lagoon
#

if anyone is Available to help please reach out.

hearty shard
strong lagoon
#

we plan on paying

strong lagoon
hearty shard
#

dunno

#

no clue tf candy cult is and afaik brights uses private source plugins only

#

i gave one that turns scp -> proximity chat

#

it is the same concept for reversing that one

#

well actually it prob isnt, seeing as its last updated 2 years ago

upper vapor
restive turret
#

well most server have their code privated for reasons

icy knoll
restive turret
#

most of the plugins you see it is mostly custom made

icy knoll
#

in my case, all the plugins we use are open source, including our custom one

next jungle
upper vapor
#

should work hopefully

#

there's a base-game issue related to a reported bug, the channel isn't read back properly
hopefully we'll get a fix out sometime

obtuse spruce
#

GL NW Gamerzzz RealMan

#

break ur code but dont break my heart and my labApi RealMan

next jungle
upper vapor
upper vapor
upper vapor
unique crane
#

-epic orchestral music-

obtuse spruce
hearty shard
#

evil thoughts

sinful bronze
#

server mod 2

upper vapor
#

okay

#

so

#

type fear

#

in the emoji picker

#

and this is what you get

restive turret
upper vapor
sinful bronze
#

scariest stories

upper vapor
#

discord is working flawlessly 100% of the time

#

ofc

#

ofc

ashen hound
#

I hope I see some nice number of people during saturdays stage lol

true cedar
#

boycotting it until we get arbitrary code execution on the client

sinful bronze
#

ppl will on stage

spare zodiac
#

no fucking way

celest thorn
#

ngl guys

mild ice
celest thorn
#

this game sucks

spare zodiac
slender lynx
#

next update add rce

unique crane
#

Its that shrimple

white badge
#

sounds exciting

worn gull
#

I thought Labapi 6.7.0 released becuase of the ping 8379_Sad_Boi_Hours

celest thorn
# unique crane

nah bro im gonna speak out until primitive triangles get added

#

btw my suggestion is upvoted and one of the most upvoted

spare zodiac
upper vapor
celest thorn
#

gold fish intelligence

#

for a triangle

upper vapor
#

mirror emoji

restive turret
#

give me more primitve types to add

celest thorn
restive turret
#

if exceed 5 i consider

upper vapor
celest thorn
sinful bronze
#

textures

celest thorn
#

bro a CAPYBARA made it before a triangle

upper vapor
celest thorn
sinful bronze
#

i am

celest thorn
#

triangle would help the world

sinful bronze
#

i use capybaras as mountains

upper vapor
#

it's not enough

sinful bronze
#

fix skybox

upper vapor
terse bone
celest thorn
#

ngl i forgot how the mentality was here

teal junco
#

triange would be cool but it isnt super broadly useful

upper vapor
teal junco
#

I would like a regular triangle, and right triangle, along with 30 60 90

celest thorn
#

like ngl install last patch

#

buy it with eddies

restive turret
teal junco
upper vapor
celest thorn
#

you know a plane triangle would change alot of stuff

sinful bronze
#

okay i will use my brain to 100%

#

fix dummies

teal junco
celest thorn
upper vapor
#

make a triangle in blender

#

import it

teal junco
#

what is that

upper vapor
#

into unity

#

and show how you make any model

celest thorn
#

THERE'S ALREADY A PRESET ON BLENDER

gilded thicket
#

im sorry

sinful bronze
#

we can just open a suggestion tab in lab api and maybe find new features

gilded thicket
#

i believe in you

#

i regret my action

teal junco
upper vapor
teal junco
#

cant you also do that with quads

vast canopy
#

1 announce made this chat into a chaos within 1 minute

vast canopy
teal junco
celest thorn
#

I bet a nw staff has 2 minutes of their life to follow a tutorial

vast canopy
#

I want to make donuts

celest thorn
#

Im talking about a fucking triangle that is flat or the base of computer graphics

upper vapor
celest thorn
#

lol

terse bone
teal junco
#

Unless youre talking about a fully customizable triangle toy then you cannot make any arbitrary mesh with it

gilded thicket
#

like this

celest thorn
teal junco
#

Plus it would be so extremely unperformant anyways

upper vapor
celest thorn
gilded thicket
celest thorn
#

im just saying a triangle would benefit ACTUALLY creating new stuff

sinful bronze
#

custom map generator

upper vapor
#

you can't make any model just with one triangle

celest thorn
#

Example when me and maro were creating a specific jumps with triangles and we used 30 cubes just for that when that would simplify the entire process

upper vapor
#

one triangle is nothing 😭

teal junco
vast canopy
#

Its hardly to say what even can make modding reflexable at the moment

upper vapor
teal junco
#

Is it just jumps

upper vapor
#

she wants to make goku

vast canopy
#

Like. We r punching the wall rn

#

No?

upper vapor
gilded thicket
#

bruh if u wanna make a tirangle just use pythagore theoreme

celest thorn
#

That was a fucking joke

#

goof ball

stable falcon
#

Oof-

celest thorn
teal junco
#

Use geonometry

upper vapor
# celest thorn That was a fucking joke

okay but show me the math and code that will convert your model to transforms
you can only use an empty object and your one triangle that you made
duplicate as many times as you want

halcyon folio
celest thorn
vast canopy
#

I think im gonna make bingo list for the stage

celest thorn
#

it cost more for the gpu to render

#

rather than have a triangle already in the game

halcyon folio
teal junco
#

Yes triangles are good because more is always better but its not lifechanging

upper vapor
gilded thicket
#

bruh have yall not been in school or smth, just make 3 cube one is a b c and do import math and math.pythagore(a b c)

upper vapor
#

ask about how you'll use it
no answer

vast canopy
upper vapor
halcyon folio
#

What do you need a primitive triangle for?

celest thorn
stable falcon
gilded thicket
#

cuz primitive triangle has non customizable angle so u should do with 3 cube and pythagore import math

upper vapor
#

answer this

vast canopy
gilded thicket
#

why everyone ignoring my idea

upper vapor
#

i hope you realize that you can't make any shape if you only have a triangle

celest thorn
upper vapor
#

what are you talking about

stable falcon
upper vapor
#

you want literally one single triangle in your scene?

celest thorn
upper vapor
celest thorn
#

This is a cube

#

how the gpu draws it

#

and a cube is composed of triangles

#

instead of drawing useless triangles

terse bone
#

microoptimization

celest thorn
#

we just use one

upper vapor
#

so you want a ramp or something
but for complex stuff, a specific triangle isn't sufficient

celest thorn
#

optimization

gilded thicket
upper vapor
celest thorn
gilded thicket
vast canopy
celest thorn
gilded thicket
halcyon folio
#

The story of a developers need for triangles

thin shuttle
celest thorn
teal junco
#

Okay sure

#

a triangle is good for being a triangle, it just isnt the most amazing thing ever

upper vapor
#

yes

topaz yacht
#

Why is someone asking about a triangle primitive?

upper vapor
celest thorn
#

i remember now why i left

upper vapor
celest thorn
thin shuttle