# EU-Utility V3 Implementation Plan Based on original Python/PyQt6 EU-Utility analysis. --- ## Original Features Analysis ### 1. Architecture - **Original:** Python 3.11 + PyQt6 - **New:** Rust + Tauri + React + TypeScript - **Plugin System:** 25+ built-in plugins ### 2. UI Structure ``` Main Overlay (Semi-transparent, always on top) ├── Left Sidebar: Plugin tabs/icons ├── Center: Active plugin content └── Bottom: Quick actions bar Floating Icon (Screen overlay) ├── Double-click: Toggle main overlay ├── Right-click: Context menu └── Draggable position ``` ### 3. Plugin Categories #### Dashboard & Utility - [ ] Dashboard - Customizable start page with stats - [ ] Calculator - Standard calculator - [ ] Settings - Preferences configuration - [ ] Plugin Store - Community marketplace #### Search & Information - [ ] Universal Search - Nexus entities (items, mobs, locations) - [ ] Nexus Search - Items and market data - [ ] TP Runner - Teleporter route planner #### Calculators - [ ] DPP Calculator - Damage Per PEC, weapon efficiency - [ ] Crafting Calc - Blueprint calculator with success rates - [ ] Enhancer Calc - Break rates and costs #### Trackers - [ ] Loot Tracker - Hunting loot with ROI analysis - [ ] Skill Scanner - OCR-based skill tracking - [ ] Codex Tracker - Creature challenge progress - [ ] Mission Tracker - Mission and objective tracking - [ ] Global Tracker - Globals, HOFs, ATHs tracking - [ ] Mining Helper - Claims and hotspot tracking - [ ] Auction Tracker - Price and markup tracking - [ ] Inventory Manager - TT value and item management - [ ] Profession Scanner - Profession rank tracking #### Game Integration - [ ] Game Reader - OCR for in-game menus/text - [ ] Chat Logger - Log, search, filter chat #### External Integration - [ ] Spotify Controller - Control playback --- ## Hotkey Mapping | Hotkey | Action | Plugin | |--------|--------|--------| | Ctrl+Shift+U | Toggle main overlay | Global | | Ctrl+Shift+H | Hide all overlays | Global | | Ctrl+Shift+F | Universal Search | Search | | Ctrl+Shift+N | Nexus Search | Search | | Ctrl+Shift+C | Calculator | Utility | | Ctrl+Shift+D | DPP Calculator | Calculator | | Ctrl+Shift+E | Enhancer Calc | Calculator | | Ctrl+Shift+B | Crafting Calc | Calculator | | Ctrl+Shift+L | Loot Tracker | Tracker | | Ctrl+Shift+S | Skill Scanner | Tracker | | Ctrl+Shift+X | Codex Tracker | Tracker | | Ctrl+Shift+R | Game Reader | Scanner | | Ctrl+Shift+M | Spotify Controller | Media | | Ctrl+Shift+Home | Dashboard | Overview | | Ctrl+Shift+, | Settings | Configuration | --- ## New UI Design (Windows Start Menu Style) ### Main Overlay (Bottom Center) ``` ┌─────────────────────────────────────────────────────────┐ │ [Logo] Search plugins, items... [Timer] [Expand] │ ├─────────────────────────────────────────────────────────┤ │ │ │ Quick Access [Session: 02:34:12] │ │ ┌────┐ ┌────┐ ┌────┐ ┌────┐ ┌────┐ ┌────┐ │ │ │Calc│ │Loot│ │Skill│ │Price│ │Search│ │Settings│ │ │ └────┘ └────┘ └────┘ └────┘ └────┘ └────┘ │ │ │ │ Pinned Plugins │ │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │ │ [Icon] Loot Tracker [On] [Pin] │ │ [Icon] Skill Scanner [On] [Pin] │ │ [Icon] DPP Calculator [Off] [Pin] │ │ │ │ All Plugins │ │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │ │ [Icon] Codex Tracker [Off] [Pin] │ │ [Icon] Game Reader [Off] [Pin] │ │ [Icon] Mining Helper [Off] [Pin] │ │ │ ├─────────────────────────────────────────────────────────┤ │ [Status: Online] Ctrl+Shift+U to toggle │ └─────────────────────────────────────────────────────────┘ ``` ### Design Elements - **Background:** Dark glassmorphism (rgba(32, 32, 32, 0.95)) - **Blur:** 32px backdrop blur - **Border:** 1px rgba(255, 255, 255, 0.08) - **Shadow:** 0 8px 32px rgba(0, 0, 0, 0.4) - **Border Radius:** 32px (collapsed), 12px (expanded) - **Position:** Bottom center of screen - **Width:** 640px (compact), 720px (expanded) ### Features 1. **Collapsible** - Click logo to expand/collapse 2. **Search** - Type to filter plugins instantly 3. **Pin System** - Pin favorite plugins to top 4. **Quick Access** - 6 shortcut icons always visible 5. **Plugin List** - All plugins with toggle switches 6. **Session Timer** - Live hunt duration 7. **Status Bar** - Online/offline indicator --- ## Implementation Phases ### Phase 1: Core Framework (COMPLETE) - [x] Rust + Tauri setup - [x] React + TypeScript frontend - [x] Plugin system architecture - [x] Event bus - [x] Settings persistence - [x] Hotkey system - [x] Window management ### Phase 2: UI Redesign (IN PROGRESS) - [ ] Windows Start Menu overlay - [ ] Collapsible search bar - [ ] Plugin grid/list view - [ ] Pin/unpin functionality - [ ] Quick access icons - [ ] Session timer display ### Phase 3: Essential Plugins - [ ] Dashboard - [ ] Universal Search - [ ] Calculator - [ ] Loot Tracker - [ ] Settings ### Phase 4: Advanced Plugins - [ ] DPP Calculator - [ ] Skill Scanner (OCR) - [ ] Codex Tracker - [ ] Game Reader (OCR) ### Phase 5: Full Feature Set - [ ] All 25+ plugins - [ ] Spotify integration - [ ] Chat logger - [ ] Plugin marketplace --- ## Technical Decisions ### Plugin System ```typescript interface Plugin { id: string; name: string; description: string; category: 'dashboard' | 'search' | 'calculator' | 'tracker' | 'game' | 'media'; icon: string; version: string; author: string; hotkey?: string; pinned: boolean; active: boolean; component: React.ComponentType; } ``` ### Data Storage - SQLite for local data - Tauri settings API - Plugin data isolation ### OCR Integration - Tesseract for Windows (static link) - EasyOCR fallback - Screen region capture - Text recognition pipeline ### Screen Reading - Window capture (game window) - Region selection (drag to define) - OCR text extraction - HP bar detection - Coordinate reading - Mob name recognition --- ## File Structure ``` src/ ├── components/ │ ├── Layout.tsx │ ├── Sidebar.tsx │ ├── PluginGrid.tsx │ ├── PluginList.tsx │ ├── SearchBar.tsx │ ├── QuickAccess.tsx │ └── PinnedPlugins.tsx ├── plugins/ │ ├── dashboard/ │ ├── search/ │ ├── calculator/ │ ├── tracker/ │ └── game/ ├── pages/ │ ├── Dashboard.tsx │ ├── Plugins.tsx │ ├── Settings.tsx │ └── Overlay.tsx └── store/ ├── appStore.ts └── pluginStore.ts ``` --- ## Next Steps 1. **Implement new overlay UI** (Windows Start Menu style) 2. **Add pin/unpin functionality** 3. **Create plugin grid component** 4. **Build essential plugins** (Dashboard, Search, Calculator) 5. **Add OCR integration** for Game Reader --- *Implementation Plan - EU-Utility V3*