Skip to content

项目名源自古希腊神话中的百眼巨人阿尔戈斯(Argus),他从不闭合所有眼睛,是众神最警觉的守望者。GameArgus 亦是如此,它将化身为您的专属游戏哨兵,通过精准的图像识别技术,实时监测并标记您指定的任何画面元素。它致力于将您从枯燥的“视觉等待”中解放出来,让您专注于策略与操作的核心乐趣。

Notifications You must be signed in to change notification settings

steven-jianhao-li/GameArgus

Repository files navigation

GameArgus - 游戏画面监测辅助工具

一款拥有图形界面的通用游戏画面监测工具,能够实时追踪并标记您在游戏中指定的任意图像,将您从重复的视觉观察任务中解放出来。

⚠️ 免责声明

本工具仅供学习和技术研究使用,旨在探索Python在图像识别和GUI自动化领域的应用。

请勿将此工具用于任何在线游戏或竞技性游戏中。 大多数在线游戏都部署了反作弊系统,使用任何形式的外部辅助工具都可能导致您的账户被警告或永久封禁

请在完全理解本工具的功能和潜在风险后,于单机游戏或非竞技环境中使用。

对于因使用本程序而导致的任何账户损失或游戏冲突,作者概不负责。

✨ 功能设计

核心目标

本工具的核心目标是自动化游戏中的“视觉等待”过程。无论是等待一个稀有道具刷新、监测某个技能冷却完毕的图标,还是在《植物大战僵尸》这类游戏中等待某张特定植物卡的出现,本工具都能通过图像识别,在目标出现时第一时间用红框高亮提醒,从而让玩家可以更专注于核心操作。

主要功能

  • 图形用户界面 (GUI): 提供完整、直观的设置界面,所有参数一目了然,无需编写任何代码。
  • 精准窗口选择: 支持从当前打开的所有窗口列表中精确选择游戏窗口,并持久化保存,下次启动自动恢复。
  • 实时图像检测: 在独立的后台线程中高频捕捉游戏画面,并使用OpenCV模板匹配算法进行多目标实时检测。
  • 无干扰浮层标记: 检测到的目标将通过一个完全透明、不可交互的顶层窗口进行红框标记,确保100%不影响您的鼠标点击和键盘操作。
  • 高度参数自定义:
    • 检测置信度: 自由拖动滑块,调整识别的精确度,适应不同游戏画面的复杂性。
    • 红框尺寸: 自定义标记框的大小,使其比目标图片更大或更小,以达到最佳的视觉效果。
    • 消失延迟: 目标消失后,红框可配置持续显示一段时间,防止因目标快速闪烁而导致标记中断。
  • 全局热键控制: 支持自定义全局热键(默认为F9),在任何时候都能一键启动或停止监测,操作迅捷。
  • 便捷图片管理: 支持拖拽或点击按钮添加待监测图片,支持中文文件名,可随时预览、双击删除。

🧩 解决的难题

在很多游戏中,玩家都需要花费大量精力去“盯”着屏幕的某个区域。这种行为不仅枯燥,而且极易分散注意力,影响关键时刻的决策。

例如:

  • 在策略游戏中,等待一个关键资源的图标亮起。
  • 在模拟经营游戏中,等待某个稀有顾客或事件的出现。
  • 在一些节奏舒缓的游戏中,需要长时间观察某个UI元素的变化。

这些任务的共同点是:低操作、高观察、重复且耗时。它们将玩家的精力消耗在机械的等待中,而非策略思考或享受游戏乐趣上。

当前的解决方案往往是“用肉眼硬扛”,但这无疑是以牺牲玩家体验为代价的。

本程序正是为了解决这一难题而生。它扮演了一个不知疲倦的“视觉哨兵”,将玩家从这些重复的观察任务中解放出来。您只需提前截取您关心的游戏画面元素(一张卡片、一个图标、一个按钮),将它添加到监测列表,程序便会为您代劳。当目标出现时,一个醒目的红框会立刻提醒您,让您可以将宝贵的注意力投入到更有趣、更具挑战性的游戏环节中。

💻 操作指南

下载最新Release发行版并运行main.py或打包后的可执行文件。

  1. 选择游戏窗口: 启动程序后,首先点击 "选择窗口" 按钮。在弹出的对话框中,找到您的游戏进程标题,选中后点击 "OK"。
  2. 添加与删除监测图片:
    • 方法一 (拖拽): 直接从您的文件管理器中,将您事先截好的目标图片(如植物卡片、技能图标等)拖拽到“待监测图片列表”区域内。
    • 方法二 (点击): 点击 "添加图片" 按钮,在弹出的文件选择框中选中一个或多个图片文件。
    • 删除监测图片: 双击列表中的图片项即可删除该图片。
  3. 配置参数:
    • 检测置信度: 拖动滑块设置。通常80%是一个不错的起点。如果误报太多,就调高它;如果经常漏报,就适当调低。
    • 红框尺寸: 根据您的目标图片大小和个人喜好,设置一个合适的红框宽度和高度。
    • 消失延迟: 设置目标消失后,红框额外停留的时间(秒)。
    • 热键: 设置一个您习惯的、不与游戏冲突的按键来启动/停止监测。
  4. 开始/停止监测:
    • 点击主界面上的 "启动监测" 按钮。
    • 或者,切换到游戏窗口,按下您设定的全局热键
    • 再次点击按钮或按下热键,即可停止监测。

🚀 如何自行部署

① 安装依赖:

本程序依赖多个第三方库。建议创建一个虚拟环境,然后通过pip安装所有依赖:

# 一键安装所有依赖
pip install -r requestments.txt

② 运行程序:

直接运行 main.py 文件:

python main.py

📦 依赖

  • Python 3.8+
  • PyQt6: 用于构建图形用户界面 (GUI)。
  • OpenCV (opencv-python-headless): 核心图像处理与识别库。
  • mss: 用于高性能的屏幕截图。
  • pynput: 用于实现全局热键监听。
  • pygetwindow: 用于枚举和管理桌面窗口。
  • NumPy: OpenCV的底层依赖,用于处理图像矩阵。

🤝 贡献

欢迎提交问题 (Issues) 和拉取请求 (Pull Requests)。

  1. Fork 本仓库
  2. 创建您的新分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开一个 Pull Request

About

项目名源自古希腊神话中的百眼巨人阿尔戈斯(Argus),他从不闭合所有眼睛,是众神最警觉的守望者。GameArgus 亦是如此,它将化身为您的专属游戏哨兵,通过精准的图像识别技术,实时监测并标记您指定的任何画面元素。它致力于将您从枯燥的“视觉等待”中解放出来,让您专注于策略与操作的核心乐趣。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages