Skip to content
IsllanrxPublic

Repository files navigation

Bullet

Bullet

A League of Legends skin changer for Windows, written in Rust.
The right skin loads into the match — every mode, every time.

CI OpenSSF Scorecard Release Downloads Platform Rust stable MIT Discord

Download · Discord community · Report a bug


Pick any skin in Bullet's own window during champion select. Bullet builds a copy of the game files that contain it, and when the game starts it reads that copy instead of its own. The game installation is never modified.

Bullet in Champion Select Bullet in Game

Important

Educational project, provided as is, without warranty. The author accepts no responsibility for any damage, account penalty or loss caused by its use. See the Disclaimer.

Features

  • Every skin and chroma, including form skins, chosen in champion select and loaded when the game starts.
  • Random skin and history: roll one, or reuse the last skin you played on each champion.
  • Custom mods: .fantome, .zip and .modpkg, checked and adjusted against the current patch before use.
  • Classic Rift: legacy champion models, generated from your installed game.
  • Party mode: friends see each other's skins through an end-to-end encrypted relay, up to five players. Friends in the same lobby need no code.
  • Always up to date: skins are generated from the game you have installed, so a patch never breaks them.
  • Safe by design: runs without administrator rights, never writes to the game folder, verifies every binary and collects no telemetry.
  • Updates you approve, verified against the release's signed checksum list.
  • English, Portuguese and Spanish. Free and open source: if you paid for it, you were scammed.

Installation

  1. Install Bullet. Download Bullet-Setup-<version>-x64.exe from Releases and run it, or from PowerShell (not as administrator):

    irm https://raw.githubusercontent.com/Isllanrx/Bullet/main/install.ps1 | iex

    The script checks the installer against the release's SHA256SUMS and its Authenticode signature before installing.

  2. The native engine comes with it. The installer places Bullet's own injection engine, bullet-br.exe and bullet-br.dll, in C:\Program Files\Bullet\tools. Nothing else is downloaded. Official releases carry Bullet's Authenticode signature, and Bullet refuses to run an engine file signed by anyone else.

  3. Start Bullet from the Start menu, normally (not as administrator). It lives in the system tray. On the first start Bullet asks you to sign in with GitHub: it shows a code, opens github.com and you enter the code there. Bullet then checks that your account starred this repository. The check repeats on every start; while offline, a check from the last 7 days is accepted. The sign-in is stored for your Windows account only.

Usage

  1. Open the League client and Bullet, in either order.
  2. Pick a champion in champion select. Bullet's window lists its skins and chromas.
  3. Choose one and play.

Custom mods go into the category folders under %LOCALAPPDATA%\Bullet\custom_mods, or are imported from the Mods tab. Party rooms are created from the tray, or offered automatically when friends running Bullet share your lobby. Optional settings are listed in .env.example.

Troubleshooting

Logs are in %LOCALAPPDATA%\Bullet\logs (the tray opens the folder); BULLET_LOG=debug adds detail. Export diagnostics in the control panel zips everything needed for a report. If a skin or mod breaks match loading, turn off Inject skins in the control panel. Close other skin tools while Bullet runs: two injectors conflict.

Attach the log when you open an issue, or ask on Discord. Security issues go through a private advisory.

Building from source

cargo xtask check
cargo xtask package
cargo xtask installer

Contributions: CONTRIBUTING.md.

Acknowledgements

Bullet was inspired by Rose and built by studying the open projects listed in THIRD-PARTY-NOTICES.md. Maintained by Isllan Toso — isllan.dev.

Disclaimer

Bullet is published for educational purposes, as is, without warranty of any kind, as stated in the MIT license. The author assumes no responsibility for any damage caused by its use, including account suspensions or bans. Using third-party software with League of Legends goes against Riot Games' Terms of Service: you decide whether to use it and bear the consequences. Bullet only changes what you see on your own machine. It is not affiliated with or endorsed by Riot Games; League of Legends is a trademark of Riot Games, Inc.

Made with Slint

License & Intellectual Property

  • Public Repository: The source code in this repository is licensed under the MIT License.
  • Proprietary Native Engine & DLL: The native injector host bullet-br.exe, native DLL bullet-br.dll, and native IPC protocols are closed-source proprietary software owned exclusively by Isllan Toso and maintained in a private repository (Isllanrx/bullet_dll). They are NOT covered by the MIT license.
    • No Commercial Use: Commercialization, monetization, sale, or paid distribution of the native binaries is strictly prohibited.
    • No Reverse Engineering: Decompilation, disassembly, protocol extraction, or reverse engineering by any person, automated tool, or AI agent/model is strictly prohibited.
  • Third-Party Components: Licensed under their respective terms as listed in THIRD-PARTY-NOTICES.md.