#dev-chat

1 messages Ā· Page 22 of 1

dark moth
#

just keep in mind garage has no build in ui, but there are community made ones

astral lake
#

Would you recommend one?

And if you have ever used it before, compared to garage how different?

dark moth
#

Garage seems to be the more lightweight one, but with less options. Also european backed vs seaweedfs being chinese in case you care about that

#

But both are seemingly solid options

#

For new people the ui is prob gona matter more

vast sail
#

šŸ˜” āœŒļø

patent carbon
#

<@&1050493473033289778>

boreal coral
#

are bots able to view if a user has nitro (and for how long) and also if theyre boosting (and for how long) ? bcs i saw a bot doing it but im not sure if thats something supposed to happen or theyre just scrapping xd

patent carbon
#

not anymore

#

the identify.premium is now needed to see nitro tier of a user... but from my understand it does not show how long... just if you are

i would have to double check for boosting

boreal coral
neat olive
#

boosting would be kinda doable with checking e.g. per-server roles

boreal coral
#

the bot can also get this info from users that dont have it installed in tehir acc so its defo scrap anyways

visual flint
#

do you guys know how long intent applications take or if you get notified if it got declined or not? I sent an intent application like a month ago and i was gonna check the ticket status today but its not in the support website even though i got a gmail saying the ticket was recieved and everything... nothing else since

patent carbon
#

you always get notified after they respond... some users are reporting 6-8 week wait times... but there's no official answer on how long they take

dark moth
#

The ticket only becomes visible once they reply

visual flint
#

that makes sense!!! well thank you both for the answer! my bot is closing in on 100 servers and it was stressing me out 😭

#

i suppose i just have to wait it out

patent carbon
#

that or temporary pause functionality that uses the intent until your request is approved

#

obviously not possible for all applications

open temple
#

Is it only verified bots that can set per server pfp, bio etc?

olive depot
open temple
#

Is it in the docs?

olive depot
#

That's wild

upbeat anchor
# olive depot That's wild

now this is why you make the part with heading and thumbnail one section and the rest its own so its not sooo restricted horizontally

olive depot
upbeat anchor
#

oh who has time to read

dark moth
#

Ok so i got garage to work, only now to realize there is no proper user and token policies...

floral rapids
#

the only time i need ai (other than making first-look website) to check if my codebase has some hidden issues that i couldn't find, it lets me down due to people overloading the servers šŸ„€

dark moth
#

Its internal only, but either i leave it or replace it with something else that does have policies

patent carbon
olive depot
#

I guess... Asian servers are just weird

floral prism
weary bluff
#

Is that 10k, $10,000?

#

🤨

floral prism
olive depot
weary bluff
floral prism
#

What are you even talking about

weary bluff
#

Also wtf is ban card lmao

olive depot
#

Yep, ain't paying a penny to look more cringe in a cringe server

dark moth
#

let's stay on topic

olive depot
weary bluff
# olive depot Ban people maybe

Hey, staff team I don’t like their username so let’s ban them with using Discord API, idk sounds so absurd xd
-# staying on the topic

olive depot
#

be aware from AEnterprise

dark moth
weary bluff
#

I was staying on the topic but alr

grave temple
#

Ų§

modest geyser
#

AE any interesting scams today?

weary bluff
#

Stay on topic

patent carbon
#

#rules read the first thing in there

floral rapids
#

oh well had a question but i'm unsure if it's on-topic or not šŸ¤” it is a bit bot development related (in a way they do earn a role, so if it's not understood correctly), here's the question:
i know it is, but does this apply to in server currency too? ofc they aren't actual $, but like e.g 100 gems (which you can grind in /daily or /work idk) for sending image permission or something?
-# if it's not on-topic feel free to delete, i do appreciate if it's possible to link me to somewhere i could get an answer though

weary bluff
#

I’m wondering for a while why Discord doesn’t let people have RPC without local running

dark moth
#

bit more work then anticipated but getting there

modest geyser
#

Ive had a few spikes on my graph today nothing special really

olive depot
#

I do have similar item related stuff in my economy module, users can buy items ( which can be a role, custom role ) with bot balance

versed creek
#

Why did bro try😭

#

I was just jokingly saying it after you showed the rizz thing

tight mural
tight mural
floral rapids
olive depot
#

šŸ¤·ā€ā™‚ļø

cloud elm
#

Hi Im developer

lethal pier
#

Hi Developer

floral prism
#

Bro literally took WHOLE day to respond

patent carbon
#

sometimes it just ain't active here

stuck bough
#

Im a dev

rugged vector
eager tapir
stuck bough
patent carbon
eager tapir
#

yes

#

i new

patent carbon
lethal pier
patent carbon
#

i know Sadge

eternal phoenix
#

Hm

weary bluff
#

yes

#

They saw it Sam

sinful mirage
#

Could I say one thing off-topic?

tired obsidian
#

No, it’s off-topic

#

There are plenty of other servers where your off-topic banter is on-topic

sinful mirage
#

I can’t go to the official Discord server where I wanted to talk…

tired obsidian
#

That doesn’t change anything

patent carbon
#

this is not an alternative to townhall... if that's what you're saying

tired obsidian
#

You know it’s off-topic. Which is against the rules

#

So just don’t, yeah?

weary bluff
#

Can I say something on topic?

tired obsidian
#

Maybe?

patent carbon
#

something on topic

weary bluff
#

Linked roles api is good and so underrated

patent carbon
#

i agree... it's poorly understood so most just don't know how it works or what it does

tired obsidian
#

To be fair it’s above my head

weary bluff
#

I also saw some servers got access to add their game as connection in the onboarding

#

Such a cool feature

trim geode
patent carbon
#

ive not needed it... but could have used it, if i understood it better

trim geode
#

do you all remember that dude who was begging for contributors to their project?

Hasn't been active since they were banned

#

I just happened to still have the repo up on my workstation because I don't close tabs lmao

cunning coyote
#

i hate unicode :) more specifically dealing with it in code

dark moth
#

use binary and make it someone elses problem meowupsidedown

cunning coyote
modern jasper
#

Someone know where I can find a well-made doc for new V2 components bot

flint epochBOT
patent carbon
#

here's the official docs... unless you are looking for the docs for hour library

or you can use https://discord.builders/ for a web based builder for them

modern jasper
#

Thx

tardy pumice
lime ocean
#

Hello everyone. I have a question, how can I insert an image that when you click on the image it opens the link? It's that on a server I want to put images that when you click on them they take you to YT, TikTok, and other apps.

dark moth
#

have a webserver respond with an image when discord requests it, and an redirect when a browser does

#

not really easy and generally a bad idea as it's the least obvious and most confusing way to do that for end users

modest geyser
#

I hate qt so much

lime ocean
#

and when you click on the image, redirect to the tiktok or the app

dark moth
#

again: worst idea i've heard all day

#

just put links, users know to click those

#

nobody is gona try to open your images thinking it might go somewhere other then the image

lime ocean
modest geyser
#

Also pretty sure impossible to do on discord i think they mean when they user would click the image which normally full screens it that it would open a link

dark moth
#

it works if they also click 'open original'

modest geyser
#

Yea

#

Which is REALLY unintuitive

dark moth
#

so again: nobody in their right mind is gona do that and expect it to go anywhere other then the image

foggy inlet
#

my main id got banned having 18k members . reason someone drop nsfw video and i ban him made me loss my id under secound

dark moth
foggy inlet
#

i made ticket but taking long ig

dark moth
#

file an appeal with support and wait for them to reply

#

but nobody here can make it go any faster

polar thunder
#

can anyone brute decrypt this algorithm, i just made a new encryption algorithm

