组织狼人RP游戏的不和谐机器人

lg-rez的Python项目详细描述


lg雷兹

PyPIPyPI - Python VersionPyPI - WheelRead the Docs

不和谐机器人组织喧闹狼人RP游戏ESPCI风格。在

请不要注意这个项目的源代码(comments,docstring)是用法语编写的。bot本身只使用法语;目前还没有国际化。

安装

使用包管理器pip安装lg rez:

pip install lg-rez

强烈建议在专用的virtualenv(python3 -m venv <yourfolder>)中安装此包。在

依赖性

  • Python 3.8+
  • 软件包:请参阅^{}

配置

为了正确运行,bot需要连接到多个外部服务,每个服务都需要或多或少的敏感令牌,这些令牌存储为环境变量。我们支持并鼓励使用^{}.env文件中读取它们,但是您可能更喜欢将它们导出为通常的环境变量。在

LGREZ_为前缀的所有必要变量都列在^{}中。在

配置助手工具

我们提供了一个命令行助手工具来帮助您设置每个服务并生成.env文件(以后可以source并根据需要删除该文件)。在

只需运行:

^{pr2}$

此工具还创建一个bot.py文件,其中包含运行bot所需的最少代码(请参见下面的Usage部分)。在

手动配置

您可能更喜欢手动编写环境变量,或者只检查有关特定变量的说明:它们可以在^{}中找到。在

Warning:配置助手工具通过运行特定的测试来检查每个变量,而手动配置则不是这样,因此请确保您所做的!在

使用

这个包的外部API基本上由一个^{}子类组成,LGBot,它实现了所需的所有功能。在

在已配置的文件夹(由配置助手工具生成)中运行bot所需的最小代码为:

fromlgrezimportLGBotbot=LGBot()bot.run()

机器人使用

一旦bot连接到Discord服务器,发送!help以查看所有可用的命令(注意:有些命令仅由特定角色可见;授予自己“MJ”和“joeur en vie”角色以查看所有内容。)
使用!help command获取有关命令的详细信息。在

对于与非命令特性相关的精度(例如对消息的“IA”反应),请查看^{}中的相应文件(注释并记录)。在

定制

由于LGBot^{}的子类,因此您可以使用它支持的每个参数和方法,或者将其子类化以覆盖现有行为。在

请参阅the doc(beta,法语)上的其他属性和重写方法

一些有用的例子:

更改命令前缀

fromlgrezimportLGBotbot=LGBot(command_prefix="?")bot.run()

删除命令或别名

fromlgrezimportLGBotbot=LGBot()bot.remove_command("command_name")bot.run()

添加命令或更改命令的行为

fromdiscord.extimportcommandsfromlgrezimportLGBot@commands.command()asyncdefmycommand(ctx,...):...bot=LGBot()bot.remove_command("mycommand")# If replacing an existing commandbot.add_command(mycommand)bot.run()

增强或替换对不和谐事件的反应

fromlgrezimportLGBotasyncdefsay_hello(bot,member):awaitmember.send("Hey!")classMyBot(LGBot):"""Your customized bot class"""asyncdefon_member_join(self,member):awaitsay_hello(self,member)super().on_member_join(member)# Invoke the original reactionbot=MyBot()bot.run()

请参阅discord.py documentation了解更多想法。在

贡献

目前不欢迎社区捐款。如果有任何关于这个项目的问题或建议,请与作者联系(见下文)。在

许可证

此工作在the MIT license下共享。在

©2020 Loïc Simon,Tom Lacoma等人-俱乐部BD Jeux GRIs-巴黎ESPCI-PSL

如有异议请联系我们:LaCarpe#1674TaupeOrAfk#3218或通过邮件:loic.simon@espci.orgtom.lacoma@espci.org

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java向嵌入式Jetty添加多个端点   java如何在JAXWS处理程序中区分请求和响应?   使用Scenebuilder for JAVAFx的登录应用程序的java MVC体系结构   java对话框将不显示   Windows 7上的Java系统变量   java删除动态添加的面板   java将Javadoc嵌入到HTML网站中   带有URL编码数据的java Spring RestTemplate POST请求   java JAXR只运行一次函数   HttpClient缺少java依赖项   java深层反射比较   基于javarmi和CORBA的分布式计算   如何使用当前数据库时间从Java更新MongoDB?   java通过光标保存数据调试时显示错误数据