All Projects → SonodaHanami → Steam_watcher

SonodaHanami / Steam_watcher

Licence: GPL-3.0 license
yobot插件,Steam雷达,可自动播报玩家的Steam游戏状态和DOTA2图文战报

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Steam watcher

Dota2
🐸 Python package for interacting with Dota 2 Game Coordinator
Stars: ✭ 129 (+514.29%)
Mutual labels:  steam, dota2
Vac
Source code of Valve Anti-Cheat obtained from disassembly of compiled modules
Stars: ✭ 254 (+1109.52%)
Mutual labels:  steam, dota2
valve-matchmaking-ip-ranges
Lists of locations & IP addresses of Valve servers
Stars: ✭ 69 (+228.57%)
Mutual labels:  steam, dota2
Steamworks
Exposing SteamWorks functions to SourcePawn.
Stars: ✭ 70 (+233.33%)
Mutual labels:  steam, dota2
Dota2ai
This project is a improved Dota2 Bot script based on Valve's default AI. Relase on steam workshop as Ranked Matchmaking AI. This script has more than 1 million current subscribers on Steam Workshop.
Stars: ✭ 199 (+847.62%)
Mutual labels:  steam, dota2
SteamTracking-GDPR
📜 Tracking Valve's GDPR related pages
Stars: ✭ 21 (+0%)
Mutual labels:  steam, dota2
steam community market
Get item prices and volumes from the Steam Community Market using Python 3
Stars: ✭ 24 (+14.29%)
Mutual labels:  steam, dota2
overthefirewall
覆盖全平台完全免费节点订阅机场推荐破解VPN软件分享
Stars: ✭ 1,042 (+4861.9%)
Mutual labels:  steam
butterfly
Butterfly Dota Replay parser
Stars: ✭ 20 (-4.76%)
Mutual labels:  dota2
idle master extended
🃏 Get your Steam Trading Cards the Fast Way (Fast Mode Extension 🚀)
Stars: ✭ 1,771 (+8333.33%)
Mutual labels:  steam
SaliensAuto
Automate Saliens with no web browser required, easy to install and many features (Auto join zone/planet, auto repeat, auto kill, invincibility, always max points,...)
Stars: ✭ 27 (+28.57%)
Mutual labels:  steam
steam-data
A simple data project for Steam data
Stars: ✭ 29 (+38.1%)
Mutual labels:  steam
VTFLib
VTFLib is a LGPL open source programming library that provides a C and C++ API for reading and writing Valve VTF and VMT format image files.
Stars: ✭ 68 (+223.81%)
Mutual labels:  steam
csgo-cli
CS:GO Console shows your user account, stats and latest matches. It also uploads demo sharecodes to csgostats.gg.
Stars: ✭ 31 (+47.62%)
Mutual labels:  steam
GlosSI
Tool for using Steam-Input controller rebinding at a system level alongside a global overlay
Stars: ✭ 1,004 (+4680.95%)
Mutual labels:  steam
go-opendota
Go client library for accessing the OpenDota API
Stars: ✭ 34 (+61.9%)
Mutual labels:  dota2
RemoteControlDocs
📻 API Documentation for the Steam Remote Control
Stars: ✭ 16 (-23.81%)
Mutual labels:  steam
dotapatch
Dota 2: Changelog formatted as it should be.
Stars: ✭ 11 (-47.62%)
Mutual labels:  dota2
SteamAuthOOP
OpenID-Login through Steam for your website
Stars: ✭ 32 (+52.38%)
Mutual labels:  steam
auto-task
此版本不再维护,新版本地址:https://github.com/HCLonely/auto-task-v4
Stars: ✭ 37 (+76.19%)
Mutual labels:  steam

Steam_watcher

这是 prcbot/yobot 的自定义插件,可自动播报玩家的Steam游戏状态和DOTA2图文战报

都有些什么功能?

本插件可以在用户绑定后自动推送Steam游戏状态的更新和 Dota2 图文战报,以及提供一些手动查询功能

指令列表

atbot 表示需要@BOT

atsb 表示@某人

xxx yyy 等表示自定义参数

[] 方括号表示参数可以省略

Steam

负责Steam相关的功能

指令 说明
Steam帮助 查看帮助
订阅Steam 在本群开启Steam内容的推送
取消订阅Steam 在本群关闭Steam内容的推送
绑定Steam 好友代码 绑定Steam账号,一人一号
可直接覆盖绑定
解除绑定Steam 解除绑定Steam账号
xxx在干嘛 查询xxx的Steam游戏状态
查询xxx的天梯段位
查询xxx的常用英雄
查询xxx的英雄池

Whois

负责区分各个群的各位群友

