Repository navigation
Character Editor
Tools ▸ Character Editor… opens champions straight from the installed game: pick a champion, one of its characters and a skin, and get a window that previews the model on Riot's own shaders and edits its materials, with its skeleton, animations, spells and effects attached. Use it to check a skin edit, recolor, or chroma looks right before it ships, or to see exactly what effects and clips a champion's skin carries.
The Characters window lists Champions, the Characters each champion WAD holds (a champion's WAD carries more than the champion — pets, minions, props) and the Skins of the selected one. Open in Preview opens the character in the preview window.
The preview window is organised in sections:
-
Renderer — OpenGL or Direct3D 11. On D3D11 the character draws through the game's compiled shaders with the skin's own render state, glow (bloom) included, which is the faithful look; the shading dropdown offers Lit and the debug views like the map viewport. Bake tangents writes MikkTSpace tangents into the skin's
.skn, so a normal-mapped skin has the tangents its shader reads, and reloads the skin; right-clicking a.sknin the asset tree ▸ Bake Tangents (PBR) does the same. The file is byte for byte what LTK Manager's bake writes (5,206 of the game's 5,627 skins checked; the other 421 are refused by both tools for a broken normal). A Riot mesh is written into the project; a project file is rewritten in place. - Model / Character / Submeshes — load or unload a skin, show bones and the grid, and see every submesh with the material it draws with. Edits to a material show on both renderers as you make them.
- State — a champion's materials often do not draw what their values say: they are driven at runtime by whether the champion is dead, buffed or playing a particular animation. The state switch offers exactly the conditions the skin's own data defines, with a slider that walks the transition. Alive returns to the resting look.
- Animations — every clip the skin's animation graph names, with play / pause and replay.
- Actions — what the character does, built from the champion's own record: Q / W / E / R in the order the game lists them, move, recall and the basic attack, each with the clip, missile, windup frame and hit the record actually names. Drive the character aims casts at the cursor by their targeting kind, gates them by cooldown, walks into range first, and draws the cast-range ring on the ground.
- Events / Champion VFX — the skin's effects, grouped by animation events and full spell composites, playable at the model or at the target dummy. Picking one takes the same rig the particle editor has, but reads it from the game: an effect a spell flies is flown at that ability's real speed, and one the skin hangs on a bone is hung on that bone — which this window can do and the particle editor cannot, because only this one has the champion. A cast composite and a clip effect are left alone; both already move on their own.
- Voice lines — the skin's VO, played in place.
- Arena / Map backdrop / NVR map / Skybox — play the character on a map the game ships, on that map's own navigation grid, or in front of a legacy map or a skybox. The arena floor carries the map's own materials and lightmap. Dominion and Twisted Treeline are both available and draw on either renderer, including under Direct3D 11 (four-way ground blend, height blend, vertex light and the level's own torches, cutouts and blends).
The material editor is the same one the map side uses — see Materials — with the runtime states above. A submesh with no material of its own inherits the skin's default material block — its diffuse, self-illumination, fresnel, reflection, gloss, emissive, brush alpha, cast-shadows and skin-scale settings are all listed and editable, and any of the 43 fields the schema declares can be added at the value the game already assumes. A submesh can also be given a material of its own, starting from the texture it already draws with so nothing changes appearance; from there its shader, samplers and parameters are ordinary edits.
A skin's submesh lists get editors of their own: initialSubmeshToHide and the other "to hide" fields a checklist of the mesh's submeshes, and submeshRenderOrder an ordered list. Hiding a submesh updates the preview at once. A material that lives in a linked bin (the Nexus glass, for one) loads and draws, and is shown read-only as an external material.
Tools ▸ Import character folder… (the Character Creator) reads an old character folder of any age — mesh, skeleton, animations, texture — brings outdated files to the format the game writes today (skins to 4.1, the pre-2015 rig to the current one, animations to version 5), writes the three .bin files a placed character needs in the shape Riot's own scenery props use, and places the result on the open map at the gizmo. A mesh whose bones the skeleton lacks is refused rather than placed broken; an animation that moves none of the skeleton's joints is left out and reported.
Tools ▸ Add prop to map… does the placing step alone: it lists every character the open map's package already carries — camps, turrets, anything imported — and places one as scenery with the idle it should play.
Both windows offer Client-side prop (ticked by default), which places the prop the way Riot places its own decorations (a MapAnimatedProp, drawn by the game client) rather than as a gameplay character placement. Character placements are spawned by the game's server, which a mod cannot reach, so a prop placed the old way never actually appeared in game; a client-side prop does. Both windows also offer Appear after N s, which keeps the prop hidden until the match clock reaches that time — useful for anything that should show up mid-game rather than at spawn. See Maps and Viewport for editing a prop once it is placed.
A mob or animated prop placed on a map draws through the same pipeline in the map viewport, and Open in Character Editor in the inspector brings it here. See Maps and Viewport.
- Composite caster effects have no authored bone in any game file, so they are placed at the character's root.
- Champion names shown in the game client come from the client plugin, not the game files; the editor shows the names the game files carry.
ReyEngine by TheKillerey — Repository · Releases · Report an issue. This wiki describes v0.5.1.
New here
First mods
Basics
Editors
Advanced
Showcase
Help