GNU General Public License v3.0

技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

XileHUD/poe_overlay 深度技术分析

项目背景与痛点

Path of Exile(PoE)作为一款深受玩家热爱的暗黑风格 ARPG 游戏,其复杂的游戏机制和丰富的道具系统为玩家带来了极大的乐趣,但同时也增加了玩家在游戏中的负担。特别是在副本挑战和装备交易等关键时刻,快速获得并理解关键信息变得尤为关键。

XileHUD 是一个针对 PoE 的高级覆盖插件,它提供即时访问游戏内修改器、基础、独特道具、制作货币、宝石、关键石、任务被动技能和商人历史记录等功能。它通过智能剪贴板读取、正则表达式创建、等级覆盖等特性,为玩家提供强大的工具,提升游戏体验。

核心技术揭秘

架构与实现原理

XileHUD 的技术架构采用了模块化设计,使得各个功能可以独立运行,同时又能够互相协作。以下是 XileHUD 的关键技术栈和技术细节分析:

graph TD A[用户输入] --> B{"数据获取及处理"} B -->|"数据验证"| Z1[C[ ]智能剪贴板读取"]" B -->|"输入解析"| Z2[D[ ]正则表达式处理"]" C -->|"数据处理"| Z3[E[ ]游戏内数据获取"]" D -->|"数据解析"| Z4[E] E -->|"数据展示"| Z5[F[ ]UI展示"]" G[游戏事件] -->|"事件监听"| Z4

由上图可以看出,XileHUD 的数据流从用户输入出发,通过智能剪贴板读取和正则表达式处理两个主要模块进行数据处理,然后对接游戏内数据,最终在前端 UI 中展示。这种架构不仅提高了系统的灵活性,也提高了开发和维护的效率。

技术难点与挑战

  1. 智能剪贴板读取:由于 PoE 游戏中数据多样化,需要通过智能剪贴板读取功能来解析复杂数据格式。
  2. 正则表达式处理:用于解析各种游戏内文本信息,需要高效、准确地提取特定信息。
  3. 游戏内数据处理:处理游戏内数据需要实时、高效,同时要保证数据的准确性和安全性。
  4. UI 优化:由于需要实时展示大量信息,UI 设计要简洁、高效,同时易于用户操作。

功能亮点与差异

智能剪贴板读取

XileHUD 提供了独特的智能剪贴板读取功能,能够自动识别并解析剪贴板中的有效信息,极大提升了游戏中的数据处理效率。

自定义正则表达式

XileHUD 允许用户自定义正则表达式,以适应不同场合的游戏数据抓取需求,这一功能超越了同类竞品,表现出极强的灵活性。

高度集成的数据展示

游戏内数据集成到 UI 上,采用自定义标签显示,使玩家能够快速了解重要信息,而不必频繁游戏内切换。

应用场景与落地建议

在生产环境中使用 XileHUD 时,需要注意以下几点:

  1. 数据安全性:虽然插件提供了丰富的功能,但也需注意不要泄露游戏中的个人或团队信息。
  2. 兼容性测试:由于 PoE 游戏版本更新频繁,建议定期进行兼容性测试,确保不同版本游戏的正常使用。
  3. 性能监控:对于高负载情况下的性能测试也需格外注意,确保用户良好的游戏体验。

XileHUD 适合对游戏数据处理要求高、需要高效展示在游戏中获取的关键信息的玩家。

综合评价

优点

  1. 智能剪贴板读取:实现快速粘贴读取插入信息,极大地便利了游戏体验。
  2. 正则表达式处理:快速解析游戏内文本信息,支持高度灵活的数据抓取。
  3. 数据展示集成:高度集成的游戏数据展示系统,易于操作,并能大幅提升游戏效率。

缺点

  1. 自定义复杂性:高级功能需用户具备一定的游戏数据处理能力和自定义配置能力。
  2. 兼容性和稳定性:由于依赖外部库,存在引入稳定性问题的风险。

XileHUD 是一艘探索 Path of Exile 数据处理的新星,令游戏体验更高效、便捷,更深层次地挖掘出了游戏世界的隐藏秘密。

关于

GitHub 原始描述(英文)

XileHUD is an advanced Path of Exile overlay with instant access to modifiers, bases, uniques, crafting currencies, gems, keystones, quest passives, and merchant history. Features include smart clipboard reading, regex creator, leveling overlay and more, streamlining gameplay with powerful tools.

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

简要分析

热度分
187
价值分
91
活跃状态
活跃

语言占比

CSS
HTML
TypeScript

README

XileHUD (Beta)

Lightweight PoE1 and PoE2 item & modifier overlay – copy an item, see the data instantly.
⬇ Download the Latest Release
Windows x64 • Installer + Auto‑Update • Local-First • Privacy Focused


💬 Join our Discord • Reddit Discussion


XileHUD Feature Showcase (YouTube)
Latest video: Leveling Overlay + PoB Integration

Previous video: Full PoE1 & PoE2 Support Overview



What is XileHUD?

I initially created this HUD for my personal use. As a self-employed trader, I spend a lot of time on the PC, and Path of Exile is the perfect game for that. I’ve been coding as a hobby for some years now, mainly building tools that help me get things done faster. A friend saw the overlay and told me I should release it to the public, so here we are. I hope you find it as useful as I do!


✨ Features

Leveling Overlay

A comprehensive leveling companion for both PoE1 (Acts 1-10) and PoE2 (Acts 1-7). The overlay provides optimized step-by-step guides with automatic zone detection via Client.txt monitoring, so you never miss a quest reward, waypoint, or trial.

Key Features:

  • Complete act-by-act guides for PoE1 and PoE2
  • Auto-detection of zone changes with progress tracking
  • Full Path of Building integration: import builds and view recommended gems, passive tree progression, gear sets, and notes
  • Floating windows for gems and passive tree with interactive zoom/pan controls
  • Multiple view modes: Normal, Minimal (compact header), and Ultra-Minimal (click-through overlay)
  • Speedrun timer with run history database, comparisons (best/previous/average), and detailed statistics
  • Customizable hotkeys for navigation, passive tree toggle, and gems window toggle
  • Leveling-only mode for minimal resource usage

ℹ️ First-Time Setup
On first start, open the overlay with Ctrl+Q and navigate to Tools → Leveling Overlay. If you prefer to use only the leveling overlay, open the main settings and click the Feature Selector to uncheck everything except the leveling overlay. This will let you use only the leveling overlay, which opens with Ctrl+Q on start.

Images coming soon

Merchant History

One of the core motivations for this project. In-game, the vendor history is capped at the last 100 items and doesn’t show the items themselves. XileHUD provides a local, searchable, and filterable history of your merchant interactions, allowing you to save and analyze more than just the last 100 transactions. Over recent versions, more filter options and quality-of-life features have been continuously added.

Merchant History

Note: At the time of writing, the new PoE1 league has not yet started, but Merchant History will be fully supported from day one.

Merchant History Insights

Merchant history filters power more than just the table: currency totals, trade counts, and the earnings graph now rebuild from the filtered dataset, keeping every stat perfectly aligned with the data slice you’re studying.

Detailed Modifier Overview

Get an in-depth look at item modifiers with advanced filters, weighting, and more. Instantly understand the power of an item. Every possible filter option has been added, allowing you to see every modifier that can spawn on a specific item.

Supports influences, new league crafting mechanics, and essentially everything imaginable with finely-tuned filter options.

PoE1:

PoE1 Modifiers

PoE2:

With the new Whittling Helper, you can continue your hotkey workflow exactly as before, but now the header gains a dedicated “Whittling” label. Hovering over it reveals every affix the overlay parsed—including their tiers, item level requirements, and which modifier would be whittled. The target line is highlighted in orange so you know precisely what you’re locking in.

PoE2 Modifiers

Crafting Currency Helper

Ever wondered about the different Essences, Omens, or Scarabs available? Instead of manually searching the trade site, simply press Ctrl+Q (or your configured hotkey) on any currency or item to see a detailed, filterable list of what they do.

PoE1:

PoE1 Crafting

PoE2:

PoE2 Crafting

Smart Clipboard

The overlay is intelligent. If you copy a rare Strength-based chestplate, for example, the modifiers page will automatically open with the “STR Chest” category pre-selected. This functionality extends to Omens, Essences, Catalysts, Uniques, Flasks, Relics, Scarabs, and much more, saving you valuable clicks.

Character Planner

View all available Gems with detailed Gem pages that show level progression and visual graphs, Atlas Passives, Keystones, Anointments, Tattoos, and Ascendancy passives. Filter everything to your needs to plan your next build or optimize your current one. A comprehensive glossary is also included.

PoE1:

PoE1 Character

Quest Passives Helper

With the absence of the /passives command in PoE2 and the increased number of campaign rewards, this tool is essential. Track and filter all sources of Spirit, passive points, resistances, and attributes. Check them off as you collect them to ensure you never miss a permanent character boost.

PoE2:

PoE2 Character

Item Database

Browse all base items and Uniques in the game through a clean, organized interface with powerful filtering options. For instance, find the highest evasion base armor with just a few clicks.

Base Browser → Modifiers Jump

From the Bases browser, you can now jump straight into the relevant modifier list with a single click. Look up a base, tap the new “View modifiers” shortcut, and the overlay pivots directly to the matching category so you can evaluate tiers without searching manually.

PoE1:

PoE1 Items

PoE2:

PoE2 Items

Map Regex Tool

A simple tool to make juicing maps more straightforward. Select the mods you want or don’t want, and copy the generated regex directly into the game.

PoE1:

PoE1 Tools

Unified Settings Screen

All preferences live in a single, keyboard-friendly Settings hub: manage hotkeys, overlay themes, capture behavior, and advanced options without digging through configuration files.

Feature Selector

Quickly tailor the overlay to the features you actually use. Toggle whole modules on or off, reorder their priority, and keep your HUD lean during leagues when you only care about a handful of systems.

PoE1:

PoE1 Settings

Fuzzy Search Everywhere

Every major data panel now supports fuzzy matching. Type fragments or abbreviations (“ev armor”, “anc ra”) and the overlay ranks the closest hits instantly, so you never have to remember the exact wording of an item base, quest, or modifier.

Focused Gaming

The overlay is designed to be unobtrusive and can be quickly toggled with a hotkey, keeping you focused on the game.

Local Database

Most features are fully local and can be used offline. An internet connection and account authentication are only required for the Merchant History to fetch your data from the PoE servers.


🚀 Quick Start

Download the installer (XileHUD-Setup-x.y.z.exe) from the Releases page and run it (first run of an unsigned build: Windows SmartScreen → “More info → Run anyway”). Then:

Select Game Version
On first launch, choose whether you want to use the PoE1 or PoE2 version. You can always change your selection in Settings later. The overlay only loads features for the selected version to maximize performance, but you can easily switch between both on the fly.

Primary Hotkey (Ctrl+Q)
In-game (Windowed or Borderless Fullscreen), simply hover your mouse over any item (gear, essence, omen, socketable, scarab, etc.) and press Ctrl+Q. The overlay automatically copies the item in the background and shows the correct panel instantly—no manual copy, no extra clicks.

If the copy doesn’t work for you, it’s most likely because PoE is running in admin mode. Windows does not allow non-admin applications to execute Ctrl+C in admin-privilege programs. Either start PoE without admin rights or start XileHUD in admin mode.

On-Screen Button (No Hotkey Mode)
Right-click the tray icon to spawn a draggable on-screen button. Place it anywhere, pin it if you like, and left-click it while hovering an item to capture and display that item. Great for relaxed mapping or controller/couch setups.

Toggling & Capturing

  • Ctrl+Q when overlay is hidden: capture hovered item & show overlay.
  • Ctrl+Q again (if not pinned): hide overlay.
  • While pinned: subsequent Ctrl+Q (or button clicks) replace the content without hiding.

System Tray

  • Left click: show/hide overlay
  • Right click: quit/options (including enabling the capture button)
  • Open Settings from here (or Ctrl+,) to access the feature selector, hotkey tweaks, and overlay preferences.

Updates
Future versions auto-download silently and apply when you exit the app; your settings and merchant history remain intact.


🔒 Privacy

No telemetry or tracking is implemented. Account authentication is only required if you wish to use the Merchant History feature to fetch your data from your Path of Exile account. All other features work offline.


🗺️ Roadmap

I usually add features that I personally think would help me save time, so when you see an update, it’s likely something I’m actively using myself.

New / High-Priority Ideas:

  • Unique Drop Source Tags: Display where each Unique item drops (boss, encounter, league mechanic) to support target-farming and planning.
  • Leveling Overlay: Route planner with act/zone splits, boss prep tips, and automatic progress detection (so you never miss a quest reward or passive point while rushing).
  • Speedrun Timer: Lightweight in-overlay timer with segment splits (acts, key bosses) and auto-split hooks planned when reliable triggers are identified.
  • “Today I Learned” Knowledge Base: Curated micro-tips (e.g., how to cheaply get a level 21 gem)—community aggregated, surfaced contextually later.

Existing / Ongoing:

  • Spectre Database: A comprehensive list of spectres and their abilities.
  • Shareable Crafting Recipes: Create and share crafting processes with the community.
  • Expanded Regex Tool: Add more categories for deeper customization.
  • And much more! Many other ideas are in development to continue making our lives in Wraeclast easier.

Future / Exploratory:

  • Exchange Prices Integration: Optional toggleable pricing data (overlay remains fully functional offline if disabled).
  • Top Builds Browser: View popular builds for each class directly in the overlay for build inspiration.
  • Mobile Companion App: Primarily for Merchant History on-the-go; also useful for console players to browse their trade data.

Technical Improvements (moved to bottom for clarity):

  • ✅ Modularize history module (Complete: reduced from 1,279 → 215 lines, 11 focused modules)
  • Modularize overlay.html more
  • Further refactor main.ts: Continue code cleanup and organization

❓ WIP FAQ (Work in Progress)

Early, evolving list. Content will expand as common questions come up. Nothing here is marketing fluff – just straight answers.

Is this all within GGG's ToS?

XileHUD is basically just a visual wrapper for official data—think of it as a nice-looking browser. All the modifier data and subpages are local JSON files I curated, so nothing is ever read from the game itself. It's basically 100% the same as opening PoEDB in your browser while playing.

The only online part is the Merchant History. It’s the same data you get when you open the trade history website (trade2/history); we just display the official API data in a cleaner, more usable format. There is no extra data beyond what the site provides.

Item detection is built on GGG’s own copy feature. When you press Ctrl+(Alt)+C on an item, the game copies its data to your clipboard—XileHUD just reads that text, like all price checkers (Exiled Exchange, Awakened PoE, Sidekick, etc.) do.

So nothing in XileHUD violates GGG’s ToS. I’ve read them many times and made sure everything stays fully compliant. The tool was originally made for my own use. GGG will never officially endorse third-party tools since developers could change the code at any time, but they do check for ToS compliance. I also contacted them directly by email to let them know XileHUD exists, and the Reddit thread about it reached over 500 upvotes, so I’m quite certain they’re aware of it.

Keep in mind that I’m not GGG, so like with any third-party tool, you always use it at your own risk. That applies to every external tool out there. I personally won’t add any feature unless I’m absolutely certain it’s allowed—I’m not interested in touching any grey areas. I love my account too much.

Why don't you integrate a price check?

I considered it. In my private version, there is one because I don't like waiting on features I personally need. I left it out publicly because there are already overlays that do price checking very well. I personally recommend Exiled Exchange (and Awakened PoE for PoE1)—in my opinion, the best option: slim and feature-complete.

Any other features planned?

Check the roadmap. I have many ideas because I actively play every day. The current version is a beta—I'll keep adding things I personally find useful over time.

How long have you played PoE?

Over a decade. I started a bit after beginning my self-employed work. My job involves a lot of "observing", which makes it perfect to play games alongside. I think GGG is the best gaming company in the industry; I love their games and don't see myself switching to anything else as a main game.

Do you have any socials for updates?

Yes! You can find us on Discord: https://discord.gg/eRY6UMg4

Are you open to improvements?

For sure—performance or new features. I have an open mind; if I think it genuinely improves the overlay, I'll add it.

Where to contact?

Open an issue here on GitHub, or even better, message me on Discord: https://discord.gg/eRY6UMg4


🐞 Reporting Issues

If you encounter a bug or have a suggestion, please create an issue on the GitHub Issues page. You can also report issues on Discord: https://discord.gg/eRY6UMg4

When reporting, please include:

  • The application version.
  • Steps to reproduce the issue.
  • The item text (if it’s an item parsing issue).
  • Any relevant output from the console.


📜 License

Licensed under GNU GPLv3 (see LICENSE).

This project is not affiliated with or endorsed by Grinding Gear Games.


Acknowledgements

Leveling-Overlay:


🔧 Building From Source

# Install dependencies
npm install

# Build the application
npm run build

# Start the overlay
npm run start

# Package unsigned installer
npm run dist:unsigned

All required data JSON files reside under data/poe2/<League>/ inside this repository so no external folders are needed.

Environment override (optional): set XILEHUD_DATA_DIR to point to an alternate league directory at runtime.


评论

暂无评论