Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
翻譯準備中
Farmy – free League of Legends overlay for Windows: exact CS, summoner spell timers, mana for your combo, gold to your next item, matchup win rates and auto runes. Open source.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Formerly known as „All You Need“.
Version 1.9 · Website · Changelog · Download · 💡 Share an idea
A free, small and clean overlay for League of Legends on Windows. It shows what matters in a fight – exact CS, your summoner cooldowns, XP to the next level, mana for your combo, the gold you still need – without covering your screen. It only uses information you can already see as a player and never touches the game process.
After the game it works like a personal coach: a review of every game, your progress per skill, where and why you die, and – for junglers – a full jungle analysis, all from your own match history (new in 1.9).
The interface is available in English and German. Switch it in the tray menu → Sprache / Language; on first start it follows your Windows language.
Farmy-Setup-x.y.z.exe (installer) or Farmy-x.y.z-portable.exe
(no install) from the Releases page.Get-FileHash .\Farmy-Setup-x.y.z.exe), and the full source is in this repository.That's it. The League folder, your resolution and your HUD scale are detected automatically. From 1.7 on, the installed app updates itself: new versions download in the background and install when you quit Farmy (or right away via the tray menu). Check for updates in the tray menu checks on demand. The portable exe shows a notice instead.
Farmy never reads or changes the game's memory, injects nothing and sends no inputs. It only uses Riot's official Live Client Data API, the League client API that rune and stats tools use, and small screenshots of what is already visible on your screen (see where the data comes from). Information Riot does not allow – enemy cooldown timers, augment win rates – is deliberately left out. The project is not reviewed or approved by Riot, so no third-party tool can make promises, but it only shows what you could already see or look up yourself.
Farmy grows from what players actually miss in their games – so please bring in your own ideas, even very personal ones. Something that would help you in a specific situation, a small annoyance, a whole new feature: all of it is explicitly wanted.
👉 Share an idea (short form, German or English)
The only limit is Riot's rules: the app uses official APIs and what is already visible on your screen, so things like enemy cooldown timers or augment win rates are off the table. Post those ideas anyway – often there is an allowed variant. Found something that is read wrong? Use the bug form instead.
In-game panel
Tab scoreboard
Jungle route
Stats window (frameless, opens only when you want it: tray, Ctrl+Shift+S – also in game – or a second start)
| Key | Action |
|---|---|
| Ctrl+Shift+O | Toggle overlay |
| Ctrl+Shift+E | Move panel (or drag the ⠿ handle) |
| ⚙ in the panel header | Overlay settings (also in the tray menu) |
| Ctrl+Shift+S | Stats window |
| Tab (in game) | Scoreboard badges – the key is only read, the game still receives it |
Screen regions are computed from League's game window and HUD scale (read from Config/game.cfg), so
Borderless, Windowed and a game resolution smaller than your screen all work. When another window is in
front, the overlay hides and nothing is read.
Tested at 3440×1440 with HUD scale 0 and 100, and with a 1920×1080 game window. If something is read
wrong, open the stats window → Live game → Check recognition during a game: it shows exactly
which screen areas are read and what was recognized. Please attach that screenshot plus your
resolution and HUD scale to an issue.
| Data | Source |
|---|---|
| In-game values | Live Client Data API (https://127.0.0.1:2999, only during a game) |
| Ranks, history, runes, champ select | League client API (LCU), credentials from the client's lockfile |
| Item, champion and rune data, icons | Data Dragon (Riot's public CDN), cached locally |
| Exact CS, cooldowns, XP, scoreboard | Small screen regions, analysed locally (own digit recognition, Tesseract as fallback) |
| Build and rune suggestions | lolalytics.com build page (Emerald+), one request per champion and role, cached for a day; fallback for runes: Riot's own recommended page from the client |
| ARAM Mayhem augment tiers | Data: arammayhem.com (CC BY 4.0): pick rates and combo tags, no win rates (Riot does not allow augment win rates); English names from CommunityDragon; both cached for a day |
| Stat Anvil shards | Rated locally against your build (item tags from Data Dragon) |
| Jungle routes | Phylaris' Jungle Clear Compilation (public Google Sheet, downloaded as CSV, cached for a day) |
| Updates | GitHub releases of this repository (latest.yml), checked at start and every 6 hours (installer version only) |
No Riot API key is needed. Apart from Data Dragon, the lolalytics build page, the arammayhem.com and CommunityDragon data (only in ARAM Mayhem), the jungle route sheet, the update check on GitHub and a one-time download of the OCR language data, nothing leaves your PC. Only the champion and role are part of these requests.
npm install
npm start # run in development
npm run dist # build installer + portable exe into dist/
Requires Node.js 20+. Settings live in %APPDATA%\Farmy\config.json (created from
config.example.json on first start), shared by npm start and the installed app.
To use the app straight from source without building, create a shortcut to
node_modules\electron\dist\electron.exe with the project folder as argument. Changes to renderer/
reload instantly; for everything else restart the app.
| File | What it does |
|---|---|
src/live.js | Game data → panel values |
src/layout.js | Screen regions for any resolution and HUD scale |
src/gamewindow.js | Finds League's game window (position, size, in front or not) |
src/minimap.js, src/jungle.js | Minimap detection and jungle routes |
src/updater.js | Auto-update from GitHub releases |
src/ocr.js, src/screengrab.js | Screen reading (small screen regions via Windows GDI, no video stream) and scoreboard search |
src/digits.js, src/digits.json | Digit recognition; templates learned with tools/digit-samples.js |
src/lcu.js | League client access |
renderer/overlay.*, renderer/stats.* | Panel and stats window |
tools/ | Calibration and render helpers |
MIT, see LICENSE. Use at your own risk: this project is not reviewed or approved by Riot Games, and Riot may change the interfaces it relies on at any time.
Farmy isn't endorsed by Riot Games and doesn't reflect the views or opinions of Riot Games or anyone officially involved in producing or managing Riot Games properties. Riot Games, and all associated properties are trademarks or registered trademarks of Riot Games, Inc.