A League of Legends skin changer for Windows. Lets you select and apply skins directly in the client during champion select. Heavily inspired by Rose.
- Detects your League of Legends installation automatically
- Sets up Pengu Loader and the bundled LTK runtime on first run
- Injects a plugin into the League client that adds skin selection UI
- Communicates over WebSocket between the plugin and the Go backend
- Downloads pre-built skin packages for your game version and uses the signed LTK runtime to apply them
- Windows
- League of Legends installed
- Administrator privileges
Download ame.exe from the releases page and run it. First-run setup is automatic.
To uninstall, run uninstall.bat included in the release.
AME keeps launch, overlay, suspend/resume, and Unstuck diagnostics in
%LOCALAPPDATA%\ame\logs\launch.jsonl. Two rotated backups retain recent history
across application restarts and normal PC reboots, using approximately 1.5 MB total.
Use Download logs in AME settings to export retained backend history together
with the current plugin diagnostics. Routine skin selection and cache messages
are omitted. If a launch freezes, export after recovery and include the approximate
time of the failure. An abrupt power loss can still lose the most recent writes.
Requires Go 1.21+, Rust, and PowerShell on Windows.
./tools/ltk-runtime/build.ps1
go mod tidy
go build -trimpath -ldflags="-s -w" -o dist/ame.exe ./cmd/ame
Skin packages come from a remote catalog that release builds have built in.
Set AME_SKIN_CDN_URL and AME_SKIN_CDN_TOKEN to point a source build at
one; without them a source build cannot apply skins.
cmd/ame/ Main application entry point
internal/
config/ Settings persistence
game/ Game directory detection
modtools/ Overlay runtime dispatch
ltk/ Bundled signed host and overlay builder
server/ WebSocket server
setup/ First-run setup
skin/ Skin download and extraction
updater/ Auto-update from GitHub releases
src/ League client plugin (JavaScript)
- Auto-detects League of Legends game directory
- Skin selection UI injected into champion select
- Skins and chromas, including inherited animations and the 30 alternate forms listed in AME. Gear forms are fixed selections; original in-game progression/form-switching systems are not implemented.
- Auto-apply for ARAM and other game modes
- System tray with show/hide controls
- Automatic updates from GitHub releases
- Pengu Loader — JavaScript plugin loader for the League of Legends Client
- Rose — Inspiration for this project
This is an unofficial fan-made tool. It is not endorsed by Riot Games. Use at your own risk.
The runtime is bundled with AME and applies skin packages through a
hash-pinned mod runtime; its build inputs live in tools/ltk-runtime. Packages
are made for one game build: after a League patch, skins are unavailable until
packages for the new build are published, rather than applying stale ones.
go test ./... covers the normal unit suite. Set AME_TEST_GAME_DIR to the installed Game directory
(with AME_TEST_CELESTIAL_INDEX) for the offline Celestial routing test. AME_TEST_LTK=1 enables a signed
host configuration-only test; it does not scan for or attach to a game.