#development

1 messages · Page 1610 of 1

lyric mountain
#

this is my ping command

#

the loader finds it automatically

mellow kelp
#

oh that's pretty cool

#

i just use constructor arguments though

lyric mountain
#

however with annotations you don't even need to import the classes

mellow kelp
#

so it's more efficient?

lyric mountain
#

probably, idk

#

it'd be a difference of a few more or less ms

mellow kelp
#

o

#

alright then

lyric mountain
#

but you save space

#

and all you need to do to add a new command is simply add the annotation on its class file

#

no declaration anywhere else

mellow kelp
#

well im gonna look into it

#

thx for the info

lyric mountain
#

I guess I could make a lib out of that

#

nah, too lazy

mellow kelp
#

kekw

lyric mountain
#

my pagination lib already took a hell of time to javadoc properly and get published on central

dire obsidian
#

quick, someone knows how use quickdb with discord js commando?

earnest phoenix
#

what

solemn latch
#

just use it like normal?

dire obsidian
#

i mean

#

to save prefixes

solemn latch
#

save them as a string on a setprefix command

#

then check them before sending it to commando

warm junco
#

Got a dev question here if anyone could help out. Context: I'm making a tic tac toe command for my discord bot that uses reactions as controls, and I'm having trouble with the on_reaction_add function. This command is pretty huge, so I won't send the entire thing here. My question is, could async def on_reaction_add(self, reaction): be located under a @commands.command() decorator, or must it be under a listener? I just cannot seem to get it to trigger when a reaction is added, and this obviously is a problem. Any help is appreciated! (discord.py rewrite, forgot to mention)

dire obsidian
#

huh

#

do you have the discord js server?

torn ravine
#

Long time no see, DBL

dire obsidian
#

nvm founf it

hallow shell
#

(discord.js) anyone know the difference between these two?js Guild.approximateMemberCount Guild.memberCount

runic lantern
#

might be something to do with not needing the server members intent to use Guild.approximateMemberCount

#

but i'm not sure

earnest phoenix
#

approximate member count is sent over REST (when you set with_counts to true in the request)

#

member count over the gateway in the GUILD_CREATE event

solemn latch
#

your issue is installing right?

#

lol

#

you keep asking for help then going away and its impossible to help if you keep leaving

earnest phoenix
#

i have insyalling µ

#

people really need to stop using their onedrive folder for coding projects

#

like people come on git was built for this

#

i need this

#

pls hep

solemn latch
#

so the problem is installing?

earnest phoenix
#

i have installing all but if i do javascript node ticket.js its dont work

solemn latch
small tangle
slate oyster
earnest phoenix
#

Why This Error?
It Has Just Begun to Appear.

pale vessel
#

one of your field values is empty, read the error

small tangle
#

Lets see the Code, i mean you try to send a field with no value

earnest phoenix
#

I'm Reading Is Not Empty.

small tangle
#

It has to be empty, otherwise u wont get this exception LuL

opal plank
small tangle
#

And if you want to get help, u could post the code snippet, where u try to build the embed

opal plank
#

empty string is empty

#

null is empty

#

undefined is empty

earnest phoenix
#

I tried

small tangle
#

Man i try to help u, but just saying "why am i getting this error" with zero code and nothing is 0% helpful

earnest phoenix
#
  let modlogs = db.get(`modlogkanal.${guild.id}`)
   const modlogkanal = guild.channels.cache.find(kanal => kanal.id === modlogs);
   if(!modlogs) return;
   if(modlogs) {
     let embed = new Discord.MessageEmbed()
     .setColor(`${renk}`)
     .setAuthor("Bir kişinin yasağı kaldırıldı")
     .setThumbnail(user.avatarURL()||user.defaultAvatarURL)
     .addField(`Yasağı kaldırılan kişi`, `\`\`\` ${user.tag} \`\`\` `)
     .setFooter(`${botadi} | Mod-Log Sistemi`)
     .setTimestamp()
     modlogkanal.send(embed)
   }
 });``` 
For example this code fail
small tangle
#

user.tag has to be undefined and causes this error

mellow kelp
#

i don't think that's where the error comes from

#

the field value would still have backticks even if somehow user.tag was empty

zenith terrace
#

wait, you have default

#

is that even a thing

small tangle
#

yeah it automatically handles the cause, when a user dont have a pic iirc

mellow kelp
#

you probably want to use user.displayAvatarURL()

zenith terrace
#

^

mellow kelp
#

it'll fallback to the default avatar url

earnest phoenix
#

It's Not Just This Embedded Post, This Error

zenith terrace
#

you dont need both user.avatarURL() || user.defaultAvatarURL in the .setImage(), user.displayAvatarURL() will work fine on its own

small tangle
mellow kelp
#

but the field will never be empty

#

it still has backticks

small tangle
#

or the avatar thingy is causing it

mellow kelp
#

the error probably comes from another piece of code they aren't showing

zenith terrace
#

user.tag is fine as the guildBanRemove event uses it and defines user

earnest phoenix
#

All of my Embed commands started to fail. I Think Have a Module Error

small tangle
#

hm oke FeelsSmartMan

earnest phoenix
#
.setColor(`${color}`)
.setAuthor(`${client.user.username} Test`)
.setTimestamp()
.setDescription(`

> \`${prefix}test\` -> 123456.**

    `)

    .setTimestamp()
