#discord-bots
1 messages · Page 578 of 1
I think older name is better
preference
now everyone knows my old name 😕
revealed
ok
It's nice ||Right?||
Oh
older kylee is goneee
Now you cant work in the men in black
Nooooooo
I'm new icy now 😎
yesss
XD
No
why no
I don't know
!ot
Off-topic channels
There are three off-topic channels:
• #ot0-psvm’s-eternal-disapproval
• #ot1-perplexing-regexing
• #ot2-never-nester’s-nightmare
Their names change randomly every 24 hours, but you can always find them under the OFF-TOPIC/GENERAL category in the channel list.
Please read our off-topic etiquette before participating in conversations.
🥶
XDXD
Seriously. This is going so off-topic.
how do i make the embed thumbnail like this?(im referring to the image)
It's seting author
?
Wait
how do I display all the commands that are in cd and it's remaining cd
icon_url
alright thanks
embed.set_author(name="test", url="https://url.com", icon_url="https://image_pic.com")
change the links
!d discord.Embed.set_author has an icon_url attr.
set_author(*, name, url=Embed.Empty, icon_url=Embed.Empty)```
Sets the author for the embed content.
This function returns the class instance to allow for fluent-style chaining.
Cd?
cooldown
they are in cooldown for a person?
Hi evreone How can I learn 0 to 100 discord robotics with Python?
all the commands that are in cooldown of a person
robotics?
That might be a little complicated.
You'll have to first check if the command is on a cool down using the is_on_cooldown method, and if it returns True, then get the command's cool down time using the get_try_after method.
!d discord.ext.commands.Command.is_on_cooldown
is_on_cooldown(ctx)```
Checks whether the command is currently on cooldown.
!d discord.ext.commands.Command.get_cooldown_retry_after
get_cooldown_retry_after(ctx)```
Retrieves the amount of seconds before this command can be tried again.
New in version 1.4.
You pass ctx and it then checks.
mhm
Whether it's ctx.guild cooldown, or ctx.channel, or ctx.author.
Okay
Isnt robotics like hardware and ai programming?
if not self._buckets.valid:
return False
bucket = self._buckets.get_bucket(ctx.message)
dt = ctx.message.edited_at or ctx.message.created_at
current = dt.replace(tzinfo=datetime.timezone.utc).timestamp()
return bucket.get_tokens(current) == 0
``` thanks for nothing Danny 
bro discord bot how i learn ?
anywhere except YT
I have a tutorial at https://vcokltfre.dev that may help :P
the docs, here, and what Ale sent
how do i paginate my message content?
i see you're lurking like me jake lmao
I think you ment dpy and the question has already been answered
Yes, yes I am
stalkers
holy crap
Not being shamed for recommending a good tutorial 🥴
now that's self promo
hey at least 1000 of them arent me 
your 10% of them
I have the advantage of knowing the url of each part/tip, so i can recommend it in more specialised situations 
Alec responded with a tutorial
help
I recommend https://github.com/Rapptz/discord-ext-menus with its own tutorial
Can you send a link plz ?
the 1132nd time
A tutorial on how to use discord.py to create your own Discord bot in Python, written to fix the flaws of many other popular tutorials.
Youve been sent like 2 already
What else do you want
Nice
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
print(f'Coded by Bill Flow (NOT lowkey#0669)')``` how do I make it also print the bot ID?
user.id
@client.event
async def on_ready():
print('We have logged in as {0.user}, ID: {0.user.id}'.format(client, client))
print(f'Coded by Bill Flow (NOT lowkey#0669)')
I guess(Didn't tested it)
client.usr
and why does everybody use the format function there
print(f'We have logged in as {client.user}, ID: {client.user.id}')
everybody uses the same youtube tutorial
Guys, how to make it so that if no one interacted with the buttons for 15 seconds, then they will become disabled
It’s 2.0
u don't
?
Download PyCharm
Yes
how to make it so that if no one interacted with the buttons for 15 seconds, then they will become disabled
Do you know ?
noidea
I already use it too
I made timeout - 15 sec
Well.. agree
for row in components:
row.disable_components()
Maybe
Never used it
You should not use Repl.it to host your bot.
While this may seem like a nice and free service, it has a lot more caveats than you might think, such as:
-
The machines are super underpowered.
-
- This means your bot will lag a lot as it gets bigger.
-
You need to run a webserver alongside your bot to prevent it from being shut off.
-
- This isn't a trivial task, and eats more of the machines power.
-
Repl.it uses an ephemeral file system.
-
- This means any file you saved via your bot will be overwritten when you next launch.
-
They use a shared IP for everything running on the service.
This one is important - if someone is running a user bot on their service and gets banned, everyone on that IP will be banned. Including you.
Please avoid using repl.it to host your bot. It's not worth the trouble.
See ?tag vps in testing if you want a list of decent hosts (there are no free hosts).
Understand, don’t memorize.
XD It's slow
I see lmao
But i am useing it
Replit: Updating package configuration
Installing dependencies from lock file
Package operations: 34 installs, 14 updates, 0 removals
• Updating cffi (1.14.6 -> 1.15.0)
• Installing hpack (3.0.0)
• Installing hyperframe (5.2.0)
• Updating idna (3.2 -> 2.10)
• Updating multidict (5.1.0 -> 5.2.0)
• Installing async-generator (1.10)
• Updating chardet (4.0.0 -> 3.0.4)
• Updating cryptography (3.4.8 -> 35.0.0)
• Installing h11 (0.9.0)
• Installing h2 (3.2.0)
• Installing outcome (1.1.0)
• Installing sniffio (1.2.0)
• Installing sortedcontainers (2.4.0)
• Updating typing-extensions (3.7.4.3 -> 3.10.0.2)
• Updating yarl (1.6.3 -> 1.7.0)
• Updating certifi (2021.5.30 -> 2021.10.8)
• Updating charset-normalizer (2.0.4 -> 2.0.7)
• Installing hstspreload (2021.10.1)
• Installing httpcore (0.9.1)
• Installing pyopenssl (21.0.0)
• Installing rfc3986 (1.5.0)
• Installing soupsieve (2.2.1)
• Installing trio (0.19.0)
• Updating urllib3 (1.26.6 -> 1.26.7)
• Installing wsproto (1.0.0)
• Installing beautifulsoup4 (4.10.0)
• Updating click (8.0.1 -> 8.0.3)
• Installing discord.py (1.7.3)
• Installing httpx (0.13.3)
• Updating jinja2 (3.0.1 -> 3.0.2)
• Installing trio-websocket (0.9.2)
• Updating werkzeug (2.0.1 -> 2.0.2)
• Installing bs4 (0.0.1)
• Installing buttonpaginator (0.0.2)
• Installing colorama (0.4.4)
• Installing discord (1.7.3)
• Installing discord-components (2.1.2)
• Installing discord-py-interactions (3.0.2)
• Installing discordpy-slash (11.0.0)
• Installing dload (0.6)
STUCK HERE
||DAMN||
Thats bad alright
For a private bot it suffices..
Dang
Then only 2 factors are at play, the ip sharing and guild size.
This is some weird python code.
Not python code
|| @dusk pumice I set my AFK : AFK||
Guys, how to make it so that if no one interacted with the buttons for 15 seconds, then they will become disabled
I know, it's that we help with discord-python related issues here and not repl.it issues. I suggest contacting them.
hey
Yes
i am new here
2.0
hi new here
Your funny bro
😌
i wanna learn how to make a discord.py bot
nice
I recommend learning disnake and not discord.py
Do you know about python?
Yes that to
little bit
yea
nice
Learn basics first and then learn disnake
If you know the basics go for it
i want to learn on discord module
!d discord.ext.commands.Bot.wait_for
wait_for(event, *, check=None, timeout=None)```
This function is a [*coroutine*](https://docs.python.org/3/library/asyncio-task.html#coroutine).
Waits for a WebSocket event to be dispatched.
This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way.
The `timeout` parameter is passed onto [`asyncio.wait_for()`](https://docs.python.org/3/library/asyncio-task.html#asyncio.wait_for "(in Python v3.9)"). By default, it does not timeout. Note that this does propagate the [`asyncio.TimeoutError`](https://docs.python.org/3/library/asyncio-exceptions.html#asyncio.TimeoutError "(in Python v3.9)") for you in case of timeout and is provided for ease of use.
In case the event returns multiple arguments, a [`tuple`](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.9)") containing those arguments is returned instead. Please check the [documentation](https://discordpy.readthedocs.io/en/master/api.html#discord-api-events) for a list of events and their parameters.
This function returns the **first event that meets the requirements**...
DOCS will help ya
i know abit coding 1min
Disnake has the same syntax
ohh
XD
The docs of dpy and disnake
Still... You can fork dpy..
The disnake get started get started bundle. 100% free
and can i try make with if, like if timeout is expired ?
@dusk pumice do u know how to make a bot?
Not really it's an event.
Ye
yea
Mostly everybody here has one
why?
can u teach me error handling, embed and other basics plz
yea
Okay
I got 2 tokens 😎
Same
You may DM me
I will do as best I can
!d discord.ui.View.timeout for buttons
Timeout from last interaction with the UI before no longer accepting input. If None then there is no timeout.
@worn flint I can help you as well
embed, error handling that will take a non experienced coder like 2 months to learn.
she is better progremer
No it wouldn’t..
Progremer
Progremer Lol
If average study time around 2 hrs a day, starting off with python then disnake, then use the docs to make it. def 2 months.
It took me a day to learn how to make embeds and error handlers
ctrl+c, ctrl+v isn't learning.
Yes I’m well aware
If your trying to learn dpy probably 2-3 months max 5
I can agree with this.
I just look up how to do it or ask my friends who I learnt from
You said it would take 2 months to learn embeds and error handling
Really depends on effort 🤷♂️
Though prob 5 if you are starting from scratch.
yeah..
True
Yeah
Error handling and embeds are the easiest things ever
Some dude keeps dming me skid ripped code he finds
A proper error handler is rare these days so apparently it isn't.
took me 5 months to fully master and remember the docs ez
I get random friend requests from random people who dont even talk in the chat asking me questions i barely know that arent even dpy related
Lemme see your code.
OOP, subclassing and NOT copy pasting are hardest things in dpy
He finds HORRIBLE code too
maybe
it isnt hard
😭
It’s really obvious too
subclassing is sooo nice, the possibilities...
It’s super neat with fields in an embed and then the code makes no sense
if learn - yes
Though many inter context don't yet support subclassing so you'd need a custom subclass for that.
Bro i know all the commands of dpy and other stuff but i keep forgetting how to use json
i mean imagine thinking OOP is hard 😌
JSON is literally a fancy dictionary 😎
int``` HAHA I KILLED YOU
SQL is wayy nicer and easier to learn tbh.
I can't remeber them i swear
Keep forgetting them to😭
I know a bit of sql lite thats all
Every sql syntax is (almost) the same.
just imagine use of JSON in bot with about 1 mil servers 
Yeah i just havent used them yet so i forget them
Really all you need to know is SELECT, FROM, WHERE, INSERT INTO, UPDATE that is the beginners pack.
Ye
lol i don't really use insert into
how then u insert the data
what 
jkjk
v = json.load('levelling')
print([k for k in v.values() if k['mom'] is None])```
(prints 1 line after 2 hours)
how does it print a string after 2 hours
He he mom
with more than 10.000.000 values it can (not 2 hours ofc, but very long time)
You can prob add a command error statement
I’ve seen it done before I just don’t know how
use on_command_error events and on CommandNotFound exception type , add pass statment
discord.on_error(event, *args, **kwargs)```
Usually when an event raises an uncaught exception, a traceback is printed to stderr and the exception is ignored. If you want to change this behaviour and handle the exception for whatever reason yourself, this event can be overridden. Which, when done, will suppress the default action of printing the traceback.
The information of the exception raised and the exception itself can be retrieved with a standard call to [`sys.exc_info()`](https://docs.python.org/3/library/sys.html#sys.exc_info "(in Python v3.9)").
If you want exception to propagate out of the [`Client`](https://discordpy.readthedocs.io/en/master/api.html#discord.Client "discord.Client") class you can define an `on_error` handler consisting of a single empty [raise statement](https://docs.python.org/3/reference/simple_stmts.html#raise "(in Python v3.9)"). Exceptions raised by `on_error` will not be handled in any way by [`Client`](https://discordpy.readthedocs.io/en/master/api.html#discord.Client "discord.Client").
or on_command_error
class Pages(discord.ui.View):
def __init__(self, author: int, embeds: list):
super().__init__(timeout=15)
self.embeds = embeds
self.author = author
self.embed_count = 0
def on_timeout(self):
self.children[0].disabled = True
self.children[1].disabled = True
how disable buttons on_timeout ? my method doesnt work
class discord.Embed(*, colour=Embed.Empty, color=Embed.Empty, title=Embed.Empty, type='rich', url=Embed.Empty, description=Embed.Empty, timestamp=None)```
Represents a Discord embed.
len(x) Returns the total size of the embed. Useful for checking if it’s within the 6000 character limit.
bool(b) Returns whether the embed has any data set.
New in version 2.0.
Certain properties return an `EmbedProxy`, a type that acts similar to a regular [`dict`](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.9)") except using dotted access, e.g. `embed.author.icon_url`. If the attribute is invalid or empty, then a special sentinel value is returned, [`Embed.Empty`](https://discordpy.readthedocs.io/en/master/api.html#discord.Embed.Empty "discord.Embed.Empty").
For ease of use, all parameters that expect a [`str`](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.9)") are implicitly casted to [`str`](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.9)") for you.
set_author(*, name, url=Embed.Empty, icon_url=Embed.Empty)```
Sets the author for the embed content.
This function returns the class instance to allow for fluent-style chaining.
I fucking love you
i ned halp pls dm me
unsure if someone here helps in dms
you need to edit the message to apply the changes
yh
but i tried this
self is none
There's no response , so you can not edit it
ik
as in your code self.response= None
image isn't loading for me, slow Internet it is
oof.
i can share code
never did anything with discord.py's components so no idea
class Pages(discord.ui.View):
def __init__(self, author: int, embeds: list):
super().__init__(timeout=15)
self.embeds = embeds
self.author = author
self.embed_count = 0
self.response = None
async def on_timeout(self):
for child in self.children:
child.disabled = True
await self.response.edit(view=self)
I no longer use it :0
why is self.response None there
also is there even an attr like that because i dont remember seeing any
i found this on Danny
i cant understand this buttons
if you want to send the message, you need to pass the Context to it.
im trying this
out = await ctx.send(embed=page1, view=view)
view.response = out
where i made cmd
YE BRO
WORKS
they are disabled
good to know
ye bro
out there is the discord.Message you sent
ask
okay
class Pages(discord.ui.View):
def __init__(self, author: int, embeds: list):
super().__init__(timeout=15)
self.embeds = embeds
self.author = author
self.embed_count = 0
self.response = None
async def on_timeout(self):
for child in self.children:
child.disabled = True
await self.response.edit(view=self)
@discord.ui.button(label='left',
custom_id='1',
style=discord.ButtonStyle.blurple, disabled=True)
async def back_page(self, button: discord.ui.Button, interaction: discord.Interaction):
if self.author == interaction.user.id:
self.embed_count -= 1
embed = self.embeds[self.embed_count]
if self.embed_count == 0:
self.children[0].disabled = True
self.children[1].disabled = False
embed.set_footer(text=f"Page {self.embed_count + 1} of {len(self.embeds)}")
await interaction.response.edit_message(embed=embed, view=self)
else:
await interaction.response.send_message(f"This menu is not for you", ephemeral=True)
@discord.ui.button(label='right',
custom_id='2',
style=discord.ButtonStyle.blurple, disabled=False)
async def last_page(self, button: discord.ui.Button, interaction: discord.Interaction):
if self.author == interaction.user.id:
self.embed_count += 1
embed = self.embeds[self.embed_count]
self.children[0].disabled = False
if self.embed_count == (len(self.embeds) - 1):
self.children[1].disabled = True
embed.set_footer(text=f"Page {self.embed_count + 1} of {len(self.embeds)}")
await interaction.response.edit_message(embed=embed, view=self)
bot doesnt see all embeds
wait
which i made here
@commands.command(
name="test"
)
async def test_cmd(self, ctx):
page1 = discord.Embed(title="Bot Help 1", description="Page 1", colour=discord.Colour.orange())
page2 = discord.Embed(title="Bot Help 2", description="Page 2", colour=discord.Colour.orange())
page3 = discord.Embed(title="Bot Help 3", description="Page 3", colour=discord.Colour.orange())
view = Pages(author=ctx.author.id, embeds=[page1, page2, page3])
out = await ctx.send(embed=page1, view=view)
view.response = out
Yo someone know how to embed a link into a text
bot seems to see it, but when i click on the button that switches to the next page, nothing happens at all, and if i press it again, bot already shows page 3, and does not see page 2
i didn't like the structure of your paginator
ohhh
i've a paginator in my bot's source code. you may check it out
yes, ik that i have mistake
[text](link) - Example: [Visit Google](https://google.com)
this should give you an idea, how to do it
dont worry that part will work fine
disnake is my preferred discord.py fork
i wont advertise it here
those are buttons
but np bro, ty
a tip is, always plan before coding something like it helps to code faster
How can I implement the 2.0 version of discord.py so I can use the button feature
that entire paginator took me around 80 minutes (includes reading the docs. it was my first time with application commands.,)
i think there are examples for them
you can check them out
i forgot sorry
Pretty sure it’s
pip install git+https://github.com/Rapptz/discord.py
Yup
elif roletype[0] == 'Admin ✨':
if questions[0] == "**Write your roleplay request** (1000 char max):"
if len(userReply.content) > 1000:
await ctx.author.send("Your message is over the 1000 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
elif questions[0] == "**Write your roleplay request | Part 2** (1000 char per part):"
if len(userReply.content) > 250:
await ctx.author.send("Your message is over the 250 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
elif questions[0] == "**Write any relevant tags, e.g Starwars Marvel Criminal**:"
if len(userReply.content) > 210:
await ctx.author.send("Your message is over the 210 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
how can i check what question a user is currently on and then if it's question X set the character limit to 250? it currently says Extension 'cogs.Commands' raised an error: SyntaxError: invalid syntax (Commands.py, line 98) which is if questions[0] == "**Write your roleplay request** (1000 char max):"
questions = [
"**Write your roleplay request | Part 1** (1000 char per part):",
"**Write your roleplay request | Part 2** (1000 char per part):",
"**Write any relevant tags, e.g Starwars Marvel Criminal**:"
]
``` is how questions are defined
does anyone have experience with replit?
I was wondering how i could get ffmpeg onto my replit thing
for music ofc
Just install it
Missing a :
fuck ahaha, thank you
it works now but no matter the question it defaults to the bottom one (210 characters)
elif roletype[0] == 'Admin ✨':
if questions[0] == "**Write your roleplay request** (1000 char max):":
if len(userReply.content) > 1000:
await ctx.author.send("Your message is over the 1000 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
elif questions[1] == "**Write your roleplay request | Part 2** (250 char per part):":
if len(userReply.content) > 250:
await ctx.author.send("Your message is over the 250 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
elif questions[2] == "**Write any relevant tags, e.g Starwars Marvel Criminal**:":
if len(userReply.content) > 210:
await ctx.author.send("Your message is over the 210 characters maximum per part! Please split it into two.")
pass
else:
next_step = True
print(f"{member} replied")
return userReply.content
any thoughts?
Well you should probably give the entire code of that command because it's not really easy to understand what you're trying to do
!paste
Pasting large amounts of code
If your code is too long to fit in a codeblock in discord, you can paste your code here:
https://paste.pythondiscord.com/
After pasting your code, save it by clicking the floppy disk icon in the top right, or by typing ctrl + S. After doing that, the URL should change. Copy the URL and post it here so others can see it.
so if they have the admin role, i want it to check which question they're currently answering
and if it's question 1, set the character limit to 1000
question 2, 250
question 3, 210
what's the issue then
it's always setting the character limit as 210 and sending this Your message is over the 210 characters maximum per part! Please split it into two.
no matter what question i'm on
how do i host my vs code bot 24/7
i want it so that if i make changes in the code the bot also updates
the correct question is:
how do i host my python script 24/7
and for that, you need to keep your machine on 24/7
and keep running the file.
otherwise you can go for vps
^
depends on what service you consider as web hosting
@client.event
async def on_ready():
client.loop.create_task((status_task()))
await client.change_presence(status=discord.Status.online)
print('Bot is ready!')
how do i fix
seems like you forgot to put () somewhere
@client.event()
class discord.ext.tasks.Loop```
A background task helper that abstracts the loop and reconnection logic for you.
The main interface to create this is through [`loop()`](https://discordpy.readthedocs.io/en/master/ext/tasks/index.html#discord.ext.tasks.loop "discord.ext.tasks.loop").
class Pages(discord.ui.View):
def __init__(self, author: int, embeds: list):
super().__init__(timeout=15)
self.embeds = embeds
self.author = author
self.embed_count = 0
self.response = None
async def on_timeout(self):
for child in self.children:
child.disabled = True
await self.response.edit(view=self)
@discord.ui.button(label='left',
custom_id='1',
style=discord.ButtonStyle.blurple, disabled=True)
async def back_page(self, button: discord.ui.Button, interaction: discord.Interaction):
if self.author == interaction.user.id:
self.embed_count -= 1
embed = self.embeds[self.embed_count]
if self.embed_count == 0:
self.children[0].disabled = True
self.children[1].disabled = False
embed.set_footer(text=f"Page {self.embed_count + 1} of {len(self.embeds)}")
await interaction.response.edit_message(embed=embed, view=self)
@discord.ui.button(label='right',
custom_id='2',
style=discord.ButtonStyle.blurple, disabled=False)
async def last_page(self, button: discord.ui.Button, interaction: discord.Interaction):
if self.author == interaction.user.id:
self.embed_count += 1
embed = self.embeds[self.embed_count]
self.children[0].disabled = False
if self.embed_count == (len(self.embeds) - 1):
self.children[1].disabled = True
embed.set_footer(text=f"Page {self.embed_count + 1} of {len(self.embeds)}")
await interaction.response.edit_message(embed=embed, view=self)
guys, help, imma explain
bot doesnr see all embeds
bot seems to see it, but when i click on the button that switches to the next page, nothing happens at all, and if i press it again, bot already shows page 3, and does not see page 2
@commands.command(
name="test"
)
async def test_cmd(self, ctx):
page1 = discord.Embed(title="Bot Help 1", description="Page 1", colour=discord.Colour.orange())
page2 = discord.Embed(title="Bot Help 2", description="Page 2", colour=discord.Colour.orange())
page3 = discord.Embed(title="Bot Help 3", description="Page 3", colour=discord.Colour.orange())
view = Pages(author=ctx.author.id, embeds=[page1, page2, page3])
out = await ctx.send(embed=page1, view=view)
view.response = out
here i made all embeds
Is it just me or the code seems familiar?
😐
Wait, u got that from R. Danny?
nah
if i got this from Danny, i wouldnt ask u help lol
Eh, thats not the case, but the code is sorta same haha. Anyways, u wanna make a paginator?
No, if you did have his shit you’d still come here anyway because you’d get called out by him for having his code.
Ah should I tell u how I made mine? It is the easiest ever
u used 2.0 ?
wait nvm
nort d-componets
???
not*
I am using disnake (a dpy fork)
No, that is not what I was talking about... Nvm anyways
but i cant undersatnd
Ah, just use interaction_check instead of manually checking
!d discord.ui.View.interaction_check
await interaction_check(interaction)```
This function is a [*coroutine*](https://docs.python.org/3/library/asyncio-task.html#coroutine).
A callback that is called when an interaction happens within the view that checks whether the view should process item callbacks for the interaction.
This is useful to override if, for example, you want to ensure that the interaction author is a given user.
The default implementation of this returns `True`.
Note
If an exception occurs within the body then the check is considered a failure and [`on_error()`](https://discordpy.readthedocs.io/en/master/api.html#discord.ui.View.on_error "discord.ui.View.on_error") is called.
twas just a joke. just saying even if he did R. Danny’s code he still of went here instead of going to Danny since he said he wouldn’t of went here if he did have it.
why?
ig it wont help
Ah okay haha
Tbh I didn't understand your sentence before
I want the only output the translated text
Or it would? Also, at least that will cleanup your code haha
Show code
code
code it this
@slash_command(name="quote", description="Returns a quote", guild_ids=[GUILD_ID])
async def quote(self, ctx:commands.Context):
quote = get_quote()
translator = googletrans.Translator()
translated_text=translator.translate(text=quote, dest='bn', src='auto')
print(translated_text)
await ctx.respond(translated_text)
pls need help
then idk what i need to do with this thing
cos im dumb
somebody please
!pypi async_google_trans_new use this
well, debug your code ig? Add print statements to check what is a value> If I were you, I would print the embed_count whenever a button was pressed
I have a welcoming command to the new members who join my guild but isn't work
code...
it only accepts one arg which is member
the problem is that my bot doesn't send message in the tchat
Since it doesn't know in which channel to send the message haha
Please could someone tell me how I could make a bot
Integrate your service with Discord — whether it's a bot or a game or whatever your wildest imagination can come up with.
@maiden fable
async def interaction_check(self, interaction: discord.Interaction):
if self.author == interaction.user.id:
return True
else:
await interaction.response.send_message(f"This menu is not for you", ephemeral=True)
good?
I try that @maiden fable
@maiden fable thnx it worked
yups
also u gotta return False in the else statement
!d discord.Client.get_channel
get_channel(id, /)```
Returns a channel or thread with the given ID.
why is there a / in it??
As I said, u should add print statements to print self.embed_count bro whenever there is a clic
it works the same as *
oo
ok
positional argument iirc
!e
def hey(a, /):
print(a)
hey(1)
hey(a=1)
@maiden fable :x: Your eval job has completed with return code 1.
001 | 1
002 | Traceback (most recent call last):
003 | File "<string>", line 4, in <module>
004 | TypeError: hey() got some positional-only arguments passed as keyword arguments: 'a'
to make the parameter only be supplied positionally
is it gonna work?? (just thinking)
async def test(ctx, *, name, *, cat)```
Nope
👍 👍
kinda bad tho. Since * should be used so that we can give it a kwarg also imho
isn't work 😫
but client.get_channel(id=1234) doesn't look nice imo
you gotta do
channel = client.get_channel(...)
await channel.send(...)
true tho
!epy print("Hello")
I must do that @maiden fable ?
@maiden fable i have 3 emebd for pagination, when i cliced first - nothng happened, when i click 2ndly - it showed 2
Yes.
@tasks.loop()
async def live_status(seconds=75):
pcount = pc()
Dis = self.client.get_guild(876471014043815966) #Int
activity = discord.Activity(type=discord.ActivityType.watching, name=f'🐌 {pcount}')
await self.client.change_presence(activity=activity)
await asyncio.sleep(15)
activity = discord.Activity(type=discord.ActivityType.watching, name=f'👥 {Dis.member_count}')
await self.client.change_presence(activity=activity)
await asyncio.sleep(15)
activity = discord.Activity(type=discord.ActivityType.watching, name=f'NOT lowkey#0669')
await self.client.change_presence(activity=activity)
await asyncio.sleep(15)
activity = discord.Activity(type=discord.ActivityType.watching, name=f'City of lights')
await self.client.change_presence(activity=activity)
await asyncio.sleep(15)
activity = discord.Activity(type=discord.ActivityType.watching, name=f'DISCORD ')
await self.client.change_presence(activity=activity)
await asyncio.sleep(15)``` how would i make this work with cogs?
it should be @tasks.loop(seconds=75)
thanks
and changing the activity every 15 seconds seems a bit too fast
How can i take datas from json file?
json library
If you’re thinking about using it as a db, don’t
No, i want to do the json file like that:
Guild_id =
owner =
channel_id =
And i want to take them
@sick birch can i ask smth ? sorry for ping
Don't ask to ask, just ask.
ok
help me please here
does somebody have a level system?
If you have it and want to share it, my DM is open 🙂
what do i need to put to make a command only bot owner can make?
Do you mean a command which only the owner can use?
yes
its not mine
but its a discord bot of mine
@lament mesa if its a discord bots token should i change it
yes
@client.command()
async def main(messsage):
if message.author.id == "Bot Owner ID":
# Your code
else:
await message.channel.send("You cannot use this command!")
tnxxxx
No problemo!
its for a discord bot should i still re generate it
Yes
how
Go to https://discord.com/developers/applications
Click on the application
Go to the "Bot" tab
Under the "TOKEN" title click regenerate
Integrate your service with Discord — whether it's a bot or a game or whatever your wildest imagination can come up with.
i dont understand why it doesnt work pls help me https://paste.pythondiscord.com/ujobaximoj.py
What is the error which you are getting?
Indentation
Indentation is leading whitespace (spaces and tabs) at the beginning of a line of code. In the case of Python, they are used to determine the grouping of statements.
Spaces should be preferred over tabs. To be clear, this is in reference to the character itself, not the keys on a keyboard. Your editor/IDE should be configured to insert spaces when the TAB key is pressed. The amount of spaces should be a multiple of 4, except optionally in the case of continuation lines.
Example
def foo():
bar = 'baz' # indented one level
if bar == 'baz':
print('ham') # indented two levels
return bar # indented one level
The first line is not indented. The next two lines are indented to be inside of the function definition. They will only run when the function is called. The fourth line is indented to be inside the if statement, and will only run if the if statement evaluates to True. The fifth and last line is like the 2nd and 3rd and will always run when the function is called. It effectively closes the if statement above as no more lines can be inside the if statement below that line.
Indentation is used after:
1. Compound statements (eg. if, while, for, try, with, def, class, and their counterparts)
2. Continuation lines
More Info
1. Indentation style guide
2. Tabs or Spaces?
3. Official docs on indentation
how can I do this after entering the command, the bot requested information?
@slate swan
oh ty
wait
i did do indents
No
All the purple is not indented correctly
Should be indented under the def, so one level to the right
all your if functions are suppose to be in the on_message event
oh thats the bit with all the errors in it
Should be aligned at this level
As this part of code belongs to your function
so all the yellow writing should be alinged
Just indent all those highlighted code once
Everything here should be indented once to the right
isnt there a shortcut for that
And you should make commands with this https://discordpy.readthedocs.io/en/stable/ext/commands/commands.html
No idea as I don't know what IDE you're using
just highlight all the code @slate swan mentioned and press tab
LOL, mb then.
Pressing tabs?
im using pycharm
But pycharm you can select everything and press tab
Bro i just got asked how to so a gui when i have 0 knowledge about it😭
guys, how can I do this after entering the command, the bot requested information?
k ty
GUIs in python is just meh
do what?
i will i was just following a tutorial
I know nothing about them lmao
Same
Good good ^^
"input"
Yes, rather use other coding languages like C#,cpp for GUI applications
wait_for
I see
I just don't make GUI applications xD
Args?
same lmao
give me an example. Please
Visual studio code has handy tools for creating UI-type projects if you are interested
Example of what?
I'm making a network recon tool as console application but also implementing an optional web interface, which can be considered as a gui I guess
Might look into that bc i use vsc
wait_for
hey umm i press regenerate and its displays the same token
!d discord.ext.commands.Bot.wait_for
wait_for(event, *, check=None, timeout=None)```
This function is a [*coroutine*](https://docs.python.org/3/library/asyncio-task.html#coroutine).
Waits for a WebSocket event to be dispatched.
This could be used to wait for a user to reply to a message, or to react to a message, or to edit a message in a self-contained way.
The `timeout` parameter is passed onto [`asyncio.wait_for()`](https://docs.python.org/3/library/asyncio-task.html#asyncio.wait_for "(in Python v3.9)"). By default, it does not timeout. Note that this does propagate the [`asyncio.TimeoutError`](https://docs.python.org/3/library/asyncio-exceptions.html#asyncio.TimeoutError "(in Python v3.9)") for you in case of timeout and is provided for ease of use.
In case the event returns multiple arguments, a [`tuple`](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.9)") containing those arguments is returned instead. Please check the [documentation](https://discordpy.readthedocs.io/en/master/api.html#discord-api-events) for a list of events and their parameters.
This function returns the **first event that meets the requirements**...
There are two examples there - One with message, one with reaction
No, not vsc, normal VS, but thats only for C#, I have no idea about CPP tho
Oh lmfaoooooo
I'm not sure though, there might be those type of tools
xd ¯_(ツ)_/¯
Options:
1.try resetting your browser
2.try making a new tab
3.slow wifi
5.cry
Ctrl+Alt+L is just the only shortcut you need to remember in JetBrain's IDEs
i fixed it but now i accidently did indent
Wdym you did indent
The first like 4 symbols usually stay the same, check the last few because those are the ones that changes 99% of the time
Yeah
Sometimes a few letters only change
It's fun because I got accepted to a job where all my knowledge is self taught and school was not even worth it 
👏
Nowadays u don't even need a degree to get a job ||(at least that's what I heard)||
Security conferences were useful 
True
Im in 9th grade almost failing learning python for collage because i want a massive headstart

Well everyone starts somewhere
True
Some people take more time than others
yeah for like web development and that stuff, but if you want to do big jobs like software engineering then you need a degree
all depending in what you are intressted
I just do it for the advantage 
I started with dpy even tho ppl told me "go learn basics"
Probably idk
I mean, I don't have a degree yet got accepted to a cyber security job
You can its just not recommended
I think (most) collages use C++ or other forbidden languages lmao
I still dont even know what i want to be but i want it to be related to python
Yes i do know that they use that 2002 languages
Going to conferences like Blackhat, DEF CON and CCC showed that I also really like to learn new things and love it, gave me a boost when applying
Yeah lol
^^
Wasn't it Java?
Maybe ruby
Yeah that's the thing, I'd rather know multiple languages than just one when applying
Not sure, I saw C++ at one collage and another one which looked like a mix between C and Ruby
Twitter is made using ruby
I forgot the language name
Then eventually learn more in depth the language they actually use
C#?
No, no lmao
Yeah
It is some olddddd language
Most of colleges learn Java
They can be useful to make games n stuff
Ohh, they don't even exists now I think
Eventually start with C and then move to Java
But the thing is, no companies use it so it is kinda useless to know
I'm not interested in Java, it's complicated
After you learn that forbidden language they will probably give you a dead not in service api or sm idk
NullPointerException in a nutshell
how do I get the bot to copy the author's message?
Same its kinda boring
In a command?
I chose python bcz of it's simplicity and many popular sites were written in it.. YouTube, Instagram and many more... Even tho JS is also equally used
Yeah but don't forget that these companies don't use Python for everything
Yeah backend stuff
Bro how do i even decide what job i want i have 0 clue of what i want to be but ofc it will be something related to python
Just like Discord, they use Rust but, I think, only for voice-related stuff
I heard they use C#
Rust?? I thought they used electron js
Sometimes idk
They do, but again; for voice server
Hmm
Nope
The thing about python is, is that it is so popular people try to stretch it do be able to do everything every other language can do which makes it bad in certain aspects.
Most companies use atleast a C language
for example GUI.
I don't 👀
Although I can't really say it's an official company, but yeah
They said companies, not cuties.
I believe google uses C++;C, Not sure
Oh well, then both don't apply 
Its kinda like this python can do everything but not well in a way like well in a way of other languages

Well Google hires C++ developers for cloud engineering
So I guess they use C++

They also use python, but I'm not sure really what they use it for.
Probably backend
No idea aoabout that
Isn't yt written in Django?
Probably APIs
hello, there's a code to simulate what TAB does? like \u200b for a single space
4 spaces
Yeah I guess or something similar since youtube is mostly in Python
i need codes
Just hit spacebar lol
No.
No, they used js but used python for more server-side backend
sad
What if google makes a internacional language that uses all languages and can connect to all of them
AI.. google assistant? Lmfao 😂
\u0009, \t or \N{TAB}
Not possible prob
All of the languages have their purpose, will be hard to make one for everything
Didn't they also use python for that GO AI project
Eh.. dk, they have their own version of everything .. they have their own DB called big table
Idk about that
Maybe in the future idk
Yeah still
Can py and js do everything?
Most stuff, but they do bad in certain aspects.
We'll replace the bad stuff of one lang with other lol 😂
they do bad in aspects which they wasn't originally planned on doing
Yes.
Its like voice languages in Spanish you have a word to say have a great meal but you dont have one in english and bon appetite is a french word
Not very good example but you get the idea
Very simple examples of what both cannot do; writing drivers and an operating system
I was thinking of web related stuff
Great example.
They both can't do games.. pygame, but 2d :/
Well without frameworks they can't
True
Python cannot do a web server without a framework
!ot This is getting extremely off topic. I'm no mod, but I would recommend going here
Off-topic channels
There are three off-topic channels:
• #ot0-psvm’s-eternal-disapproval
• #ot1-perplexing-regexing
• #ot2-never-nester’s-nightmare
Their names change randomly every 24 hours, but you can always find them under the OFF-TOPIC/GENERAL category in the channel list.
Please read our off-topic etiquette before participating in conversations.
Same for JavaScript
What are most games written in js and c++?
C++
I see
Or Java/C#
Alr
But C++ remains the standard I guess
Guess ill learn py and c++🤷♂️
Good luck
(I gave up C++ pretty quickly)
😭

Nope
What DB do u use?
MySQL/MariaDB
And hosting is paid?
And used MongoDB once
I tried mongo, but I don't like the syntax
I have a root server for hosting my projects, so yeah
Same
Ooh
https://paste.pythondiscord.com/orekicesut.py i still cant see the problem
@slate swan do you know?
You have typed a . instead of a _
oh ty
if user_message
how do I get a bot to change a certain message ?
Change what message?
by id message
I think he ment edit a certain msg
i did it but now theres a new problem
U want the bot to be able to edit a message
?
Use fetch_message, save it in a variable and then use message.edit()
yes , only your own by id message
Well to edit it, it has to be sent by the bot
Unless ur doing a selfbot
You can't edit user messages
Improper token
Only the ones sent by the bot
Ah yeah wrong token as the error says
is this resolved?
👍
class Pages(discord.ui.View):
def __init__(self, author: int, embeds: list):
super().__init__(timeout=15)
self.embeds = embeds
self.author = author
self.embed_count = 0
self.response = None
async def on_timeout(self):
for child in self.children:
child.disabled = True
await self.response.edit(view=self)
async def interaction_check(self, interaction: discord.Interaction):
if self.author == interaction.user.id:
return True
else:
await interaction.response.send_message(f"This menu is not for you", ephemeral=True)
@discord.ui.button(label='left',
custom_id='1',
style=discord.ButtonStyle.blurple, disabled=True)
async def back_page(self, button: discord.ui.Button, interaction: discord.Interaction):
if self.embed_count > 0:
self.embed_count -= 1
self.children[1].disabled = False
if self.embed_count == 0:
button.disabled = True
await interaction.response.edit_message(embed=self.embeds[self.embed_count], view=self)
print(self.embed_count)
@discord.ui.button(label='right',
custom_id='2',
style=discord.ButtonStyle.blurple, disabled=False)
async def last_page(self, button: discord.ui.Button, interaction: discord.Interaction):
print(len(self.embeds))
if self.embed_count < len(self.embeds) - 1:
self.embed_count += 1
self.children[0].disabled = False
if self.embed_count == len(self.embeds) - 1:
button.disabled = True
await interaction.response.edit_message(embed=self.embeds[self.embed_count], view=self)
free discord pagination!!!!
no mistakes!!
glad to hear 🙂
error:
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NameError: name 'check' is not defined?
code:
@bot.command()
async def target(ctx):
channel = ctx.channel
message_1 = await ctx.channel.send("`text`")
target_message = 835236006713098304
msg = await bot.wait_for('message', check=check)
await message.edit()
await ctx.channel.send()
You never defined a check
Look at the example on the website again
You will somewhere see something like def check()
Thats nice
)))
Wont cuz its better to learn tbh
?
No don't need it or will
if yes, i need say one more thing
about cmd, where u nedd this:
view = Pages(author=ctx.author.id, embeds=[page1, page2, page3, page4, page5])
out = await ctx.send(embed=page1, view=view)
view.response = out
I wont cuz i like learning
okey)
Congrats tho
Why don't you ask it in the library's help server?
because u give best answers
🙂
I dont think being nice will help either
😐
@slate swan https://discordpy.readthedocs.io/en/stable/ext/commands/commands.html im a bit confused on what to do XD
What are u confused with
i can feel my brain cells dying
everything
i dont understand it
well if ur confused with everything then I can’t help
ok
@bot.command()
async def foo(ctx, arg):
await ctx.send(arg)
like what is arg or foo or ctx
thats the main bit
foo is the name of your command
oh
arg would be world in this example
!command world
what
You should know what ctx is…
so can i change foo to something else
well i dont so too bad
and ctx you always need it to get the channel, author, guild etc. from where the command has been executed
oh
so do i change foo?
Yup
To the name of your command you want, whatever you want
so like if i wanted to do !help
i would change foo to help
Yes, but that's not how help commands should be done
Help commands are special and complicated
I would keep the default help command for now
theres a default help command?
Yup
@slate swan do you know python?
Make sure you don't have client = discord.Client() but bot = discord.ext.commands.Bot()
nope but im tryna prove a point to a friend
Bot supports commands, Client doesn't
Well if ur going to get into discord.py I recommend u learn python first
that's more of a requirement
once i get itno it i will
discord.py library is quite complex and as such is not fit for a beginner
it is strongly recommended that you have a fairly strong grasp of basic and moderate concepts in Python before progressing on to the discord.py library
my friend said python is hard and i said i bet i could make a discord bot
to prove him wrong
If you've never learned Python and just jumped into making a bot I'd recommend to learn Python in the first place
!resources
The Resources page on our website contains a list of hand-selected learning resources that we regularly recommend to both beginners and experts.
The one thing I see most beginners struggling with the most is the concept of asynchronous programming
Yea I see that a lot as well
I don't like Python asynchronous programming 
Know how it works, its usage, etc. but I just don't like how it's made in Python
Yeah, Javascript does asynchronous better imo
It makes more sense, isn't really better than Python, though
It's easier to understand as well, and it's considered an advanced concept like it is in Python
But they both do the same thing just as well on both languages, just in different methods
Yeah
Never really tried asynchronous programming in JavaScript
And Python I don't like how it's implemented
So never really used it myself
Really depends what you call hard
Both languages have it's advantages.
And there weaknesses
async def open_account(user):
with open("mainbank.json", "r") as f:
users = await get_bank_data()
if str(user.id) in users:
return False
else:
users[str(user.id)] = {}
wallet_amt = users[str(user.id)]["wallet"] = 0
bank_amt = users[str(user.id)]["bank"] = 0
with open("mainbank.json", "w") as f:
json.dump(users, f)
return True
@client.command()
async def balance(ctx):
await open_account(ctx.author)
user = ctx.author
users = await get_bank_data()
wallet_amt = users[str(user.id)]["wallet"]
bank_amt = users[str(user.id)]["bank"]
emb = discord.Embed(title=f"{ctx.author.name}'s balance", color=discord.Color.green())
emb.add_field(name="Wallet balance", value=str(wallet_amt))
emb.add_field(name="Bank balance", value=str(bank_amt))
await ctx.send(embed=emb)
@client.command()
async def beg(ctx):
users = await get_bank_data()
user = ctx.author
wallet_amt = users[str(user.id)]["wallet"]
bank_amt = users[str(user.id)]["bank"]
await open_account(ctx.author)
earnings = random.randint(300, 550)
person = ["Steve", "Karen", "Your Mom", "Micheal", "Daniel Craig", "Donald Trump", "Joe Biden"]
choice = random.randint(1, 2)
if choice == 1:
earning_embed = discord.Embed(title="Success!", description=f"\"Oh, you poor little beggar, here's {earnings} dogecoin!\" \n-{random.choice(person)}")
earning_embed.add_field(name="Earnings", value=str(wallet_amt))
users[str(user.id)]["wallet"] += earnings
await ctx.send(embed=earning_embed)
else:
responses = ["Imagine begging", "BRO GET A JOB", "Sorry I don't have money", "Nahhhhhh", "Get good"]
no_embed = discord.Embed(title="Failure",
first part of code
description=f"{random.choice(responses)}. \n-{random.choice(person)}")
no_embed.add_field(name="Earnings", value=str(wallet_amt))
await ctx.send(embed=no_embed)
with open("mainbank.json", "r") as f:
users = json.load(f)
async def get_bank_data():
with open("mainbank.json", "r") as f:
users = json.load(f)
return users
Whenever I do d!beg, nothing happens.
What's wrong with the code?
😂 sometimes
someone help
9th time
what
what is wrong with code
nvm
!solved
!solve
!solved
wait wrong channel
async def on_timeout(self):
for child in self.children:
child.disabled = True
child.style = discord.ButtonStyle.grey
await self.response.edit(view=self)
how to change emoji of each button in this event ?
@bot.command()
async def features(ctx):
guild = ctx.guild
featureslist = guild.features
msgfeatures = ""
if featureslist[0]=='partnered':
partnered = ""
await ctx.send(partnered)```
How can i make to check if verified and partnered is in the list?
hey how do u load a cog
channel = client.get_channel(channel)
users = await get_bank_data()
msg = await channel.fetch_message(id)
msg2 = await channel.fetch_message(id2)
embed = discord.Embed(title="Title",
description=f"{text}",
color=color)
embed2 = discord.Embed(description=f"{text2}\nLast updated: <t:{Unix}:R> (<t:{Unix}>)",
color=color)
print("1")
await msg.edit(content=None, embed=embed)
await msg2.edit(content=None, embed=embed2)```
anyone knows how to edit 2 embeds into one message?
If you're using discord.py 2.0 you can give a list of embed objects in the embeds kwarg when editing/sending a message
im using 1.7.3
some1 knows
Then you can't put multiple embeds in one message
ok ty
It was new feature? Damn I didn't know that
Hey everyone, does someone know how to find my guild id I'm trying to execute this code but it appears like I need a "guild id"
import discord
from discord.ext import commands, tasks
bot = commands.Bot(command_prefix='<')
@bot.event
async def on_ready():
print('I am ready!')
@tasks.loop(seconds=60)
async def is_still_sub(ctx):
guild = bot.get_guild(your_guild_id)
treasure = guild.get_role(905285009873731605)
twitch_sub = guild.get_role(905284976109580319)
print(treasure.members)
for member in twitch_sub.members:
if treasure in member.roles:
pass
else:
await member.remove_roles(treasure)
bot.run('My token is here')```
You need dev mode on and go to your selected guild and press on the pfp for the settings and others scroll down and it will say copy id then just copy it
i tired that but thanks
iirc its bot.add_cog(your cog(bot))
Thank you so much! Looking at my code above do you know which guild I should copy? I'm a bit confused
The guild you want the task on
Aka the guild you copied the roles from
Ok I'm so sorry for all the questions I'm not very advanced in python, how do I find a guild? This bot is programed to check if all members who has the treasure role also has the twitch sub role, if someone who has the treasure role doesn't have the twitch sub role I want the bot to remove the treasure role from that specific user. So I'm not sure which guild I should copy
Guild = discord server
The discord server your cheking the roles from
Ohh, I see I need to copy the server's id
Correct
Ok, thank you so much for your help, I really appreciate it!
help please
Like your pfp g
Thankiesss 
Well you probably don't want to check multiple at the same time
No fun i have no nitro
I want to check if its verified or partnered
or both
but in the mid of the list it can have community or things like that so idk
But it would be
if "feature_1" in guild.features or "feature_2" in guild.features
maybe need parentheses
where
but if the server have both it will send the emojis correctly?
okay, so i can do a elif?
Nope
Make 2 if
Because if it has the first feature you check, then the second elif will be ignored
@bot.command()
async def features(ctx):
guild = ctx.guild
featureslist = guild.features
msgfeatures = ""
if "partnered" in featureslist:
partnered = ""
if "verified" in featureslist:
verified = ""
await ctx.send(partnered, verified)```
Theres a difference between 2 elifs and 2 ifs
like this?
yes and no
XD
Create a string before your ifs
And append the emote to that string with +=
Then send that single string only
Like you did with msgfeatures
Use that string and append the emotes to it
Then send that variable only
append?
but what is append and how to apply it
!e
x = "hello"
x += " world"
print(x)
@slate swan :white_check_mark: Your eval job has completed with return code 0.
hello world
This is appending
I definitely wasnt thinking of append of a dict
Instead of doing partnered =, just do msgfeatures +=
@bot.command()
async def features(ctx):
guild = ctx.guild
featureslist = guild.features
msgfeatures = ""
if "partnered" in featureslist:
msgfeatures = ""
if "verified" in featureslist:
msgfeatures += ""
await ctx.send(msgfeatures)```
Oh yeah true, can lead to confusion
okkk
this should work?
No because that's not the correct feature name
See the list here
!d discord.Guild.features
A list of features that the guild has. The features that a guild can have are subject to arbitrary change by Discord.
They are currently as follows:
Should be exactly what's shown
okkk
but if theres something between partnered and verified it should work? like [community, partnered, news, verified]
But yeah, after changing that it should work
okkk
Yes, it's a list
tnxxx
and
if x in list
checks if x is in the list
Hes my cutie chill out
Hes a og dev
nice
I wanted the badge😕 😔
Make it yourself
🤷♂️
I don't know how to do
Is it possible to make one?
Yes
how?
[JUMP TO ROB]({jump_link}\"shows you where you was robbed!\")```
output
[JUMP TO ROB](#840612280836423720 message%22shows you where you was robbed!")```
it doesnt hyperlink ...
is it inside an embed?
it is
descripton or field value?
description
show ur whole code
alec get exposed








