#general
9613 messages · Page 9 of 10
Ello
And back to sleep, good night

dont know who wrote this but it got a good laugh out of me
just v26
new version every year
@indigo shale
hello
good night
wait who in his right mind reverted all the nicknames by hand? jobless mentaility type shit
ah yes
by hand
Yea
Type shit
do I sound england?
does england sound?
I do not hear, I only see
You sound zoomer
no but puget does~
accurate
as in zoom meetings?
Sure let's go with that
I don't get it, I call cap
zoomer is better than gen-alpha
but what is zoomer
someone who zooms~
sniper?
Got the zoomies
what is this cartoon?
zoomies~
zoomies?
AI says they happen to dogs and cats
and it doesnt seem to be the cartoon I asked about
no cap, but am not delulu, so send the name of the cartoon to me sigma
oh damn, umizoomi
haven't heard that in... probably over a decade
If only there was a way to automate actions in discord. Probably would need an API and a library that could use that API for that 
might i recommend my favourite library, icq.js?
Never heard of it 
Finally I am not a number

noooo
the numbers are gone
finally i can go back to my beautiful and unique username
You can't copy nicknames on mobile >:c
Since i got a name idea(icq.js) im starting my own improved discordjs fork and it will be the best ||please dont ban me im jk||
Just do v14-selfbot
just do discord.js-light
all the power of discord.js - without the caching!
am i yet not a snowflake
oh cool
They've finished the April Fool's joke lol
unironically tho @discordjs/core is goated
why
all the power of discord.js... without discord
hi
fully typed but minimal overhead when you just want simple events 🔥
no caching or fancy classes to "bloat" the runtime
you're writing a nodejs application your runtime is bloated anyway
nahhh
peak efficiency here
no cache and heeps of servers giving lots of events™
15.7GB/736MB sure is an interesting fraction
oh its docker stats where left is incoming and right is outgoing lol
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
When is Discord.js getting rewritten in Rust
when TS is no longer goated (somehow)
oh
Fr. Building on top of it is awesome tbh
The one thing that sucks is resolving command interaction options 💀
yeahhh especially subcommands... discord really didnt make it fun
Mainlib makes that so convenient lol. <ChatInputCommandInteraction>.options
you guys
But hey, you can always steal that code from mainlib
And make it a utility function of some sort
my peek claude slop
i already did this
and its published under sapphire
Wtf
ages ago lol
I wish I knew about this before lol
might be missing some of the new stuff maybe but PRs welcome
its legit just the code from mainlib with raw api types
and the class is split depending on interaction kind
indeed where is get radio value
yeah its new
PR it :^)
unironicaly im tempted to pr even if im never gonna use it
lol discord api is funny
I'll probably use this from now on so I'm very much interested in making a PR lol
please do
I mention it whenever I see people complain about this problem w core
it could maybe use a spot in some faq/resources channel
Would y'all be open to making this a "default" option in core? As in something core re exports and uses in the docs/examples
probably not. hence why I PRed it to 3rd party sapphire as opposed to core
at least IMO it does not belong in core
the benifit of core is its pretty agnostic to API updates and you can get it instantly (typings are just suggestions)
we don't have a subpackage to shove it into either, for this sort of common utility
Core is meant to be minimal and raw, and this does abstract that so I can see why it doesn't belong there
i mean sapphire is pretty much 2nd party atp
i mean
maybe if it wasn't dog 
its internal
its not meant for you to just install it and import stuff from it
we should revive akairo
That old bot framework??
yea akairo was really good for its time
props to comp
Lol I remember using it years ago
it's not old it worked up until v13 dev
though we all hate that sort of OO-driven crap now
at least comp def. does and so do I
recently I discovered some new patterns for HTTP servers and I kinda wanna adapt it to the stuff you'd have in a discord bot
omg what if we use js proxies and if you call .get() or .post() etc at the end it executes the request
we could name it client.api i think it would be cool
I have fully typesafe middleware and specifying it in the route definition actually correctly augments the req just in that context
oh you said http server
ye
I was working at some point on typesafe interactions but its pretty impossible
typesafe as in like
the object becomes aware if you e.g. defer and it now knows what the valid remaining possible actions are
what if we make discord.irlpost
I might come back to that problem at some point
its pretty complex but I think it is solvable
This would be a godsend but I do wonder how much type fuckery/type gymnastics would be required to achieve this
doesn't sound too hard from my limited knowledge about interactions
its hard to design a decent API for it
oh
there's so many weird edge cases too
prob indeed the case where you gotta try to actually build many different apps and try to have a consistent quality
so you can get feel for if its too hand holding or painful still
like a interaction.replyWithPing() would be funny
re what I was talking about
export const loginSchema = {
body: z.object({
username: z.string(),
password: z.string(),
}),
};
export const loginRoute = defineRoute({
method: 'post',
path: '/api/v1/auth/login',
schema: loginSchema,
middleware: [ephemeralOrAuth] as const,
async handler(req, res) {
if (req.identity.type === 'user') {
throw conflict('Already logged in');
}
const { username, password } = req.body;
req.log.debug({ username }, 'Login attempt');
const [user] = await container.db<{ id: number; passwordHash: string }[]>`
SELECT id, password_hash FROM users WHERE username = ${username}
`;
// Always run bcrypt.compare to avoid timing-based user enumeration
const passwordMatch = await bcrypt.compare(password, user?.passwordHash ?? DUMMY_HASH);
if (!user || !passwordMatch) {
req.log.debug({ username }, 'Login failed: invalid credentials');
throw unauthorized('Invalid username or password');
}
req.log.debug({ accountId: user.id }, 'Login successful');
setAccessHeader(res, createAccessToken(user.id));
setRefreshCookie(res, createRefreshToken(user.id));
return { id: user.id, username };
},
});
example route
This has to have been a joke, right?
lmao what
and I have a fancy type
and in the frontend
type LoginContract = InferRouteContract<typeof loginRoute>;
export type LoginBody = LoginContract['body'];
i hope so
I have full type inference
body, response, etc
and as I said, inside the handler req's type is affected by middleware: [ephemeralOrAuth] as const,
so req.identity is typed in that context as is defined by the middleware
can you get type information out of a zod value? or is that separate
that's what's happening for the body, if that's what you mean
schema: loginSchema is what dictates the body type
yeah i'm just confused how that would work
zod just has types for it
z.infer or whatever
but i guess ts wizardry can make anything happen
zod is just fully typesafe
some generics and separate return types on every method
so eventually the final schema object you have contains the type information for what .parse will return
https://www.typescriptlang.org/play/?#code/JYWwDg9gTgLgBALzgMyhEcBECIBNMDcAUEQMYQB2AzvAB5wC8iAdBAEYBWApqTABQBvInBFwYXGgC4WNKMAoBzPgEoANEQC+y4mUo04AT2kAlLjACuUCgBUDYLgB4YdrhGRxazMAEMoVLgB8jHBComISMNKY4jSY6hrEQA ok idk if this is how you are supposed to do it but it does work
oh nvm that's what z.infer is for
oh nice i didnt know you could use npm packages in the playground
btw zod/mini is pretty fun too