message.channel.send(embed)
};```See Any Error Here?
solemn latch
#

do you have the error message?

small tangle
#

Title is missing?

solemn latch
#

it would help a ton

small tangle
#

or can be the title empty

solemn latch
#

title is optional

zenith terrace
#

title dont matter

small tangle
#

oh i see

earnest phoenix
small tangle
#

is line 23 in the guildbanremove eventembed?

zenith terrace
#

what have you defined color as in .setColor ?

earnest phoenix
#

const color = config.red not undefined

earnest phoenix
#

continues.

#

But There Is Something Like This Stops Making Errors While Cleaning the DataBase

small tangle
#

did u showed us line 23, where the error occurs?

earnest phoenix
#

yes

earnest phoenix
zenith terrace
#

you sure its that embed?

earnest phoenix
small tangle
#

why youre saying if (!modlogs) return but immediately afterwards another if case?

zenith terrace
#

if(!modlogs) return means if it doesnt exist it stops the code

small tangle
#

but he has if (!modlogs) and if (modlogs)

zenith terrace
#

figure out what if(modlogs) means after I told you what if(!modlogs) does

small tangle
#

maybe because u didnt escaped the last back tick in the field?

#

oh nvm

zenith terrace
earnest phoenix
earnest phoenix
small tangle
earnest phoenix
#

But one thing needs to be taken into account, comfortably command works

zenith terrace
zenith terrace
earnest phoenix
#

Embed Color

zenith terrace
#

is it a hex code or what

earnest phoenix
#

"red": "PURPLE", This.

zenith terrace
#

its definitely a different embed

solemn latch
#

its one with fields

earnest phoenix
#

Sends It But Sends Error To Console

solemn latch
#

the error is with fields

#

so it cannot be that one

#

specifically the value of one of your fields is empty

earnest phoenix
#

Sends like this

#

But Console

solemn latch
#

again, read the error, it clearly says field values may not be empty

#

the error is with an embed with fields

zenith terrace
earnest phoenix
#

Which ?

zenith terrace
#

the one in the image

earnest phoenix
#
const embed = new Discord.MessageEmbed()
.setColor(`${color}`)
.setAuthor(`${client.user.username} Test`)
.setTimestamp()
.setDescription(`

> \`${prefix}mod-log #channel\` **
    `)
.setFooter(`${message.author.username}`, message.author.displayAvatarURL({dynamic: true}))
message.channel.send(embed)
};```
zenith terrace
#

dont put `` in setTimestamp

earnest phoenix
#

I Was Trying It Now

zenith terrace
#

you also seem to have a ` in Embed()

#

ah fuk u discord

earnest phoenix
#

No Here I Was Trying Them Now

latent heron
#

soon™️

REQUIRE "TopPHP.php";

$ID = 1234567890 # Bot ID

$API = new TopGG("API_TOKEN");
$API->GET->votes($ID);

