Open-sourced version of Chitung the Furry QQ robot

Overview

Image text

Public Version of Chitung

- the Mirai-based Tencent QQ bot.

This project aims to provide users with a lite and open version of Chitung. Although Chitung itself has already been open sourced, it contains numerous highly customized and personalized functions, which makes it almost impossible to be used by others than the original developers.

Public Chitung allows users to run, customize and manage their own Chitung.

七筒:开放版

- 基于Mirai框架的QQ机器人

本项目由七筒官方开发者维护,旨在为用户提供开放版本的七筒插件。七筒本身虽然已经开源,但由于其包含了许多高度定制化和个性化的功能,使得其他用户若想使用七筒成本大为增加。

七筒开放版允许用户运行、定制和管理他们自己的七筒/八条/九万机器人。同时出于服务简体中文 Furry 社群和维持互联网开放的目的,七筒官方开发者希望即使七筒本身的账号出于各方面的限制停止运行,其他用户也能使用该插件继续延续七筒的服务和生命。

新功能

与2022年3月之前的七筒相比,七筒开放版新增了如下功能:

群管理 Group Config

允许群主和管理员自定义是否开启相应的功能。共有六个开关:global / responder / game / casino / fish / lottery。使用方法为 /open 或者 /close 加响应的模块名称。

  • Global: 全局开关。即不会响应任何内容
  • Responder: 关键词触发功能开关。包括求签、兽设、骰子、吃什么等。
  • Game: 游戏开关。包括钓鱼、赌场、银行、猜麻将。
  • Casino: 赌场开关。
  • Fish: 钓鱼开关。
  • Lottery: 群内抽奖开关。包括 Bummer 和 C4。

使用 /blockmember 或者 /unblockmember 并@要屏蔽(解除屏蔽)的成员会将该名成员移入(移除)本群黑名单,支持同时@多人。此黑名单全局生效于该群聊中。

通用响应 Universal Responder

允许七筒开放版的运营者添加更多关键词响应。由于该功能通过data/Chitung/UniversalResponder.json文件实现,且目前不提供交互功能,运营者需要仔细检查其修改的json文件。

每个通用响应数据包含如下内容:

MessageKind messageKind;
MessageKind listResponseKind;
ListKind listKind;
List<Long> userList;
TriggerKind triggerKind;
List<String> pattern;
List<String> answer;
{
  "universalRespondList": [
    {
      "messageKind": "Any",
      "listResponseKind": "Any",
      "listKind": "White",
      "userList": [],
      "triggerKind": "Equal",
      "pattern": ["pattern1","pattern2"],
      "answer": ["answer1","answer2"]
    }
  ]
}

值得注意的是,如下内容对大小写敏感。

  • messageKind | 响应的消息类型,三种可选:Friend / Group / Any,即响应好友消息、群消息和都响应。
  • listResponseKind | 黑白名单的响应消息类型,两种可选:Friend / Group,即黑白名单是响应好友消息还是群消息。
  • listKind | 黑白名单的类型,两种可选: Black / White,即黑名单、白名单。
  • userList | 黑白名单的类型,填写QQ号或者群号,若有多个请使用英语逗号隔开。如 123456,234567
  • triggerKind | 触发的条件类型,两种可选: Equal / Contain,即关键词是必须相等还是只要包含就能触发。
  • pattern | 触发的关键词,使用英语引号将关键词包裹,若有多个请使用英语逗号隔开。如 "Chitung","Public"
  • answer | 回复的内容,会随机选择其一回复。使用英语引号将回复的内容包裹,若有多个请使用英语逗号隔开。如 "Bonne Soiree","Ca marche","S'il vous plait"

运营者配置文件 Admin's Config

运营者配置文件data/Chitung/Config.json包含了大量可以定制的功能。由于该功能通过json文件实现,且除了全局消息目前不提供交互功能,运营者需要仔细检查其修改的json文件。

{
    "botName": "", //机器人名字
    "devGroupID": [], //管理员群
    "adminID": [], // 管理员名单
    "minimumMembers": 7, //最小的群聊人数
    "friendFC": { //好友消息的响应开关
        "fish": true,
        "casino": true,
        "responder": true,
        "lottery": true,
        "game": true
    },
    "groupFC": { //群聊消息的响应开关
        "fish": true,
        "casino": true,
        "responder": true,
        "lottery": true,
        "game": true
    },
    "rc": { //全局消息的响应开关
        "answerFriend": true, //响应好友消息
        "answerGroup": true, //响应群聊消息
        "addFriend": true, //添加好友
        "addGroup": true, //添加群聊
        "autoAnswer": true //非主动触发消息
    },
    "cc": { //自定义文本
        "joinGroupText": "很高兴为您服务。",//加群文本
        "rejectGroupText": "抱歉,机器人暂时不接受加群请求。",//拒绝加入群聊文本
        "onlineText": "机器人已经上线。",//上线文本
        "welcomeText": "欢迎。",//新成员加群文本
        "permissionChangedText": "谢谢,各位将获得更多的乐趣。",//机器人权限更改文本
        "groupNameChangedText": "好名字。",//群名称更改文本
        "nudgeText": "啥事?"//被戳文本
    }
}

