Whenever you look at YouTube tutorials or code from this website there is a real variation. Some developers use client = discord.Client(intents=intents)
while the others use bot = commands.Bot(command_prefix="something", intents=intents)
. Now I know slightly about the difference but I get errors from different places from my code when I use either of them and its confusing. Especially since there has a few changes over the years in discord.py
it is hard to find the real difference.
I tried sticking to discord.Client
then I found that there are more features in commands.Bot
. Then I found errors when using commands.Bot
.
An example of this is:
When I try to use commands.Bot
client = commands.Bot(command_prefix=">",intents=intents)
async def load():
for filename in os.listdir("./Cogs"):
if filename.endswith(".py"):
client.load_extension(f"Cogs.{filename[:-3]}")
The above doesnt giveany response from my Cogs and also says
RuntimeWarning: coroutine 'BotBase.load_extension' was never awaited
client.load_extension(f"Cogs.{filename[:-3]}")
RuntimeWarning: Enable tracemalloc to get the object allocation traceback`.
Then when I try to use discord.Client
client = discord.Client(command_prefix=">",intents=intents)
async def load():
for filename in os.listdir("./Cogs"):
if filename.endswith(".py"):
client.load_extension(f"Cogs.{filename[:-3]}")
The above also gives me an error: Exception has occurred: AttributeError 'Client' object has no attribute 'load_extension'
Which one is better in the long run? What is the exact difference?
source https://stackoverflow.com/questions/74503328/confusion-between-commands-bot-and-discord-client-which-one-should-i-use
Comments
Post a Comment