#development
1 messages · Page 3 of 1
didnt think you could still have detailed info like that anymore cuz of caching
tf he's recording anything
it's just stats
hmm... why not
bruh by bot has this command lol
mmm yes fan speed
nice
https://github.com/NotSoBot/notsobot.ts/blob/master/src/commands/prefixed/utils/usage.ts here's the command that I used
I better don’t ask why people need to know your Radeon temperature
Also don’t wanna talk about using AMD
Can’t take this seriously

if my bot uses 130mb at 9k servers, would it use 130gb at 9 million servers?
lol its cuz the fans gone bad has a shitty bit of mettle on it
so close to finishing my interpreter in rust but I'm lowkey burnt out after writing 2k+ loc in like 6 hours total working time
Yes makes sense, all servers have a similar amount of channels, members etc.
Everyone knows that
other than that its the only gpu i have to put in it, it only uses like 6 watts since its an hd5450
Tim…
takes me 2 months to write 2k loc
im lazy afk
We know but it’s also too hot
I'm lazy asf, I just randomly got motivation to work on this like a week ago
nice
wrote the whole parser in one day lmao
random motivation bursts are awesome
sadly it's ended
rip
almost 1k
same randomly desided to put a command handler into my test bot
works real well now though
can reload commands and stuff withought having to restart the bot
epic
I'm glad I didn't have to fuck around with lifetimes too much
nice
imagine being able to do that
I can't
esm moment
big sad
honestly suprised i havent done this sooner
cuz now if a commands broken cuz i typed somthing wrong like an idiot then it wont crash the whole bot
error handling the thing you usually start with
ngl rust is amazing

