All Projects → moontide → TideBot

moontide / TideBot

Licence: other
我的 IRC 机器人,虽然这个 Bot 能让聊天者在 IRC 里玩游戏,但除了游戏,还有其他很多功能。

Programming Languages

java
68154 projects - #9 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to TideBot

CardGame
Unity prototype of a gambling card game DouDizhu
Stars: ✭ 29 (+11.54%)
Mutual labels:  doudizhu
Batch-Antivirus
Batch Antivirus, a powerful antivirus suite written in batch with real-time protection and heuristical scanning.
Stars: ✭ 26 (+0%)
Mutual labels:  cmd
squircy2
Golang IRC bot, scriptable with javascript
Stars: ✭ 18 (-30.77%)
Mutual labels:  irc-bot
jupiter
A Monte-Carlo based AI to beat 2048
Stars: ✭ 47 (+80.77%)
Mutual labels:  2048
Monokai-Flat
A material monokai color scheme for Visual Studio, Visual Studio Code, JetBrains IDE and some terminal
Stars: ✭ 21 (-19.23%)
Mutual labels:  cmd
Cardinal
A Python IRC bot, designed to make adding functionality quick and simple.
Stars: ✭ 92 (+253.85%)
Mutual labels:  irc-bot
MTS
Automation Tools for PHP
Stars: ✭ 111 (+326.92%)
Mutual labels:  cmd
2048.node
🎮 Terminal version of the game 2048 written in Nodejs
Stars: ✭ 18 (-30.77%)
Mutual labels:  2048
eggdrop-docker
No description or website provided.
Stars: ✭ 20 (-23.08%)
Mutual labels:  irc-bot
TerminalStocks
Pure terminal stock ticker for Windows.
Stars: ✭ 88 (+238.46%)
Mutual labels:  cmd
mac-address-detector-java
Use pcap4j to detect a mac address of remote host
Stars: ✭ 24 (-7.69%)
Mutual labels:  mac-address
insobot
C99 modular IRC bot with markov chains
Stars: ✭ 71 (+173.08%)
Mutual labels:  irc-bot
ip2location-nginx
Nginx module that allows user to lookup for geolocation information using IP2Location database.
Stars: ✭ 33 (+26.92%)
Mutual labels:  ip-location
yossarian-bot
An IRC bot with a bunch of features.
Stars: ✭ 30 (+15.38%)
Mutual labels:  irc-bot
ssh-agent-cmd
Script for Windows Command Processor (cmd.exe) to run ssh-agent
Stars: ✭ 40 (+53.85%)
Mutual labels:  cmd
TwitchPy
This is a package you can use to connect with the Twitch API, manage a channel, create bots, etc
Stars: ✭ 22 (-15.38%)
Mutual labels:  irc-bot
2048-react
2048 game on React
Stars: ✭ 13 (-50%)
Mutual labels:  2048
xontrib-prompt-bar
The bar prompt for xonsh shell with customizable sections and Starship support.
Stars: ✭ 27 (+3.85%)
Mutual labels:  cmd
2048-typescript-cocoscreator
🚀 A 2048 Canvas Game.
Stars: ✭ 15 (-42.31%)
Mutual labels:  2048
Backdoor
A backdoor that runs on Linux and Windows
Stars: ✭ 36 (+38.46%)
Mutual labels:  cmd

TideBot

特色

  • bot 命令不区分大小写,让机器服务于人类,而不是不让人类适应机器死板的逻辑。
  • 尽可能多的支持中文,嗯,命令名、命令选项、ht 命令的模板名、/me 命令的动作命令名 都允许使用汉字(虽然并未完全实现)
  • 支持命令别名,尽量简化用户输入。
    • 比如,game 命令下有很多游戏,则可以直接用游戏名代替 game 命令。如: 斗地主、2048
    • 再比如,ht 命令有诸多用户添加的自定义模板,则可以直接用用模板名直接执行该 ht 模板,如: ht.run 糗事百科 直接用 糗事百科 执行
    • 再比如,/me 命令也有诸多用户添加的自定义动作,则可以直接用 .动作命令 的形式直接执行,如: /me happy 直接用 .happy 执行

功能

对话框 | Dialog

对话框,原本只是实验阶段的一个产物,目的是实现在 IRC 内实现问答的功能:问用户问题、收集答案。

