#plugins-dev-chat

1 messages ยท Page 140 of 1

upper vapor
#

Build a metro line just for yourself toomuchtrolling

celest thorn
#
  • uni is in one of the worst area so i go to my uncles that they are fucking schizos and they live 1h distant by walking
upper vapor
#

Welcome on board. This is metro line Express 0 to idfkwhat university. Doors will open on the left.

celest thorn
#

every day i come back i just work on SL and study for uni

#

and then the morning i clean home

#

like there's not a day where i really take time or do something for myself

upper vapor
#

And he smells of cigarettes again (the bell has just rung recently)

upper vapor
#

Make some time

#

Less time for sl

celest thorn
#

btw people who go to comp science are like weird

upper vapor
#

More time for yourself

upper vapor
celest thorn
#

nah i geniunly don't care

restive turret
celest thorn
#

like i geniunly don't understand

upper vapor
#

Xddd

#

Showering is expensive

#

(Takes 10 minutes)

celest thorn
#

YES

upper vapor
#

And water Fear

#

They're afraid of water

#

Only monster energy

celest thorn
#

i geniunly don't know if this guy sits next to me

#

to smell my hairs

#

or what

#

because he gets always near me

#

and sniff

#

like bro

upper vapor
#

Give them a sample

celest thorn
#

this is weird asf

upper vapor
#

I got asked for that on the train, like how do I have such long hair

celest thorn
#

i know my shampoo smells like vanilla and its girly (all glitters :3)

restive turret
upper vapor
#

Okay but it's like

#

A strong stench

#

Annoying af

celest thorn
#

both

restive turret
#

Ye every cigarette is different

celest thorn
#

the guy next to me stench strong

#

and the guy next to me usually stench annoying

upper vapor
#

Wtf

celest thorn
#

like i geniunly don't know why people don't like showers

celest thorn
#

first days i was crying so badly in the car because it was unbearable to stay in there

upper vapor
#

Bear

#

Get it

#

Xd

celest thorn
#

like i understand im more fem than 99% of the males and i just take care alot about my odor and just be more fem

#

i go out of my way to smell good

restive turret
#

Well I sweat pretty much every time

celest thorn
#

like something i always got compliments is my hairs and how clean i am

#

geniunly in those classes the only one who don't smell are the girls

#

and me

upper vapor
#

That's how we spawned

celest thorn
#

i just don't sweat alot

upper vapor
#

I'm not gonna use 100000 sprays of deodorant a day

upper vapor
celest thorn
#

honestly i understand that

#

but its not like a class pack of 120 people

#

you smell so bad

#

and the others too

#

like i geniunly escaped in high school from a guy that smelled so bad

#

to be now in a class full of people that smell bad

celest thorn
upper vapor
#

๐Ÿ˜ญ ๐Ÿ˜ญ

celest thorn
#

and went to the gym with those

upper vapor
restive turret
upper vapor
#

At least rotate them a bit

celest thorn
#

i wash them and then put them back

upper vapor
#

Unity sweat markiplier: 1000x

celest thorn
#

but for what we understood by his bestfriend (a girl), she said that her parents too smell alot

celest thorn
upper vapor
restive turret
#

Also if something is wrong i rage, which is extra top on that

celest thorn
celest thorn
#

i know i sound schizo

#

but i try to prendict convos or anything

#

before it happens

#

and 80% of the time it happens

upper vapor
#

No option to turn off autocomplete despair

celest thorn
#

because i know maybe that question will be there

#

or how it will be phrased

#

or the same happens i try to think that maybe people are thinking

#

and this geniunly messes me up alot sometimes

upper vapor
restive turret
#

Huh

upper vapor
#

Don't think (about what people think)

restive turret
#

I just post

upper vapor
#

Xd

#

do you PATCH?

restive turret
upper vapor
#

Or PUT?

celest thorn
upper vapor
#

Real so real

#

Just don't mess up the local index

celest thorn
#

booboogaga

#

sorry messed up

#

btw i geniunly thought i was weird in my life

#

but maybe

#

i finally understood im not this weird

restive turret
#

No u r

celest thorn
restive turret
#

Are you?

celest thorn
#

idk some people do say im weird

#

others don't

#

but geniunly i don't think im that weird as much as those guys

restive turret
#

I don't really care what other people think about me that much

icy knoll
#

legit only gray names in this channel

celest thorn
upper vapor
celest thorn
#

i just didn't unlock it yet

upper vapor
#

And yeah this chat is pretty grim

icy knoll
celest thorn
#

else i was going to get purple (:3)

#

ngl purple is the best color

upper vapor
celest thorn
#

sad and depressed developers

upper vapor
#

(She is gay)

restive turret
icy knoll
#

i am very sad and depressed rn

icy knoll
upper vapor
celest thorn
celest thorn
icy knoll
celest thorn
upper vapor
celest thorn
#

bro new variant?

restive turret
upper vapor
#

Lydia

#

Lesbian

celest thorn
#

idk what the fuck are you guys saying

#

let me search it up

upper vapor
#

How is this not in the dictionary

upper vapor
#

Very gay

celest thorn
#

Oh

#

those types

upper vapor
#

Xd

celest thorn
#

...

restive turret
upper vapor
upper vapor
celest thorn
upper vapor
#

Raging princess

celest thorn
#

i geniunly am nice

restive turret
celest thorn
upper vapor
restive turret
celest thorn
#

go away

#

don't touch this game

icy knoll
upper vapor
celest thorn
restive turret
celest thorn
#

its just boring

#

im sorry but im not built to design websites

icy knoll
#

legit ive practically had to remake this whole website from scratch because this guy just decided on a random monday to remake the whole app

upper vapor
#

Get good at css

restive turret
#

I dont really like working on web stuff and any design

upper vapor
#

How did management allow that

celest thorn
icy knoll
celest thorn
#

is where i style alot

upper vapor
upper vapor
restive turret
#

I design how my funeral will look

#

That's all I can design

celest thorn
#

hope its soon enough

#

for me and you

icy knoll
#

i love vsc snippets

upper vapor
#

Though

celest thorn
upper vapor
#

If you die, you can't attend bro's funeral

celest thorn
restive turret
celest thorn
#

thats why if i ever kms i will do videos for everyone funeral

#

lol

restive turret
#

Please watch supernatural its great

celest thorn
restive turret
#

?

celest thorn
#

nah bro

upper vapor
#

Will you do that on Cameo?

celest thorn
#

wtf is this

celest thorn
#

from cupcake lord to just shit on someone

upper vapor
restive turret
celest thorn
#

its really strange

celest thorn
#

everyone knows he was there to buy a cupcake

restive turret
celest thorn
restive turret
#

Oh

#

Ye they restarted if after S6

upper vapor
celest thorn
#

this guy ^

#

has cameo

upper vapor
#

I know

upper vapor
celest thorn
#

and the shit he says its crazy funny

#

bro

celest thorn
#

you can BUY BIRTHDAY GIFT

upper vapor
#

Ah hell nawh

#

Let's not let Lucid loose upon us

celest thorn
#

i would honestly laugh

#

it just like you are living in another dimension

#

lol

tepid sluice
#

this year i want some new birthday gifts

#

:3

celest thorn
tepid sluice
#

whats that

slender lynx
#

edp445 rust cameo:

tepid sluice
#

no

upper vapor
#

Trying to meet a certain cupcake

#

What

slender lynx
#

ai aint takin over the world with this one

celest thorn
upper vapor
#

Did you ask deepseek

celest thorn
#

here's the video

#

bro wanted to meet a cupcake that wasn't fully baked

upper vapor
#

What ๐Ÿ˜ญ ๐Ÿ˜ญ

slender lynx
#

i would post the rust one but id get banned rather fast

celest thorn
#

we need to do one too for sl

#

lol

#

i swear im gonna buy it

#

40 BUCKS????

#

BRO

upper vapor
#

Please don't include SL employee names

celest thorn
#

to lucid

#

or better to hubert

#

lol

#

the comments

#

are something else

tepid sluice
slender lynx
celest thorn
slender lynx
celest thorn
slender lynx
#

the guy does kids birthday wishes too btw

upper vapor
#

I would like to opt out of life

restive turret
#

Can't

celest thorn
restive turret
#

You have work to do

slender lynx
celest thorn
upper vapor
upper vapor
tepid sluice
#

D:D

cyan crown
#

