A multi-threaded automation framework designed to orchestrate simultaneous game client instances using heuristic pattern recognition.
Notice: This repository is maintained for educational and historical purposes only. The codebase relies on legacy API endpoints and interaction methods that are no longer supported by the target platform. The software is non-functional in the current environment.
Evelynn was developed as a research project to explore the limits of System.Threading and Task Parallel Library (TPL) in C#. The primary goal was to create a centralized dashboard capable of managing the lifecycle of 20+ concurrent graphical applications (League of Legends clients) with minimal resource overhead.
Unlike simple macro recorders, Evelynn utilized a sophisticated State Machine architecture to make real-time decisions based on visual feedback and API responses, simulating organic user behavior.
- High-Concurrency Architecture: Engineered a custom threading kernel to handle up to 20 simultaneous sessions, optimizing CPU and RAM usage to prevent system deadlocks.
- Autonomous State Management: Implemented a robust decision-making engine that handled complex workflows (Login -> Queue Management -> Gameplay Loop -> Post-Game Analysis) without human intervention.
- Computer Vision & OCR: Integrated heuristic analysis to detect game states (e.g., health bars, map coordinates) directly from the frame buffer when API data was insufficient.
- Centralized Command Dashboard: A WPF-based control panel allowing users to monitor telemetry data, progress, and resource consumption of all active "worker" threads in real-time.
Demonstration of the automation logic and multi-instance management capabilities:
During the development of this framework (V3), several critical software engineering challenges were addressed:
- Race Conditions: Managed shared resources across multiple threads to ensure thread safety during logging and API calls.
- Memory Leak Prevention: Optimized the disposal of heavy graphical objects and bitmap data during long-running sessions.
- Exception Recovery: Built a self-healing mechanism that could detect crashed instances and restart the specific workflow node without affecting other active sessions.
This software was created strictly for learning purposes regarding desktop automation and reverse engineering. It is not intended for use in production environments or to violate any Terms of Service.
