factorio的双向irc桥

factoirc的Python项目详细描述


factoirc是factorio和irc之间的双向irc桥。 它作为irc3python模块的插件提供。

它可以连接一个或多个通道,并在irc和factorio之间来回转发消息。

还提供了一些irc命令:

  • !rcon:执行rcon命令并返回结果。
  • !播放器:获取当前在线播放器的列表。

factoirc使用factorio 0.13中引入的rcon协议将消息从irc转发到factorio。 因此,factorirc不能与factorio 0.12和早期版本一起使用。

将factorio聊天消息转发到irc需要访问factorio服务器输出,这可以使用多种方法实现,具体取决于您的设置。

兼容性

在Windows上,仅支持从factorio 0.15开始并使用控制台日志–console log)按irc->;factorio方向转发。 :https://forums.factorio.com/viewtopic.php?f=49&t=37108

join/leave消息应该使用factorio 0.13,但在0.14(https://forums.factorio.com/viewtopic.php?f=6&t=30697)中被破坏。 factorio 0.15把它们带回来了。

安装

您需要使用python 3.5(或更高版本),可以通过发行版的包管理器获得该版本 或者从https://www.python.org/下载(对于windows用户)。

在windows上,确保在安装时选中“add python 3.x to path”复选框。

一旦安装了python,就可以使用

$ pip3 install factoirc

配置

使用config.ini文件完成配置。作为示例提供了一个config.example.ini文件,其中包含大量文档。

根据您的设置,您必须使用文件stdin系统d方法之一。

方法2:systemdjournal

仅当factorio服务器在systemd下运行(仅适用于linux机器)并且其输出存储在日志中时,此方法才适用。

在这种情况下,factoirc可以直接从日志中读取日志。

您的配置文件中需要以下选项:

[factoirc]method=systemdunit=factorio.service

要使此方法起作用,需要使用python systemd模块,可以通过pip:

$ pip3 install python-systemd

方法3:stdin

此方法从标准输入流读取factorio聊天日志,还支持通过shell重定向读取文件。

[factoirc]method=stdin

您需要将factorio聊天日志输出连接到factoirc bot:

$ factorio --rcon-port=27015 --rcon-password=password --start-server=save.zip | irc3 config.ini

转发定制

您可以自定义不同游戏和irc操作的消息转发,有关详细信息,请参见config.example.ini


热门话题
virtualbox无法从java移动共享文件夹中的文件   java如何连接Android 4.3.5(GA)的apache HttpClient库?   片段中的java Recyclerview未立即显示警报对话框结果   javac(n,r)计算器程序不工作   java使用BooleanQuery还是编写更多索引?   如何在java中设置y/n循环?   java不兼容的通用通配符捕获   java如何在安卓xml中编写数据绑定时的三元操作条件   java如何使用FileDialog?   java如何创建单元测试来检测是否有人使用错误的编码编辑了文件?   java如何从唯一的字符串生成唯一的int?   java gradletomcatplugin:log4j:WARN找不到记录器的附加程序   java我的动态编程解决方案(Kefa和第一步)在codeforces中有什么问题?   java每天更新两个数据库,使它们都包含相同的有效数据集   java如何检查给定的时间是否在时间限制之间   java在单个json POST上保存父级和子级   java如何获取Solr字段类型