通用图库响应 Universal Image Responder

通用图库响应的文件由两部分组成:通用图库响应的配置文件 image/imagedata.json 和用户的图片文件夹。用户需要在 image/ 的目录下创建 相应的图片目录,并更改 imagedata.json 内的配置文件,填写触发关键词、触发类型、图片目录名称。

配置文件包含如下内容:

List<String> keyword; //触发关键词
String directoryName; //图片目录名称
String text; //在图片发送前一并发送的文字
ImageResponder.TriggerType triggerType; //触发类型,Equal或者Contain
ImageResponder.ResponseType responseType; //响应类型,Friend、Group或者Any
{
  "dataList": [
    {
      "keyword": [
        "/qt"
      ],
      "directoryName": "qt",
      "text": "感谢使用七筒开放版。",
      "triggerType": "Equal",
      "responseType": "Any"
    }
  ]
}

为避免发送失败,请尽可能使用 png 和 jpeg 格式的图片放置在相应目录内。

其他

使用前请务必将管理员的QQ号输入进 /data/Chitung/Config.json 里的 adminID 数组内,如果有多个请使用半角逗号隔开。如:"adminID": [123456,654321]

使用 /adminhelp 指令来查询详细的管理员指令。

正在开发

通用响应、运营者配置文件的交互

允许七筒开放版的运营者直接通过QQ平台进行管理。

游戏定制

允许七筒开放版的运营者对于游戏的一些基础数据进行更改。

克莱因先生的飞艇 The Zeppelin Tale of Klein B.Schloss

游戏功能。

版权

美术素材

七筒绝非是他的城市里唯一的居民。开发者为七筒设计了形象的同时,也为钓鱼场老板、赌场老板、以及未来其他功能出现的角色设计形象。我们感谢如下艺术创作者赋予七筒世界里的形象帅气的外表。

我们允许用户自由在使用七筒开放版时,修改上述非开源美术素材;允许基于上述形象进行二次创作;不支持用户在其他渠道流通这些非开源美术素材。

涉及项目

You might also like...

AEMBOT's robot code for the 2022 game RAPID REACT.

AEMBOT's robot code for the 2022 game RAPID REACT.

FRC_2022 AEMBOT 6443's 2022 FRC Repository Requirements To build this repository and to push to the robot, FRC tools including wpilib are required. Do

Dec 3, 2022

Team 2539's Java training, consisting of a series of projects that combine into a full robot code base.

Java Training Part 1 - Learning Java (Skip this part if you have taken AP Comp Sci) For learning Java, we currently recommend using codecademy, but mo

Aug 24, 2022

This project uses the artificial potential field method to realize the path planning of the robot, and completes the trajectory optimization through other settings. It can also be combined with laser SLAM, target recognition and other technologies for path planning.

This project uses the artificial potential field method to realize the path planning of the robot, and completes the trajectory optimization through other settings. It can also be combined with laser SLAM, target recognition and other technologies for path planning.

FRCAutoDriver 项目说明 Project Instruction 本项目利用人工势场法,实现机器人的路径规划,并通过其他设置完成轨迹优化,还可以结合激光SLAM、目标识别等技术进行路径规划 This project uses the artificial potential field

Sep 9, 2022

The utility is designed to implement version control of APEX application pages.

The utility is designed to implement version control of APEX application pages.

Oracle APEX version control tool The utility is designed to implement version control of APEX application pages. How it works The developer exports th

Aug 25, 2022

Version-agnostic and package-agnostic interfaces used in Constellar. Zero strict dependencies, works as a submodule.

bridge Version-agnostic and package-agnostic interfaces used in Constellar. Zero strict dependencies, works as a submodule. Used for cross-compatibili

Feb 23, 2022

My first proper GitHub project, I guess. Basically an automated version of the "Battle Royale" short series on Geo Facts' YouTube channel.

My first proper GitHub project, I guess. Basically an automated version of the

State-Royale Made by Pixer415, with some help from ThatOneCalculator This project needs your contributions. New modes/new features/typo fixes/suggesti

Jun 27, 2022

Oxygen-log4j-patcher - A tool that upgrades the log4j from an Oxygen installation to version 2.16