var_dump($API->GET->result);```
#

Got half of the API methods down pat, I need to work on the docs though so that it's easy to understand what is going on and how to make it work. It should make any PHP webserver-based stuff with top.gg API very easy to use, or if you are working with DiscordPHP/RestCord.

rustic nova
acoustic citrus
#

oo whats this?

solemn latch
#

credits for auctions when you get 100+ votes

acoustic citrus
#

ohhhhhh

#

neat

quartz kindle
crimson vapor
#

LOL

#

not nearly as good as h

stark abyss
#
//index.js
const dbClient = new pg.Client({
  connectionString: process.env.DATABASE_URL,
  ssl: {
    rejectUnauthorized: false
  }
});
dbClient.connect();
dbClient.query('SELECT table_schema,table_name FROM information_schema.tables;', (err, res) => {
  if (err) throw err;
  console.log(res.rows[0])
  dbClient.end();
}); //this worked
module.exports.clientPool = dbClient

//lotterystats file
const indexFile = require("../../index.js")
let pool = indexFile.dbClient;

const userData = await pool.query(`SELECT * FROM lotterystats WHERE id = ${user}`)

//Error
2021-02-22T22:59:49.532892+00:00 app[WORKER.1]: (node:4) Warning: Accessing non-existent property 'dbClient' of module exports inside circular dependency

this is heroku, I am trying to use heroku postgres

quartz kindle
#

dont require index

#

the main file should never be required in other files

#

if you do node index.js then index requires a.js, then a.js requires index.js, it will loop forever

crimson vapor
#

@quartz kindle using node-fetch, whats the proper way to catch errors?

#

a try/catch block or .catch()?

quartz kindle
#

depends whether you await or not

crimson vapor
#

yeah im using await

quartz kindle
#

then try catch should work

#

you can use await .catch if you want to return something else in case of error

#

await a.catch(b) // return b in case a fails

#

or if you want to log/ignore the error

lament rock
#

Hey @quartz kindle is there a specific way I should be indexing specific properties on my cache tables? For instance, I have my users tables and the primary key is the id of the user

#

This is related to when you told me you had an sql cache and I was using redis for Discord Object storage

#

For my specific use cases, I will also be filtering by username and tag

quartz kindle
#

yes, you can index those too then

lament rock
#

Is there a specific way to in postgres? All I see in docs is that theres a PRIMARY KEY

solemn latch
#

not sure if username and tag is in separate columns, just the way it was worded you made it sound like it was in separate columns.

lament rock
#

nah. It would just be dynamic for username and discriminator. But thank you for this link

quartz kindle
#

ye its fine to store tags only

#

that way you can use equals to search for tags, and LIKE% to search for usernames

lament rock
#

True. I was just thinking that. Would also probably be more effective to do that

quartz kindle
#

yes

#

when using LIKE on indexed columns, only the left side of the first % will actually use the index

#

so username% will be a good use for indexes

lament rock
#

so. SELECT * FROM users WHERE tag LIKE 'poggers%'; ?

quartz kindle
#

yup

#

the "poggers" part will use the index to fast match all strings starting with "poggers"

#

but if you want to do something like finding all tags that include "gg", then an index wont help much

#

since LIKE '%gg%' will not be able to make use of the index

lament rock
#

Oh. I didn't know that

quartz kindle
#

unless postgre does some optimization im not aware of

earnest phoenix
#

not sure if anyone knows the answer to this but basically I am trying to have my bot create channels that are connected to a certain role (bot also creates that role). anyone got any guides for me to look at?

solemn latch
#

as in creating a private channel for a role that the bot creates?

earnest phoenix
#

yes

solemn latch
#

create the role, then create the channel, overwrite the permissions so everyone cant see it and the role can

#

your bots libraries docs will cover how to do each

quartz kindle
solemn latch
#

yeah ia_sad_cry_shy

#

I tried

quartz kindle
#

these are combined indexes, when you want to use both at once in a single query

solemn latch
#

I thought thats what the question was from the one line i saw.

quartz kindle
#

ah xd

earnest phoenix
acoustic citrus
#

i need help, for some reason schedule.scheduleJob(actrule, function(client){ func.randomActivity(client); }); will not pass through client and apparently is undefined, how can i fix this

#

oop nvm i think i got it

earnest phoenix
#

ur the dumbest fuck I've seen in a good while LOL

Homie said he was confused and your getting mad at a little trolling? if you could even call it that?

#

grow the fuck up

#

pece

sage bobcat
#

One message removed from a suspended account.

zenith terrace
#

@flat pelican guy rude here

lyric mountain
#

What happened here?

lament briar
#

hi

#

how can i change my profile pic?

frosty hamlet
#

go to user setting and go to your profile pic and press change avatar then choose a picture that u want then press open then it done

modest crane
#

what

earnest phoenix
#

can anyone tell me why roleID is undefined?

cerulean ingot
#

what would the best pi be for a quality vps

mellow kelp
earnest phoenix
mellow kelp
#

then the role might not exist or it might not be in the cache

earnest phoenix
mellow kelp
#

not exactly

umbral zealot
#

Question: why exactly do you have a setTimeout here

mellow kelp
#

i'm pretty sure you didn't check if the role doesn't exist

umbral zealot
#

because usually people who do this sort of setTimeout simply don't understand Promises and are doing thing really badly

rocky hearth
#

had anyone hosted a monorepo project on vercel?

modest grove
#

I need some help

rocky hearth
#

gtk

mellow kelp
rocky hearth
#

with monorepo?

mellow kelp
#

wait nope

#

it was just a single thing

rocky hearth
#

actually, what I want is to build the other packages I've created in ts. Before deploying the wep-app

mellow kelp
#

oof can't help you with that

modest grove
#

I don't know anything about htm and css

#

ik the have changed something in css

#

is there a way to make this thing run

<!DOCTYPE html>
<html>
<head>
<style> 
body {
  background-image: url('https://imgur.com/PosNitE.png');
}
</style>
</head>
<body>


</body>
</html>
swift cloak
#

hi

#

i need help with react.jsx and uploading it into firebase. so if you use firebase and react please ping also pls dont say "look at docs" because i dont really uderstand it

mellow kelp
modest grove
#

what

#

actually this code works in preview page

#

but after the changes it will not work

mellow kelp
#

what's your css?

modest grove
#

thanks@zenith terrace

#

i would have never reached there without your help😳

zenith terrace
#

no problem

delicate shore
#

Hey

#

I need help

#
function chatbotvoice(message){
    const speech = new SpeechSynthesisUtterance();
    fetch('https://api.pgamerx.com/ai/response?message=Hi+how+are+You')
.then(res => res.json())
  .then(json => {

    console.log(json)

    var result = [];

    for(var i in json)
        result.push([i, json [i]]);

       speech.text = result[0]
       console.log(result)
    })
   
    window.speechSynthesis.speak(speech);
    chatareamain.appendChild(showchatbotmsg(speech.text));
}
#

This is my code

#

These are logs

#

this means it's getting the uh response

#

but how can i display it

#

wait nvm

#

I fiexed it

#

I was dumbo

zenith terrace
#

appendChild

uncut swallow
#

@opal plank in the rich precense i need the discord application or in navegator can on?

opal plank
uncut swallow
#

ok

uncut swallow
opal plank
uncut swallow
#

how?

opal plank
#

wdym how

#

coding

#

its .dll files

#

coding

#

you dont open .dll files

uncut swallow
#

ok

opal plank
#

anyhow, back to werk

uncut swallow
#

ok

#

my pc is windows 7 i can't install discord

cinder patio
#

thonkku you can't install discord on windows 7?

uncut swallow
cunning gorge
#

Hello, how do you send a message to a specifical channel?

#

in a server

cinder patio
#

the discord installation process is so straightforward

cunning gorge
#

message.channel.send("something") but to a specific channel

cinder patio
#

maybe try again

cinder patio
#

or from <Guild>.channels

uncut swallow
#

sorry you can translate to english

cinder patio
wise geyser
#

Hello

cunning gorge
wise geyser
#

Is there anyone who can help me???

cinder patio
#

maybe, maybe not

wise geyser
#

How to include videos in embed

#

??

cinder patio
#

Is the video a file on your PC or is it a link

uncut swallow
cinder patio
cunning gorge
#
let feedbackChannel = message.guild.channels.cache.get(`channelID`)
    feedbackChannel.send(args.slice(1).join(` `), { disableMentions: "all" }); 

That code works if it's in the same server...but from another server it says TypeError: Cannot read property 'send' of undefined. How do I add the guild id there

cinder patio
#

The channel doesn't exist in the other server

#

channel IDs are unique, there cannot be two channels with the same id

cunning gorge
#

Since it is a feedback command so the channel id and the guild if is static

cinder patio
#

Then don't get the channel from message.guild.channels, because that only contains the channels in the other server

#

use client.channels

cunning gorge
#

ah okay

delicate shore
#

Hey There

#

I need help

#

with nginx

#
server {
       listen 81;
       listen [::]:81;

       server_name demo.pgamerx.com

       root /var/www/demo/;
       index index.html;

       location / {
               try_files $uri $uri/ =404;
       }
}
#

This is in my /etc/nginx/sites-available and /etc/nginx/sites-enabled

#

It's name is tuotorial

#

I have a folder in /var/www/demo

#

404 Not Found
nginx/1.18.0 (Ubuntu)

wise geyser
#

a url

cinder patio
wise geyser
#

no

#

python library

cinder patio
#

Can't help then sorry

wise geyser
#

is there any python dev

cinder patio
#

Try setting the thumbnail URL to your link to the video

wise geyser
#

ok

delicate shore
#

can anyone figure out my problem?

#

🥺

#

😢

slow fable
#

can u edit a normal message into an embed

#

it shows for me just
<discord.embeds.Embed object at 0x000001ED275C1430>

delicate shore
slow fable
#

how?

delicate shore
#

djs or dpy

slow fable
#

dpy

delicate shore
#

sry

lament rock
#

read the docs

old cliff
#

Guys lets make brainfuck
it will be complied into ts
and then into js
and then into bytecode
and then binary

lament rock
#

js is only compiled to bytecode on runtime, so

cinder patio
#

how does one compile brainfuck to js

#

making a brainfuck interpreter is easy, but making a compiler to js would be near impossible

lament rock
#

Could do for static programs, but long running programs, not so much

cinder patio
#

Turning 8 instructions to valid javascript code doe

lament rock
#

Some people like to suffer

old cliff
old cliff
lament rock
#

?

old cliff
lament rock
#

I don't think I understand the meme you were trying to make, then. Unless it was a joke about "how many abstraction layers there are until native"

delicate shore
#

Please Help me

lament rock
#

Have you checked google

delicate shore
#

Yes

lament rock
#

Was it just for the issue itself or did you also search for how to do what you want to do

delicate shore
#

I used this tutorial

lament rock
#

look at some other tutorials and see what's different and try to reverse engineer it, then I guess

#

I barely know of anyone who uses nginx

old cliff
#

I could help with apache

delicate shore
#

I even tried this

lusty quest
delicate shore
#

nah

#

it's in the root

#

it worked

lusty quest
#

if you have no index file it will return a 404

delicate shore
#

but the tutorial was old i guess

lusty quest
#

maybe

#

nginx is nice and a pain in the ass at the same time

delicate shore
#

yep

#

apache doesn't work with nodejs

lusty quest
#

i use it to proxy to my API, so i can have a nice URL without port

delicate shore
#

i mean reverse proxy is easy

#

in nginx

lusty quest
#

it works with apache, if you use Cloudflare and get the 5$ subscription for the app to send traffic to certain ports

delicate shore
#

:O

lusty quest
#

also i use Nginx to cache steam downloads on my NAS

delicate shore
#

wait

#

oh

#

nvm

near stratus
#

I've been waiting to ask this for a long time
Is there any was to call a function or trigger a event or maybe a webhook with the youtube-api When a Youtube channel uploads a new video ?
rn I'm using a function that will trigger every 10 minuites and check if there's any new video and put it in the database if any (I'm afraid Google will ban me)

cinder patio
#

youtube push notification api

near stratus
cinder patio
#

It's kinda shit but

lament rock
#

the alternative is polling through ytdl or something similar which is jank

near stratus
lament rock
cinder patio
#

probably not

#

but I have no idea either

near stratus
#

k thanks

earnest phoenix
#

if i have to handle three errors in a command what can i write after elif ?

lucid prawn
#

how do i use the join guild OAuth2

cinder patio
#

holy shit sqlite errors are so bad

#

ERROR 1064 (42000) at line 20: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 9 VERY HELPFUL

small tangle
#
if Expression:
    Handle Error 1
elif Expression:
    Handle Error 2
elif Expression:
    Handle Error 3
else: 
    Execute Command

Like this or what?

vernal moth
#

does anyone know how to submit stats to top.gg when the bot joins or leaves a server?

modest maple
#

You really shouldnt do that

latent heron
quartz kindle
earnest phoenix
#

Guildcreate author how?

#

Dm

devout notch
#

You mean the guild.owner_id?

#

nvm

snow urchin
#

is there a ratelimit for the setTopic function on a channel? It seems to work every 3 minutes or so for me and then stop working for 3 more minutes

#

the function is ran every 32 seconds

snow urchin
#

Ah right

quartz kindle
#

thats the rate limit on channel updates

cinder patio
#

How would I do color themes with SSR? I store the color theme in localStorage, but when the server is rendering the content there is no localStorage

placid iron
#

Is it possible for nginx to serve static files from within a docker. I guess a docker volume would be more applicable but I'm unsure on how to set those up

cinder patio
#

nvm I handled it

modest maple
#

just mount the vol to the base dir

#

in a compose

#
services:
  thing:
    volumes:
      - .:/code
``` will mount the current directory to the `/code` folder in your docker container
#