Dead chat :(

true cedar
#

meow

cyan crown
#

I managed to use spacewar app id for my game and now steam features like player id 64 and username are added

#

Ignore spelling mistakes i was running short on time and i had to go :"(

crimson dune
#

thats hot

true cedar
#

offical

cyan crown
#

Legecay lmao

#

Tomorrow i'll work on admin panel 2.0.0

#

Not 3.0.0 since that version is currently insane to make

#

I had a lot of performance issues with light sources and its flickering a lot its probably bc im using forward and not forward+ along side my Occlusion Culling not being that good (code wise/logic)

teal junco
#

or is that just a placeholder

cyan crown
#

I'll use meshes soon

#

Since its better imo

grand flower
#

we love lua(u)

grand flower
#

LogLuauVM: [ServerVM] Hello, World! pog

#

const bool bSuccess = LuauState->RunString("print('Hello, World!')");

restive turret
#

Nice

celest thorn
#

i do wonder if you could import ulua in sl and do a kinda of cool system with it

#

to do scripting with plugin

#

like enable the user to script with your plugin and sl

restive turret
#

I think TayTay did it

grand flower
#

yeah you could, but like

#

not many uses for it in SL

#

in my scenario it'll be the full modding framework of my game so I'm getting it up and ready first

grand flower
#

I want client & server scripting

#

and I want my game's base modes to be mods themselves

#

that way if I can do it via modding, modders can too (forces me to expose everything necessary & make a cool API for modders since I'll be one on my own game)

celest thorn
#

i've never seen this crazy amount of modding

#

only gmod

#

really

grand flower
#

Don't wanna talk too much about the game (yet)

#

but it will have levels of modding similar to Garry's Mod

#
LogLuauVM: Error: :1: Expected ')' (to close '(' at column 6), got '!'

hell yeah got errors working too

pulsar locust
#

You can disable vintage story in vintage story

celest thorn
#

im not a player of that game

grand flower
#

I like the idea of making most of the game as a mod

#

at least the base gamemodes I'll handle

#

players will be able to make their own

celest thorn
grand flower
#

pretty much

#

although I'll be more oriented towards a singular theme

celest thorn
#

ngl rn im having problems making a map

#

like i need to make a map only knife

#

but idk a theme

#

or anything

#

i just need to fit 10 teams

upper vapor
#

@spare zodiac

celest thorn
icy knoll
#

never had that before

royal mica
#

I fucking hate that

#

I fucking hat LocalAdmin eating the commands

#

it is making me insane

celest thorn
restive turret
#

unity problems

royal mica
#

unity problems ReallyInnocent

upper pike
#

What does PanicDuration mean for SCP-2176

#

Why is the Ghostlight panicking?

spare zodiac
#

I'm going to guess it's for 079 disconnect time

celest thorn
#

i think its something to do with the client

upper pike
celest thorn
#

because in the server

#

doesn't exist anything

upper pike
#

Can't find any uses in the class

hearty shard
upper pike
#

And its used to be a private field

hearty shard
#

constants get compiled to their value

#

it doesnt act as a field

upper pike
#

I dunno what to actually call it because its not really a variable if it doesn't change

spare zodiac
#

you can't patch it though :(

hearty shard
#

its a constant

#

but yea

#

doesnt appear to be used

spare zodiac
#

maybe was used in different version

#

or NW devs said le funi leave in for stupido devs think this is important

celest thorn
unique crane
hearty shard
#

and theres no usage of 5f in the class

#

well it might be client only though...

bright vine
#

GUYS

#

HOW DO YOU VIEW OTHER PLUGINS' CODE

#

I LEARN BEST FROM EXAMPLES

cyan crown
bright vine
#

i

static meteor
#

Github or decompiling it

bright vine
#

thank you Baguetter

#

Lets follow by the example Jovis

#

Jovix

pallid mason
slow grotto
#

Janitor's going postal today

cyan crown
#

so yeah you will have this dynamic of scientist and janitors trying to get you killed when you play as a class-d

upper vapor
royal mica
#

There a lot of questions there

slow grotto
plush walrus
#

As for why it doesnt stick, iirc IsKinematic broke in the last update

#

So it sticks server side, but not on the client side

pallid mason
plush walrus
celest thorn
slow grotto
plush walrus
celest thorn
#

idc

#

its old

plush walrus
#

Sure

celest thorn
# plush walrus Sure
    [HarmonyPatch(typeof(CollisionDetectionPickup), nameof(CollisionDetectionPickup.OnCollisionEnter))]
    internal class StickyGrenade
    {
        private static void Prefix(EffectGrenade __instance)
        {
            if (C4Charge.Instance is null) return;
            if (C4Charge.PlacedCharges.ContainsKey(Pickup.Get(__instance)))
            {
                __instance.gameObject.GetComponent<Rigidbody>().isKinematic = true;
            }
        }
    }
plush walrus
#

Ah, thanks

celest thorn
#

hope it helps :3

plush walrus
#

Cheers

#

I never really messed around with Harmony Patching

celest thorn
#

i love harmony

plush walrus
#

Its a great thing, I just never gotten around to trying it out and stuff haha

celest thorn
#

idk its useful alot especially in unity modding

spare zodiac
#

my mobile is telling me it cannot be played

plush walrus
spare zodiac
#

shall I learn java to make videoplayer for android? trollface

plush walrus
#

Assembly clueless

pallid mason
frail zinc
#

๐Ÿ’€

royal mica
#

wait I see

#

fucking BRUH

tepid sluice
upper vapor
#

but with a record

spare zodiac
upper vapor
#
using System.Text.Json.Serialization;
using RecipeExtractor.Converters;
using Scp914;

namespace RecipeExtractor;

[JsonConverter(typeof(KnobSettingListConverter))]
public sealed record KnobSettingList(bool Rough, bool Coarse, bool OneToOne, bool Fine, bool VeryFine)
{

    public static implicit operator KnobSettingList(Scp914KnobSetting setting) => setting switch
    {
        Scp914KnobSetting.Rough => new KnobSettingList(true, false, false, false, false),
        Scp914KnobSetting.Coarse => new KnobSettingList(false, true, false, false, false),
        Scp914KnobSetting.OneToOne => new KnobSettingList(false, false, true, false, false),
        Scp914KnobSetting.Fine => new KnobSettingList(false, false, false, true, false),
        Scp914KnobSetting.VeryFine => new KnobSettingList(false, false, false, false, true),
        _ => new KnobSettingList(false, false, false, false, false)
    };

    public static implicit operator KnobSettingList(Scp914KnobSetting[] settings) => new(
        settings.Contains(Scp914KnobSetting.Rough),
        settings.Contains(Scp914KnobSetting.Coarse),
        settings.Contains(Scp914KnobSetting.OneToOne),
        settings.Contains(Scp914KnobSetting.Fine),
        settings.Contains(Scp914KnobSetting.VeryFine)
    );

    public override string ToString() => this switch
    {
        (true, false, false, false, false) => "Rough",
        (false, true, false, false, false) => "Coarse",
        (false, false, true, false, false) => "1:1",
        (false, false, false, true, false) => "Fine",
        (false, false, false, false, true) => "Very Fine",
        (true, true, false, false, false) => "Rough,Coarse",
        (true, false, true, false, false) => "Rough,1:1",
        (true, false, false, true, false) => "Rough,Fine",
        (true, false, false, false, true) => "Rough,Very Fine",
        (false, true, true, false, false) => "Coarse,1:1",
        (false, true, false, true, false) => "Coarse,Fine",
        (false, true, false, false, true) => "Coarse,Very Fine",
        (false, false, true, true, false) => "1:1,Fine",
        (false, false, true, false, true) => "1:1,Very Fine",
        (false, false, false, true, true) => "Fine,Very Fine",
        (true, true, true, false, false) => "Rough,Coarse,1:1",
        (true, true, false, true, false) => "Rough,Coarse,Fine",
        (true, true, false, false, true) => "Rough,Coarse,Very Fine",
        (true, false, true, true, false) => "Rough,1:1,Fine",
        (true, false, true, false, true) => "Rough,1:1,Very Fine",
        (true, false, false, true, true) => "Rough,Fine,Very Fine",
        (false, true, true, true, false) => "Coarse,1:1,Fine",
        (false, true, true, false, true) => "Coarse,1:1,Very Fine",
        (false, true, false, true, true) => "Coarse,Fine,Very Fine",
        (false, false, true, true, true) => "1:1,Fine,Very Fine",
        (true, true, true, true, false) => "Rough,Coarse,1:1,Fine",
        (true, true, true, false, true) => "Rough,Coarse,1:1,Very Fine",
        (true, true, false, true, true) => "Rough,Coarse,Fine,Very Fine",
        (true, false, true, true, true) => "Rough,1:1,Fine,Very Fine",
        (false, true, true, true, true) => "Coarse,1:1,Fine,Very Fine",
        (true, true, true, true, true) => "Rough,Coarse,1:1,Fine,Very Fine",
        _ => ""
    };

}
#

here

spare zodiac
#

.HasFlag()

upper vapor
#

no

#

i needed it for serialization

#

but found a better approach

spare zodiac
#

...

royal mica
#

well ofc

upper vapor
#

new approach

spare zodiac
#

couldn't you use normal enum?

upper vapor
#

no because i need multiple knob settings at once sometimes

tepid sluice
#

Flags

#

wtf

upper vapor
#

kek

spare zodiac
#

if Rough == true you add to some string builder "Rough"

upper vapor
#

nuh uh

true cedar
#

^

upper vapor
#

i don't need to implement it manually

spare zodiac
#

a person who thinks all the time

upper vapor
#

but string builders are expensive :((

spare zodiac
#

why do you need so much optimisation

grand flower
spare zodiac
#

oh wait we are adding no waypoints 2026 to names?

#

lemme join

grand flower
#

I started it

#

Mostly because I gave NW the entire recipe to getting rid of waypoints

#

Albeit unlikely they'll follow through

spare zodiac
#

alr

upper vapor
#

and this was funny

#

pattern matching i love

#

CAN THE HOME KEY WORK IN THIS FUCKING APP

grand flower
#

You're laughing, AI wrote the most unreadable garbage and you're laughing

spare zodiac
#

I read something like only idiot loves complexity or smth

grand flower
#

Keep it simple when possible yes, but that piece of code is going to be complex to debug

#

Since it's unreadable

#

I'd rather have complex stuff, but at least commented well so it's still readable and understandable by other people

spare zodiac
#

why not simplify?

true cedar
grand flower
#

And sometimes simplifying too much ends up making it harder to read

spare zodiac
#

but not make something very easy complex

#

right?

grand flower
#

I'm fine with that as long as it's not to the detriment of other things, like performance (when applicable) or ease of use for developers

#

Yeah if it's simple it's simple

upper vapor
grand flower
#

Like you don't need to overengineer simple stuff

spare zodiac
#

I'm saying this, but still overengineering myself so many stuff

upper vapor
grand flower
#

It's a skill you learn along the way

spare zodiac
spare zodiac
#

but no need for those when you have extensions

upper vapor
grand flower
#

Implicit operators might make it "simpler" for the developer but it's more mental power used to follow it

upper vapor
#

but finally

#

extension members

upper vapor
grand flower
#

hit me

#

I'm a code reviewer at work you can't scare me

upper vapor
#

he streamed it at some point i think

grand flower
upper vapor
#

so i don't have it

spare zodiac
#

I don't ||want to|| remember

grand flower
#

another thing to keep in mind is like, you can make it simple for developers to use your functions, but have the complexity hidden inside them

#

that's fine

#

not everything needs to be simple

spare zodiac
#

@unique crane wait until you see my documentation I'm creating trollface

grand flower
#

i.e. this just runs some Luau code you pass it (RunString("print('Hello, World!')")). Simple to use, complex inside.

grand flower
#

im gonna cleanup that function anyway

#

mostly had lots inside for debugging

#

but I'll want something better to handle Luau errors

#

since I'll want to show them in-game too and all

#

this is so much fun btw

#

interacting with another language within Unreal

spare zodiac
grand flower
#

I have a good example, sec

spare zodiac
#

documentation.exe trollface

grand flower
#

that's the extent I go for documentation, at all times

#

And this is code nobody's gonna touch in a looong time

#

but I do the same thing at work with a large team and thousands of source files

restive turret
grand flower
restive turret
#

I stuck in this stage forever

spare zodiac
#

task manager

grand flower
#

Unity be like

spare zodiac
#

let it corrupt

restive turret
#

ok and like I killed , cleaned but still

cyan crown
grand flower
#

switch to Unreal

#

Thank me later

restive turret
#

I switching to no engine

cyan crown
#

noob engine

restive turret
#

that means I do not gonna make game

upper vapor
grand flower
#

ehhhh

#

a little hard to understand

grand flower
upper vapor
#

hehe

#

i tricked you

true cedar
#

what an ugly language

grand flower
#

Probably cleaner code than a lot of plugins mmLul

grand flower
#

kinda figured you did something like that heh

upper vapor
#

but i had to try it

grand flower
#

death

unique crane
celest thorn
unique crane
#

hm?

grand flower
#

i don't work at NW and SL makes me drink

unique crane
#

I won rum at last shooting competition

#

so maybe

celest thorn
magic gate
unique crane
#

No I mean sniper competition XD

upper vapor
#

make sure to drink water, y'all

unique crane
#

in czech republic

celest thorn
celest thorn
#

irl one

unique crane
#

ye

upper vapor
#

shooting CSG breakers competition

magic gate
upper vapor
celest thorn
magic gate
royal mica
#

PHP makes you take cocaine

grand flower
#

I love C++

true cedar
#

i

#

i could probably write several books on why i fucking hate cpp

slate flume
#

.

grand flower
#

don't use is null with unity stuff

#

bypasses lifetime checks

slate flume
#

Can I add an implicit operator as an extension member to a class

#

I don't think I'll ever actually have to do it

#

But it sounds dope

grand flower
#

you can add operators

#

dunno about implicit

upper vapor
#

if you wanted to add it to unity objects

slate flume
#

Dope

upper vapor
#

if (component)

#

=

#

if (component != null)

slate flume
#

Yeah I know

#

I just didn't know they used extension members for that

upper vapor
#

no..?

#

there are no extension members in default unity

slate flume
#

Then why did you bring up the fact that unity has implicit operators ๐Ÿคฆ๐Ÿผโ€โ™‚๏ธ I already know that

#

I'm asking an unrelated question

upper vapor
#

they just define implicit operators in the class for that

spare zodiac
upper vapor
upper vapor
#

okay

slate flume
#

Those already exist I have no reason to add them

#

I'm just curious if it's possible to add implicit operators using the new C# 14.0 extension shit

upper vapor
#

let's see

#

nope :(

slate flume
#

Aw :(

#

Also

slate flume
#

What the hell

upper vapor
#

Extension declarations can include only methods or properties

spare zodiac
#

you can make implicit loop though

slate flume
#

I'm on the preview version and I am not able to fuckin' use the new extension shit

#

I'm gonna crash out

slate flume
#

Fire

upper vapor
#

works for me on 2025.2.3

slate flume
#

I hate that rider doesn't prompt me for new updates

upper vapor
#

should be here

#

yellow circle

slate flume
#

Well too late cause I already am manually installing the new version lol

spare zodiac
slate flume
spare zodiac
#

I still have old version and new as 2 seperate applications

slate flume
#

Why

spare zodiac
#

I could change that fact trollface

spare zodiac
#

I don't have answers

upper vapor
#

so you waste less space on the drive

slate flume
#

Holy shit it worked you guys are so smart

hearty shard
#

im the best

slate flume
#

Who would've thought that updating my things would cause them to update

hearty shard
#

I totally helped

slate flume
#

EVE was here too

hearty shard
#

see someone gets it

grand flower
#

for SL we just have an extension method IsValid() for Player

#

use it everywhere

slate flume
grand flower
#

checks if Player wrapper isn't null, then checks if the underlying gameobject is valid

#

iirc

#

no

#

hub

#
    /// <summary>
    /// Returns true if the player is valid, false if it was destroyed.
    /// </summary>
    /// <param name="player">The player to check for validity.</param>
    public static bool IsValid([CanBeNull] this Player player)
    {
        return player != null && player.ReferenceHub;
    }
grand flower
#

coroutines

#

mostly

slate flume
#

I wish we didn't have to use .net 4.8

static meteor
#

Unity moment

slate flume
#

I have to use the dynamic keyword

#

To make generic functions

#

When I wanna just use INumber

restive turret
#

F

grand flower
#

what are you trying to do

slate flume
# grand flower what are you trying to do
public static IEnumerable<T> CumulativeSum<T>(this IEnumerable<T> numbers) where T : struct
{
  dynamic sum = default(T);
  foreach (dynamic number in numbers)
  {
    sum += number;
    yield return (T)sum;
  }
}
#

I wanted an extension method for IEnumerables that lets me do .CumulativeSum() on them to get a cumulative sum

#

I want it to work for doubles, decimals, floats, ...

#

And I don't want to define all of them manually

#

So

#

dynamic GoodOne

grand flower
#

Between defining them manually and using dynamic, you should define them manually

#

dynamic is expensive as fuck

slate flume
#

I hate that

grand flower
#

Using it in a game dev context (or hell, any really) is bad

slate flume
#

I will not bend to the will of the Unity overlords

grand flower
#

I mean you're free to write bad code I'm just letting you know you're making a mistake heh

slate flume
#

.05 ms

#

I'm not gonna worry about it lmao

grand flower
#

did you profile it

slate flume
#

I can try if you want me to lol

grand flower
#

i'm just saying, baaaaaad idea

slate flume
#

dynamic exists in C# for a reason

grand flower
#

I'm not worried, it's just something I wouldn't consider good, using dynamic out of (technically) laziness isn't really a good idea

slate flume
#

It's cleaner

grand flower
#

Just because it exists doesn't means it's good

slate flume
#

It's more maintainable because if I want to make any changes I don't have to edit 50 different methods

#

I could make separate methods for float decimal double byte ushort short uint int ...

#

But that sucks big ass

unique crane
#

You have the generic type

#

???

slate flume
restive turret
unique crane
#

oh hm

#

Also why your doing

#

this method?

#

You have linq

slate flume
#

No

grand flower
#

Could also just make two methods, you don't need one per numeric type

grand flower
#

i.e. one for double (everything is implicitly convertible to double) and one for decimal (the only exception)

restive turret
#

Because net4< didn't have INumber

grand flower
#

You won't have precision loss if you pass in integers afaik

unique crane
#

list.Sum()

restive turret
#

Finally my time to shine with decimal :trol

unique crane
#

Call the IEnumerable<int> sum method

slate flume
#

That's a sum

grand flower
#

or ignore decimal because nothing uses decimal anyway

slate flume
#

Big difference

restive turret
#

:(

unique crane
#

Oh cumulative sum

slate flume
restive turret
#

But yes, double is easily better

slate flume
#

I mean

restive turret
#

same size as long

slate flume
#

You guys have a fair point with double/decimal

#

I think?

#

Idk I'm not an expert

restive turret
#

Yes

unique crane
#

Then just do it for the data type you need it for?

restive turret
#

can even convert to and back

slate flume
unique crane
#

which ones

#

You can most likely go away with just long and double

slate flume
#

Idk I'd have to find all usages

unique crane
#

and then cast it back

#

Or just int and double

slate flume
#

I don't think I actually use decimals anywhere

unique crane
#

Idk where in SL you would use long

#

Well then

#

Do you use longs?

slate flume
#

Not that I can recall

restive turret
#

My nose is long

unique crane
#

Then make the method for int

restive turret
#

Nvm it's ulong

unique crane
#

and it covers that + all smaller sizes

slate flume
#

There's gotta be a better way to do it than repeating the same method

#

I hate having repetitive methods

unique crane
#

Well there is no common interface for adding things afaik

unique crane
#

Do it once

restive turret
slate flume
unique crane
#

Why not?

#

You said you dont use decimals

slate flume
#

Because I pass in floats and doubles

#

Lmao

#

I don't use decimal

restive turret
#

choose the big one and cast back

unique crane
#

By decimals we are talking decimal numbers xd

#

Yea

#

make it for decimal then

#

2 methods

grand flower
#

working on it sec

restive turret
#

No reason for decimal that's 16 bytes

slate flume
#

I just don't like it lmao

#

It's more performative but I hate looking at it

unique crane
#

Or just make it for every type

restive turret
#

Then don't??

unique crane
#

You just have to do that sometime

slate flume
restive turret
#

Or pass an action that add two number together

grand flower
#
public static IEnumerable<double> CumulativeSum<T>(IEnumerable<T> values) where T : struct, IConvertible
{
    double sum = 0.0;
    foreach (T num in values)
    {
        sum += num.ToDouble(null);
        yield return sum;
    }
}
#

you're welcome

restive turret
#

Why not ```?

grand flower
#

?

restive turret
#

The first was better in mobile

#

Idk what you edited

grand flower
#

looks fine

slate flume
restive turret
#

Guh

slate flume
#
public static IEnumerable<double> CumulativeSum<T>(IEnumerable<T> values) where T : struct, IConvertible
{
    double sum = 0.0;
    foreach (T num in values)
    {
        sum += num.ToDouble(null);
        yield return sum;
    }
}
public static IEnumerable<double> CumulativeSum<T>(IEnumerable<T> values) where T : struct, IConvertible
{
    double sum = 0.0;
    foreach (T num in values)
    {
        sum += num.ToDouble(null);
        yield return sum;
    }
}
restive turret
#
fart
#

Guh

grand flower
restive turret
#

Yeah

slate flume
#

When are we switching .NET frameworks ๐Ÿ™๐Ÿผ

grand flower
#

don't count on it

static meteor
#

Unity probably won't for awhile

slate flume
#

Fuck unity

restive turret
#

Real

grand flower
#

stuck with it for SL

restive turret
#

Go and apply in unity

grand flower
#

might as well write good code and not use dynamic as a stand in while you wait for an unlikely framework update

restive turret
#

Fix millions of bugs

#

And add net12

grand flower
#

True

#

You're free to reject advice heh

slate flume
#

Atp let's just revert back to .NET 1.0

restive turret
#

Not like he will use your code ClassDTroll

slate flume
grand flower
#

Bright's doesn't use third party stuff and i'm pretty much done working there, so unlikely I'll ever touch SL code again

unique crane
#

We are removing all c# wrappers and replacing them with java ones in 15.0 btw

grand flower
#

outside of maybe helping them update the plugins on game updates

unique crane
#

thats what the new labapi interns are for

grand flower
#

i'd rather work on my own game and it uses Luau for modding, no C# bs

grand flower
#

I like C#, not using it for my modding framework

slate flume
#

You wanna see some nasty regex

restive turret
grand flower
#

So many pros starting with this: if the game updates, you don't have to recompile your mods, because they're interpreted anyway

#

as long as the update doesn't remove/change functions you use and all you're fine

#

easier for modders to maintain in the long run

#

and I'm adding clientside modding because that's a must IMO

slate flume
restive turret
#

well if you see from 180ยฐ ye

unique crane
slate flume
hearty shard
restive turret
#

Crazy

hearty shard
#

ComputerCraft i miss you

slate flume
#

Luau

#

Luau was developed by Roblox Corporation

#

It literally is the "roblox programming language"

restive turret
#

What's the lang valve / r2mod using for scripts

grand flower
#

tbh the amount of improvements they've done to Lua for game related stuff is awesome

grand flower
restive turret
#

Yes

grand flower
#

I like it

hearty shard
#

Oh luau specifically

restive turret
#

The nut one

hearty shard
#

Ok

grand flower
#

Luau's cool just for the sandboxing, and the performance improvements

hearty shard
#

ComputerCraft...

grand flower
#

They have native vectors I unfortunately won't be using because they're 32 bit float components

#

๐Ÿ˜ญ

hearty shard
#

lel

grand flower
#

and I need 64 bit components for Unreal

#

oh well

#

I'll leave the native 32 bit vectors in for things that don't need the precision but like, shame really

#

Maybe I can modify Luau to have native 64 bit vectors in the future

restive turret
#

Vector3_Double

grand flower
#

Once I learn enough about its internals and ASM/bytecode/SIMD bullshit to do so

#

Getting 64-bit Vectors/Quaternions would be AMAZING for performance

#

Since I won't have to use userdata for these

slate flume
#

You should just make your own engine

grand flower
#

wouldn't change the fact about Luau

#

and I still would want 64 bit vectors for large world support

slate flume
#

Ez

grand flower
#

that way I can have maps as big as I want in my game

unique crane
#

Me coming to conclusion that all you need is int and double

slate flume
#

I'm gonna write more regex now

unique crane
#

I love regex

slate flume
#

Great site

unique crane
#

I like regex 101 more

slate flume
#

There

#

Regex 101 is more for testing regex stuff

slate flume
#

I'm thinking I should add an AI chatbot to SL to improve user experience

grand flower
#

wat

#

and how would they communicate lol

slate flume
#

Or client console

#

Would be ๐Ÿ”ฅ trust

#

Also is it possible to increase the number of 079 generators that spawn

#

Couldn't immediately find anything and I'm gonna be a bit busy

grand flower
#

you can just spawn gens manually

#

apparently they register automatically

slate flume
#

I'd like to have them spawn in the normal places

#

Follow the normal generation pattern

grand flower
#

decompile the generator spawn logic

#

probs within map gen

#

meaning you're gonna have a hard time trying to reproduce it 1:1 if you do it after map gen

slate flume
#

Alright well then I'll try to find where the spawn logic is when I'm back

#

I was hoping someone knew off the top of the head

#

Cause I have shit I gotta go do

#

No offense to you Cyn, but this has been effectively a meaningless conversation cause I already knew all of this lmao

grand flower
#

the issue is, if you manually increase the amount that spawn by patching

#

you'll (probably) desync map generation on the client

#

so you'll really just want to spawn them manually post-map gen

glad pagoda
#

and relies on the same stuff coming out with it

warped prairie
#

hope we have all been well gamers

soft depot
teal junco
#

there should be a proper input box in SL

#

client consoel exists yeah but like, everyone agrees it kinda sucks ass righr

#

and SSSS is worse because you need to navigate to a menu

#

itd be cool if i could just prompt my player for text and it wouldnt block the whole screen and stuff

soft depot
soft depot
soft depot
grand flower
#
/**
 * Base class for custom libraries exposed to Luau states.
 */
UCLASS(Abstract)
class LUNARIS_API ULuauLibrary : public UObject
{
    GENERATED_BODY()
    
    /**
     * Called to get the name this library should have.
     * @note An empty string will add the functions to the global table.
     * @param State The LuauState this library is being registered on.
     * @returns The name of the table this library should populate, or an empty string for the global table.
     */
    virtual FString GetLibraryName(ULuauState* State) const PURE_VIRTUAL(ULuauLibrary::GetLibraryName(), return TEXT(""););
};

time for fuuuuun

grand flower
#

one day you'll appreciate the beauty of C++

grand flower
#

fuck yes

true cedar
grand flower
#

I generally don't use std stuff

true cedar
#

doesn't make the language any better

grand flower
#

Unless Unreal doesn't have an alternative/an alternative would be unnecessary

#

ยฏ_(ใƒ„)_/ยฏ

true cedar
#

its just such a crude fucking language

#

tell me why for example

#

public uses :

#

not {

grand flower
#

because we're not in egypt

#

if I wanted to see pyramids I'd take some vacations

#

i don't need my code to be indented 30 times

true cedar
#

then use access modifier

#

s

#

stupid ass design

grand flower
#

literally fine IMO

#

it's the same as file scoped namespaces

grand flower
#

made a test "Debug" library, and I can do Debug.Log("Hello from ULuauDebugLibrary!")

teal junco
#

well if theres ever another one i will join you guys.

crimson dune
#

would it be possible to parent a primitive to the actual player model so it moves with the idle animation?

static meteor
#

You cant parent to bones

#

you can use a coroutine to move them however

crimson dune
#

:(

upper vapor
grand flower
soft depot
grand flower
#

i made this for them

#

better than dynamic

upper vapor
upper vapor
upper vapor
# slate flume

Why not make a static readonly regex field that's compiled

upper vapor
upper vapor
upper vapor
upper vapor
upper vapor
grand flower
#

i dont need to have native 64bit vectors for that anyway

#

i can send them into Lua as userdata

#

but it's more expensive with the gc pressure

#

so long term I'll port vectors to 64bit for performance improvements in my game

#

since I target 64 players it'd be nice

bright vine
#

where do i download the assembly publicizer

upper vapor
#

If you wanna publicize manually, search for APublicizer on GitHub

upper vapor
#

I'd assume unreal doesn't freak out as much as unity does at longer distances from 0,0

bright vine
upper vapor
#

The rendering pipeline "moves" the camera to the center but it's not perfect

bright vine
#

<Reference Include="Assembly-CSharp" HintPath="$(SL_REFERENCES)\Assembly-CSharp.dll" Publicize="true" />```
#

something like this?

grand flower
#

It's just slower to expose them as userdata

upper vapor
#

Oh right cjz you

#

Send it

#

Wait what

bright vine
#

GOD FORBID ME.

grand flower
#

And by slower I mean like, 10/20%, that's what Roblox got performance wise when they switched to Luau's native vectors. Garry's Mod also does userdata vectors fine, they just warn not to go crazy creating them.

bright vine
#

where would these lines even be

upper vapor
#

I'd recommend you only publicize assembly-csharp (and mirror if needed)

#

Make sure to enable unsafe code

bright vine
#

yeah im trying to publicize assembly chsarp

#

chsarp

#

csharp

bright vine
upper vapor
#

See sharp

upper vapor
#

Or

bright vine
#

so i add these two lines anywhere?>

upper vapor
#

<AllowUnsafeBlocks>true

#

In a PropertyGroup

celest thorn
#

i mean but that isn't equals to publicize?

bright vine
#

so both of these inside PropertyGroup?

celest thorn
#

and btw gm

upper vapor
unique crane
upper vapor
#

Rule of thumb: if you have something with Include/Exclude/Remove, it goes in an ItemGroup, otherwise it goes in a PropertyGroup

restive turret
#

Also make sure you using new sdk style csproj instead of like the old one

upper vapor
#

^^^

celest thorn
#

and if i don't?? what are you going to do?

grand flower
#

kill

bright vine
bright vine