Oxygen XML Patch Tool for Apache Log4j vulnerability CVE-2021-44228, CVE-2021-45046 and CVE-2021-45105 This is a tool that updates the log4j version 2

Jan 10, 2022

Gitlet - A version control system for managing file versions, mirroring the features of Git

Gitlet - A version control system for managing file versions, mirroring the features of Git. Emphasized the serialization and manipulation of files to compress, access, and manage file content efficiently. Stressed the employment of appropriate data structures and file persistance.

Jan 4, 2022

Changelog-java-version - Eine Auflistung der Änderungen in Java aus Sicht eines Entwicklers.

Changelog Java Versions Eine Auflistung der Änderungen in Java aus Sicht eines Entwicklers. Inhaltsverzeichnis Zugehörige Präsentation Homepage des Au

Jan 4, 2022
Comments
  • [Bug Report] 复读时会无视自己发送的消息

    [Bug Report] 复读时会无视自己发送的消息

    问题 七筒在复读时会无视自身已发送的消息,用同一内容连续多次触发功能时七筒会对该内容进行复读

    如何复现 连续多次调用功能,如 /fish

    预期行为 七筒发送消息后重置复读,连续多次调用时不复读触发功能的消息

    使用环境

    系统:Debian Buster x64 Mirai 版本:2.10.1 stable 源码版本:Release v0.1.4

    日志/截图 -8e5782a3df0ceb5.jpg

    opened by nullqwertyuiop 1
  • [Enhancement] 将运行时保存的数据保存至 `data` 下的子目录

    [Enhancement] 将运行时保存的数据保存至 `data` 下的子目录

    原因 七筒运行时生成的 bankrecord.json botconfig.json fishrecord.json jetpack.txt Zeppelin 文件默认直接储存于 data 文件夹下,可能不便用户辨识或与其他插件产生冲突

    改进逻辑data 下新建目录,如 chitung,将运行时产生的数据移动至 data/chitung,便于辨识

    opened by nullqwertyuiop 1
Releases(v0.1.5-test)
Owner
null
Box86Launcher Is Modified Version Of ptitSeb/box86 Which Runs x86 Version Of WineHQ On Android Nativel

Box86Launcher Box86Launcher Is Modified Version Of ptitSeb/box86 Which Runs x86 Version Of WineHQ On Android Natively. Unlike ExaGear or Running Box86

AkiraYuki 61 Jan 3, 2023
Desktop size version of my Open 6DOF Platform.

Mini-6DOF Desktop size version of my Open 6DOF Platform. This is an expansion on my initial learning that I did to get up to speed for the big version

Christopher Knauf 4 Aug 26, 2022
Drifty is an open-source interactive File Downloader system built with java. It is currently available in CLI mode and has the GUI version under active development.

Drifty Drifty is an open-source interactive File Downloader system built using Java. It takes the link to the file, the directory where it needs to be

Saptarshi Sarkar 60 Dec 24, 2022
AEMBOT's robot code for the 2022 game RAPID REACT.

FRC_2022 AEMBOT 6443's 2022 FRC Repository Setup and Installation [Start Here](link first time git setup in wiki) Software [Stuff] (wiki or external l

FRC 6443 - AEMBOT 8 Dec 3, 2022
Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based system

FRC 2022 Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based s

null 4 Oct 4, 2022
Pigmice robot code for FRC 2022 Rapid React

frc-2022 Robot code for FRC 2022 Rapid React Prerequisites Make sure you have Git installed, as well as some form of code editor. Visual Studio Code i

Pigmice 3 Mar 24, 2022
Robot code for FRC 2020 challenge

frc-code Robot code for FRC 2020 challenge STUFF I FOUND ABOUT THE GYROSCOPE also we all need to read the docs from last year. this Ian guy is our god

null 1 Jan 22, 2022
Java & Spring based cryptocurrency trading robot (RPA) that uses the public Binance API

Santini Santini is a Java & Spring based cryptocurrency trading bot that uses the public Binance API. It is run by providing it with API keys generate

Tongjian Cui 22 Apr 19, 2022
Robot code for First Robotics Challenge for 2022.

rapid-react-robot-code-2022 Robot code for First Robotics Challenge for 2022. The pictures folder is for the embedded photos. Don't delete it. Prerequ

null 4 Feb 22, 2022
Java & Spring based cryptocurrency trading robot (RPA) that uses the public Binance API

Santini is a Java & Spring based cryptocurrency trading bot that uses the public Binance API. It is run by providing it with API keys generated at binance.com (Also provide Santini with Twitter API keys if tweet alerts are desired).

Adam·Michael 22 Apr 19, 2022