指令0 说明
atbot 我是xxx 为自己增加一个别名xxx1
atbot 请叫我xxx 为自己增加一个别名xxx并设为默认2
atbot 我不是xxx 删除自己的别名xxx
atbot yyyxxx yyy增加一个别名xxx3
xxx是谁? 查询xxx的别名
xxx是不是yyy 比对xxxyyy的默认别名
查询群友 查询群内所有拥有别名的群友的默认别名

0 简单地说,涉及修改的指令需要 atbot,而查询的指令不需要

1, 2 一个人可以拥有多个别名,其中第一个是默认别名

3 yyy可以是atsb

使用方法

事前准备

Steam APIKEY

获取 Steam APIKEY

Steam APIKEY 的权限与其所属账号挂钩,要看到被观察者的游戏状态,需要满足以下两个条件之一

  • 被观察者的 Steam 隐私设置中游戏详情设置为 公开 ,且好友与聊天状态设置为在线
  • APIKEY 账号与被观察者为好友,被观察者的 Steam 隐私设置中游戏详情设置为 仅限好友 ,且好友与聊天状态设置为在线

条件不满足时,从 API 获取到的被观察者的游戏状态为空,即没在玩游戏

Linux

0. yobot 源码版

本插件基于 yobot 运行,所以首先需要 部署 yobot 源码版go-cqhttp,并保持两者同时运行

1. 下载本项目

# 在 ybplugins 目录下克隆本项目
cd yobot/src/client/ybplugins
git clone https://github.com/SonodaHanami/Steam_watcher

2. 安装依赖

cd Steam_watcher
pip3 install -r requirements.txt --user
# 国内可加上参数 -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 导入

将 Steam_watcher 导入 yobot ,请参考 这个例子 修改 yobot.py

4. 填写配置文件

启动 yobot ,第一次启动 Steam_watcher 后会在 Steam_watcher 文件夹下自动生成 config.json,修改它

{
    "ADMIN": "123456789",   // 填写管理员的QQ号
    "BOT": "987654321",     // 填写BOT的QQ号
    "STEAM_APIKEY": ""      // 填写 Steam APIKEY
}

5. 应该可以了

重新启动 yobot ,开始使用

Windows

0. yobot 源码版

本插件基于 yobot 运行,所以首先需要 部署 yobot 源码版go-cqhttp,并保持两者同时运行

1. 下载本项目

推荐使用 Github Desktopyobot/src/client/ybplugins 目录下克隆本项目,后续更新可直接pull

下载源码(不推荐) 下载 https://github.com/SonodaHanami/Steam_watcher/archive/refs/heads/master.zip ,将整个 Steam_watcher 文件夹解压到 yobot/src/client/ybplugins 目录下

完成本步骤后,项目目录结构应该如下所示(仅列出本文档相关的关键文件/文件夹示意)

yobot
  └─src
      └─client
          ├─yobot.py
          └─ybplugins
              └─Steam_watcher
                  └─steam.py

2. 安装依赖

进入 Steam_watcher 文件夹,在空白处Shift+右键,点击“在此处打开 PowerShell 窗口”(或者命令提示符)

pip3 install -r requirements.txt --user
# 国内可加上参数 -i https://pypi.tuna.tsinghua.edu.cn/simple

3. 导入

将 Steam_watcher 导入 yobot ,请参考 这个例子 修改 yobot.py

4. 填写配置文件

启动 yobot ,第一次启动 Steam_watcher 后会在 Steam_watcher 文件夹下自动生成 config.json,修改它

{
    "ADMIN": "123456789",   // 填写管理员的QQ号
    "BOT": "987654321",     // 填写BOT的QQ号
    "STEAM_APIKEY": ""      // 填写 Steam APIKEY
}

5. 应该可以了

重新启动 yobot ,开始使用

开始使用

1. 订阅Steam

在群内发送“订阅Steam”,开启Steam内容的推送

2. 成为群友

在群内发送“atbot 我是xxx”,为自己添加一个别名

为什么需要这样做? 这样做的目的是隔离。因为bot可以加入多个群,同一个人也可以同时在不同的的群里,但是同一个人的推送不一定要发到所有群
bot仅向每个群里发送绑定了Steam的群友的推送。
举个例子:
有A和B两个群,两个群里都有枫哥、甲哥、翔哥和bot,枫哥、甲哥和翔哥各自都绑定了Steam
A群的群友有枫哥和甲哥
B群的群友有枫哥和翔哥
则bot会向A群发送枫哥和甲哥的推送,向B群发送枫哥和翔哥的推送
或者说,枫哥的推送会被bot发送到A和B两个群,甲哥的推送只会被bot发送到A群,翔哥的推送只会被bot发送到B群

3. 绑定Steam

在群内发送“绑定Steam 好友代码”,绑定自己的Steam号

4. 试一下

在群内发送“xxx是谁?”,bot将回复xxx的别名

在群内发送“查询群友”,bot将回复该群的群友列表

在群内发送“xxx在干嘛”,bot将回复xxx的Steam游戏状态

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].