89 lines
2.9 KiB
Markdown
89 lines
2.9 KiB
Markdown
# 2026-02-13 - EU-Utility Major Update
|
|
|
|
## UI Fixes Applied
|
|
- **Removed decorative lines** from header (user complaint about "weird lines")
|
|
- **Added scroll area** to sidebar - prevents expanding out of screen
|
|
- **Added drag functionality** - click and drag header to move window
|
|
- **Removed ALL emojis** from all plugins (replaced with text only)
|
|
|
|
## New Features Implemented
|
|
|
|
### 1. Resizable Window
|
|
- Removed `FramelessWindowHint`
|
|
- Window now fully resizable with minimum size 600x400
|
|
- Shows in taskbar properly
|
|
|
|
### 2. Plugin Index Bug Fix
|
|
- **Fixed**: Clicking Spotify opened TP Runner instead
|
|
- Root cause: Plugin index tracking was incorrect
|
|
- Solution: Track buttons in list, store correct index in UserRole data
|
|
|
|
### 3. Skill Scanner v2.0 (Complete Rewrite)
|
|
**OCR Features:**
|
|
- Screenshot capture of skills window
|
|
- EasyOCR/Pytesseract fallback
|
|
- Parses skill names, ranks, points
|
|
|
|
**Log Watching:**
|
|
- Real-time chat.log monitoring
|
|
- Automatic skill gain detection
|
|
- Patterns: "Aim has improved by 5.2 points", "You gained 10 points in Rifle"
|
|
- Automatically adds gains to total values
|
|
- Real-time gain display in UI
|
|
|
|
### 4. Profession Scanner (NEW PLUGIN)
|
|
- OCR scan of professions window
|
|
- Tracks profession ranks (Elite, Champion, etc.)
|
|
- Progress percentage with visual bars
|
|
- 21st plugin added to EU-Utility
|
|
|
|
### 5. Customizable Dashboard
|
|
- Click "Customize" to select widgets
|
|
- Available widgets:
|
|
- PED Balance
|
|
- Skills Tracked
|
|
- Inventory Items
|
|
- Current DPP
|
|
- Today's Skill Gains
|
|
- Professions Count
|
|
- Active Missions
|
|
- Codex Progress
|
|
- Globals/HOFs
|
|
- Session Time
|
|
- Auto-refresh every 5 seconds
|
|
- Reads data from all plugin JSON files
|
|
|
|
### 6. Core Services (NOT Plugins!)
|
|
Following user's requirement - OCR and Log are core services, not plugins.
|
|
|
|
**Log Reader (`core/log_reader.py`):**
|
|
- Real-time chat.log monitoring in background thread
|
|
- Event parsing: skill_gains, loot, globals, damage, heals, missions, etc.
|
|
- Publisher/subscriber pattern for plugins
|
|
- Auto-detects EU log file location
|
|
- Cache of recent 1000 lines
|
|
|
|
**OCR Service (`core/ocr_service.py`):**
|
|
- Multi-backend support: EasyOCR → Tesseract → PaddleOCR
|
|
- Auto-fallback if primary backend unavailable
|
|
- Screen capture (full or region)
|
|
- Returns structured results with bounding boxes
|
|
- `quick_ocr()` convenience function
|
|
|
|
**PluginAPI Integration:**
|
|
- `api.ocr_capture(region)` - All plugins can use OCR
|
|
- `api.read_log(lines, filter)` - All plugins can read log
|
|
- Services auto-initialized on app startup
|
|
- Registered with PluginAPI for universal access
|
|
|
|
## Commits Made
|
|
- `5b127cf` - UI fixes (drag, scroll, no emojis)
|
|
- `72c3c13` - Resizable window, OCR scanners, customizable dashboard
|
|
- `bcd4574` - All plugins disabled by default with enable/disable UI
|
|
- `7f6547f` - Fixed box-in-box UI, added Settings button to header
|
|
- `8ee0e56` - Fixed window taskbar visibility
|
|
- `f6c4971` - Core OCR and Log services with API integration
|
|
|
|
## Total Plugins: 21
|
|
## Core Services: 2 (OCR, Log Reader)
|