I hate love this name. A standalone C++ QT editor for Forza vinyl groups and liveries. Does not modify the game memory in runtime. We are not responsible for any damage done to your groups/liveries, use at your own discretion. Preferred communication is via Discord Channel, but you can leave the issue here as well.
Design vinyl groups in 2D, then inspect the finished livery on the car in a live 3D preview.
- Import/export to Forza proprietary binary format.
- Save/load project to json files.
- Full transformations for shapes and groups.
- Custom groups, reusable in multiple projects.
- Add raster or SVG image overlays as guide layers.
- Direct shape parity with the game engine.
- 3D car preview with live livery projection; auto-loads the matching car model.
- Blazingly fast perfomance thanks to C++.
Download the latest release, launch ForzaLiveryStudio.exe. Read manual for keyboard shortcuts and tools guide.
Configure all the windows as you need them and press Window -> Save Layout. If you want to rename the default shapes, go to assets/vector/shape_names.json.
All settings as well as custom groups are stored in your QSettings, in the registry HKEY_CURRENT_USER\Software\ForzaTools\ForzaLiveryStudio.
Requirements: Qt6 (including Qt SVG) via vcpkg, C++ compiler, zlib.
Run the build script:
.\tools\build.ps1See developer guide for detailed instructions.
Requirements: Qt6, zlib, CMake 3.24+, C++20 compiler.
Install dependencies:
# Arch (SteamOS)
sudo pacman -S qt6-base qt6-tools qt6-svg zlib cmake gcc ninja
# Ubuntu/Debian
sudo apt install qt6-base-dev qt6-tools-dev qt6-svg-dev zlib1g-dev cmake g++ ninja-build
# Fedora
sudo dnf install qt6-qtbase-devel qt6-qttools-devel qt6-qtsvg-devel zlib-devel cmake gcc-c++ ninja-buildConfigure and build:
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build buildRun:
chmod +x ./build/ForzaLiveryStudio
./build/ForzaLiveryStudioSee developer guide for detailed build and development instructions.
The import/export for groups is fully supported, core functionality in place. Source-backed liveries can be imported, previewed in 3D on a car model. The icons are handmade, we need a proper designer, I know they are ugly but at least we wont get sued. Livery import/export may have some shape transform mutations due to alingment issues, create an issue and attach a livery if that happens, we will investigate.
| Version | Group | Livery |
|---|---|---|
| Horizon 6 | Import/Export | Import/Export |
| Horizon 5 | Import | Import |
| Motosport 23 | Import | Import |
- User Manual - keyboard shortcuts, tools, panels, and recommended pipelines.
- Developer Guide - build steps, repository layout, code map, and core entry points.
- C_group Binary Format - technical reference for the vinyl group binary payload.
- C_livery Binary Format - technical reference for the livery binary container and embedded groups.
- Header File Format - structure of the Forza Horizon header metadata file.
- TODO - planned features and improvements.
- Did you use AI? - Yes. Initially all of project base has been built in python by hands, but due to performance limitations we decided to port the project to C++. To speed up porting we used AI.
- When
[FeatureName]? - Tomorrow. - Can I get banned for this? - No.
- I want
[FeatureName], where to request? - in the discord channel "suggestions" - Why not Rust? - https://youtu.be/8ue3PXu3W8Q
- Fr4g3z - cool guy, helped a lot, complained a lot, format reversing.
- Mixbob - lazy bastard, tested ingame, usage feedback.
- Zloysvin - PR Manager / shape renamer.
- Pengyss - non-uniform group tranform algorithm.
- Eaterrius - big money man, provided tokens.
- Doliman100 - reverse engineering Forza file formats and documentation.
- All the people's liveries/groups I used to decode the format.