DC000A76D4230AC3A77B9261E61E8A8F4D9C4C538E147EFFB5525C85CE50C34D

foggy inlet
neon slate
#

hi guys, i need advice ASAP: my friend literally just got hacked. he wasnt thinking and gave someone his email and is now logged out of his account. is there any way we can get his account either back, or deleted? because there was sensitive info in his dms with his friends.

foggy inlet
strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

neon slate
#

problem is, my friend cant log into his discord account to make a support ticket. he was hacked out.

dark moth
#

support portal is completely independant

#

it does not use your discord credentials at all

#

see the giant banner on the page that links to the article explaining that, and how to submit a ticket

#

they really can't make it any bigger

neon slate
#

alright, thank you. u didnt need to add that last part in, that was lowkey kinda rude

dark moth
#

wasn't ment to be rude, just to get you to read the page

#

cause if that big an banner doesn't do the trick, i'm not sure what else does it

quiet saddle
foggy inlet
#

gg i lost my 18k server

dark moth
#

wait for support to reply

pale hull
modest geyser
#

^

polar thunder
# quiet saddle with no context this is just a meaningless byte string what's the algorithm?

GF(2^8)
prime based brutal bit rotation
circulant 8Ɨ8 MDS Matrix Diffusion
feistel network structure
xor round subkey Injection
keccak based key expansion
nlfsr entropy folding
Arnold's cat map torus permutation
constant time cubic hardening
quantum save feistel
memory hard temporal fortress
post quantum lattice binding concept
blake3 integrity seal concept
multi round non linear diffusion layer
GF(2^8) finite field arithmetic
avalabche oriented mixing layer
dynamic prime rotation schulde
hyburd symmetric chiper architecture
block based cryptographic transformation
entropy amplification pipeline

#

:v

quiet saddle
#

You claim to be using a Post Quantum Feistel Network in your design - I'm not aware of any in existence, certainly none that have been standardized

quiet saddle
polar thunder
#

hmm

quiet saddle
#

I mean these are just terms. you haven't described an actual algorithm

torpid kayak
#

Hello i’m brazilian developer and i’m not speak English so mutch

strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

daring wasp
jade current
#

šŸ‘‹

cunning plume
#

Is there a way to keep containers from "Shrinking" eg always make them full-width without hacky solutions? Eg I could add a bunch of empty characters, or an image to force it, but curious if there are any other known solutions?

viscid steppe
#

Probably adding select

rancid frigate
#

hey i create my discord bot how i get a badge?

quiet saddle
#

don't advertise

runic field
deep wren
cunning plume
viscid steppe
#

What are the other solutions

cunning plume
#

The only ones I know are arbitrary invisible characters or a custom image divider

viscid steppe
#

You know it's rendering differently from mobile to web, invis characters would break mobile view hard

daring wasp
#

mobile usually always stretches the container to max
on tablet, containers have variable size but separator stretches them a considerable amount

#

and web is just fully variable

worldly oasis
#

hi, long time no see, guys

viscid steppe
verbal wraith
cunning plume
#

Would seem the image is the only way to go then..

#

I can do a 1px X 500px image that will force it, but I have to make sure it loads FAST or it'll end up looking jenky as all getout.

pulsar galleon
#

iceman

pale hull
#

What is the objective of trying to make the container wider.

polar thunder
lime otter
#

how can i make my first project

quiet saddle
pale hull
lime otter
#

i dont really know where to start though

pale hull
#

Have you learned the basics of c++?

lime otter
#

most of them

pale hull
#

Then you should start simple. Something like a guessing game. I will send a website with a list of starter projects

viscid steppe
#

First project in C++: decide on which build system to use

pale hull
polar thunder
# quiet saddle An algorithm publication does not typically contain code bound to any particular...

fair point. lox-617 ( my own algorithm) is a symmetric block cipher. I’m using lattice-based logic specifically to harden the Key Schedule, not for the data encryption itself. The goal is Key Entanglement—making the relationship between subkeys as mathematically complex as a "hard problem" to prevent algebraic key-recovery.
As for the 'Post-Quantum Feistel' claim, it refers to the integration of these lattice-inspired layers and the 16,384-byte memory-hard Temporal Fortress to resist future hardware-accelerated attacks. I agree that formal proofs are the standard; this document is currently a technical specification of a research prototype intended for benchmarking and peer-review

pale hull
#

Is that AI LLM slop

jade current
#

AI slop

grim pawn
#

emdashes my beloved

#

makes it readable

#

except it's not

polar thunder
pale hull
#

Could you put the original message through Google translate and paste the result here

quiet saddle
polar thunder
# quiet saddle "Temporal Fortress" is not a term I have seen in any cryptography literature, so...

temporal fortress is my internal term for the memory hard key derivation phase. i’m aware encryption is usually optimized for speed, but the "memory-hard" choice is a deliberate trade-off to increase the cost of ASIC/FPGA based brute-force attacks during the key setup. once the subkeys are expanded, the actual encryption remains fast.
As for the Feistel Network itself:
it’s a 16-round balanced structure. the f-function integrates a GF(2^8) S-Box, an 8x8 Circulant MDS Matrix, and Arnold’s Cat Map for bit-permutation. this ensures that even with a feistel structure, we achieve full diffusion much faster than traditional designs. essentially, I'm using SPN-style diffusion layers inside a feistel round to maximize the avalanche effect.

quiet saddle
#

good lord

tight mural
#

I made a random security bot just for fun and I'm finally done

pale hull
#

šŸ¤–

polar thunder
#

exactly. you’ve summarized the architecture perfectly.
The core philosophy of lox-617 is to use the Feistel Network as the secure "container" while utilizing SPN-style primitives (MDS and S-Box) inside the F-function to solve the slow diffusion problem typically found in classic Feistel ciphers.
By integrating Arnold’s Cat Map specifically for bit-shuffling, we ensure that the avalanche effect isn't just limited to byte-level changes but reaches bit-level chaos within the first 2 rounds. The Memory-Hard setup is simply a modern "gatekeeper" to ensure that the speed of the cipher serves the legitimate user, not an attacker with an ASIC farm.
I'm currently benchmarking the exact Avalanche Coefficient—early tests show it hits ~50% bit-flip probability very rapidly

pale hull
daring wasp
#

hi wolfy and madeline

winged swan
#

i got pinged here?

pale hull
#

Hi sora

quiet saddle
patent carbon
quiet saddle
frigid harbor
#

63 hours..

patent carbon
#

That's rookie numbers for her

#

I'm surprised it's not >100

polar thunder
# quiet saddle Where's your peer review? Where are your sources? Where is the cryptanalysis?