i started using zod recently, i've only implemented it a little bit but it's so much cleaner than my manual attempts at validator functions
@copper jacinth for my issue about the checkbox group components, the question "What part of the app is impacted?", it doesn't show anything about components

If the issue only happens in modal just changed the code of while not having reloaded your discord client it probably is not a bug but caching
aww man
its back to discord.js
I really missed calling people 415588601120686091
you can call me #1
and im #2
@plain tangle you should become our #4

what happened to #3
#4 of what
danial is #3
oh gross
we are counting through all the members
i really missed being pink 😔
haha sucker
at least youre not blurple
thank god
yo
my user id got hide back lessgo
what do you mean 1046050982108332133?

dont leak my pvt info
souji bro when you got this badge?
When he murdered the discord user who had it last~
lol i never read the footer of your post before... heh very nice
ok slay queen
Are you sure you want people to call you that?

I'd like to have a word with whoever designed this website
for...using tags?
no... for deciding that rendering 51000 DOM elements was better than adding virtualization
that's not really a conscious decision to make
Yeah it is... they designed it with no virtualization
either they didn't expect chats to get longer than a couple dozen messages, or they absolutely didn't care about how expensive rendering that many elements is
who is it that you're talking about anyway
discord?
ChatGPT
lol
whenever you open a chat in ChatGPT it renders all messages, and some messages can contain something like 60 DOM elements, so if you have a chat with more than a couple dozen messages it's gonna have thousands of elements
just have a good browser
and so you're lagging when you chat with it?
what any other website in the world does is either render a fixed number of messages and adding a "load more" button (like Discord), or making a virtual list and only rendering the messages on screen to the DOM
i mean dont you also run into issues having a conversation go on that long with the model itself?
no that was only a thing with older models
on long chats, yes
it's so bad that even DevTools lags when I try to inspect the DOM
maybe but you run into rendering issues long before that
For example it takes like 10 seconds to load my longest chat and about 70 seconds to send a message and render the answer
You know... a website should not be using 15% of a 16-core CPU just to render itself...
Honestly the ChatGPT front-end is probably vibe coded with ChatGPT so what was I expecting XD
well yeah, the fact you thought it was a conscious decision was a false dichotomy
they made a chat, it displayed messages, that's all you need lol
list virtualization is a feature
imagine if Discord did that...
they didn't choose not to do it, they simply just haven't done it yet
your computer would be dying to render the 18000 messages in this chat
wasnt the claude code codebase getting some major hate the last couple days because of how bad the codebase is? you assume the ai companies arent using ai to make their tools?
discord's list virtualization for messages and channels is certainly something that exists
Discord doesn't use list virtualization but it still does have something to not render thousands of messages at once
i think a lot of critics here have simply outed themselves as not having a lot of familiarity with corporate code
discord definitely uses a form of list virtualization
imagine rendering all of this 💔
first of all, the api wouldn't serve 11 million messages to you
the bigger problem would be fetching that list
mh yeah you're right I was thinking about something else
yeah I know... would be funny if it did...
filtri cannot be a real language
it's italian for 'filters'
good so my intuition was right
😭
soooo
they really did rollback every id
lol bet discord api wasn't happy
heyo
ye they did kt at the same exact time
Smth weird happened
have you tried turning it off and turning it back on again?
Wdym
have you tried killing the app process and opening the app again
or reinstalling
Me?
no the other guy having app problems
Ok
yes, you
Oh this?
yes
I meant on this app
yes
have you tried killing the app process and opening the app again
While i tried joining the community
What happened to .1 patch
Dunno
Im new here
what is what
i
what is going on here what are u talking about
https://github.com/discordjs/discord.js/releases/tag/14.26.1 i guess it wasnt good enough for an announcement
Where do I find the app
huh?
what app?
sorry i only do #include <iostream> std::malloc
Discord.JS
discord JavaScript
Justice for .1
djs is a javascript library... not an app
it's a programming library not an application
discord.js isn't an app, its a library for the discord api
deezcord
discord has a 5th of that at all times, and its fine
nicknames are back
Honestly i preferred id version lol
guys we are still hiring for #5
rizzcord
apply now while numbers are still low
Are there rules
very likely
discord.js @ 14.26.2 has been released!
We recommend you upgrade to this patch release ASAP!
-# @everyone