在功能实现后,其他一些命令就依赖此功能进行交互式处理,如:

  • 斗地主游戏抢地主时依次询问用户是否抢地主、sm 命令启用/禁用所有的定义时,询问用户 -- 是否类问题
  • 斗地主游戏询问是否出牌打过上家 -- 开放型问题(填空题)
  • /vote 管理命令询问全频道的人是否投票 -- 不限定人数的对话框

游戏功能 | Games

命令用法: game <游戏名>

三国杀 | SanGuoSha -- 啥? IRC 里也能玩三国杀?

  • game 三国杀 /p 玩家2 [玩家3]
  • game 三国杀身份 /p 玩家2 [其他玩家]...
  • game 三国杀国战 /p 玩家2 [其他玩家]...

三国杀 是一种回合制卡牌游戏。得益于三国杀官方精心设计的游戏规则、卡牌种类,使得三国杀可玩性很丰富。

目前 TideBot 已实现、准备实现的三国杀玩法有:

  • 三国杀入门 (已实现): 只有杀、闪、桃 的入门游戏,最多只允许 3 人玩(因为 3 人以内玩不用计算距离)。只适用于对三国杀不熟悉的新手玩,老司机会觉得入门游戏不好玩…
  • 三国杀身份 (TODO ... ): 想想有那么多武将(技能)、武器(技能)、防具(技能)要实现,就感觉工程量太大…
  • 三国杀国战 (TODO ... ): 除了实现身份局里的武将,还有双将以及国战特有的武将(有的武将名称相同但技能不同了,比如陆逊…)、技能预亮、杀死其他国家武将的奖励,等等不同游戏规则的实现…

斗地主 | DouDiZhu

game 斗地主 /p 玩家2 玩家3

  • 3 人玩,1 副牌
  • 抢地主: 按照腾讯游戏的斗地主游戏来抢地主: 1分 2分 3分,选 3 分立刻成为地主,否则继续问其他人
  • 大王★、小王☆可用 dw、xw 来代替,用 d、x 代替也可以,不区分大小写; 10 可用 0 或 1 代替
  • 过牌: 在批斗阶段,可用下面的任意一个来过牌: pass、 p、 n、 过、 g,在自己的回合阶段不能过牌
  • 斗地主游戏目前还实现了两个机器人玩家: 不出牌的机器人玩家、谁都打的机器人玩家,可在开始游戏时,用 @不出牌 @谁都打 来指定机器人玩家。
    • @谁都打 的别名还有 @能出牌就出牌 @能上就上 @不出牌不舒服斯基
    • 如果要添加两个相同类别的机器人,需要在机器人名称后面附加任意有效的字符串区别一下即可。比如 @不出牌不舒服斯基1 @不出牌不舒服斯基2

斗地主游戏截图 | DouDiZhu game screenshot

2048

2048 游戏截图 | 2048 game screenshot

21 点 | BlackJack

  • 与传统 21 点游戏不同,此游戏没有庄家一说
  • 每个人都是平等的:按顺序询问要不要牌,要牌的发一张牌,如果爆牌则“死亡”,爆牌后的玩家不再询问是否要牌。最后,按分数排出胜负:最接近 21 点的胜利 > 2 > 爆牌

猜数字 | GuessDigits

执行外部系统命令 | Cmd

执行外部命令,并返回 stdout 和/或 stderr 的内容。

注意,这不是 shell,所以类似的功能不支持。目前只实现了管道的功能: command1 | command2

支持自定义模板的多功能 Ht/Json 命令 | Ht/Json

这是一个多功能 Ht/Json 命令,用来通过 http 协议读取 html 或 json/javascript 数据,并返回相关数据。

  • ht 命令
  • json 命令使用 subselector 指定 javascript 代码

GitHub 日志 | GitHub commit logs

StackExchange 问答站点查询 | StackExchange

查询 IP 地址所在地理位置 - 纯真数据库 | ChunZhen IP-Location

ipl <IPv4地址>...

查询 IP 地址所在地理位置 - MaxMind 数据库 | Maxmind/GeoIP IP-Location

geoip[.语言] <IP地址>...

查询 MAC 地址所属制造商 | MAC Manufactory

macm <MAC地址>...

  • MAC 地址可按几种格式
    • AA:BB:CC
    • AA-BB-CC
    • AA:BB:CC:DD:EE:FF
    • AA-BB-CC-DD-EE-FF
  • MAC 地址不区分大小写
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].