look at how easy it is to represent the entire structure of my language: ```rs
#[derive(Debug, Clone)]
pub enum Expr {
Literal(Literal),
This(SourceLocation),
Unary(UnaryOp, Box<Expr>),
Binary(Box<Expr>, BinaryOp, Box<Expr>),
Logical(Box<Expr>, LogicalOpType, Box<Expr>),
Call(Box<Expr>, SourceLocation, Vec<Expr>),
Get(Box<Expr>, Symbol),
Grouping(Box<Expr>),
Variable(Symbol),
Assign(Symbol, Box<Expr>),
Set(Box<Expr>, Symbol, Box<Expr>),
Super(SourceLocation, Symbol),
}
#[derive(Debug, Clone)]
pub enum Stmt {
Expr(Expr),
FunDecl(FunDecl),
ClassDecl(ClassDecl),
If(Expr, Box<Stmt>, Option<Box<Stmt>>),
Print(Expr),
VarDecl(Symbol, Option<Expr>),
Block(Vec<Stmt>),
Return(SourceLocation, Option<Expr>),
While(Expr, Box<Stmt>),
}
@wheat mesa do u know any good scrambler and unscrambler
no
ok
like a Caesar cypher?
it tryed that but it never worked
ironically
look that up, I'm sure there's something out there for it
I couldnt find and npm package for that :(
would be nice to have but theres none ig
make your own
maybe
https://www.npmjs.com/package/caesar-shift first result
oh
it's old but so is the caesar cipher
this looks great
it's pretty easy to make your own as well
exactly what I want tbh, maybe with more customization
You just await /catch all promises and additionally add an error handler for the process to catch uncatched errors
i do that
If your command handler try’s/catches the executing of your command you don’t need to catch any promise you’re using inside
Just await them
And what sort of errors did your bot crash then?
typos and just code not working
That’s what the top level error handler is for catching any unhandled exception
lol this caesar cipher implementation is a little dumb
"one file for each function!"
I mean really
cmon
so i dont have to .catch all my message send events if they are in a command file?
Some sort of hardstyle structure enforcement
75% of the functions aren't even really his code
it's just him re-exporting native js functions under his own function name
Not if you already use try/catch in your command handler when calling your command
But you still need to await any promise
Or the tracelog won’t be much helpful
Well doing that in the command handler also has the advantage to know when executing your module has failed
fun fact, it doesn't matter
true
If you catch an error inside the module the command handler will@never know
i mean it logs it so its not in vain
@boreal iron thanks for the suggestion
apparently raw message / embeds count as xxxxPayload type
now everything works fine

I don’t try to move Waffle into this direction anymore
looking good
After using Java, now Rust he’s completely out of control anyways
Nice
Well rust is just good
rust is based
have you guys seen https://www.jetbrains.com/fleet/
Who hasn't
Damn… PSU inlet temperature is just 7° away from its critical temperature
I want it
They'd be living under a rock if they hadn't
Fleet is like jetbrains version of vscode
It's coming soon
but I hope it has good plugin support
I think it's in closed beta
because I can't give up rust-analyzer
You mean like something better than notepad++ exists?

Well either they will make the plugin or someone else will
Yeah god thanks it hasn’t
I go crazy anytime I use an editor which has it
Hi I’m new in this server
Randomly placing end parentheses and brackets where I don’t want ‘em
would be easier to build a whole editor
Hi I’m new in this server
We know
Are you on something?
You already told us that
That doesn't correlate at all
Nah I don’t know… I don’t like it tbh
I could never get rust analyzer to work
cus ur noob
He's old waffle
lmao
He likes guessing what shit does
building an editor with electron is kinda easy
the autocomplete is hard tho
I want to leave this sever en never be in it
making the text area is easy, making literally the other 99% isn't
Do it
then leave..?
2011... he's 11!
for vsc: okay
for jetbrains: need some work
for notepad++: nope
Press the big red “delete account” button to leave the server
he's alr gone
There we go
Can’t complain… there are quite some useful tools and overlays
But yeah probably nothing to compare it to known editors
the only useful thing is the copy line thing
Is this sort of… editorcism? I mean it isn’t racism obviously

Tbh I just don’t wanna switch as I don’t wanna deal with all the options and features I have to adjust once or multiple before going crazy
Cuz it doesn’t do what i expect
And I don’t wanna do things differently
you will understand in like 10-20 years
at Object.exports.run (/home/container/commands/whois.js:72:165)
at module.exports (/home/container/events/messageCreate.js:285:19)
let slicedRoles = member.roles.cache.filter(r => r.id !== message.guild.id).map(roles => `<@&${roles.id }>`);
if (slicedRoles.length === 0) slicedRoles.push("None");
if (slicedRoles.length >= 16 && slicedRoles.length !== 0) slicedRoles = slicedRoles.slice(0, 16) + " and more...";
``` but only for certain people, why is that?
why @&?
show where ur calling slicedRoles.join
I mean the last time you overwrite slicedRoles it obviously is a string
statsEmbed.addField(`Roles (Total of ${slicedRoles.length} Roles)`, slicedRoles.join(", "));
``` now for some reason for the guy that the error popped up it's saying it's got a total of 500 roles? even though he has the same amount as me?
slicedRoles might be null or undefined no?
no because when I do slicedRoles then it's working
statsEmbed.addField(`Roles (Total of ${slicedRoles.length} Roles)`, slicedRoles === undefined ? "Could not fetch the roles." : slicedRoles);
``` this worked for the guy that had the error but stopped working for me
and when I add .join it works for me but not for the other guy
what the hell?
=== undefined
Ur still using this
What if it’s null?
Told 1 million times already that’s nonsense
yeah my bad, still I don't see how that could even be a thing?
Only exception is if null is legitimate value
when it comes to programming you don't question, you simply try
weird things happen
but that's literally not supposed to happen like at all
500 roles when he has 13? something's clearly wrong
not supposed to happen
strange things happen
As I said above you map slicedRoles which ends up it will be an array, and if more than 16 roles are a thing you turn it into a string by concating “and 16 more to it”
That’s not really consistent at all
you cant take anything for granted, you need to check all ends
like a solid codebase crashing out of nowhere due to cosmic ray
Check if slicedRoles is an array before calling join on it
…length will not replace a check of its type
Since strings also have a length
so i have this line in my reload command
delete require.cache[require.resolve(`./${file}`)];
and the way im reloading everything it loads all the file names, unloads the moduals from the command map then re loads them. however if ive added a comand im guessing this will through an error cuz it cant unload somthing thats not loaded in the first place, how would i catch that?
try { } catch { }?
Or does the delete keyword suppress errors if the var or prop doesn’t exist
it didnt error
what
the one time i guessed that it would error and it didnt
what strange times we live in
statsEmbed.addField(`Roles (Total of ${slicedRoles.length} Roles)`, !slicedRoles ? "None" : (slicedRoles.length >= 16) ? (slicedRoles.slice(0, 16) + " and more...") : slicedRoles.isArray() ? slicedRoles.join(", ") : slicedRoles);
``` lol
wait isn't isArray a thing in js?
const strRoles = Array.isArray(slicedRoles) ? slicedRoles.join(", ") : slicedRoles
I have do the isArray check after checking for role length, otherwise it will return the length of the string instead of the array
nvm I gotchu
save it to a variable so u don't have to call the same thing a fuckton of times
Would make more sense to just not mix multiple possibles types into one var
Either an array or null
Makes more sense
Even if it just contains one item (role) you can still use join() on it
Which prevents those checks, confusing and inconsistency
it appears to work so is it really worth writing more compliacted code
lol
technically, it'll be less complicated code
more complicated, but more readable I think
You just usually make things way more complicated and inconsistent than needed
is that going to cause an error if I just leave it like this?
As long as the field value is never empty it shouldn’t
technically, no, but getting this habit will lead to coding debts later on which will make maintenance a nightmare
But I don’t see your code at all so guessing isn’t really helpful
So true
just tried this on a user with no roles returned me an error so kek
I sent it before ```js
let slicedRoles = member.roles.cache.filter(roles => roles.id !== message.guild.id).map(roles => <@&${roles.id}>);
const statsEmbed = new MessageEmbed();
statsEmbed.setTitle(member.user.tag);
statsEmbed.setThumbnail(member.user.displayAvatarURL());
statsEmbed.setColor(commandColor);
statsEmbed.addField("Status", status[statusResult]);
statsEmbed.addField('Joined On', timeAgo(member.joinedAt));
statsEmbed.addField('Created At', timeAgo(member.user.createdAt));
statsEmbed.addField(`Roles (Total of ${slicedRoles.length} Roles)`, !slicedRoles ? "None" : (slicedRoles.length >= 16) ? (slicedRoles.slice(0, 16) + " and more...") : Array.isArray(slicedRoles) ? slicedRoles.join(", ") : slicedRoles ?? "None");
statsEmbed.addField("Acknowledgements: ", acknowledgments.join(", "));
statsEmbed.addField("Permissions: ", permissions.join(", "));
Well it’s actually quite hard to figure stuff out on mobile
my bad do you want me to put that into a pastebin
Especially in discords code blocks
Pastebin has the same code blocks on mobile as it does use the device size
Hastebin or sourcebin or however all those shitty platforms are called don’t do so
a
MessageEmbed calls can be chained no?
what does that mean?
ok nope i got errors this now happens on all commands exept for like two even after restarting
idk what that even means
Well .get() obviously didn’t find your argument in the collection/map
I mean, up to you but using statsEmbed on every line is unnecessary
Means execute can’t be called on null/undefined
but its there when i log it
well, first of all process ur array and save it to a variable
thats the confusing bit
Consider to use …has(…) before …get(…)
what do you mena?
Then make sure execute as module property exists
const slicedRoles = member.roles.cache.filter(roles => roles.id !== message.guild.id).map(roles => `<@&${roles.id}>`);
const slicedRolesCount = slicedRoles.length;
const slicedRolesFinal = slicedRoles ? "None" : (slicedRoles.length >= 16) ? (slicedRoles.slice(0, 16) + " and more...") : Array.isArray(slicedRoles) ? slicedRoles.join(", ") : slicedRoles;
const statsEmbed = new MessageEmbed();
statsEmbed.setTitle(member.user.tag);
statsEmbed.setThumbnail(member.user.displayAvatarURL());
statsEmbed.setColor(commandColor);
statsEmbed.addField("Status", status[statusResult]);
statsEmbed.addField('Joined On', timeAgo(member.joinedAt));
statsEmbed.addField('Created At', timeAgo(member.user.createdAt));
statsEmbed.addField(`Roles (Total of ${slicedRolesCount} Roles)`, !slicedRolesFinal ? "None" : slicedRolesFinal);
statsEmbed.addField("Acknowledgements: ", acknowledgments.join(", "));
statsEmbed.addField("Permissions: ", permissions.join(", "));
return message.channel.send({ embeds: [statsEmbed] });
``` I'm really lazy so sorry for the bad code
if(bot.commands.has(command)) bot.commands.get(command).execute()
I basically didn't change anything just prevented the error at the end if it's an array but has 0 roles
ah i see thx
so its not working on the commands that have async
what's the char limit for fields? 2048?
a global limit?? so each fields can't have 2048?
if you have 2 fields would it be 1024 for each?
The docs are actually very accurate about this question
but the sum of everything in ur embed cant surpass the global limit
So a field value can only have a length of 1024
so the issue was caused by me using async function instead of execute but how do I use async normally?
Yeah totally absurdly
Tf you wanna out there if you can’t even use line breaks
The dude who made that decision must have been on crack
And drunk at the same time
I guess
uses only the footer so i can have smoll letters
The author has a smaller font size as well
And supports a too big icon in comparison to the font size
all I wish is that they separated the body from the thumbnail
so u can have text below the thumbnail space
It’s literally just a title with a smaller font size and and icon you can use
I don’t know why that’s missing in the title
Yeah true that sucks hards
Wouldn’t be an issue since the thumbnail has a fixed size anyways
floating yeah
and it aint all that hard, just nest the thumbnail in the author div
Or just use float right on it
wouldn't that cause layout issues on small embeds?
Well don’t have a inspector tool on mobile
So maybe, maybe not
Not needed to think about it anyways
Won’t ever happen

I'm sneezing every 30 seconds help me 😭
your body is fighting against your code
I guess

Your nose screams, don’t do it that way, don’t
u supplied an invalid permission bitfield
send here how &permission=XXXXXXX is in ur url
or print it whatever
permission calculator gave me this link
thats an odd structure for the link
this works but has no perms
ok but how can i solve this button?
change the link you put there to the working one
I don't know how the invite button works on the bot profile so I can't help you there
np
that permission seems abnormally huge
lemme check if it's a valid bitfield
looks like two put together
bruh at that point just give it admin lol
lol
a thing I noticed, is the response_type=code
that's usually present in oauth2 scopes, not bot scope
yeah its also out of order
i just re typed it with the same structure as the link for my bot
Out of order?
if i put my permission number in this link it dont work
what in the permissions=0 bit?
use discord official calculator
i did
the OFFICIAL?
The one in the developer portal?
changing 0 with 989939629303
no
mmmmm
then use that one
A small calculator that generates Discord OAuth invite links
that aint the official
discord developer portal is the only 100% (?) reliable site
didn't notice the footer
that's outdated af
yes
ok
np
whilst im here how to I make a bot leave using a command handler? cuz idk how to make the vc object global for all the comands to see
or atleas the commands for the vc stuff
just put it at class scope
join fine but wont leave thought i could put the variable in one of the execute things but thats doen't seem to work
what does that mean
I don’t even get the first question
outside of function
ok so i have a join command and a leave command join works however leave doent
Leaving a guild?
vc
on the join side i have but on the leave side i have
bruh that didnt work
anyway idk how to make Join global between command files
since the join command is one file and the leave command is another
...put the variable outside of function scope
what does that mean
// outside scope
function blabla() {
// inside scope
}
bruh i have it function reeeeee(Join)
variables at class scope = acessible using <instance>.variable
make it static an u can use <class>.variable
basically made the variable in the index file and then passed it through to the msg event file that then makes it accesable to all the other files
in theory
i know i made a bunch of people who can actually code cringe at that
I wonder what yall learn when starting a new lang nowadays
Let’s just make more global state surely it won’t get out of hand Aware
cmon, I'm not that old but in my times that was one of the first 10 things u learned
(Also that was a joke I haven’t read much of what you’re actually doing)
I just saw the words “var” and “accessible to all other files”
bruh i never "learned" js i just tinkered with a bot from github and added stuff to it from various guides then made my oen thing from scratch using bits of commands from various things and then just got good enough that i started to do it withought having to look at other peoples code
its been like 2 years
so eh
tbh i probably know more about d.js than js
nope just made single file bots
...
i mean i can declare global variables i just dont know hwo to do it in a multiple file situation
my bots arent verry complicated just have a bunch of obscure commands
not like that one pokimon trading bot that was 13000 lines of code in one file
I-Idk what to say, it's a mix of surprise, shock and confusion
I am the code redneck
To be fair this is how a lot of people learn. Usually if you’re not interested in doing more than one specific thing, you don’t really learn more things that aren’t relevant to your task
true
Which I guess he never got to using global variables in his experience
i would never have had the motivation to just sit down and learn js before doing stuff
heck if that was the way i had to do everything i would basically not be able to do anything
thats how i got into cars, either pay the tech £1000 to fix one of my brakes or do it myself for £100
once you watch a couple of YT videos on how to do it and get an idea how it all goes its suprisingly easy to fix most issues on basically anything mechanical
“Easy to fix” wait until you blow a transmission
i mean yeah idk how to do that but thats cuz i haven't done it yet
plus our car is a 2008 toyota yaris
thats transmission is going nowhere
"Everybody Hates Chris", the pepper sauce in sink pipe episode
My car is a 2013 Ford Focus and the mechanics (was taking it back for a repair on the airbags due to a recall) said that the warranty only applies to my transmission (I asked them about some issues I was having) when it completely blows
blue satan iirc
anyway i need to go get dinner be back in a bit, ping me with any suggestions
They told me “Yeah basically when that happens your car will just shift into neutral while you’re driving at anytime and then it’ll beep at you saying “transmission fault”
Oh the joys of owning a ford
Damn I don’t have my gif anymore
Dunno why but that’s so funny I might die of laughing
I have some sort of air intake valve issue I need to fix that causes the car to lurch when a accelerating from a stop though
I might die of a transmission fault, let’s see who dies first

Knowing my luck the transmission will blow at precisely 100,001 miles, 1 mile over the warranty
Trust me the brand doesn’t matter much, cars nowadays are all shit
And that’ll total the car because the transmission costs more than the car is worth
Still good enough for a new driver
Yeah
Hopefully it doesn’t kill me
The gas mileage is actually pretty good too which is nice during these gas prices
Something like 23mpg city driving
Americans are used to paying very little for gas
America is a lot different than Europe, it takes a lot more gas to get places
Since we’re not as densely populated
Unless of course you live in the city, in which case everything is really closeby
They still pay less and could also go on paying less since fracking capabilities being used again but oil companies wanna make cash atm blaming Russia’s war for the price increase
Until we invest even the slightest bit in public transit gas and its price are essential.
I hate this place
define here
Especially on the country side
Here in that country
anywhere in that shithole country
Yeah our public transit is really run down and trashy here
The dart trains are getting a revamp though
Still I dislike public transport especially during covid
state said country
I live near Boston which has "good" public transit by US standards but it's still awful and chaotic to use.
Please consider that as personal opinion as more than 90% of the people (or more) actually not being affected by it in any case
Wdym
I’m close to Dallas, only thing we’re known for here is our highway pileups
And our history of having presidents assassinated here
I’m in the suburbs, it’s actually pretty good
Dallas itself is a shithole
At least it’s not Houston though
suburbs suck as well
Doesn’t like any city suck in the US?
depends
boston is actually pretty nice
Visited there a couple days ago for a tour of my (hopefully) future uni, it’s a very nice city
The heck
Very urban so traffic sucks but it’s pretty nice
all you teenagers with shiny new cars
my car was a hand down from my mom, it's a good starter car
I doubt it'll last much longer though
trying to take care of it but if there's an expensive repair I'm kinda fucked
my car is from 1996
230k miles / 380k kilometers
gonna drive 1k+ miles with it in a couple weeks :^)
jesus
lol tbh i vowed to me self to never buy a "new" car cuz they are all technical nightmares, i just want something old, robust, reparable with only a spanner set and somewhat reliable
do you guys have any recommendations for some sort of free database that has over 500MB+?
my purpose is to upload strings that have 2K bytes each; those strings are base 64 encoded and carry a json object.
to be more detailed, I use those base 64 encoded strings to give more image details to a reverse searched image which you run via a command.
so about 1 reverse searched image equals 2000 byte.
and until I reach the mongodb limit, I would have to run 250000 commands in total until I am forced to delete the oldest one to store a new one
mongodb has 512MB and I have used mongoose before ( and I really love it ), perhaps you guys know any better alternatives?
I tried hastebin api but hastebin has request limitations, and mongodb seems the most realistic option for me as of right now
looks like u jumped from a building 💀
Why do you need a database to store all of this info? Isn't it only used once?
no I'm not embedding those information until somebody decides to request detailed information
it's like I want to let people decide whether they want more information or not for an embed preview
and there's multiple embeds with multiple different results
so I have to track detailed information for each of those embeds
they can be temporary sure
over a month will be passed by the time my mongodb is filled with encoded strings
so I can just start deleting one by one oldest to newest
and each information will have a lifetime of 1 month or depending on the amount of information that's requested
Aren't you fetching the base64 image data though? Why do you need to store that; can't you just request it again or cache it for a little while
And then just use the db for settings
I don't think I understand what you're trying to do here
You can use postgresql and self host it on your vps if you need more storage
just make a burner discord server and upload it there and fetch the msg later
ez
lol
(jk pls dont do that)
You can do that with basically every sql server though
Signup for Github Education and use the 200$ Mongo Credit for some more storage
i am looking for the command for mudae role
When there's a much better option called using postgres 😉
Not the right server for this
Go to their support server
I don't have a vps nor a database hence I'm asking for recommendations
but the problem is that I don't think I can use mongodb with uptimerobot
get a vps
again, not the right server. This is a bot list, not mudae's support server
Setup the Uptime Robot API trigger to run a workflow which integrates with the MongoDB API. Pipedream's integration platform allows you to integrate Uptime Robot and MongoDB remarkably fast. Free for developers.
Maybe I could use this
Seems promising
You should use a proper vps if you wish to upgrade your discord bot's capabilities
can you invite me to the right server?
what do you mean by capabilities?
I just plan to host the bot with uptimerobot
And mongodb for temporary data
I'm completely fine with 512mb
I'll just delete old results once it reaches the limit, this way I'll never actually reach the limit
Seems realistic?
you can find their server on their bot's page
The amount of data your bot can properly handle, the expandability
Okay
Yeah 512mb
1 of those commands I run is 2000 byte
as for the data my bot can handle, that's not really related to what the database can handle as I'm not beating the shit out of the database
The VPS allows you to handle more data because you can host your own database
You wouldn't be limited to mongo cloud
That's fine im fine with the mongodb resources/limits
I'm not requiring any more than I need for my purpose
I mean I assumed you wanted more, since that's what you wanted here
but whatever floats your boat
yeah if possible
but not necessary
so I'll just stick to mongodb + uptimerobot which I'm fine with
are u able to use file-based databases?
also u can compress base64 images to reduce storage usage
you really don't need it if you are sure someone will use your bot
i mean the other option is just look out for a pc that someone it throwing out and use that as a server
None
what does this error mean (code below)
good choice
I fancy a ice cold latte
:pepepray:
:pepepray:
wha
maybe i should check if bloxlinkJSON is null
oh damn how so
what would this mean
🤷♂️
Tf you’re doing
Of course you need to
bloxlinkJSON doesn't exist
at least in this case
If bloxlink is null how can it have a property
literally that
it shouldve catched
databases that are contained in files instead of services
what are u using to host the bot?
in the .catch(async (err) part, but i changed it
Like SQLite
Also you don’t need to use catch to return null
It's a file based db
ya ik
I asked that EXACTLY because of sqlite
cause it can 🤷♂️
just use typescript and make it typesafe 
If the promise fails your var is null anyways
small, good enough as a dump database, fast, reliable
Uptimerobot
That's not a host
...what are u using to host the bot
Honestly I just wanna store the json objects
not to keep alive
enmap? pretty easy to use wrapper for sql
None
Wut null or undefined can’t have properties
isn't uptimerobot keeping it running
ok so u throw the bot on the ground and it walks by itself?
Wrapper for SQL? Use an ORM I guess?
I host the bot 24/7????
It can I think...
The fuck you mean
No.
Well yes
but it doesn't host it
host = what is used to run the code
uptimerobot only pings the host to refresh the keepalive time
I'm gonna use replit ig
ok, so file-based database is out of question
that doesn't help me
Unless the files are stored on an external server?
Can't even use mongo either unless you use a cloud version
Well you don't really help us help you
well, it would if u werent using one of those specific 2 hosts
and heroku too

heroku 🤮
how do you spell invisible? I could've sworn it's spelled invincible instead
I just need a good free 24/7 host with free datastore that's all
regarding the compression, simply apply your preferred compression algorithm on the string bytes
digital ocean
works just like 7zip or whatever
Two different meanings
alright
I don't think there is any... Just rent a VPS for like 1$/month and it will work just fine...
Invisible means can't be seen, invincible means can't be destroyed
do u have any u can recommend for that price
makes sense 
wait wait, I have a message I sent regarding "free" paradox triangle
Just get an oracle vps
Anything really 🤷♂️ GalaxyGate is an option I think? I don't use small VPSs like this. I use larger machines that are way more expensive
great quality: not free
free: low quality
great quality & free: limited time
free & unlimited time: you're the product (either ads or data selling)
great quality & free & unlimited time: you're being scammed
I use Oracle Cloud
They are free
give me some money and i wont use it
like 50 bucks a year
huh?
Yes but I use the Paid Plan
what do u mean by great quality
Cause I need x86_64 cpus
performance (and support)
and apparently oracle doesn't wanna use anything else than RAM on free plan
Stability
doesn't matter to me
Reliability
It should
if ur gonna do IO all the time, it does matter
If a server is down 2 times a day it matters
else it'll be your bottleneck
what's IO again
input/output
O
If you want a free host find an old PC the only thing you'll be paying for is wifi and electricity
fair enough lol
See the joke here is that nothing is free
Enjoy your unreliable hosting from it
I have one doe
basically you'll be dealing with a shitton of files going and coming 24/7 if I understood ur bot right
Internet goes down, pc shuts off, you lose power, etc
Who tf uses WiFi in PCs
not a shitton, my bot is rather small
the major bottlenecks will be bandwidth, storage and RAM
It was a joke to emphasize that no matter what you'll have to pay in some shape or form
laptops: am i a joke to you?
great for proxy servers I say
Greedy bastards
Me because I don't live next to my router dummy
Yeah I meant desktop PCs
did u see what they did to JPA?
Yeah
That’s the reason god has invented LAN cables for us
I'm not wiring a long ass cable to my room
like bruh, I had slight hope that oracle wasn't doomed at all
but doing that to the backbone of enterprise java is a joke
Oracle not being doomed?
like, know when you put out a fire, leave the embers for a week in a moist and cold climate, but there's a single slightly warm atom?
that was my hope for oracle
I mean if people enjoy unreliable and bad internet connection because of using WiFi
Why not
You're wrong
No
Never had an issue
Totally not
So you're wrong
tea.
If you would need “a long ass cable” that already refers to the range
If you don’t own a like 2000 bucks high tech access point it’s always inconsistent and trash
lmao
bruh its not opinion though wifi is worse than ethernet, wifi is wayyyy more suseptable to external factors like interference rainge and usage
You can but it won’t make it better
i mean you can buy one of those routers with a milion antenas
and then buy an expensice wifi NIC with big antenas
Those don’t change anything since it’s still 2.4GHz or 5
yeah but means its more stable and wont drop out asmuch
Which has to deal with walls, radar, channel switching etc
My speed is top notch for the plan I have so I don't have any complaints
WiFi is only recommended for devices which can’t use Ethernet
I ran a lan cable to my room under the floor to my room
its an old house so there was alot of space
ik not everyone has that option thouhg
our router is like 10 years old so the wifi isnt that great
but its still better than the new router they sent over
cuz the new one doent even have an antena
Most routers nowadays are as bad
yeah
They are just cheap mostly delivered by your isp
the old one has an external antena thats positionable, however the new one has a trace on the internal pcb
doent do shit
I don’t care that wifi is worse, it was invented because it’s more convenient to use
Idk about you guys but u don’t feel like running a cable from my living room to 30 other rooms just for a slight performance gain
Anyways WiFi is just a big mess, if you closely measure the consistency, speed and reliability you will be shocked
I lose packets every now and then, who cares
Phones tend to use mobile data in the background if WiFi sucks
You usually don’t notice issues there
I have no complaints about my wifi, only very rarely have I had issues with it
And more often than not it’s not even my router, it was my cheap ass network card I bought for 20 bucks for my pc
bruh in my experience windows is dumb and keeps disconnecting me for no reason if the internet is too slow even though its not the wifi
(Which I have since replaced with a nicer one)

Didn’t say anyone has benefit using Ethernet
But especially for gaming and file sharing inside your network WiFi sucks
screw you i use ethernet for my phone
I usually only drink coffee when I need a lot of caffeine and I have work to do
Lightning to Ethernet adapter 
hehehe
Fake you're preaching to a bunch of people who don't care
That’s okay
bruh how else are we gonna make up for this weeks argument quota after lastweeks argument on android vs ios?
that one got spicy
Doesn’t prevent me from arguing about weird and wrong facts
lol
Aye the love of Voltrex about features 99,9% of the phone users don’t use or know but the fact you need to throw your phone away every 2 years since life support has ended

bruh why would you bin the phone if its "not supported though"
Better question is why to keep an android phone without security updates
like yeah some issues wont be pached out anymore but the same for pc "not being dumb" goes along way in protecting againced viruces and that
other than that you are fine
not on about "new pc" on on about any pc
Common OS covers like 99,9% of the hardware out there even fucking old ones
Especially Linux of course and Windows 10
well yeah???
Phones are not meant to last that long or be supported that long
what are you doing on a phone to get a virus anyway
it being unsupported doesn't mean you can't use it
Companies wouldn’t make much cash if things would last or be supported for years
i used my old android for 5 years
i literally used nokia 302 this year
for a year
so y'know you can use unsupported stuff

Well I’m using an iPhone X and 7
Google how old those devices are
But still supported 
Also pushed with updates
Hi
Pretty awesome for a phone
good luck sideloading
siteloading?
yup
You're supposed to change phones before 10y?
Which brings us back to the life support philosophy
in 10 years your irraplaceable battery is not gonna exist
5 year seems ok imo
if it's an replaceble one it is gonna exist it in some shape
I usually change every 5y or so, not because of battery or anything, I just get bored of it
6 years old now, just 10% capacity lost
okey
The trick is buying phones with the right battery type
Has to do with the charging behavior
And remembering 2005+ phones lose battery capacity per cycle not continuous charge
Yeah tbh also depends from phone to phone
There’s no reliable quality even in the same charge of phones
The old "don't use while charging" consensus don't really work nowadays, at least from what I can notice
Like, don't put, take, put, take, put, take the phone from the charger all the time
mmm still doesn't help the fact its irriplacable unless you pay stupidly inflated prices to apple to fix it them selves
Actually is replaceable
Not really much of a big deal tbh
Once you done it a few times
the new ones you can't, they added some id chip in the BMS that is pared with the phone main board making it phone have like half battery capasity if you replace it
Yeah heard about that already
Not only on batteries
Also for camera modules etc
But yeah times aren’t getting better anyways
So no surprise
this doesn't work
I edited the page 2 weeks ago
it was supposed to help, but I didn't even get ONE SINGLE invite from top.gg
not even one, the entire time it's been up on top.gg
L

show the page
I don't think it's that bad. one of the mods here told me to use pictures so I did
u could've sent a pic
ok, here are my few cents:
- Anonymous hater, ok, but what are the odds of a search returning a bot with such name?
- Yes you added pics, but there's no description, no "salesman talk", nothing but the name + pic
- The page barely talks about the bot, be creative, sell your bread, think "Why would I invite this bot?" and answer to yourself, then add that to the page
the more information you put there, the higher are the odds of some search engine returning your page (tag-based search or context based search)
One message removed from a suspended account.
and the more effort you put into it, the higher the odds of you grabbing the user's attention
One message removed from a suspended account.
as it is now, I barely know what your bot does (most of what I do is from what I saw u asking for help here) or what it'd add to my server
One message removed from a suspended account.
One message removed from a suspended account.
also this, please don't do that, it's basically begging for attention
people will feel insecure about you or your bot
One message removed from a suspended account.
One message removed from a suspended account.
I found one niche to fit into
I was on dank memers page and saw that nobody commeted I assume it's a bug
somehow it landed on my page so now it's stuck there because I can't delete it
it's got a bunch of unique commands I came up with
@wheat mesa don't doubt me it's literally what happened

STOP
yoo i need help, it works in some channels but in some it stopped working any idea why??
chans is not a string, you can’t use .includes() on it
I’m surprised it doesn’t throw an error
bruh its an array
Can you show the json
prolly the json array doesnt contains the channel id?
That’s not a valid json lol
how not lol
yeah i know, instead of having the array in this file i made a json file
what should i do then
Ok so I just looked it up, apparently you can do that with json
Learn something new every day I guess
lol

is the if statement bracket closed?
yes
bro it works... not for all the channels though
the array doesnt contain the channel id?
it does it does i am 100% sure
💀 💀
are all erroring channels with an extra character perchance?
found the problem bruvv wtf thats a stupid bug javascript got?
?
this doesnt work as it doesnt log everything, i add var it works bruh
var, const, let any of those it works
forget var please
but yeah, idk what even happens if u try to assign a value to a non-declared variable
why not use var
maybe it simply throws to the void
oh here we go again
var is a legacy feature that causes a shitton of weird bugs, most related to hoisting nature of var
it's there for the sole purpose of supporting legacy codebase
okay cool cool, gonna use const then
const wordToSearch = args.join("%20");
if (!wordToSearch) return message.channel.send("You have to give a query to search.");
const generateImage = await fetch(`https://api.giphy.com/v1/gifs/search?q=${wordToSearch}&api_key=${process.env.GIPHY}&limit=1`);
if (!generateImage) return message.channel.send("Could not generate the image. Try again in a bit.");
const generateAttachment = new MessageAttachment(generateImage.data[0].url, `giphy.${generateImage.data[0].type}`);
if (!generateAttachment) return message.channel.send("Could not generate the attachment. Try again in a bit.");
return await message.channel.send({ files: [generateAttachment] });
Cannot read properties of undefined (reading '0')
{"data":[{"type":"gif","id":"3ogwFGEHrVxusDbDjO","url":"https://giphy.com/gifs/spongebob-spongebob-squarepants-episode-15-3ogwFGEHrVxusDbDjO","
what's the problem?
what's the error?
it's in there
Cannot read properties of undefined (reading '0')
what am I suppsed to do instead then?
u need to parse that into a json first
okay that's done
it now returns this
Is there an API to bulkUpdate member's roles? Like assigning multiple roles in one request, rather than looping through one by one..
I believe that's not the direct url
try posting the url directly as a msg
not as a file
ah I noticed
it doesn't embed in the messageattachment though
found a way to get a direct URL
how do you get a random number between 2 in JS
will Math.random(0, 5) work?
@lyric mountain so a couple hours ago I added my bot to this list, it said it failed because I had to join their server but I couldn't because the invite link was invalid. somehow it went through and now a mod is approving it
would it be bad if I just messaged the mod?
wouldn't that return doubles?
You can also use the randomInt() function from the built-in node:crypto module, but that can be a little slow as it's cryptographically random
thanks
also ?
quite overkill
there's a formula for min-max rng, I don't remember the second part
it's (max - min) * ((Math.random() * max) - min) or something
thing is they said it's required to join their server
not sure if my bot gets approved if I'm not in it
I can't say anything regarding that, I saw many lists that are both sides of the spectrum