This release:
- fixes DM channel issues that came up from implementing DM channel support for user-app commands ran in DMs between two users
View the full changelog here.
As always, if any issues come up, open an issue with a reproduction sample! 
Can i be 0.1?
rizzcord.js should happen.
Im not allowed in that idk why
there is no #5 in counting
there could be
if you click the thread, you can see you can't chat
nope sequential numbering only
it's more like... a 7th...
Who's 4
micah claimed 4
i have 11k elements 
still... 5-10K elements is still manageable... 50K is not...
@cold jasper Be #5
dam...
nvm didnt see it was archived lol
Are we counting with nicknames now
yes we are

chewie your turn
No
gort
Yeah but who's stopping me tho 
that’s me
i will call the funny police
Okay I'll claim 6
LETSGO



Fine
not many more single digit spaces available

wym discord.js
Get your digit soon, space is running out!!!
yes there are plenty
you mean more like icq.js no?
reported for impersonation
you have no proof
actually i'll just switch to #0 fuck you
Can you two decide please
no it's a cool effect
like rainbow roles but legal
I'll call Jason personally to 429 you for 3 weeks
oh shit i never realised you were my mum
your mom
I thought you were #1
i am #1
HEY
i am 


Why were you 8 for a bit
appel took away my #1
Crawl will not be happy
He prolly wants that
turns out you can just do things
he can also be 67
Rude
That'll be $50 USD for each additional digit
50 us dollar dollars
i was with some music friends a few nights ago and someone was scrolling youtube shorts and they came across this https://www.youtube.com/shorts/oyxs-4jk0Tg
highlight of the night
they knew what they were doing getting the old guy do this one
What happened to ICQ.js?!
What's that
DUDE I WOKE UP CUZ I THOUGHT V15 HAS BEEN RELEASED
And its just v14.26.2
please dont ping everyone until v15 is released
no
why do you want v15 so bad
discord.js @ 15.0.0 has been released!
yeah now im waking up
idk i like seeing big updates and new versions
We have a v16 milestone we are working towards
More bigger better number for bigger better user without making the number bigger better
congrats on mod!
u should make "discord.js remake”
Thank you
tf
oh my condolences for the demotion
Thank you
Bro just got demoted?
yeah i called crawl
oh
Should’ve called Saul
but saul fled from his old office
v16 when guys
I think his new identity is Paul
bin and kinect you can claim #8 and #9
the last two remaining single digits
say less
less
I prefer echo
but echo can't read files
He said "say"
wait actually
I don’t have that cmd
does echo < file work
hello
ah my name is back
why is your domain a gitlab instance with invalid tls
No, it’s uncomplete
i didnt care the last time
:(
Bc he envies my identity
i actually have some trouble with opnsense :/
your identity is a gitlab instance with invalid tls?
That makes sense
u sure
are our usernames no longer ids lol
guys i wanna learn how to code discord bots
depending on your coding experience, you might either want to start at #resources to learn javascript itself or https://discordjs.guide/ for the guide for DiscordJS
could someone help me with something?
I cannot help you build a rocket engine unfortunately
i cannot help you create a mind reading device either
i can help you with anything
my accounts just keep going boom
@modern harness
@arctic cove
idk they look pretty existent to me
is there any reason in your account standings page?
accounts don't just get deleted for no reason
ban evasion?
ye
ban evasion
553583443854884864 had clean standings and still went boom
ok so making new accounts is actually really bad, you're ban evading right now
well again, it doesn't get deleted without a reason
is ban perm?
you would have to check on your own... and appeal it if you think your reason was invalid
Read what it says, should tell you "Account suspended until XXX" or something like that
oh it doesn't say that, it says account permanently suspended
so... that would mean it's permament
ah
Then I think that answers your question
Permanently = long form of "perm"
anyone know where the appeals page is?
the account standings page should have a button
i got on my balcony too late to take a picture , but like ... since the snow is melting the cat pee is smelling HARD ... but we know its not our cats because ... they are too scared of the cold like their mother... LMAO
but like .. it was good enough outside for them going out ... and ... we hoped that my cat would like.. scare the other cat away.. BUT NO
... i got there too late but ... my cats made friends and they were like ... 7 on my balcony ffs
Long time no see moment for them i guess
...thats one hell of a error ...
what’s an error
ok..... ?... 
a future headache incoming 
true
i like getting these on a return 🙂
esp. when the function... is 2 line
just wait until you get the ol' "type information has been written to file" when debugging complex rust types
Without seeing the full error it might be a strict typed array been compared to a generic array type.
I kinda wonder if you can do type shadowing in Typescript
Pretty sure you can. The same way you can do with outer and inner scope variables.
What if array type points to different types?
But if your doing that then you must really hate yourself or the othe devs that have to read your code.
I was wondering why array and array are incompatible, in Lily's code
Because its probably something like
const myArray: CustomItems[] = [];
function foo(arr: CustomItems[]): CustomItems[] {
return [...arr] as any[];
}
Ah, it's kinda dumb bad that the compiler simplified the type when it's reporting an incompatibility
what are types
Its a way for developers replace the 50 line comments in a code with 50 lines of type definitions that can make thing much harder to understand.
i liked jsdoc'ing my js files
What was that Google's javascript compiler project name?
Closure, I can't believe it's still being maintained
It had type validation but you had to document them using jsdoc
its in the other screenshot with like 120398 lines in it
13th line in that
Yep looks like a strict type array issue.
Your passing a loose array type Document and the function is expecting I think MongooseDocumentArray
OR a TPetData.. There seems to be a few things in there. The function might be doing a deep type check
export async function getUserWithPet(userID: string): Promise<TUserDoc> {
const user = await userModel.findOne({ userID });
if (!user) throw new Error("USER_NOT_FOUND");
return user;
}
thats the function ... xD
it errors on the return
Then it might be a schema build error.
It looks like inside some of the query building checks its expecting an object/array like TPetData or TPetData[] but it got null
I'm confused...
same
The wonders of query builders
Mongo is just cursed
I run into this issue with Kysley sometimes where I forget that some JOIN queries may return null values but I wrote the schema say that it should always be some value returned.
export type TPetData = {
petName: string;
petType: string;
hunger: number;
happiness: number;
health: number;
lastFed: Date;
lastPlayed: Date;
lastUpdated: Date;
level: number;
experience: number;
skills: petSkillsEnums[];
skillXP: Partial<Record<petSkillsEnums, number>>;
personality: PetPersonalityEnums;
inventory: TPetInventory;
};
export type Tpet = NonNullable<TUserData["pet"]>;
🤔
By the way, I'm not sure how good of an idea it is to elevate the error rather than passing the falsy value. In javascript handling the error that way will add a bunch of boilerplate
oh and before you ask that is TPetInventory
export type TPetInventory = {
medicine: TInventoryItem<MedicineTypeEnums>[];
toys: TInventoryItem<ToyTypeEnums>[];
food: TInventoryItem<FoodTypeEnums>[];
};
So you need to make sure that lastFed is a Date and not Null if its never been fed before. Which is fine if your using Mongoose now() on row create. If not it will be null.
Same with lastPlayed, lastUpdated.
skills is an array might be an issue if the pet doesn't exist it means the join to get skills will return a null
last fed has a default of date.now()
skills has a default of a empty object
wait no thats skillsXP
skill is skills: [{ type: String }],
Is this something you wrote or something the schema generated. I might be confused here.. As I use Kysley Prisma plugin to generate all the table types for me.
same thing for lastUpdated and last played
i did it
This is probably where its breaking down then. You might not be catching a edge case with your types and some value in the type your passing is say undefined but the query schema is expecting an actual value.
Maybe i fucked it up lol
i need a 3rd monitor .......
too much to open
https://www.npmjs.com/package/mongoose-tsgen
Maybe this will help?
I tend to stay a way from ORMs so Im not much help. I do use Kysley which is the middle ground, its a query builder but uses the libary wrapper (mysql2) to just execute the queries rather than something like Drizzles engine.
just finding the right path to send all the interface will give me a headache
but the package looks very interesting
I bought this a month ago
i had one triple monitor arms
Good investment. Never had a monitor stand for two or three. I have two in landscape left and middle (gaming monitor) and the right is in portrait mode.
Windows seems to have massive issues when it needs to turn on the portait mode monitor, it resets its self like 4 times before it finally works.
lol
I found out you can disable the terrible animation when a monitor connects and the screen zooms in and out. So that sped it up a lot
you can disable that?
yep
Windows has that ?
never seen a animation when connecting a monitor lol
ya... it's really annoying...
in my case the monitor turns off and goes back on
Accessiblity > Visual Effects > Animation Effects to Off. A very mundane name but all it does is turn off the windows connected monitor animation and nothing else.
..oh
mine were off thats why i never seen one XD
lol
yeah its super annoying
oh btw i got rid of the error
that thing was missing
user error for the win.
yyyeeeeppp
Its why I like using Kysley + Primsa to generate my types for the table schema. I can still make a mistake but its at the schema level so Prisma will yell at me.
On compile and not at runtime
are you using those together?
Sort of. I only use Prisma for Migration control and schema building. I dont use the client in the backend to run queries. I use Kysely for that. Its just a query builder that produces a query that is passed to the database. So no high level wrapper performance hit on the queries.
that makes sense, prisma is known for having issues in terms of query generation
Automating the process of building queries sounds like a bad idea if you care about performance, there's a bunch of things that the query builder may not consider
Kysley isn't a query builder in the sense it a high level wrapper library. It basically enables typesafe queries so you enter the correct select columns for a particular table. But the output is more or less a raw query string.
it does no processes in the query itslef its passed right to the database
Ah, I see
Anyone can suggest the cheapest & reliable vps?

uhm guys no more v13?
it's 2026 why are you still on v13
v13 was yeeted 8 months ago, you are quite late to the party
Queue the v13 song..
i left all of this one day because of personal reasons. i returned today and i dont see anything related to v13. v13 was the latest back then to me
What's should be ideal shard per cluster count?
I know there are multiple factors to it but whats your opinion
Let me guess, you use prisma-kysely lol
wait what happened to icq.js?
the real answer is that its no longer the fun date
the funny answer is that idk
This works just fine
Nah memory is not correctly displayed
I think only for current cluster
oh
yeah i have like total 8gb ram usage rn, wbu?
I’m not the owner tho but like do you use discord hybrid sharding?
Around 15
oh, have you enabled cache optimizations: sweepers and cache limits?
As much as I could
What does your bot do
it's a tts bot
O
While this one is multi-purpose tickets, giveaways etc
Basically everything
so it has a bit higher ram usage
you have 10k less servers but 6x the users, damn i need to up my game
yeah that does it
Yeah depends on the features I’d say
yeah, tts is kind of a niche feature
I mean its cool hahaha
yeah, does help people. like people with mic issues or disabilities
ye
transcripts to?
hi guys, im new here, can someone help me, id like to raise a support request in line with the discord but i cant find the right channel for it 🙁
Uh
Dunno where cuz im new too
yeah
This is discord.js, not discord. If you want to talk to discord staff you should go to https://support.discord.com/hc/en-us/requests/new
multipurpose bot?
also its ram usage is only like under 30mb according to docker
nah msg in channel => ban
(uses @discordjs/core as we need no caching)
its a question about this server, i would like to speak to a mod about something, is there a support ticket place for this server?
oh, the 30mb makes sense now
ye
i get like a gb of data from discord every day tho
I mean server count/user count doesn't really mean anything. How much the bot is used is another question.
i wouldnt like to see my stats with normal djs cache
but hey at least i dont need to think about sharding and clustering 🔥
"What's should be ideal shard per cluster count?"
another reason why this is a bad question, as it really depends
mainly just about ur own specs and usage
Probably just DM an online mod, or use the report command in #app-commands if you want to report a user
yeah, what kind of operations the bot does, the cpu performance, multiple factors come into play, ig i should be trying out different configrations, and see what works out
yeah
how much cpu usage does each use?
like are you using default discord shard count configuration
(i think its arround 1.5k/shard)
ok thank you!
Did your request already get handled?
heah, client.on is a event right?
It creates an event listener
You then have to select which event you listen to
i dmed someone called crawl but havent hear back yet, would you like me to forward the information to you?
Your choice really. Just wanted to know if you found a mod to contact. Which you did
ok thank you anyways! i can wait.
Is crawl even a mod
yis
he has the role 🤷
does crawl walk

Nah he decided that it's not worth moving his legs and learnt flying
when icq.js v15 
What do you need out of v15
Because v14 has or will get everything discord added so far
what?
what’s gone?
huh?
There never was a general-2
how do you know?
yeah ok, you have 18 messages here, and there was no such thing as general-2
go troll elsewhere
actually this is general-2
general-1 was discarded after the report incident
only the ogs will remember
yes
If you're an og you would remember
lol
first pin in this channel
on the official djs wattpad
omg wattpad!!
no i am the number one member
so pushy
🤔
Worst troll in history of trolls
i feel like you're thinking of another server with general-2 and a lime green role
Even worse than vape
danial says i'm a good troll and i trust him more than you
His bar is quite low
but he's #3 and you're #7 so he wins
lmao
bye
Bye
hello
what was the largest server again
fortnite or pornhub iirc
midjourney
hi
oh wow
discord.gg/minecraft is big
Quite average I would say
20 million??????????
how did that happen
i think mid journey has like 20 mil
wow how
ai
no not ai the member count is real
wait my nickname got set back lol
was midjourney the one that half encourages people to make alts so they can get more creds
Not only half 
hmm
500% encourages
That's not what we're talking about Discord 🙏
very good server 
also encourages you to make alts - apparently
What? Minecraft?
i think he is just referring to that AI overview
encouragers*
true, sry 4 typo
you better be
@lapis dirge Aren't you moderating discord.gg/minecraft ??
heyo
HI MOM
how's ya ??
did you adopt jo, or what did i miss?
LMAO
its our little thing
i've witnessed weirder things happen 
Yes adoption has taken place
do u remember when lilly named herself "mother of d.js" when pomelo came out
Apparently once more as she forgot about me
pretty good
i do not
oh gotcha, well ever since then i call her mom
cute
:3
my friend peak and i have been chatting about what we're gonna use to rewrite our bot GitBot in terms of library, either discord.js core http-only, discord-interactions, or just raw api calls like the current version does
current code is a mess and needs a rewrite
Someone doesnt remember when i renamed myself Mother_of_djs
i do not
thats from where its started lol
couple years ago
we had so many name memes of varying levels of shitness, i forget those regularly
day 1 of when we got unique username/displayname whatever thats called
when they removed the #1234
like this for example
and no, i dont know why //@ts-ignore is used
you should rename your paths 😛
i wanna do a complete rewrite
instead of like ../../../structures/ApplicationCommandOptions'; it can be #structure/index.js
very true
i mean look at this nonsense we made manually
All bow down before "@/" : "src/*"
😄
Nah, #/ better
nah @/ better
either @/ or ~/
lets use an emoji instead 🏘️/
geniune question, why even have label builder
is it just to pull out labels since theyre on basically every component into its own builder?
nvm didnt realize addComponents was also deprecated, was about to say it seemed like reinventing the wheel
~
"../../../../../": "src/*"

True
anyone use a monorepo manager that also supports python?
turborepo is agnostic no?
ah it might not
ye it doesn't seem to
nx has a plugin for python but it seems kinda sus
:pepehands:
Based Bazel
I remember hearing about bazel a long time ago, why isn't it more popular?
I’m using turborepo and just adding a package.json for each of my python modules. Works pretty well since Python is now in the dep graph so no complaints from me.
bazel is pretty complicated 😦
Caching and such works
oh
I guess they're missing complexity in the tuple on their site then
hl.
I guess they’ve documented this as well https://turborepo.dev/docs/guides/multi-language
god that's stupid lol
let me just turn this non-js project into a js project
wait it just clicked for me that there's a package.json in a python package lmao
Curiously, it's not that uncommon. I've seen various projects in different languages that use a package.json along a npm-compatible package manager to setup scripts
It's cursed but this was especially true in game data mining projects
what language
Last one I've seen was python tooling to extract game assets data from No Rest for the Wicked, it used javascript to format the extracted data into a website-like report
ok but that's still js
I see
By the way, I highly recommend No Rest for the Wicked. The campaign is fully coop, and the art style feels so good. It's still in early access tho, there's an upcoming patch that will add classes (MMO like, holy trinity) into the game (so you maybe want to wait for it if you plan to play it somewhat soon)
Souls like isometric (what diablo 4 should have been)
dang only 4 players and early access
I've been data mining and messing up with the unhollowed il2cpp reconstructed data to remove the player limit
I've decided to halt that project for now until they release the classes patch
I wonder why they even have a player limit
Balancing
You can stagger mobs with attacks (true hack and slash)
oh
just add more mobs 
They do, the more players there are the more mobs spawn
then scale it up to 8 :<
Not enough space in the map/areas :c
I have 5-6 in my gaming group and it's a struggle to find games
we started playing core keeper recently cuz it goes up to like 12 or something
oh no it goes up to 8
I gave up trying to find games that allow more than 5 players in the campaign
I think the last one was Enshrouded
I have high hopes for RuneScape Dragonwilds but it's still very green (EA)
was enshrouded not good? it has decent reviews
It was fun, some counter points are that the combat and class system was very lacking and it's not possible to play with friends around the globe (if you have more than 150ms latency with the host it's unplayable cause rollbacks, due to the custom engine and networking solution they use)
The exploration part was amazing
Think of it as a better valheim
so valheim but the good and bad points are reversed
Oh, if you are interested in many players co-op campaign you should totally give Abiotic Factor a try. It's probably one of the best games in the past years. I have played it with a friend who was hosting it from Japan and there was no lag
playable up to 6 players looks promising
I would dare to say that the combat in valheim is very lacking, classes (archetypes/roles) were non existent, exploration was ok, progression was amazing. Enshrouded is slightly better in the first three, very lacking in the last
Still fun though
I think an abiotic factor dedicated server can host up to 32 players
I just felt like the crafting and building experience in valheim was not fun compared to other crafters
Oh, for progression I mean fighting bosses, unlocking a new item that allows you to progress into the next step. Enshrouded has a quest system that unlocks npcs and recipes while giving you a general idea on where to go but it's quite messy. Not terrible but could be better
yeah the boss fights were cool, but the prep work to get there sucked lol
Yeah, kinda grindy
chests were tiny, building the base was awful, materials were far away and difficult to transport
Oh, you have to definitely mod valheim to have a good experience. It lacks many QoL like crafting from chests and so. For example, Enshrouded has that (you have to unlock the chest upgrade)
ok yeah we were just playing vanilla game mode as the game designers intended
Vanilla all the way
and none of the prep stuff was fun
I think it depends, hardcore can be fun as long as it's part of the content and not something you have to grind/repeat/burn-out with
You and your instant gratification generation
I can't deny that
isn't hardcore also vanilla
Back in my day if you wanted to play a game you had to enter the game code into the PC to play.
insert disc 2 to play
I think the oldest game I've played was warcraft 3 (because my hardware couldn't run something more modern and fun at that time)
Type it all out in BASIC, the run it. If it fails to boot it means you did something wrong then you get a ruler and go line by line over the screen until you find your mistake.
There was this mmo-like custom map with multiple levels, it was very neat. We would play in lan with my brother and some friends
I think the best example of an old game developing with new generation is zelda getting breath of the wild which looks amazing
but if zelda turned into the valheim experience I think every fan would vomit
why are there no good co-op games like botw or genshin 
Genshin because the combat?
But thats an incorrect analogy and example. Velhiem is not Zelda. If fans of Zelda played Velhiem and complained to the Valhiem devs "eww this game sucks make it more like Zelda" then those fans are playing the wrong game.
I mean just the overall playing experience is fun
I see
People build games to show off their ideas and fantasies and people buy into to it to experiance it. If you buy it and go "this game is not for me I want it changed" then its the wrong game for you.
I'm just pointing out neither of these modern games is really big on instant gratification, but the gameplay experience is obviously nicer on one than the other
I think that used to be the case, nowadays it's just corporate money grabbers and assetflips
Kingdom of Kaliron was the name, in case someone was interested
A lot of that is due to it been easier than ever to get into the market with premade engines like Unreal and Unity.
I think my bar is, if your survival crafter building game feels worse than minecraft, it's a shit crafting and building experience
you gotta at least be better than a children's block game
is there a practical way to implement slash command aliases ie /leaderboard -> /lb
i .... dont think you can
unless that changed
nope slash command aliases still dont exist
Just respond to the command with the same thing?
i think that phrases included in the description also show up in the command search so putting some keywords in there could help
I believe the problem resides more in the consumers, if people wouldn't buy such things, stores will have stronger policies about the quality of the games and nobody less devs would want to waste time in something that won't sell
Thats why Nintendo implemented a certification system in the 80s on their games. To stop slop getting to their consoles. Which it has been laxed in all areas recently. Its almost like we are heading for another game market crash.
It may be a necessary thing sadly
random question can bots send stickers like
this one?
this one specifically no
Just like with emojis: the ones it has access to
meow
chat, i need your verdict.
which cat is the best cat?
orange cat, tuxedo cat, calicos, white cat or black cat?
the disrespect of calicos will not stand
My sincere apologies, let me update.
hey mark, come hang out in voice with us 😄
what's the point of a mute and deaf person in vc 
wait what
do you not know what a calico cat is?
i do not
some furry you are