you dont realyyyyyy want nginx in docker though for the most part

#

not worth it

#

also puts alot of load on the docker network

placid iron
#

Lol, ah ok. Interesting. Thank you for the info

lusty quest
#

running a webserver inside docker is not really a issue, there are websites that run in a K8 Cluster with a few loadbalancers and they work fine

junior fjord
#

i need help

#

me too

#

me to

#

Not Found
You clicked on a link that doesn't exist. This is probably not where you were trying to go.

#

yeah

crimson vapor
#

I advise to learn JS before attempting to code a bot

frosty valve
#

I advise the same.

slender thistle
#

I condone the points stated above.

misty sigil
#

I agree with the twat, and the other 2 people above.

royal herald
#

I advise the same.

small tangle
#

I advise the same.

devout notch
#

Does this look too much like MEE6?

tired panther
earnest phoenix
#

no it just looks horrid and ugly

tired panther
#

same xD

devout notch
#

why is that?

#

is it because of the gradient ?

earnest phoenix
#

too much outlining on everything

#

I don't know what im supposed to focus on first

#

give your elements visual priority

devout notch
#

If I only had a smaller outline on the profile picture and status icon, do you think that would look better?

earnest phoenix
#

not sure, try it i guess? i cant visualize it

devout notch
#

alright

spring venture
#

Sorry for my English I’m French :

Who has an code in JavaScript with - to 2000 characters ?

tired panther
spring venture
#

French plz 😅

tired panther
spring venture
tired panther
tired panther
tired panther
spring venture
#

D’accord merci beaucoup ☺️
Ok very thanks 😊

tired panther
spring venture
#

Bye

lyric mountain
#

meister do be talking baguette

outer perch
#

DiscordAPIError: Request entity too large
I don't know where this comes from

quartz kindle
#

trying to send a file larger than 8mb

outer perch
#

woah

#

gonna check

earnest phoenix
viscid geode
devout notch
devout notch
#

Btw how do you get the bot dev role?

rancid blaze
#

Hello

#

I need help

#

Any one need help me in my new server

#

Pls send me in prv

stuck pike
#

why errr?

quartz kindle
devout notch
#

ok

quartz kindle
#

setNickname is for Members

#

your target is a User, not a Member

cinder patio
#
export const Link = styled.a`
    color: ${({ theme }) => {console.log(theme); return theme.linkColor; }};

    &:hover {
      color: ${({ theme }) => theme.textColor};
    }

`;
<Link>SomeLink</Link>

For some reason the styles don't get applied

#

the theme arg is correct

eternal osprey
#

hey!

#

I tried to make a hyperlink in html:

#

doesn't seem like it's working.

#

<span>Add AwsomeCord by clicking here:<a href="mylink">Click here</a></span>

cinder patio
#

It's working, but it looks like your css is wrong

eternal osprey
#

yeah probably.

#

How do i fix it?

cinder patio
#

Do you want the hyperlink to be inside the box

#

along with the Add Aws... text

eternal osprey
#

yeah

cinder patio
#

It's hard to say how to fix it without looking at your css, it looks like you have overwritten the default behaviour of the anchor tag

small tangle
#

how can i link the used library on botinfo from the luca bot? FeelsSmartMan i didnt found it on the website

eternal osprey
cinder patio
#

sure, put it in a bin and send it here

dusky sundial
cinder patio
small tangle
#

oh so im fine, if i just leave it?

dusky sundial
#

Yep

small tangle
#

kk thanks love

earnest phoenix
#

hi

#

How to I make my bot automatically change their nickname when they join a server?

cinder patio
#

you mean the bot's nickname?

earnest phoenix
#

yes

cinder patio
#

what lib are you using?

earnest phoenix
#

discord.js

#

if that's what you mean

cinder patio
#

You should also check if your bot has the permission to change their own nickname before you do it, though

earnest phoenix
#

I see

cinder patio
#

or catch the any errors

earnest phoenix
#

thanks

safe creek
#

so when ever i miss something inside my commands code it shows alot of stuff unrelated to it but then the error thats relevant at the bottom under all the un-relevant stuff

#

heres what i mean ```During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\client.py", line 333, in _run_event
await coro(*args, **kwargs)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\bot.py", line 943, in on_message
await self.process_commands(message)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\bot.py", line 940, in process_commands
await self.invoke(ctx)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\bot.py", line 903, in invoke
await ctx.command.invoke(ctx)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\core.py", line 851, in invoke
await self.prepare(ctx)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\core.py", line 786, in prepare
await self._parse_arguments(ctx)
File "C:\Users\forth\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\ext\commands\core.py", line 693, in _parse_arguments
raise discord.ClientException(fmt.format(self))
discord.errors.ClientException: Callback for slow command is missing "ctx" parameter.```

#

i understand im missing the ctx

#

ignore my mistake

latent heron
#

that's normal for an error handling exception class

safe creek
#

but why does core.py have to show up

latent heron
#

python also will always throw the most recent error at the bottom

#

becaues core.py is an involved process

safe creek
#

ahh ok

earnest phoenix
safe creek
#

yeah ive been getting annoyed because it can usually cover up the error that i need to fix said command @latent heron

earnest phoenix
#

Console: Unexpected token '<'

safe creek
#

thanks for the info

cinder patio
#

<Client> is something like pseudo-code, you're not supposed to put it in there, you have to replace it with an instance of Client

safe creek
#

yeah you cant really define Client with <> or itll think its something else most likely

cinder patio
#

I don't know how you called your instance of Client, so I replace it with <Client> to avoid confusion, which seems to make things even more confusing for people who don't really know js that well

safe creek
#

ye 100%

earnest phoenix
#

It's not corrupted anymore, but it says:
Client is not defined at /home/runner/Groovy/index.js:28:1 at Script.runInContext (vm.js:130:18) at Object.<anonymous> (/run_dir/interp.js:209:20) at Module._compile (internal/modules/cjs/loader.js:1137:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) at Module.load (internal/modules/cjs/loader.js:985:32) at Function.Module._load (internal/modules/cjs/loader.js:878:14) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) at internal/main/run_main_module.js:17:47

small tangle
#
const Discord = require('discord.js');
const client = new Discord.Client();

client.on...
#

the same name you created Discord.Client()

earnest phoenix
#

ok

cinder patio
#

You have to replace <Client> with the instance of the Client class, for example:

const bot = new Discord.Client();

