How metekraly3808/wand-enhancer-source works
WandEnhancer is a Windows desktop tool for configuring and locally patching Wand, with an optional phone-accessible web panel. The main workflow is to find or select an installation, choose patch options in the desktop UI, and have the enhancer modify and repack the client before applying a launch strategy. A watcher can reapply patches after client updates. The panel communicates over a LAN HTTP/WebSocket bridge and exposes game, trainer, and remote-control features. Edges follow shown calls, source-index references, or README statements; some panel internals are unsampled, so their connections are left out or marked unverified.
Main entry points: Enhancer.cs Patch orchestration · Program.cs Application startup · MainWindowVm.cs Main window · server.ts LAN bridge server
Components 23
Desktop app
- Application startup
WandEnhancer/Program.cs - Main window
WandEnhancer/View/MainWindow/MainWindowVm.cs
Client patching
- Patch orchestration
WandEnhancer/Core/Enhancer.cs - Patch options
WandEnhancer/Models/PatchConfig.cs - Launch strategy
WandEnhancer/Core/Patching/Strategies/StrategyFactory.cs - ASAR content patches
WandEnhancer/Core/Patching/Content/AsarContentPatcher.cs - Panel and scripts
WandEnhancer/Core/Patching/Content/RemotePanelInjector.cs
Archive handling
- ASAR extraction
AsarSharp/AsarExtractor.cs - Archive disk operations
AsarSharp/AsarFileSystem/Disk.cs - Archive integrity
AsarSharp/Integrity/IntegrityHelper.cs
Remote panel
- Web panel UI
web-panel/src/app - Remote session client
web-panel/src/remote-session/remote-session.client.ts - Panel protocol
web-panel/protocol/messages.ts - LAN bridge server
web-panel/bridge/src/server.ts - Payload normalizers
web-panel/bridge/src/normalizers/index.ts - Browser preferences
web-panel/src/shared/storage.ts
Supporting services
- Settings
WandEnhancer/Core/Services/SettingsManager.cs - Install discovery
WandEnhancer/Utils/WeModInstalls.cs - Update watcher
WandEnhancer/Core/Services/UpdateWatcherService.cs - Localization
WandEnhancer/Core/Services/LocalizationManager.cs
Other components
- Desktop user
- Phone user
- Wand client
Connections 25
- Desktop user → Application startup: launches
WandEnhancer/Program.cs - Application startup → Main window: opens
WandEnhancer/Program.cs - Main window → Patch orchestration: starts patching
WandEnhancer/View/MainWindow/MainWindowVm.cs - Main window → Install discovery: finds installation
WandEnhancer/View/MainWindow/MainWindowVm.cs - Main window → Settings: loads settings
WandEnhancer/View/MainWindow/MainWindowVm.cs - Settings → Patch options: stores options
WandEnhancer/Core/Services/SettingsManager.cs - Application startup → Launch strategy: creates strategy
WandEnhancer/Program.cs - Patch orchestration → Patch options: reads options
WandEnhancer/Core/Enhancer.cs - Patch orchestration → ASAR extraction: extracts archive
WandEnhancer/Core/Enhancer.cs - Patch orchestration → ASAR content patches: applies content patches
WandEnhancer/Core/Enhancer.cs - Patch orchestration → Panel and scripts: injects panel and scripts
WandEnhancer/Core/Enhancer.cs - Patch orchestration → Launch strategy: applies launch mode
WandEnhancer/Core/Enhancer.cs - ASAR extraction → Archive disk operations: uses disk operations
AsarSharp/AsarExtractor.cs - Archive disk operations → Archive integrity: checks integrity
AsarSharp/AsarFileSystem/Disk.cs - Update watcher → Patch orchestration: reapplies patches
WandEnhancer/Core/Services/UpdateWatcherService.cs - Update watcher → Install discovery: resolves install
WandEnhancer/Core/Services/UpdateWatcherService.cs - Application startup → Update watcher: starts watcher
WandEnhancer/Program.cs - Application startup → Localization: initializes locale
- Phone user → Web panel UI: uses panel
README.md - Web panel UI → Remote session client: uses session client
- Remote session client → Panel protocol: exchanges messages
web-panel/src/remote-session/remote-session.client.ts - LAN bridge server → Panel protocol: routes messages
- LAN bridge server → Payload normalizers: normalizes payloads
web-panel/bridge/src/server.ts - LAN bridge server → Wand client: communicates with client
- Web panel UI → Browser preferences: persists preferences