Like you are finding that out today
Furji has been a furry since the fandom started...
lies and deceit
but which IT professional isn't a furry?
🙋♂️
ok, so educate me, what does a multi colored cat have to do with deaf and mute?
mark is deaf and mute? that would explain his book consumption
at least he isn't blind.
if my memories aren't betraying me, i think i've heard mark speak before

souji making big assumptions here
-# i also meant the discord mute and deaf options, also ignoring when i rebuilt my laptop i forgot to connect my speakers 
i seee
I hear you
anyways, calico cute
mark doesn''t tho
watching streams
I see it's catching on
what's going on in voice greater than slash dev slash null
ur mom
-# turns out there's no such thing as serious answers, guess I'll never know
join and find out
-# turns out there's no such thing as answers when the one wondering is lazy, guess I'll never know
people playing , talking ... pretty much .. me spamming in a chat because no mic... pretty basic stuff
-# oh hey that's a pretty reasonable answer, thank you
wow ppl in vc!!
hi mom @normal kiln
Hiii son 😄
bonjour
😮
is JSDoc'ing types fields overkill ?
Is there a reason to use jsdoc in the first place?
Autocomplete in js?
Why not typescript and specify the types as you need them and couldn't be resolved?
Jsdoc tooling is not as powerful and well maintained as typescript is
jsdocs works for typescript
I thought you mean strictly jsdoc, my bad
nah nah i meant documentation
just... telling what things are
give back her microphone.