bot.on(...
safe creek
#

it says

#

^^^
anyway ima go

#

glhf

cinder patio
#

Can anyone with styled-components experience tell me what I'm doing wrong here?

export const Link = styled.a`
    color: ${({ theme }) => {console.log(theme); return theme.linkColor; }};

    &:hover {
      color: ${({ theme }) => theme.textColor};
    }

`;
<Link>SomeLink</Link>

The styles don't get applied. theme is correct, the linkColor is also correct, but the anchor remains blue 😢

#

When I define those styles in the global styles element it works as a class it works fine

#

Inspect element tells me that the styles don't get applied at all, so they aren't overwritten or something

earnest phoenix
#

rate it?

lyric mountain
#

where do I look at?

cinder patio
#

rate what

lyric mountain
#

ah, the card

earnest phoenix
#

the ui

lyric mountain
#

messy

earnest phoenix
#

xD

cinder patio
#

programmer UI but I kinda like it

#

the colors are bad tho

#

Also the whole site feels bootstrap-ey

small tangle
#

maybe a little too colorful

earnest phoenix
cinder patio
#

at least change it up a little instead of using default bootstrap css

cinder patio
#

esp the header

earnest phoenix
#

that is ugly idk how to fix it no solution found :c

cinder patio
#

It's the default bootstrap one

lyric mountain
#

the header do look nice tho

#

but dark header with light theme is plain shit

#

either go full flashbang or full darkness

cinder patio
#

I guess I've been using bootstrap too much

small tangle
#

yeah id prefer a darker theme

earnest phoenix
#

i use it because of that

umbral zealot
#

oh look another bot site identical to every single other bot site out there

cinder patio
#

oop

umbral zealot
#

Literally identical

cinder patio
#

Evie you know styled-components right

lyric mountain
#

I wonder what's the template

umbral zealot
earnest phoenix
umbral zealot
#

It's "the" template

#

the "I have a discord bot but zero originality" template

cinder patio
earnest phoenix
umbral zealot
#

hmmmm

#
export const Link = styled.a`
    color: ${({ theme }) => `${theme.linkColor`};

    &:hover {
      color: ${({ theme }) => `${theme.textColor`};
    }
`;

Tried it like this?

earnest phoenix
#

would you believe this?

umbral zealot
#

if not, what's your browser say, does it actually show the stuff?

umbral zealot
cinder patio
#

My browser shows the anchor with the default styling

umbral zealot
#

"it doesn't look right" isn't useful when debugging a multi-staged webpack generated output from a front-end framework using external tooling ffs

lyric mountain
#

that's a kinda unique redacting

umbral zealot
#

which I'm sure are all repetitive, boring, and unoriginal

#

oh wait, functions

#

no no no what those bots are saying is they have 250+ commands

#

because they're crap

earnest phoenix
#

that are customcommands

umbral zealot
#

why are we talking about this here exactly?

small tangle
umbral zealot
#

If you want to make a bot that's the same as every other boring, lame, unoriginal multipurpose bot out there, you really don't need our help

earnest phoenix
umbral zealot
#

uhhhh how's d.js unique?

#

it's only used by millions

earnest phoenix
#

discord.js i mean

umbral zealot
#

and is the most popular discord library

#

yeah I know what you mean and so does everyone because it's the most popular discord library.

lyric mountain
#

actually, if what you're advertising is true, you made a "DIY bot"

#

which is pretty unique IF that's what it is

cinder patio
earnest phoenix
cinder patio
#

Also I should probably mention that I also have SSR

earnest phoenix
#

the only custom command bot ik is yagpdb

cinder patio
#

but I don't think that's relevant

umbral zealot
# earnest phoenix lel ,but hard to gain guilds if the other bots like mee6 tells they have custom ...

What you seem to have made is a way for a bunch of people to spam the fucking top.gg queue with bots that are all near identical but somehow we have to approve because they all have at least one custom command. unless you're kind enough to give us one simple command that breaks the top.gg rules that we can deny all of them for, like a crap math command or a common emoji that's seizure inducing. please do that and make our job easier

umbral zealot
earnest phoenix
umbral zealot
#

what?

earnest phoenix
umbral zealot
#

Is it a bot or is it a framework

#

what are you asking

lyric mountain
#

it's a bot with 1 command only

umbral zealot
lyric mountain
#

the command to create commands

#

if I understood right

earnest phoenix
umbral zealot
#

I dunno I've seen a lot of stuff from you Rake but I have zero clue what your question is right now

#

what are you asking help with?

lyric mountain
#

interface opinion

umbral zealot
#

For the website?

earnest phoenix
umbral zealot
#

Ok here's my opinion

#

don't fucking make a site that looks like 900000 other damn bot sites

latent heron
umbral zealot
#

remove the goddamn wave shit

#

Make a unique and appealing design

latent heron
#

it's not bad to use boldness in your words, but you have to deliver a message behind what those words intend

eternal osprey
#

hey is it possible to add top.gg bot api to my hmtl server?

lyric mountain
#

yes

eternal osprey
#

okay,

latent heron
earnest phoenix
#

set trigger and action
trigger role add
action giverole[roleid]

latent heron
#

i'd recommend finding a way to exemplify or show it

#

or at the least write it on the page

lyric mountain
#

no

latent heron
#

something to remember is that a majority of discord users are programming illiterate, they don't know shit what what you said means

lyric mountain
#

oh my

latent heron
#

you need to like

#

give a presentation in a way

lyric mountain
#

don't mix light theme with rainbow theme with dark header

latent heron
#

you need to show what it does

#

and explain it at the same time

eternal osprey
#

rest is spot on

lyric mountain
#

also remove hyperlink default styling

#

that's so 1997

earnest phoenix
latent heron
#

looks fine imo

cinder patio
#

just change the colors

#

make a dark and a light theme

latent heron
#

let people stylize things the way they want ie. themes like googlefeud suggested, just make sure your website platform is intuitive

#

websites can be amazing at what they do under the hood but if im lost on the website or what it does

#

it's no longer effective

latent heron
#

Can I use #development as a critique channel here? If so I would like to show something of my own and ask for criticism on it so I can improve it

cinder patio
#

sure

#

I mean who am I to say but people have done it before

#

so I think it's fine

latent heron
#

So, I think if it hasn't been noticeable enough already, I guess I'll say it here that I really, and I mean really suck at English grammar

cinder patio
#

same

umbral zealot
#

VSCode is an editor not a language

latent heron
#

And I am 99% sure that my website is bound with a shit ton of grammatical errors

umbral zealot
#

you still need to use a programming language to write the bot

latent heron
#

I was wondering if anyone would be able to help suggest better wording.. 😂

worldly heron
umbral zealot
#

"make a website of it"? what?

#

bots don't have websites

worldly heron
#

Php dus odd

#

Php discord

cinder patio
#

this guy is 11 btw

worldly heron
#

Uh oh

umbral zealot
#

@scenic kelp

latent heron
worldly heron
latent heron
#

au revoir

earnest phoenix
umbral zealot
#

Well that's one less noob we have to worry about I guess.

earnest phoenix
#

btw thx for reviewing

latent heron
lyric mountain
#

Parm will use the [ K I L L E R Q U E E N ] stand

latent heron
eternal osprey
#

how would i integrate the show servers and user count on top.gg to html?

#

There is no introduction to html and top.gg api's.

scenic kelp
#

pain

umbral zealot
#

Thanks parm!

umbral zealot
#

what is it you want to do

lyric mountain
eternal osprey
cinder patio
lyric mountain
#

"Underage dude" fainted, parm wins

umbral zealot
worldly heron
umbral zealot
#

So maybe use the... widget thingy?

eternal osprey
#

oowh, damn.

cinder patio
#

oh yeah the widget is also an option

eternal osprey
latent heron
#

text jump around?

cinder patio
#

but it's not customizable

worldly heron
#

On mobile it breaks line

#

:)

latent heron
#

ahh

#

oh dear

cinder patio
worldly heron
#

So it pushes content down

umbral zealot
#

yeah just use this thing

latent heron
#

on mobile

monkaS

#

this has me gravely concerned

#

i did not check my site for any mobile bugs at all

latent heron
cinder patio
worldly heron
#

It works on mobile but the typing thing ruins the homepage

eternal osprey
#

the widget shows undefined servers?

#

Maybe that is just the top.gg preview?

umbral zealot
#

no

#

it should work fine

latent heron
#

hmm i see

umbral zealot
#

but that means your bot's not sending that data to the API

latent heron
#

i have an idea to fix the mobile error but i'll have to mess around with CSS media scaling later

eternal osprey
umbral zealot
#

use the #topgg-api from your bot to send that data.

eternal osprey
#

okay, got it,.

worldly heron
old cliff
#

A bit out of context... But can I eat Romanoff Noodles

worldly heron
#

Man I hate browsers why not support animation on grid-template

#

Cmonnnnn

#

Only works on Firefox :C

umbral zealot
eternal osprey
umbral zealot
#

no, just google it

#

Sign of a really shit dev right there that doesn't google first, ask second.

#

smh

eternal osprey
#
2021-02-23T15:06:49.453141+00:00 app[Worker.1]:     at Api._request (/app/node_modules/@top-gg/sdk/dist/structs/Api.js:74:19)
2021-02-23T15:06:49.453142+00:00 app[Worker.1]:     at processTicksAndRejections (internal/process/task_queues.js:93:5)
2021-02-23T15:06:49.453142+00:00 app[Worker.1]:     at async Api.postStats (/app/node_modules/@top-gg/sdk/dist/structs/Api.js:94:9) {
2021-02-23T15:06:49.453144+00:00 app[Worker.1]:   response: { error: 'Unauthorized' }
2021-02-23T15:06:49.453145+00:00 app[Worker.1]: }```i literally have my fucking top.gg token in here
umbral zealot
eternal osprey
#

ohhh

#

When will that be fixed then?

umbral zealot
eternal osprey
#

oopsie.

#

No mute pls./

umbral zealot
#

muted for seizure-inducing emoji

cinder patio
#

React + typescript + styled components is so fun how have I lived without style components in my life

latent heron
#

it's fine

#

as soon as the website is up again the ignorance will go away

umbral zealot
#

Honestly, vue > react

#

it's been 2 months and I have loved and enjoyed every single second of switching to vue, learning it, and using it.

cinder patio
#

Agree to disagree

crimson vapor
#

raw html + replace() > *

#

css bad

#

ezpz great website

latent heron
#

i mean

#

PHP 8 > all

cinder patio
#

no

latent heron
#

angryrage shut up

umbral zealot
#

just use template literals. and only that.

old cliff
worldly heron
#

Vue is great

old cliff
#

perhaps

cinder patio
#

I've hit the wall with styled-components

restive furnace
#

i have tried react but not vue

cinder patio
#

SIgh I'm wasting my time rn with styled-components

solemn elk
#

can someone help me with html & js

#
<body>

    <input type="text" placeholder="Username" id="username" class="inputusername">
    <a href="profile.htm"><button class="signin" onclick="getUsername">Sign in</button></a>

</body>

<script src="app.js"></script>

the user here sets his username and when he clicks the sign in button the function getUsername() should be triggered

function getUsername() {
    let userVal = document.getElementById("username").value;
}


document.getElementById("user").innerHTML = userVal;

Now here the userVal is defined as the username that the he set and then it should get the element whose id is "user" and change it to the userVal

<body>

    <div class="form-box">
        <div class="profile-img"><img src="Symbol.png" alt=""></div>
        <div class="username" id="user">Username</div>
    </div>

</body>

<script src="app.js"></script>

And here is the element whose id is "user". But when i click it just redirects me to the profile page but does not change the username

cinder patio
#

That's because the button is wrapped in an anchor tag

#

and when an anchor tag is clicked, it redirects immediately

#

you should redirect to the other page with js, location.href = "link"

#

Also, the document.getElementById("user").innerHTML = userVal; should be inside the getUsername function

#

Alternatively, return the userVal from the getUsername function, and do document.getElementById("user").innerHTML = getUsername();

delicate shore
#

Help 😢

#

Repeating same fricking message

umbral zealot
#

it's a chat bot what the hell do you think it's gonna do, generate meaningful conversations?

delicate shore
#
async function chatbotvoice(message){
    console.log(message)
    const speech = new SpeechSynthesisUtterance();
    await fetch(`https://api.pgamerx.com/ai/response?message=${message}`)
.then(res => res.json())
  .then(async(json) => {

    speech.text = await json[0]
return
    })
   
    window.speechSynthesis.speak(speech);
    chatareamain.appendChild(showchatbotmsg(speech.text));
}

My code
How am I using it

recognition.onresult=async function(e){
    let resultIndex = e.resultIndex;
    let transcript = e.results[resultIndex][0].transcript;
    chatareamain.appendChild(showusermsg(transcript));
    await chatbotvoice(transcript);
    console.log(transcript);
}```
delicate shore
umbral zealot
#

ok well clearly the API's returning the wrong things here

delicate shore
#

it isn't

umbral zealot
#

well if it wasn't, you'd have proper messages.

delicate shore
#

But when I make manual requests

#

it works

umbral zealot
#

so when you console.log(message) it's the correct thing you're expecting to see?

delicate shore
#

yep

umbral zealot
#

And what about the json response

delicate shore
#

never logged that

umbral zealot
#

what does json[0] log

#

that would be... y'know, useful to know.

delicate shore
#

hey so

#

lmao

#

It's working absolutely fine if I run the local file

#

but when I run from the domain

#

it do be causing problems

#

so

#

what do I do

old cliff
#

Try logging from the domain and check network tab in dev tools

#

Maybe you will find some network security / browser issue there

summer torrent
#

@oak cliff ads

oak cliff
#

@earnest jackal please do not advertise in our server, it is against our rules.

delicate shore
#

but problem is

#

i changed the code

#

to make it log more stuff

#

it's not logging it

#

which means code on server side isn't changed

#

but I changed it

#

deleted nginx record

#

added it again, restarted the server

#

still same issue

#

see this

#

Domain side ^

#

idk what's wrong

old cliff
#

cache ?

lyric mountain
#

use ctrl + f5

old cliff
#

add random get query to get rid of cache

#

or use incognito tab

lyric mountain
old cliff
#

like index.html?lol

#

this will get rid of cache

lyric mountain
#

people get angry that chrome uses too much ram, doing that will only get worse

old cliff
#

add for testing only

#

it can only be done client side

lyric mountain
#

still, ctrl + f5 is cleaner

old cliff
#

no

#

it doesn't get rid of cache

lyric mountain
#

it does

#

f5 doesnt

#

ctrl + f5 is "purge cache and refresh"

old cliff
earnest phoenix
#

it's a hard refresh

#

wipes cache for that site

#

works just fine

#

not so much when you need to clear cookies for the site

old cliff
#

I still add random get queries

lyric mountain
#

random queries will only create new caches

old cliff
#

yeah so ?

#

it also tests for cache retention lolismile

lyric mountain
#

dot dot dot

devout notch
#

sorry to interrupt the discussion but if I'm using the .findOne function in MongoDB, how do I get the position of the found element in my collection. I have a collection with members and their "level" and I'm using .sort to sort them by their level in descending order. Now I want to find a specific member in that sorted collection and get his "position" in the collection. How would I do that?

lyric mountain
green kestrel
#

how can i get rid of that colour tint on my bots page

old cliff
#

idk

green kestrel
#

i dislike it, as it messes with my page style

boreal iron
#

colour tint?

green kestrel
#

yes

boreal iron
#

You mean like accents?

green kestrel
modest maple
green kestrel
#

yes, the colour sticks out like a sore thumb against the grey and makes it look like my backlight is failing

modest maple
#

ah nice

green kestrel
modest maple
#

they changed the CSS again

green kestrel
#

its this thing that sets it, but theres no 'off'

modest maple
green kestrel
#

so i was going to force an off in my css

modest maple
#

fun times

earnest phoenix
#

Hi guys

boreal iron
#

Hmm gonna take a look in a few seconds of I’m back on PC

#

Just to specify again is the red accent background of the site bothering you or of the description?

modest maple
#

@woeful pike What happened to giving us warning 😢

earnest phoenix
#

how should i get old and new from permissions_new from this:

[
  { key: 'permissions', old: 1880015040, new: 1880016080 },
  { key: 'permissions_new', old: '1880015040', new: '1880016080' }
]
lyric mountain
#

those are bitflags

earnest phoenix
#

ik

lyric mountain
#

discord.js?

earnest phoenix
#

wait a sec

woeful pike
#

I fixed it but apparently it took precedence over your css

#

I don't even know what he changed

earnest phoenix
#

top gg being top gg

green kestrel
#

@woeful pike do you happen to know please what i put in my stylesheet in my bots page to override the tinted corner

woeful pike
green kestrel
#

ah, cool thanks 🙂

earnest phoenix
#

so how should i get bit fields from a role?

woeful pike
#

Prayge we'll try our best to release the new html/css for the bot pages by the end of the week so you can test stuff out

#

that's the beta page now so i don't wanna give you a solution that breaks next week haha

earnest phoenix
#

can you not break something @woeful pike

modest maple
#

002_rage Stop pushing stuff to prod

woeful pike
#

trying my best

old cliff
#

nice

earnest phoenix
#

ok

#

it still happens

#

soooooo no

woeful pike
#

90% of the bugs on the page are related to bad infrastructure and dynamic typing

#

not sure how a startup can use a dynamically typed language in production without shit constantly falling apart

mellow kelp
#

d i d i h e a r d y n a m i c t y p i n g

woeful pike
#

hopefully js will be gone and we'll never deal with shitty dynamic typing again

modest maple
woeful pike
#

I mean we didn't build this codebase from the ground up. Still cleaning up nightmare code

#
       bots.forEach((value, index) => {
          bots[index] = cleanBotData(value);
          if (index === bots.length - 1) return res.sendApi({ results: bots, limit, offset, count: bots.length, total });
        });

saw this in the codebase last month

#

🙂

modest maple
#

honestly

#

i would just

mellow kelp
#

oh no

old cliff
#

that feels the same as when I felt while recoding my bot

cinder patio
#

rewriteeeeeeeee

umbral zealot
#

oh my

#

that code though

pale vessel
#

return????????

mellow kelp
#

amogus????

woeful pike
round cove
umbral zealot
#

I mean it's not the worse I've ever seen, but it's definitely something to be made better

woeful pike
#

this is a pretty good explanation on why you never rewrite

umbral zealot
woeful pike
#

or at least, almost never. And this isn't one of the 1% cases

modest maple
#

honestly

#

this feels like a 1% case of when you should

round cove
#

honestly yeah

woeful pike
#

it always does

round cove
#

with how many bugs/issues come out

#

Xd

modest maple
#

at this rate im gonna get double billed for premium that i cancelled 🤣

round cove
#

It's always easy to say rewrite until you gotta do it I guess.

boreal iron
#

@green kestrel can't even see the accent on your site lel

woeful pike
#

rewrite feels like the correct choice 100% of the the time but in reality it's closer to 0%

green kestrel
#

rewrite is often a bad idea

modest maple
#

i disagree in the case of this site lol

green kestrel
#

but it depends how hairy the code is

round cove
#

How many unintentional bugs do you have to hit before it's more than 0%

green kestrel
#

and if there are people left who can maintian it

umbral zealot
#

trash the whole thing, lemme rewrite it in vuejs

round cove
#

Lmfao

boreal iron
modest maple
woeful pike
#

we're breaking things off into microservices and such, but we can't afford to have devs just sit and write everything over again

umbral zealot
#

iM tHe BeSt DeV uR JuST tRasH

modest maple
#

50,000 lines of clojure

green kestrel
#

clojure.... theres your problem

umbral zealot
woeful pike
#

dynamic typing

modest maple
#

the language itself is fine 😔

green kestrel
#

a fine mess

cinder patio
#

Is the backend written in node.js?

green kestrel
#

🤣

modest maple
#

its the fact that it was written by one dude in 4 months

mellow kelp
#

it's just that it ain't scalable

modest maple
#

not even 4 months tbh

mellow kelp
#

like 10 weeks iirc

green kestrel
#

real developers write everything in assembly

#

right?

round cove
#

Real devs use C++

#

😤

modest maple
#

look at this

green kestrel
#

snort snort

#

😄

modest maple
#

in less than 4 fucking months

#

still

modest maple
mellow kelp
umbral zealot
#

oh god that's a lotta tech

round cove
#

sql and mongo

#

what

woeful pike
#

half the things here is legacy we're still supporting

round cove
#

wtf lol

woeful pike
#

jquery, mongodb, mysql, js

umbral zealot
#

jQuery KEKW

woeful pike
#

bulma.. semantic lol

green kestrel
#

scemantics schemantics

woeful pike
#

oh I get to add rust in here next week too, nice

mellow kelp
#

how about adding stack overflow

green kestrel
#

nothing wrong with jquery

cinder patio
#

What's rust used for

restive furnace
green kestrel
#

i see a lot of people shoehorning mongodb into relational systems that would work better with sql though 😄

cinder patio
#

And what's C# used for too

woeful pike
green kestrel
#

simply because they use js and the js mongo libs are more mature than the mysql ones

woeful pike
modest maple
woeful pike
#

wait that was meant to be a C# response

mellow kelp
#

sequelize notlikenoot

green kestrel
#

how much of a drop in number of votes do you expect to see with the new anti bot stuff

woeful pike
#

too much lol

green kestrel
#

like huge percentages? 20-30-40%?

#

or single digits