Skip to content
This repository was archived by the owner on May 24, 2026. It is now read-only.

akaizery/endfield-essence-checker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚔️ Endfield Essence Checker

A lightweight Windows overlay tool that instantly tells you if a Weapon Essence is perfect — no more alt-tabbing to a browser.

Use PowerToys Text Extractor to grab the 3 stats from an Essence in-game, and the tool automatically checks all weapons and shows a ✅ or ❌ overlay right at your cursor.

Demo Python Platform


How It Works

┌─ In-Game: Essence Popup ──────────────────┐
│                                            │
│   Essence Stats                            │
│   ○ Intellect Boost              | +4      │
│   ○ Treatment Efficiency Boost   | +4      │
│   ○ Infliction                   | +1      │
│                                            │
└────────────────┬───────────────────────────┘
                 │  Win+Shift+T → drag over stats
                 ▼
┌─ Clipboard ───────────────────────────────┐
│  "Intellect Boost Treatment Efficiency…"  │
└────────────────┬──────────────────────────┘
                 │  auto-detected
                 ▼
┌─ Overlay at cursor ───────────────────────┐
│                                            │
│   Primary    Intellect Boost               │
│   Secondary  Treatment Efficiency Boost    │
│   Skill      Infliction                    │
│   ─────────────────────────────────────    │
│   ✅  Dreams of the Starry Beach           │
│                                            │
│   OR                                       │
│                                            │
│   ❌  No weapon match → Trash              │
│                                            │
└────────────────────────────────────────────┘
  click anywhere → overlay closes

Prerequisites

  • Windows 10/11
  • Python 3.10+Download
  • PowerToysDownload
    • Only the Text Extractor feature is needed (Win+Shift+T)
  • Arknights: Endfield running in Borderless Windowed mode (fullscreen blocks overlays)

Installation

1. Clone the repo

git clone https://github.com/akaizery/endfield-essence-checker.git
cd endfield-essence-checker

2. Install dependencies

pip install -r requirements.txt

3. Verify it works

python essence_checker.py --test "Intellect Boost Treatment Efficiency Boost Infliction"

Expected output:

  Found:      ['Intellect Boost', 'Treatment Efficiency Boost', 'Infliction']
  Primary:    ['Intellect Boost']
  Secondary:  ['Treatment Efficiency Boost']
  Skill:      ['Infliction']

  ✅  Perfect for: Dreams of the Starry Beach

Usage

Quick Start

python essence_checker.py

Then in-game:

  1. Open an Essence
  2. Press Win+Shift+T
  3. Drag a rectangle over the 3 stats:
    ┌───────────────────────────────────────┐
    │ ○ Intellect Boost              | +4  │  ← select
    │ ○ Treatment Efficiency Boost   | +4  │     this
    │ ○ Infliction                   | +1  │     area
    └───────────────────────────────────────┘
    
  4. Overlay appears instantly at your cursor
  5. Click anywhere → overlay closes
  6. Repeat for next Essence

CLI Commands

Command Description
python essence_checker.py Start the overlay monitor
python essence_checker.py --test "stats" Test stat parsing without overlay
python essence_checker.py --add Interactively add a weapon to the database
python essence_checker.py --list List all weapons in the database
python essence_checker.py --stats Show all valid stat names

Essence Stat System

Every Essence has exactly 3 stats, one from each category:

Primary Attribute

Stat
Agility Boost
Strength Boost
Will Boost
Intellect Boost
Main Attribute Boost

Secondary Stat

Stat
Attack Boost
HP Boost
Physical DMG Boost
Heat DMG Boost
Electric DMG Boost
Cryo DMG Boost
Nature DMG Boost
Critical Rate Boost
Arts Intensity Boost
Ultimate Gain Boost
Arts DMG Boost
Treatment Efficiency Boost

Skill Stat

Stat
Assault
Suppression
Pursuit
Crusher
Inspiring
Combative
Brutality
Infliction
Medicant
Fracture
Detonate
Twilight
Flow
Efficacy

A weapon's perfect Essence is a specific combination of 1 Primary + 1 Secondary + 1 Skill.


Weapon Database (weapons.json)

The file weapons.json contains all weapons and their ideal Essence stats.

Format

{
  "weapons": [
    {
      "name": "Never Rest",
      "primary": "Will Boost",
      "secondary": "Attack Boost",
      "skill": "Flow"
    },
    {
      "name": "Dreams of the Starry Beach",
      "primary": "Intellect Boost",
      "secondary": "Treatment Efficiency Boost",
      "skill": "Infliction"
    }
  ]
}

Adding Weapons

Option A: CLI

python essence_checker.py --add

Interactive prompts guide you through selecting the stats.

Option B: Edit JSON directly

Open weapons.json and add entries following the format above. Use python essence_checker.py --stats to see all valid stat names.


Configuration

Edit the constants at the top of essence_checker.py:

Setting Default Description
CLIPBOARD_POLL_MS 500 How often to check clipboard (ms)
OVERLAY_OFFSET_X 25 Popup offset right of cursor (px)
OVERLAY_OFFSET_Y 15 Popup offset below cursor (px)
OVERLAY_ALPHA 0.93 Popup transparency (0.0–1.0)
FONT_SIZE 12 Overlay font size
CLOSE_DELAY_MS 400 Delay before click-to-close activates
FOLLOW_MOUSE True Overlay follows cursor movement

OCR Troubleshooting

PowerToys Text Extractor may misread certain characters. The tool includes built-in corrections, but if you encounter issues:

  1. Run python essence_checker.py --test "paste your OCR text here" to see what's detected
  2. Add corrections to the OCR_FIXES dictionary in essence_checker.py:
OCR_FIXES = {
    "lntellect":  "Intellect",    # lowercase L instead of I
    "1ntellect":  "Intellect",    # one instead of I
    "Treatrnent": "Treatment",    # rn instead of m
    # add your own fixes here
}

Tips for Better OCR

  • Drag the selection tightly around the 3 stat names
  • Avoid selecting the level bars and +4 numbers if possible (they're filtered out automatically, but cleaner input = better results)
  • Game resolution of 1080p or higher gives better OCR results
  • Make sure the Essence popup isn't partially obscured

Important Notes

  • ⚠️ Borderless Windowed mode required — fullscreen blocks the overlay
  • The tool does not interact with the game in any way — it only reads your clipboard
  • The overlay is purely informational — no automation, no memory reading
  • The +1/+4 level numbers on stats are irrelevant for matching and are ignored

FAQ

Q: The overlay doesn't appear?

  • Make sure the game is in Borderless Windowed mode
  • Check that PowerToys Text Extractor actually copied text (Ctrl+V to verify)
  • Check the terminal — it logs every detection attempt

Q: Stats are not recognized?

  • Use --test with the exact clipboard text to debug
  • Check for OCR errors and add them to OCR_FIXES
  • Make sure you're selecting enough of the stat text

Q: Can I use this for partial matches (2/3 stats)?

  • Currently only exact 3/3 matches are shown. Partial matching could be added as a feature.

Q: Does this work with non-English game clients?

  • Currently only English stat names are supported. For other languages, you would need to add aliases.

Credits

License

MIT License — see LICENSE


---

About

A lightweight Windows overlay tool that **instantly tells you if a Weapon Essence is perfect** no more alt-tabbing to a browser.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages