如何让机器人在加入服务器时赋予自己自己的角色?例如,mee6 中的 mee6 角色

时间:2021-07-28 16:57:55

标签: node.js discord discord.js

我注意到大多数专业机器人都有自己的角色,称为 bot 与连接。现在我想知道这怎么可能?

2 个答案:

答案 0 :(得分:2)

如果机器人被添加到具有任何管理/版主权限(特殊权限)或基本权限的服务器中,它们将获得自己的角色。

在授权步骤中请求的权限将为您的机器人创建角色(基本上所有权限都在权限列表中,链接如下):

  • 管理员
  • 踢成员
  • 禁止成员
  • 管理服务器
  • 管理角色
  • 管理频道
  • 管理昵称
  • 管理网络钩子
  • 还有更多...
<块引用>

https://discord.com/developers/docs/topics/permissions

查看频道、发送消息..这样的权限,基本上每个“用户”权限也会为bot生成一个角色,如果在授权URL中设置,例如:

<块引用>

https://discord.com/oauth2/authorize?client_id=bot_id&permissions=2048&scope=bot

您看到的数字 2048(发送消息)是“按位权限标志”。使用机器人授权 URL 中的权限位表示您的机器人需要“特殊”权限才能在服务器中正常工作。自动化角色无法删除或分配给其他成员/机器人,但是可以为您的机器人分配一些其他专门为机器人定制的角色。

如果一个 bot 在没有权限的情况下被添加到服务器,它将被处理为在服务器上设置的用户权限 (@everyone),因此它不会获得自己的角色。

答案 1 :(得分:1)

您实际上不需要这样做。

当服务器管理员将您的机器人添加到服务器时,他们需要指定您的机器人将获得的权限。然后 Discord 将自动创建此角色并将其分配给机器人。

最重要的是,它是一个“托管角色”,这意味着您无法删除它。 我什至不认为你可以从机器人中删除它,甚至把它交给其他人。