I think typescript has a specific project and parser for their jsdoc-like syntax in comments
lemme look it up
nu
https://tsdoc.org/ this thing
@jagged quarry 🦶
It should be specifically tailored for typescript
that is basically what im doing
im just asking if i should do it for types fields 😂
I mean... over documenting can be counter productive. I think it's best to document if the field name is not very clear or can be misleading
interface User {
/** The name of the user */
name: string;
}
Is kinda ridiculous to document because it's very explicit by the naming
i see
On another topic... the function you specifically shared is a bad idea, it would be best for the code to simply evaluate if user.pet is falsy (avoiding the function call at all) or not and decide on that. Elevating the exception will increase the code complexity
oh if user.pet is falsy it creates one in another function
well no , if user is falsy
pet can be null tho
You can do something like User#get_pet() which returns an existing or creates a new instance of a pet
i have a create pet function
but not a get pet
function createPet(petName: string, petType: availablePetsEnums, config: TAnimal, personality: PetPersonalityEnums): Tpet
Creates a new pet object with default stats and empty inventory.
This function initializes a pet with:
default hunger, happiness, and health from the provided config
initial level and experience
empty skills and skillXP counters
empty inventory for food, toys, and medicine
timestamps for lastFed, lastPlayed, and lastUpdated
@param petName — The name to assign to the pet
@param petType — The type of pet (from availablePetsEnums)```
...i dont know what language to use for showing that correctly , oh well
Hi Guys , I Have A Quesiton Guys....
I Was Asking , In The Screenshot You Guys Can See Bot Name Is In Different Font That Are Only For Nitro User's , But This Bot Use's It As Well , So Guys If You Don't Mind , Can I Know How It's Done And Python Or Js
the name styles are planned for bots eventually, but will only be added to d.js once documented
GbE
3rd party AP?
yes, good catch
void
My sonos sub does that thanks to SonosNet
I also cannot get my Era speaker to work and it’s sad. It shows up in Sonos and for AirPlay, but I can’t connect or play anything
i have a new Unifi express 7 when the verizon router decides to die
its Steve !
i got it from a store, five below
noice
... https://pastebin.com/zHYggtPK
asked AI to do it since my inspiration is like... dead at the moment lol
Can I post Israel in #1469663475117592728
i don’t think you should
not if it’s gonna stir up political drama
Just the flag
🤷♂️
why would that be considered a shitpost
Well, the explanation itself can cause political drama
that is why i said i don't think you should
Fair
I need to make a new haircut on my head ... im lazy tho... >_>
Lazy to just sit still?
Or you diy
DIY but its okay i did them
its been like 16 years that i do my hair
ive been to a hairdresser twice during those 16 years , regretted it ...
where else would you get a haircut
in my bathroom
with my clipper , as always
Before it was kitchen scissors , but i upgraded to a hair clipper lol
...hmm...okay
....okay...
...Better ❤️ lol
rate this dookie terrible router
i've been using js/ts wrong this entire time
sometimes i think i know what im doing, then i see things like that and i dont understand a single thing
Hi guys, so I kinda like, fell off so im asking this question, how do I get the top data object in a mongoose query?
Im not seeing a .at() function and Im unsure whether to treat it as an array
Nevermind, it says the result would be an array of documents
all my other bot codes dont show ts
(node:23464) DeprecationWarning: The ready event has been renamed to clientReady to distinguish it from the gateway READY event and will only emit under that name in v15. Please use clientReady instead.
its very easy to fix that
the warning
no, you should do what the warning says
no sht i just cba 🤣 i just started coming up and idk if it was bad
its just a warning
ok ty
its also a simple change,
- ready
+ clientReady
tbf
...ok what did i broke...AGAIN
...
lmao
oh sht 🤣
just clocked
i may or may not be stoned asf 🤣
i mean ... ts is related to/with tsconfig afterall...
but nah im not seeking help ... just venting XD
this config broke something lmao
its my root dir but like ...
everyone say happy birthday to chewie @muted needle !! 💖
happy birthday chewie
...woops
@muted needle habby birthday!!!!
what improvements do you think i should make to the 2nd one
2nd one is just a sample
i like the second one the way it is actually
cuz this is what it will look like with cv2
tho your emoji didnt followed in cv2
i dont know if its just because you forwarded it
yeah i just didnt add it yet
just an example
ahhh ok ok i see
Thank you my cutie 

nobody told me that tsconfigs can be that complicated XD
maybe use emojis for forks, stars, watching and open issues
i have a love / hate relationship with ts
yeah thats a good idea
ill have to add them after the design is finalized since the emojis are on the app, not on a server
i have what... 7 tsconfig ? XD
.
lmao why
1 for each bot ( so that makes 2 )
and one for each package , i have 5 package ...
oh makes sense
man i have ZERO clue what im doing
im tryna make a thing where my bot's presence doesnt go away if theres a network hiccup or my machine sleeps for a second
is Events.ShardResume the right thing for that?
... can i cry ? XD
.... 
not sure ... but i think it would overwrite input file ... /s
damn thats why i dont like messing up with tsconfigs
when that happens to me i delete it and create a new one

├── lilly(moderation)/
│ ├── github
│ ├── dist
│ └── src
├── package/@lilly/
│ ├── database/
│ │ ├── dist
│ │ ├── src
│ │ ├── package.json
│ │ ├── tsconfig.json
│ │ └── tsconfig.tsbuildinfo
│ ├── locales/
│ │ ├── dist
│ │ ├── src
│ │ ├── package.json
│ │ ├── tsconfig.json
│ │ └── tsconfig.tsbuildinfo
│ ├── services/
│ │ ├── dist
│ │ ├── src
│ │ ├── package.json
│ │ ├── tsconfig.json
│ │ └── tsconfig.tsbuildinfo
│ ├── structure/
│ │ ├── dist
│ │ ├── src
│ │ ├── package.json
│ │ ├── tsconfig.json
│ │ └── tsconfig.tsbuildinfo
│ └── types/
│ ├── dist
│ ├── src
│ ├── package.json
│ ├── tsconfig.json
│ └── tsconfig.tsbuildinfo
├── petchi(pet)/
│ ├── dist
│ ├── src
│ ├── package.json
│ ├── README.md
│ ├── tsconfig.json
│ ├── tsconfig.tsbuildinfo
│ └── updateCommandsTable.cjs
├── env
├── package-lock.json
├── package.json
└── tsconfig.json
Welcome into my mess lol
*and i didnt send all *
That why you have tsconfig base, that you just extend in all other
to be honest it looks like a lot at first but you have it well organized
my config at root is just a bunch of references
modularity helps a lot
-# until you introduce tsconfigs
i try T_T
It all went well until... THAT
and google is no help
i would cry too
probably would comeback to it tomorrow
What is the actual seetings of configs? Might help diagnose idk
stupidly enough its only 1 package that errors.. AND THEY ALL HAVE THE SAME CONFIG T_T
{
"compilerOptions": {
"composite": true,
"rootDir": "./src",
"outDir": "./dist",
"declaration": true,
"module": "NodeNext",
"moduleResolution": "NodeNext",
"strict": true,
"skipLibCheck": true
},
"include": ["./src"],
"references": [
{ "path": "../types" }
],
"exclude": ["dist", "node_modules"]
}
yesterday i spent like 2 hours figuring out why i was getting so many errors trying to edit componentsv2 until i gave up, i reached a solution while i was trying to sleep and implemented it today and it worked
Have you tried the classic restart?
yeah
closed vsc , restarted ts server , unbuild / rebuild ...