that’s exactly why I’m sharing it here. as an independent research project, I’m currently in the pre-publication phase.
The cryptanalysis and formal peer review are what I’m looking for from the community. I’ve documented the internal logic and mathematical primitives (MDS, Arnold's Cat Map, GF arithmetic) in my technical spec, and now I need eyes on it to find the weaknesses I might have missed.
As for sources, the design draws inspiration from established concepts like Rijndael's MDS diffusion and Argon2's memory-hardening, but the hybrid integration is my own. I'm not claiming it’s a "standard"—I’m presenting it as a candidate for review.

quiet saddle
#

Presenting it to whom? Also it's strange of you to refer to this as a Feistel cipher and at the same time make multiple claims of drawing inspiration from Rijndael - which uses a completely different network and is not a Feistel cipher at all

#

If you want peer review, show me the spec.

pale hull
#

Could you at least make a thread if you are going to post LLM slop

polar thunder
# quiet saddle Presenting it to whom? Also it's strange of you to refer to this as a Feistel ci...

i'm aware that Rijndael is an SPN and not a Feistel network. when I say I draw inspiration from it, I'm referring specifically to the mathematical primitives, not the network topology.
LOX-617 uses a Feistel structure as the outer framework, but inside the F-function, I’ve integrated SPN-style components like the GF(2^8) S-Box and the 8x8 Circulant MDS Matrix (similar to the MixColumns transformation in Rijndael).
The goal is to bring the high-diffusion efficiency of SPN into the reversible structure of a Feistel network. As for "presenting it"—I’m presenting it here to the developer community for initial peer-review and technical scrutiny before I finalize the formal paper.

winged swan
#

lol what

jade current
winged swan
#

🤨

patent carbon
jade current
cunning plume
#

Eg this, to me, looks like hot garbage all jumbled up together.

polar thunder
#

I'll let you know later when it's done

solid wind
#

a lot of the info there is unnecessary, the real issue is clutter imo

tight mural
jade current
#

Dotenv files are cool

cunning plume
tight mural
jade current
solid wind
quiet saddle
tight mural
cunning plume
#

No that's not redundant, sometimes it shows @unknown-user so the other fields make it possible to track it down. The display name can change, and the username is the source of truth

#

If you know how to make it always show the user with the mention, I'm all ears, but I've never been able to get it redundant, and this is an updating application to data truthiness is very important.

#

The discord ID is important in case someone wants to create a report/warning for a user that may have left the discord through another system, a record that can be trusted on member leaves.

jade current
#

But it's clickable though? The mention, that is

cunning plume
#

The mention will not expose the underlying information if it's in "Unknown" status

polar thunder
# quiet saddle I'm not a "sir", and no you haven't said *anything* of substance - you're just t...

i’m not trying to hide behind jargon. here is the F-function logic directly from my source to clarify the design. It’s a work in progress, but the implementation of the MDS matrix and Arnold’s Cat Map is already functional

// Simplified look at the F-function logic
void f_function(uint8_t *half_block, uint8_t *subkey) {
// 1. Non-linear layer
sub_bytes(half_block);

// 2. Linear Diffusion 
mix_columns_mds(half_block); 

// 3. Bit-level Permutation 
apply_arnolds_cat_map(half_block);

// 4. Key Addition
xor_with_subkey(half_block, subkey);

}

i’m currently finalizing the LaTeX documentation for the full spec. I'll share the PDF/docx as soon as the Test Vectors are verified. I'm 15 and still learning, but the math behind the MDS and Feistel structure is what I'm focused on, not just "jargon".

daring wasp
#

im not sure if it works on the pc app though

daring wasp
solid wind
#

there are tons of viable workarounds too. for the purpose of showing the outcome of a form (?) that sort of info is not important, and i assume you're storing the data elsewhere so you can retrieve later if needed. a view should contain the relevant information for its purpose, not everything for the sake of it

jade current
cunning plume
#

The link is a thought, I'm going to see if that's viable. On PC it's rendering as the full link, so from a display perspective, it'd be a terrible user experience.

daring wasp
cunning plume
#

HMMMMM...

#

Now you're talking, but it opens up the browser so link wont work.

daring wasp
#

yeah it prolly doesn't work on pc

#

ok mobile it opens up the user profile with no lag

quiet saddle
polar thunder
# quiet saddle if you're genuinely interested in learning about cryptography, that's an endeavo...

i get why it looks that way, especially since I'm using english which isn't my first language to explain complex stuff. but the logic is mine.
for example, implementing the 8x8 MDS Matrix in C was a headache because i had to make sure the branch number was optimal for diffusion. or how i had to adapt Arnold's Cat Map (which is usually for image pixels) to work on 128-bit half-blocks for bit-shuffling. that’s not something i just "generated" i spent nights debugging why the avalanche effect wasn't hitting 50% in the first 2 rounds.
i’m genuinely trying to learn. if you want to support that, I'd appreciate a critique on the MDS multiplication logic or how i handle the Key entanglement once i post the snippet. no LLM, just me trying to build something cool

cunning plume
# solid wind there are tons of viable workarounds too. for the purpose of showing the outcome...

That's totally fair, but most of the information on those forms is hidden behind that "Info" button, this is just the quick access information to help staff onboard users safely. It's an onboarding system with manual approval processes. It also has information for when users are inactive, have been banned, and various other functions/features to help discord servers keep abreast of guilds, communities, etc.. Users have expressly asked for that information to always be front and center, and every attempt I've made to either reduce or move has resulted in backlash. So even if you're right, the user wins

restive spoke
#

is anyone here able to help me with official discord support

quiet saddle
strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

polar thunder
# quiet saddle Sure, I'd be happy to look it over

appreciate it. Here’s a snippet of the F-function where I integrate the MDS matrix and the bit-shuffling.

i'm specifically curious about the MDS transformation I used—I implemented it using a circulant matrix in GF(2^8). Do you think an 8x8 matrix is overkill for a 128-bit half-block, or does it provide a significantly better diffusion margin compared to the 4x4 used in AES?

pub fn lox_gf256_mul(
mut a: u8,
mut b: u8
) -> u8 {

let mut p = 0u8;

for _ in 0..8 {

    if (b & 1) != 0 {
        p ^= a;
    }

    let hi =
        a & 0x80;

    a <<= 1;

    if hi != 0 {
        a ^= 0x1B;
    }

    b >>= 1;
}

p

}

pub fn lox617_mds_apply(
block: &mut [u8; 8]
) {

let mds: [u8; 8] = [
    0x17, 0x31,
    0x59, 0x83,
    0xA7, 0xC1,
    0xD3, 0xEF
];

let mut temp =
    [0u8; 8];

for i in 0..8 {

    for j in 0..8 {

        temp[i] ^=
            lox_gf256_mul(
                block[j],
                mds[
                    (i + j) % 8
                ]
            );
    }
}

*block = temp;

}

Also, I’m still fine-tuning the Arnold's Cat Map implementation to ensure it doesn't introduce any unintended periodicities in the bit-shuffling. Any thoughts on that?

#

code snippet from rust

forest pine
#

How much storage capacity does a Discord server have?

winged swan
#

is this just Ai again

#

ah i c

quiet saddle
jade current
#

Wrong server; no recruitment

limpid nacelle
daring wasp
#

no hiring/recruitment here

jade current
daring wasp
limpid nacelle
#

Ok sorry

charred laurel
#

For everyone?

polar thunder
# quiet saddle it does yield more diffusion, but the compute is higher - real tests would show ...

for the constants, i aimed for a circulant MDS Matrix to keep the implementation efficient while maximizing the branch number. i selected the coefficients in GF(2^8) to ensure the matrix is non-singular and provides an optimal differential and linear branch number.

to be honest, I'm still refining the search for the "perfect" constants using a script to verify the MDS property (ensuring every sub-square matrix is non-singular). currently, I'm testing with a set of constants that minimize the number of XORs/shifts in the multiplication to keep the performance hit from the 8x8 size manageable.

do you have a recommended method for verifying the branch number more formally, or perhaps a specific generator polynomial you'd suggest for an 8x8 over GF(2^8)?

daring wasp
#

just message more left

last night
#

HĀ­i

#

What is that?

olive depot
#

Yess, remove the ai generated part

#

šŸ¤·ā€ā™‚ļø

daring wasp
#

bluishpurple gradient moment

olive depot
#

Blurplish*

balmy basin
#

Remove the site

tropic spade
olive depot
#

The screenshot tells nothing what's its about

daring wasp
olive depot
#

Ahhh the confidence

daring wasp
jade current
daring wasp
#

i was just getting annoyed with writing if else everywhere there was an optional enum

weary bluff
#

What if you have taste of blue color

#

You can just say to bypass that words used on you

weary bluff
#

Guys, also are you still counted as dev/coder when you paste codes as from snippets or tracing an AI art to draw it, is it making you artist too?

weary bluff
olive depot
#

🤦

patent light
hot carbon
#

čæ™ę˜Æå’‹å›žäŗ‹å•Šļ¼Ÿęœ‰é‡åˆ°čæ‡ēš„å—ļ¼Ÿ

native pilot
#

try a different name maybe? and this server is English only

cunning plume
#

This has to be the absolute cleanest onboarding experience ever xD

bleak pond
#

smooth

lyric escarp
#

it is, wow.

neat olive
#

I would not read all that

cunning plume
#

Only took me 2yr of coding to get it to this point lol.

cunning plume
neat olive
#

(also most of that is literally just replicating onboarding but worse)

lyric escarp
#

Like how can you not love component v2?

#

it's just the greatest thing

cunning plume
#

Let’s auto-hide channels when no one asks for it. Let’s surface channels when staff accidentally moves a channel. Let’s hide all channels when a user has it enabled because a channel was created or deleted.

lyric escarp
neat olive
cunning plume
#

Also, this function has manual approval processes and moderation you don’t see going on behind the scenes.

daring wasp
#

not really, its good for a non programmer and offers enough customisability for an average discord server
bots are more customizable

^your hide channel point is very understandable i dont like it either

lyric escarp
#

it's like windows babysitting you

cunning plume
neat olive
#

the third container does seem like it's not just onboarding, everything else seems like it very much is

daring wasp
#

i just looked at message object so scary 😭 i have to implement it (partially)

cunning plume
#

There an entire administration function that all of that links to

lyric escarp
#

why note the last sentence twice?

jade current
cunning plume
lyric escarp
neat olive
untold nova
#

guys

#

@misty cipher

jade current
lyric escarp
#

like the "hello" automod for example

neat olive
#

also the text literally just lists the buttons right below it for some reason

cunning plume
#

Hopefully that makes my point however. It puts discords onboarding to shame šŸ˜‚

neat olive
#

it's all duplicate text

cunning plume
neat olive
#

most of it is actively worse and you have a single feature onboarding doesn't support in there to justify replacing an entire flow

lyric escarp
#

that's what we all do

quiet saddle
#

not me

lyric escarp
#

create a whole new thing to add 1 single feature to the existing one

cunning plume
#

I agree it has its place.

lyric escarp
#

like this totally isn't from risky's honeypot

#

(it isn't, it has a different filtering)

neat olive
lyric escarp
#

because native re-implement what was missing, but only when we start doing it ourselves.

viscid steppe
#

Don't you love reinventing the wheel?

quiet saddle
lyric escarp
#

i mean it should be called flycatcher or something

quiet saddle
#

you realize risky didn't invent that design or the term right

neat olive
#

honeypot is a technical term :p

neat olive
#

though tbh I'm not quite sure these things qualify cyberlul

lyric escarp
#

I first seen this term when visiting RIT and looked it up.

quiet saddle
#

I've seen servers employ similar things with bots long before risky's honeypot was a thing

neat olive
#

they're not exactly trying to appear legitimate, at least not to normal users

#

and yeah it's been a thing for a while, inc. with onboarding roles

pine galleon
#

Hi guys I'm back

cunning plume
# neat olive most of it is actively worse and you have a single feature onboarding doesn't su...

You are so ignorant it’s wild. Here is everything it does.

  • Auto role assignments before and after application
  • Manual application process with form collection.
  • Application status DMs
  • Inactivity Monitoring
  • Reporting Monitoring
  • Per app notes
  • Application history and frequency
  • Analytics tracking
  • Data & Reporting
  • Cross-server watchlist Notifications

Basically a whole bunch of stuff that onboarding doesn’t dream to do and certainly more than ā€œOne thingā€.

It’s built with the express purpose of preventing people hoping discord to get a guild invite in a game or similar, and leaving making staff wonder where someone is or if they should or should not have access.

lyric escarp
#

whoa whoa whoa

quiet saddle
#

I don't think he will read all of that MenheraCurious1

cunning plume
#

Don’t assume, ask

#

He won’t, he’s dense

lethal pier
#

morning chat!

quiet saddle
#

morning

pine galleon
#

Morning

neat olive
#

but I'm grouping all of that as a single feature in my description nonetheless

frigid harbor
#

morning guys

quiet saddle
neat olive
#

and my comment was specifically referring to the third container in the non-native onboarding flow as the only unique feature

cunning plume
neat olive
#

I don't think it's a bad feature (though not like I've used it), my issue is with the rest of the containers, which I do think should be replaced by the native onboarding flow

cunning plume
pine galleon
#

Bro can we make bot from vibe coading

cunning plume
#

I wouldn’t disagree with that statement, if you’re okay with onboarding. Personally I am not

cunning plume
neat olive
#

specifically the role selects here could easily be done natively, and the feature onboarding has for showcasing channels works great also

pine galleon
#

No it not brake it work

jade current
#

Why not learn how to code without using AI

viscid steppe
pine galleon
#

So vibe coding is not good

daring wasp
#

AI has like months old api reference unless you explicitly point it to the docs

daring wasp
cunning plume
#

If you know what you’re doing AI can help, but if you expect to get away with no coding, you’re gonna burn some serious tokens over one little thing not working. It won’t happen early, only once you’re invested, and then you can be left with slop and nothing done at the end of the day.

quiet saddle
cunning plume
#

It’s gonna be a ā€œ;ā€ out of place and you’ll spend $200 and 4 days finding it xD

daring wasp
#

^ yep it can only help you if you already know what you're doing

cunning plume
#

Or it’ll DROP your database, if you can manage to connect it lol

viscid steppe
#

Actually things like missing semi colon would be solved by it reading the error from linter/lsp. Agents nowadays don't reread thru all the code to spot the error first

jade current
#

> "Fix this code"
> Comments all your code

quiet saddle
daring wasp
neat olive
#

🤮

quiet saddle
#

In fact I think all code should just be commented out

viscid steppe
#

No code solution

#

The actual one

quiet saddle
#

Yes. This is the way.

cunning plume
#

Seriously, AI is really good at simple, repetitive things that are very well defined. Eg interfaces and typing support.

It’s also really good if you have a strong architectural pattern and coding standards.

If you have neither, your only hope is to tell it ā€œOne shot and make no mistakes

quiet saddle
#

I one shot a whole python library for Discord with Claude

daring wasp
#

Claude, gimme a million dollar app

bleak pond
#

and then 800 errors

quiet saddle
#

no idea if it works, I never tried it

#

it was over 10,000 lines off one prompt lmao

daring wasp
cunning plume
lyric escarp
#

madeline is secretly anthropic ceo

quiet saddle
#

it failed a few times and I just clicked the button "keep trying"

#

by the end of the day it was done

jade current
#

That was peak

cunning plume
#

Yeh, you know it doesn’t work right?

lyric escarp
#

but it does

cunning plume
#

Tests not required lol

daring wasp
#

the JavaOrJavaScript language by claude was peak

quiet saddle
quiet saddle
jade current
#

Matt did something similar too, I think

quiet saddle
#

I give myself a lot of credit though for the design decisions on JSoJ

lyric escarp
#

one time I timed my usage so perfectly it reset at the moment I hit full, retried once and I was back to 0%

#

by pure coincidence

bleak pond
#

what timing

lyric escarp
#

I had claude and codex do some flag hunting in a competition while I find another flag alongside.

daring wasp
#

Ive never really run out of Claude Usage even for the free plan even since i dont rely on it too much

lyric escarp
#

codex usage hit 100%, retried once, and it went back to 0%

quiet saddle
#

for the python lib I actually told it not to do any testing cuz I knew it would have no chance of completing if it tried to test

bleak pond
#

nowadays claude consumes more token if your prompt is big

daring wasp
#

i wanna use codex but id need to use vscode instead of code oss for that

quiet saddle
lyric escarp
lyric escarp
#

you can modify the marketplace url at a risk of microslop possibly suing you

daring wasp
# lyric escarp you dont have to

I should've frsmed it this way

codex doesnt work on native termux (where i use code oss)
id have to use proot to simulate glibc to run vscode and codex

#

although i havent tried the extension version, the cli just wouldn't load up

lyric escarp
#

makes sense, most things wont work without glibc except those that use musl

daring wasp
#

so basically i can't run anything closed source without proot sim

lyric escarp
#

yeah, that's what I said, no?

pine galleon
#

Did anyone of you sell a bot and how much money you take

daring wasp
lyric escarp
#

you should try ubuntu touch

daring wasp
pine galleon
#

So it was not used in other

daring wasp
dense bone
lyric escarp
#

hi inbestigator

wicked ravine
#

you can use the push api to implement server events without a continuous connection

dense bone
#

sorry, i japanese , i don`t know

pine galleon
#

You are japines

wicked ravine
pine galleon
#

Did you live in japan

dense bone
#

watashi ha nihon ni sunde imasu

pine galleon
#

Bro what are you typing

quiet saddle
#

Japanese. This is an English only server though @dense bone

daring wasp
pine galleon
#

Can you use translator to under stand@daring wasp

daring wasp
pine galleon
#

Ok

#

I'm learning language but I'm confused what I learn japines or korean

daring wasp
pine galleon
#

@daring wasp what app did you use to code and make a bot and like use it to make a working bot

daring wasp
#

I use VSCode (GUI) for long sessions / fresh-editor (Terminal Based) for quick edits

pine galleon
#

So which is batter for big project and is it free

daring wasp
#

Both are free

#

VSCode is pretty beginner friendly

pine galleon
#

Ok thanks

#

šŸ˜šŸ‘

#

Did you know which is best coding language to make a bot and big project python or js

jade current
#

It's just a preference

#

Pick which programming language you want to use

daring wasp
jade current
#

There is no "best"

daring wasp
pine galleon
#

Like I'm learning so which I learn

daring wasp
#

that's a big reason I'm still using vscode

daring wasp
lyric escarp
daring wasp
pine galleon
#

So like js Is more good for development so I will learn J's and it is also used to make bot righy

#

Soory right not righy

jade current
jade current
#

You're also not limited to just JavaScript and Python

daring wasp
#

there's other languages too but I feel like a high level language like python, js is better to start

pine galleon
#

Yeah that's right

#

So I will learn J's than python because J's is like use more in web dev

neat olive
pine galleon
#

Why

#

So which is batter

neat olive
#

neither

daring wasp
#

neither

#

both have their uses and are good for their own points

lethal pier
#

there is no "better"

pine galleon
#

Bro like which is batter for web dev

rocky dagger
#

Hello I want to ask for an anti nuke bot

quiet saddle
lethal pier
#

both can do bots, both can do web, both can do backend

neat olive
#

js is used a lot in webdev for running client-side js, and it also has some popular backend frameworks, but so does e.g. python or c#

rocky dagger
quiet saddle
#

we can't help with that

rocky dagger
quiet saddle
#

"anti-nuke bots" are inherently dangerous; you're giving some random person admin privileges in order to provide the same "protection" for your server that you can have by simply not handing out high level permissions to people who aren't trusted or don't need it. if an anti-nuke bot actually did what it claimed to do, the first thing it would do would be to nuke itself.

neat olive
#

but isn't that what it's supposed to stop? kekw

quiet saddle
#

using "nuke" loosely here

#

it's true that you've uncovered a bit of a paradox though @neat olive. if an anti-nuke bot is also a nuke bot, can the bot faithfully execute either of its roles without compromising the integrity of its identity?

daring wasp
#

<@&1050493473033289778>

versed creek
#

They can see logs bro

jade current
#

šŸ’€

daring wasp
#

Deleting message doesn't make you safe

daring wasp
#

😭?

dark mortar
#

Hu

daring wasp
#

hi samtino

patent carbon
#

Thx mods!
-# I didn't see what it was

daring wasp
patent carbon
#

Ahh

versed creek
#

Same Timor

neat olive
#

(to be fair it's not an exact analogy since the idea was to nuke other nukes instead of yourself, but still)

quiet saddle
rapid jolt
#

I am using railway to keep my bot online but it says that i have 17 days left(Until my free subscription expires). Do you guys know any free bot running website?

quiet saddle
#

how should we act, if we are to act in the interests of the soviets?

neat olive
solid wind
neat olive
#

maybe the paradox solves itself

rapid jolt
quiet saddle
rapid jolt
# rapid jolt

I was going to check the website but i saw the comment

verbal wraith
#

I'm not even surprised at this point

untold nova
#

@misty cipher

solid wind
# rapid jolt

seems like they arent really in a position to be making educational content yet šŸ˜‚

upbeat anchor
#

Failed to send DM to user: DiscordAPIError[40003]: You are opening direct messages too fast.
Failed to send DM to user: SyntaxError: Unexpected end of JSON input
@modest geyser it must have been a spammy night to get these errors

glass silo
#

Poor JSON

#

Didn't see that ending coming

upbeat anchor
#

like am i having too many paralell connections to discord and multipliexing gets confused?

#

or does it somehow end before actually receiving the last few chars

glass silo
dark moth
upbeat anchor
#

oh they are 2 diff events

floral rapids
#

let me check if i have it uploaded on github sec

upbeat anchor
#

but im not sure if its due to me aborting it after 2.5s and maybe Bun just cahceling the reading of body or whats wrong

#

there are alot of possible things and i don't have enough of a repo or often enough to be able to definitely blame discord

floral rapids
#

should do the trick most of the time

upbeat anchor
#

so my bot works indeed in a queue from redis list that WS pushes to, but not sure what has to do with this

#

the http sending is done by @discordjs/rest

floral rapids
#

queue the HTTP sending to prevent excessive dms in a short span

upbeat anchor
#

oh also docker for all we know could be funny - there are many layers of proxy to discord themself

upbeat anchor
#

like once they are removed from server, there is a low chance i can dm again

floral rapids
#

i use the custom made queue for most stuff (i have it set as 100, not 1000)

#

i only try for 2.5sec
šŸ¤” so if fail you try again and again? or am i misunderstanding something

upbeat anchor
#

i do cache the route for getting channel id incase i ban people in 2+ servers quickly

upbeat anchor
#

which means that the fetch query will abort after that time if its not completed

floral rapids
#

aha, not what i mean

#

the design choice of mine is as following:

  1. user does something, needs to be kicked (softbanned + message)
  2. bot adds to queue that this exact user needs to be kicked
  3. the queue pretty much runs one by one, prevents all of them to be ran at once
  4. if message fails i abort, but still kick
#

does it make more sense now

upbeat anchor
#

i mean isnt that similar to what i do?

#

like whats a few ms differance of sending the event going to do

#

its prob a hourly ratelimit or smth

floral rapids
#

prevent spamming discord's api most likely

floral rapids
upbeat anchor
#

or at very least one that isn't counting paralell connections

quiet saddle
#

it's a token bucket algorithm, the frequency of the requests is irrelevant, it's about the number of requests made during a sliding time window

upbeat anchor
#

ya

floral rapids
#

i mean the way i handle it is, in a way, so that the number of requests made during a sliding time window decreases

#

e.g send message at 0, kick at 100, inform in specific channel at 200

upbeat anchor
#

I really doubt this would have any impact

floral rapids
#

i don't see any other solution for this to prevent exhausting the requests in that number of sliding time window

upbeat anchor
#

Btw how many events are you sending?

quiet saddle
#

if you receive a rate limit warning you should just throw the request into your queue and have it retry the next req in the queue (or batch if API supports for that type of action), if successful, continue to next in queue, otherwise try again when the rate limit advises you to

upbeat anchor
quiet saddle
#

the queue should be allowed to accumulate as many backlogged requests as you can handle, and process them when possible, even if it's minutes or hours later

floral rapids
#

im also on djs with the queue included to prevent heavy amount of logs being sent at once/prevent any unfunny/unsafe non-queued (bypassed?) processes if there is one by mistake

quiet saddle
#

(in this specific scenario btw; there are other scenarios, not really bot related, where you want to avoid queueing requests)

upbeat anchor
floral rapids
#

i don't think i see any scenarios where you'd want to avoid queuing requests to prevent 3rd party/your own servers from getting exhausted

quiet saddle
#

DM is the only one you're gona have trouble with

floral rapids
#

isn't DM considered as 2 requests sent in same time:

  1. opening dm
  2. sending msg
quiet saddle
#

wdym. there is no "open dm". it's just sending the message

floral rapids
#

huh

quiet saddle
#

I could be mistaken but afaik it's just a normal message send?

upbeat anchor
#

you need to get dm channel first

quiet saddle
#

wouldn't you have that cached

upbeat anchor
#

if its not cached

floral rapids
#

if it's first time, it's not cached

quiet saddle
#

oh ig not for this scenario

upbeat anchor
#

ie youve never dmd them before

#

i dont like how that event doesn't check if you can even dm them to begin with - like you can get a channel with anyone... but its only the send msg that will error if you dont have mutual

floral rapids
#

yeah pretty much each time he messages someone it's 2 requests being done

quiet saddle
#

anyways probably irrelevant as i doubt those are in the same token bucket to begin with

upbeat anchor
#

ya

#

i dont think that one has a very low ratelimit

quiet saddle
#

i mean everything is part of the global bucket, but you're not gonna hit that limit

floral rapids
#

i'm pretty much preventing myself from reaching both the global bucket limit and any weird limits that may suddenly show up but i'll consider what was previously mentioned

upbeat anchor
#

Failed to softban user: DiscordAPIError[10026]: Unknown Ban
im impressed by some servers tho... as either this is due to ratelimiting or a bot insta unbans before i can (?)

quiet saddle
floral rapids
#

i've honestly yet to have any issues with it, rather, it's been much more helpful, though my bot is mostly logging (messages, guild members, user profile, etc), it does have softban ability (message, ban, unban)

quiet saddle
#

i'm not saying it would cause issues, just that it has zero effect

upbeat anchor
#

so guys if i have a seperate script for proxying discord reqs for ratelimit (ie so i can have many procs of event handler)... should i transfer an abort or still send the request? like for context any update to code and such would restart the bot and thus nullifying in process stuff potentionally

serene wind
#

why is this happening

#

when i ask copilot

frank plinth
floral rapids
#

mk, oh well, i mean i can still keep it for the log system i've done, but seems like i need to find solution for others (a bit of an example, for context, is that it sends attachments or long messages in separate messages, for easy reading + follow discord limitations)

#

thanks for letting me know of the issue(s)

quiet saddle
# upbeat anchor so guys if i have a seperate script for proxying discord reqs for ratelimit (ie ...

the lifetime of an abort signal should only be as long as the request takes to resolve (or timeout)... if you get a 429, the abort signal should be canceled just as you would with a 200 response. then you create a brand new copy of the request and pass it off to your queue, along with some kind of indicator to the queue about which bucket it's in, when the request should be retried, etc. then whatever part of your system is managing the queue makes sure queued requests get sent out in the order they came in as rate limit timeouts expire

upbeat anchor
upbeat anchor
#

as some stuff may have later dependents for all i know

#

the best idea is to try and let docker keep it for as alive as needed (not accepting any new events) and idealy by then not have any stuff left

quiet saddle
#

wdym by internal connection? between your main program and the proxy?

upbeat anchor
#

ya

quiet saddle
#

does the proxy ever receive responses, or are those directed back to the main program

#

ig my question is: the proxy receives data from your main process, but does it ever send data to your main process

upbeat anchor
#

yeah it would retry as much as it needs (idealy 0 coz good ratelimiting data) and then send data back

#

i mean logically i dont actualy often read the response, but sometimes i do

#

<@&1050493473033289778>

quiet saddle
#

hmm... that design feels shaky to me. if the proxy is a separate service, it should be capable of handling the request and response all the way through - no backwards communication

upbeat anchor
#

and for those i send directly?

quiet saddle
#

if it does, it should be able to handle it

#

i.e. sending a request to your proxy should mean "this is no longer my concern"

upbeat anchor
#

like the whole point is to avoid saving thate ratelimit data twice and potentionally having outdated info

#

i could try to make my own cursed setup and store that data in redis i guess, but i dont wana fork any ratelimiters

upbeat anchor
quiet saddle
#

i would question the two-system setup first. it's unlikely that you actually need it

dark moth
upbeat anchor
#

i do get for clusters its not needed as generally (not my setup tho) you'd be using sharding properly where each handler is for a specific range of servers

quiet saddle
upbeat anchor
#

my setup is diff as i condence all shards into one event handler queue as i dont have really any shared state/cache i need

waxen trellis
#

any wone plss help me

solid wind
upbeat anchor
#

i wonder how many times d.js does it

#

if its unlimited or still has a cap

jade current
solid wind
#

anyone got any idea if ip bans are a concern when only dealing with websocket connections, where no api requests are being sent from the same

#

e.g. if you have a bunch of bots all connecting off the same ip, is there a limit where discord decides nope

neat olive
#

probably not a major concern at least, I don't know if it's possible to get ip banned like that Thonk

lusty cargo
verbal wraith
#

You can't

lusty cargo
#

Not anymore?

verbal wraith
#

Nope, you had to play april fools game on discord

solid wind
#

i dont know if it being a thing, but i feel like it wouldnt be surprising if there was some sort of limit before things get flagged

lusty cargo
#

Ic ic

solid wind
#

e.g. if 1000 bots are all connecting from the same ip, surely discord would think that looks a bit sus

neat olive
#

I don't know if any of the events you need to send for websocket connections count against any relevant limits but if not there wouldn't be any limit except how many connections you can actually open at once from a single ip (presumably you need a port per connection) Thonk

upbeat anchor
#

i havent heard of any shared hosts having issues there, but they'd first get issues because of the get bot info would error

#

(ie to see how many shards and concurrent)

solid wind
#

even that, you'd be doing rarely, definitely not to the frequency that would cause too many requests from the single IP

upbeat anchor
#

yeah

#

but also why are you putting lota bots on same ip?

modest geyser
solid wind
#

protocol translating proxy

upbeat anchor
solid wind
#

Mmm the wording is intentionally vague

#

is there precedence for that being the stance?

upbeat anchor
#

considering mee6 is alive and still offers it

#

but i heard they gave us per server bot profiles to minimise the reason to want

solid wind
#

mee6 being able to do something doesnt hold much weight tbf

upbeat anchor
#

yeah

solid wind
#

what was the end result with all the botghost stuff?

#

does it still exist

upbeat anchor
solid wind
#

exactly the thing im wondering. that or reversing the client/server ownership to properly support ws hibernation on cf workers DOs

upbeat anchor
#

ya

upbeat anchor
solid wind
#

the thing with the IP bans was that it could support a free shared IP for some number of bots, and if there is any risk there, offer paid dedis to get around that risk

floral rapids
upbeat anchor
solid wind
#

my intention is to do all the lifecycle stuff, just forward the meaningful events

upbeat anchor
#

and also you get alot more events than you care about so just waisting cpu time

upbeat anchor
#

at very least you need to get them to select the events they want as otherwise itll get messy

solid wind
#

would abstract away sharding entirely, you'd just get events through your single point you can do all the easy load balancing on to your hearts content

vast cradle
#

I need someone who knows how to code a WhatsApp bot im having some problems

upbeat anchor
#

2.5k servers is alot

solid wind
#

i dont see any reason that'd necessarily be the case

upbeat anchor
#

well when you get to a state of geting heeps of events, the serverless cost would get high to make you question why

floral rapids
#

I'd honestly do anything to make it so I don't have to shard my bots ngl, but to be honest, that's the easiest part of all

solid wind
#

if it were trivial to make a (for all intents and purposes) infinitely scalable bot, that sounds like a pretty good value proposition, like any other serverless platform

upbeat anchor
#

my bot is effectively serverless idea (ws -> redis queue -> event handler)

floral rapids
#

clustering is what I'd struggle (multiple nodes) as I do not have a proper way to handle clustering

upbeat anchor
trim geode
#

imagine being serverless I could never

#

-# except if you look at me pushing serverless and writing an entire guide on it

solid wind
floral rapids
upbeat anchor
#

i use docker

#

the main benifit of my strat is i can restart my event handler often and not have to restart/resume the actual ws itself

#

as that stays steady, and then i use docker swarm like one could with http server and always having at least one alive at the moment

trim geode
#

yup, that's the beauty of decoupling

upbeat anchor
#

honestly i think only few bots can do that because most actually rely on caching

#

and when you cache, may as well just keep everything on same cluster

#

oh also whats a normal events per sec for a 9k server bot would you say

floral rapids
#

sharding between 2 nodes for me rn is a bit of a impossible to do, I don't know when the bot is supposed to start/what happened to it/etc
and having to handle cluster rn would mean I need to think of an effective system to easily broadcast data if necessary to another cluster (keyword: if; it doesn't mean I will, I don't think there is any day I will ever do that too)

solid wind
upbeat anchor
solid wind
#

basically the same idea, just that i think itd be cool to make it a managed multi-tenant service

upbeat anchor
#

ya

#

ive had to turn it into more fancy than i initially thought tho lol

solid wind
#

above all else, its an excuse for me to have fun with durable functions and getting in the weeds of some cloud architecture stuff šŸ˜‚

upbeat anchor
#

-# arent you meant to be a aws fan

solid wind
#

i use aws stuff at work but azure stuff at home

floral rapids
#

is it me or are you using redis as an alternative to "websocket", in a way you're doing as if:
discord -> main service -> redis -> external service (handles events only) OR external service (handles commands only)

#

this does seem a bit like it (though, not fully correct)

trim geode
#

More like a message broker

upbeat anchor
floral rapids
#

aren't websockets more efficient at being a message broker than redis or is that not true

trim geode
#

100% situational

#

and not always

floral rapids
floral rapids
trim geode
#

message brokers can provide reliability that websockets can't without extra work

trim geode
#

there's definitely a "checklist" you could use...but it's just more instinct too...and architecture

upbeat anchor
#

ok so ill explain my goals

  1. every time i update code, i don't want to have to deal with pain of downtime - whether that is directly needing to re-identify or still connect you still have some time where nothing can be processed
  2. means i can filter my events before hitting event handler
  3. they can scale interdependently depending on what uses more resources (tbh i thought WS was cheaper than event handler)
floral rapids
upbeat anchor
#

also it means that if event handler crashes, then i still have a queue of events to replay through on restart

#

(this was before i knew you could just save url and reconnect)

upbeat anchor
floral rapids
upbeat anchor
floral rapids
#

I see

upbeat anchor
#

so why bother sending smth that'll just get dropped

floral rapids
#

yeah websocket is a bit of ? when it comes to CPU usage, though redis could end up worst if not handled properly

upbeat anchor
#

redis is just a lpush and blpop (resolve when there is smth to pop - and run this in a loop)

floral rapids
waxen chasm
#

Am not from china

upbeat anchor
solid wind
#

the important distinction is that by abstracting away the websocket, you're free to use whatever tool best suits your priorities

#

rather than being locked into one architecture you can do things however makes most sense. and compute efficiency is only one metric, that often is not actually that important, especially when weighing up other priorities

tiny bay
#

H

brisk needle
#

robo's back online

solid wind
#

if that was the only thing that mattered we'd all be writing bots in C

floral rapids
#

I mean yeah but it's nice to know the advantages & disadvantages of using websocket vs redis as a message broker

upbeat anchor
#

3% local is 10% on vps

#

the main benifits are due to not fully parsing the json which is faster and has less GC cleanup requirements

brisk needle
#

why am i always that one unnoticed guy

solid wind
#

i havent personally looked at using redis in that way but there are countless other approaches

upbeat anchor
#

yeah

#

i just used redis as it seemed like an easy way to load balance events

solid wind
#

one downside is you've still got a bottleneck, you've just shifted it off to your redis instance šŸ˜‚

upbeat anchor
#

haha true

#

i could make the redis myself tbh

#

just put direct socket connections and then choose randomly which to send events to

neat olive
#

to me this seems like a lot of effort to replace something that ought to just work fine already

upbeat anchor
#

idk this is fun to me to make it peak perf

#

idk about leymbda, but its intresting to work out what parts can be done to improve effeciency and what gains/downsides it yeilds

neat olive
#

in terms of performance this seems like it'd always just be worse than just sticking with websockets, no?

upbeat anchor
neat olive
#

all the possible benefits would be at the cost of perf in my eyes Thonk

upbeat anchor
#

i cant remember whats being argued here

#

but my method of ws and event handler being seperate has worked very well for me

solid wind
#

for me its about the convenience and flexibility of being able to host in ways not otherwise possible

upbeat anchor
#

ya

solid wind
#

if you wanna chuck all your bot code in a lambda and call it a day then you can

upbeat anchor
#

the idea behind https://pylon.bot is nice, so if you can easily just make a simple bot without needing an actual server its nice

trim geode
#

pylon...has its own issues

#

including the fact that you needed to use their libraries

#

from what I recall

upbeat anchor
#

i said the idea behind it 😭

trim geode
#

I know I was just saying :P

#

-# at some point I'll build a host fr fr

solid wind
#

looks abandoned too, which would be the biggest flaw of any sort of service like this

upbeat anchor
#

@solid wind's solution is just proxying the events and letting you handle however you see fit

#

but it does miss out on cache

neat olive
upbeat anchor
#

unless you'll let you subscribe to added data with cache

trim geode
#

cache can also be in redis giggle

upbeat anchor
solid wind
neat olive
#

it just seems like there's just more and more complexity rather than an actually simplified workflow

upbeat anchor
neat olive
#

but Shrug maybe I'm just not seeing the vision

solid wind
upbeat anchor
#

like unless you want to get a bunch of waisted member update events to handle and send only to cache

#

honestly the serverless pricing on some things are insaine compared to what you can get on basic vps

winged swan
#

guys init_arena or arena_init

neat olive
neat olive
jade current
#

Why not arena

winged swan
solid wind
#

my idea is to make it a managed service rather than a self hosted one, which has its own pros and cons too, but at least means you arent managing your own VMs

upbeat anchor
#

new Arena

winged swan
upbeat anchor
#

and honestly its a way better idea than actually running peoplz code

solid wind
#

all you'd be doing is setting up an extra third party service then pointing it to your lambdas or whatever, so all you're managing in terms of infra is your lambda

upbeat anchor
#

id honestly ask discord support on if they'd condone this as the dev tos does kinda allude to it being a bad idea

solid wind
#

they dont answer policy questions like that

upbeat anchor
#

like if you store encrypted and handle ratelimits... you in theory aren't actually consuming any of their payloads yourself

upbeat anchor
winged swan
#

my naming convention is so inconsistent I just realised

#
Arena *
init_arena()

void
*arena_malloc(Arena *arena, const size_t size)
jade current
#

arena_init

winged swan
#

oke then

solid wind
#

i did some number crunching a while ago and figured that it'd be feasible to do a model like $1 per shard, and while thats certainly more at greater scale, it is predictive billing, and ends up cheaper for most when compared to non-free-tiers

upbeat anchor
#

thats alot of dolla just for being a proxy

#

like in theory an actual shard itself shouldnt really cost you that much

#

now if you can cache and send other data with it, that changes things (but ram can get really high so prob not a good idea)

solid wind
#

way i see it is thats $1 and effectively free serverless vs a few bucks on a vm

turbid oxide
#

what

#

omg

#

what speaking turks

upbeat anchor
#

at least have $1 give many shards

#

and have free teir with max events proxied per mo as trial

solid wind
#

not to get too into the weeds of businessy things as opposed to the actual technical viability, but that would also afford a single shard free tier

winged swan
#

i'm not using the ternary operator enough man

solid wind
#

dont go crazy with them, you're better off underusing than overusing

winged swan
#

what are the downsides?

solid wind
#

can be messy and unreadable

winged swan
#

fair

upbeat anchor
#

Ternary good

#

If its simple one line code

solid wind
#

i almost always split them across 3 for readability

#
var foo = condition
    ? bar
    : baz
winged swan
#

interesting

silver carbon
winged swan
#

in python we do something similar i think

verbal wraith
#

Looks pretty clear

silver carbon
#

How should this situation be resolved?

verbal wraith
#

!support

strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

jade current
#

I want to try making my own Discord API wrapper in Python ._.

silver carbon
#

How should this situation be resolved?

jade current
#

Read what the bot said above

silver carbon
#

OK

silver carbon
lyric escarp
#

this server cannot help you.

silver carbon
#

I couldn't figure it out on the Discord website either; here's what you need to do

#

For some reason, a few accounts are experiencing this issue.

lyric escarp
#

we're just people

#

not developers that work on discord, just normal people

silver carbon
#

I applied for two new accounts, and both have this issue. I'm not sure what's going on.

frigid harbor
#

morning guys

lyric escarp
silver carbon
#

Does anyone know the staff's contact information?

lyric escarp
#

!support

strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

lyric escarp
winged swan
#
Arena *
arena_init()
{
    Arena *arena = malloc(sizeof(Arena));
    if (arena == NULL) {
        return NULL;
    }
    arena->size = 0;

    for (int i = 0; i < DEFAULT_ARENA_SIZE; i++) {
        if (pool_init(arena) < 0) {
            arena_destroy(arena);
        }
    }

    return NULL;
}
``` so dumb
modest geyser
winged swan
#

exactly

#

i was wondering why it wasn't working

#

until I checked that function... so yeah

ember pollen
#

fr lmao

viscid steppe
#

Is this a serious question or is this a funsy statement

pale hull
#

Is it clearing a space in memory? Not sure what the point of that would be tho

lethal pier
#

I just created my first python discord bot using discord.py coming from c# this wasn't to difficult

jade current
#

Python is cool

lethal pier
#

I have it running on my Ubuntu laptop server

jade current
#

I'm still newbie at it

lethal pier
#

so am I

#

was going to try js but I really don't like js so I choose python

jade current
#

Do you think you can teach me Python?

lethal pier
#

no because I dont know python

#

lol

jade current
#

That sucks

daring wasp
ember pollen
viscid steppe
#

Do you know how to exit the python repl

jade current
#

Anyways, iconic how these lines of codes worked on first try

lethal pier
#
import os
import discord
from dotenv import load_dotenv

load_dotenv()

intents = discord.Intents.default()
intents.message_content = True

class GamedayClient(discord.Client):

    async def on_ready(self):
        print(f'Logged in as {self.user}')

    async def on_message(self, message):
        if message.author == self.user:
            return

        if message.content.startswith('!hello'):
            await message.channel.send('Hello!')

client = GamedayClient(intents=intents)
client.run(os.getenv('TOKEN'))```
jade current
lethal pier
#

is my bot

viscid steppe
ember pollen
#

šŸ’Æ

lethal pier
pale hull
#

Why using prefix command :/

daring wasp
jade current
daring wasp
fervent zenith
#

@olive minnow

lethal pier
daring wasp
ember pollen
jade current
fervent zenith
#

@olive minnow šŸ‘€šŸ‘€šŸ‘€šŸ‘€

daring wasp
#

which are really nice

pale hull
#

Cogs are a pain

jade current
#

Cogs are wheels

haughty edge
#

true

jade current
#

I've never had problems with cogs

daring wasp
haughty edge
#

cogs...i still don't know that...

daring wasp
#

they're nice

pale hull
#

Extensions are nice. But I have only used a cogs feature like twice

daring wasp
winged swan
#

no

jade current
#

Extensions are cool too, 'cause they extend

daring wasp
winged swan
#

most of the time they are used together tho

#

Cog is just like any class

queen lake
#

Greetings

daring wasp
jade current
#

Extensions are modules

pale hull
#

Extension is the file with the setup function. It is what is loaded and reloaded. Cogs are the class that just has extra stuff like an error handler for all commands in a cog

winged swan
#

i believe so

daring wasp
#

yeah I get it now

#

I always jsut used them together

viscid steppe
#

Because it will organize your help commands (prefix jumpscare)

pale hull
jade current
#

Ooo meowtivation

pale hull
#

Cogs also auto add all commands and listeners within the cog. But I actually prefer doing it manually

queen lake
daring wasp
#

i go eat now my hands tired from codin

pale hull
#

Same concepts just different paths for where stuff is at

sly crest
#

I have a question. My server was breached for two days and they said it would be back online on the 16th, but it's still not online. Will it be online tonight?

dark moth
#

reply to your support ticket instead, discord does not have or do live chat support

sly crest
#

I just asked a question, I didn't say you solved my problem.

dark moth
#

it's an off topic question nobody here can even try to answer

sly crest
#

Will it only open tonight?

dark moth
#

nobody has any way of knowing

sly crest
#

The only question is yes or no?

dark moth
#

we are not involved

#

only discord support can answer that, and they are not here

sly crest
#

thank you again

normal flax
#

Hello, could you tell me how to add a photo to the voice channel like in the screenshot?

dark moth
#

!support

strong sealBOT
#

This server is for help with Discord APIs, SDK and other various integrations. For general support, please contact Discord at https://dis.gd/contact, or send us a message on Twitter at @discord_support

modest geyser
#

AE have you seen the crypto scams with the msg content as OMGG

dark moth
#

not something i track

verbal wraith
#

Oh My, Good Game

rough mural
#

huh.. what am i supposed to do now

dark moth
rough mural
#

is this a scam copypasta

#

yea thought so

radiant mantle
#

does anyone know how to block some bots from interacting with my msgs because some bots do not have a user settings interface to do it

jade current
#

My lib be just: ```py
from disthon import Client

Client().start()

dark moth
#

what do you mean interfacing? you can just not use it

jade current
#

Hi, AE O/ How ya doin'

covert prawn
#

Hello Guys Help me?

jade current
jade current
covert prawn
jade current
covert prawn
#

The discord

whole nova
#

hey everyone, is there a discord server for report any dc server?