
KFPS - Kloudy's Forza Painter Suite, a full FH6 vinyl generator/importer/editor thing I accidentally turned into a whole project
I have been working on KFPS - Kloudy's Forza Painter Suite, a Windows-focused toolset for making and importing Forza Horizon 6 vinyls without spending the rest of your natural life clicking circles in the in-game editor.
It started as a helper for image-to-vinyl generation and somehow became a full little suite with generation, previews, imports, manual editing, image prep tools, update handling, and a browser-based vinyl editor.
If you make anime liveries, logos, stickers, character art, decals, or you just like torturing the FH6 vinyl editor until it gives you something decent, this is probably for you.
What it does
KFPS can take a normal image and turn it into an FH6-compatible vinyl JSON, finalize multiple checkpoints, preview them, and import the result into the game through a reusable vinyl template.
It also includes a manual JSON editor, so you are not locked into whatever the generator gives you. You can clean things up, move layers, trace over an image, replace shapes, sample colors, and export the edited JSON back into the importer.
You can also use the editor to build vinyls from scratch if you would rather place shapes manually instead of starting from a generated file.
The goal is not just "generate a file and good luck". The whole workflow is meant to be inside one folder:
- prep image
- generate vinyl
- browse finalized checkpoints
- preview results
- import into FH6
- manually edit JSON if needed
- update the app without redownloading everything manually
Main features
Image-to-vinyl generation
KFPS includes a bundled generator for turning PNG/JPG source art into FH6 vinyl JSON.
Current presets are built around common use cases:
- Shaded Character Art for anime, characters, hair, faces, mixed soft and sharp detail
- Flat Colors for stickers, decals, mascot-style art, cleaner color regions
- Smooth Gradients for softer lighting, glossy shading, and blended transitions
The app keeps normal generation simple. Most users only need to pick an image, choose a preset, set the template layer count, and press generate.
There are also pro settings if you want manual control over resolution, samples, source prep, and repair behavior.
Final checkpoint browser
Generation does not just dump files everywhere and leave you guessing.
KFPS organizes generated runs into folders and shows finalized checkpoints in the app with previews, scores, and selected JSON paths.
Typical final checkpoints are things like:
500, 1000, 1250, 1500, 2000, 2500, 3000
So you can compare lower-layer and higher-layer versions instead of committing blindly to one output.
One FH6 JSON importer
The importer handles compatible generated finals, editor exports, hand-edited JSONs, and exported game JSONs through one import path.
The recommended workflow is to create one reusable 3000-layer plain white circle template in FH6, save it, reopen it, ungroup it, and reuse it for imports.
KFPS imports into that template and then trims/culls the in-game layer count down to the design you actually imported.
Important FH6 quirk: sometimes the live in-game editor preview looks wrong immediately after import. Save and reopen the vinyl group before judging the final result. The saved/reloaded group is what matters.
Browser-based vinyl editor
This is one of the parts I am most excited about.
KFPS includes a local browser editor for FH6 JSON files. It is not a raster editor and it is not Photoshop, but it gives you way more control than raw JSON editing or only relying on the generator.
The editor can:
- create new vinyls from scratch
- load generated, exported, or hand-edited JSON
- place FH6 shapes from a searchable shape library
- favorite common shapes
- use a source image overlay for tracing
- sample colors from the overlay or existing shapes
- move, stretch, scale, skew, rotate, and nudge shapes
- box-select layers
- invert box-select
- group layers internally without changing the exported vinyl
- hide or lock editor groups
- duplicate, delete, reorder, and recolor layers
- use guide lines and snapping
- save editable project files
- export FH6-compatible JSON back into the KFPS importer
The editor also has a startup help window with the important limitations and shortcuts, because the thing has grown enough that throwing people into it with no explanation would be cruel.
Shape library
The editor includes FH6 shape browsing with names, families, searching, favorites, and shape placement modes.
You can add shapes normally, insert them above/below a selected layer, or replace the selected layer's shape while keeping its position, color, alpha, group, lock state, and layer order.
Gradient shapes preview with their bundled fade masks in the editor instead of just appearing as flat solid blocks.
Source image tools
KFPS has an image tools section with useful prep links for:
- background removal
- browser-based upscaling
- browser-based downscaling/compression
There is also an Image Size Helper that checks your image resolution, megapixels, and gives same-aspect resize targets from 1 MP to 6 MP.
This matters more than people think. Tiny source images can lose detail before the generator ever sees them, and insanely huge images can waste time without actually improving the final vinyl.
Launcher and updater
The standalone release comes with a launcher that can:
- start the app
- check Python/dependencies
- check GitHub main version
- run updates
- keep generated/runtime data separate from app files
The goal is that normal users can update from the launcher instead of dragging random files over each other every time something changes.
Basic workflow
The short version:
- Put your source image into the
Imagesfolder next to the launcher. - Open the launcher.
- Launch the app.
- Go to Generate Final Vinyl.
- Pick your image and preset.
- Set the target/template layer count.
- Click generate.
- Wait until finalization is complete.
- Go to Import JSON.
- Pick the finalized checkpoint you want.
- In FH6, load your reusable 3000-layer plain white circle template and ungroup it.
- Import.
- Save and reopen the vinyl group before judging the final result.
For manual cleanup:
- Open the Editor tab.
- Launch the editor.
- Import your generated or exported JSON.
- Add an overlay if you want to trace.
- Fix shapes, colors, alignment, layer order, etc.
- Export FH6 JSON.
- Import that JSON with the main KFPS importer.
What makes it useful
The big thing for me is that it is not just a generator.
It is more like a full workflow around FH6 vinyls:
- generate from art
- compare final checkpoints
- inspect previews
- import into the game
- manually fix what the generator gets wrong
- prepare source images
- use one reusable FH6 template
- update the whole thing without manually replacing files
The generator is good, but generators are never magic. The editor is what makes the workflow feel more realistic, because you can actually clean up bad spots instead of rerunning forever and hoping the next output fixes one eye, one logo edge, or one weird blob.
Current limitations
I do not want to oversell it.
- It is Windows-focused.
- The FH6 import workflow needs a prepared FH6 vinyl template.
- You still need to save/reopen imported vinyls sometimes before the game displays them correctly.
- It does not turn every image into a perfect carbon copy.
- The editor edits FH6 vinyl JSON layers, not pixels.
- Some source images need prep work first, especially bad background removal, tiny sources, or huge noisy images.
For best results, use clean source art, transparent backgrounds when possible, sensible image size, and do not judge everything from the first live in-game refresh.
Who this is for
Probably useful if you:
- make FH6 anime liveries
- make character vinyls
- want decals/stickers/logos without rebuilding everything by hand
- want to edit generated JSON visually
- want a searchable FH6 shape library outside the game
- want to trace over an overlay image
- want a faster way to test multiple layer budgets
- are tired of losing hours to the in-game editor for tiny adjustments
Probably not useful if you expect one-click perfection from any random 8K image with a messy background.
Download / setup
GitHub repo:
https://github.com/heyitshestia/kloudys-forza-painter-suite
Download the latest standalone release zip, extract it somewhere writable like your Desktop, and run:
Kloudys Painter Launcher.exe
The release is meant to include the app, bundled Python/runtime dependencies, generator executable, editor files, update scripts, and the folder structure it needs.
If you are on an older version and the launcher does not open, go into the KloudysFH6Painter folder and run:
03_update_from_github.bat
After that, the launcher should work normally again.
If you need help, want to ask questions, report weird imports, or just want to see what other people are making, there is also a Discord for community answers and troubleshooting:
Small note
KFPS is free. There is a Ko-fi link in the app and repo, but it is completely optional.
If the tool saves you time and you feel like leaving a tiny tip, that helps with testing time, assets, and maybe eventually getting a proper logo/mascot made. No pressure.
TL;DR
KFPS is a Windows FH6 vinyl suite that can generate vinyls from images, preview finalized checkpoints, import JSON into FH6, and manually edit FH6 JSON in a browser-based shape editor with overlays, color picking, layer tools, snapping, shape search, favorites, and project saves.
It is basically my attempt at making FH6 vinyl creation less painful and less dependent on fighting the in-game editor for every single layer.
PS: everything mentioned here is subject to change because I keep improving things, moving things around, and occasionally maybe breaking something in the process. If something acts weird, check for updates or yell at me nicely in Discord.