A modding toolkit for Jujutsu Kaisen Cursed Clash. The repository ships the decompiled C++ source, editor plugins, and Python tooling. Game assets are not included — you extract them from your own copy of the game.
| Requirement | Notes |
|---|---|
| Jujutsu Kaisen Cursed Clash (Steam) | You must own and install the game. The mod kit reads pak files from your install. |
| Unreal Engine 5.1.1 | Install via the Epic Games Launcher. This project is pinned to UE 5.1. |
| Visual Studio 2019 | Desktop development with C++ workload. Download without MS Account — grab vs_community.exe. |
| ~60 GB free disk space | The import pipeline needs ~50 GB temporarily while unpacking paks, plus space for the extracted assets that stay in the project. |
| Windows 64-bit | Primary supported platform. |
The Tools/ folder should already contain retoc.exe, oo2core_9_win64.dll (Oodle decompression), and jjkue.exe. If retoc.exe is missing, download it from the retoc releases page and place it in Tools/.
git clone <repo-url> JujutsuKaisenCC
cd JujutsuKaisenCCThe repo intentionally excludes most game content. After setup you will have source code, config, plugins, Python scripts, and mod templates under Content/Mods/.
The JJK Mod Kit menu is registered by Content/Python/init_unreal.py, which runs automatically on editor startup.
- Open Edit → Plugins.
- Search for Python Editor Script Plugin and enable it.
- Restart the editor when prompted.
On first launch you may also be asked to enable other project plugins (JJKModKit, BlueprintUncooker, etc.) — accept those as well.
Option A — open the project (easiest for first time)
Double-click JujutsuKaisenCC.uproject. When prompted, choose Yes to rebuild missing modules. The first compile can take 15–30+ minutes depending on your machine.
Option B — build from the terminal
Close the Unreal Editor first, then from the project root:
.\build.ps1Or run the build command directly:
& "$env:ProgramFiles\Epic Games\UE_5.1\Engine\Build\BatchFiles\Build.bat" `
JujutsuKaisenCCEditor Win64 Development `
"$(Get-Location)\JujutsuKaisenCC.uproject" `
-waitmutexNote: If the editor is open with Live Coding active, the build tool will refuse to run. Either close the editor, or press Ctrl + Alt + F11 inside UE to trigger a live-reload compile instead.
After a successful build, open JujutsuKaisenCC.uproject. You should see JJK Mod Kit in the main menu bar.
This is a one-time step that unpacks the game's cooked pak files and copies them into the project's Content/ folder.
- Install the game via Steam (default path shown below).
- Confirm
Tools/retoc.exeexists. - Set the game executable path (skip if you use the default Steam install):
- JJK Mod Kit → Settings
- Set Game Exe Path to your
Jujutsu Kaisen CC.exe, e.g.:C:\Program Files (x86)\Steam\steamapps\common\Jujutsu Kaisen CC\Jujutsu Kaisen CC\Binaries\Win64\Jujutsu Kaisen CC.exe - The import tool derives the pak folder automatically:
<game root>/Content/Paks.
- Open the project in the Unreal Editor.
- Go to JJK Mod Kit → Setup → Import Game Assets.
- Read the confirmation dialog and click Yes.
The pipeline runs six phases:
| Phase | What it does |
|---|---|
| 1 | Runs retoc to convert the game's IoStore/Zen pak files into legacy format, writing output to <game>/Content/Paks/Data/ |
| 2 | Creates AnimBlueprint stubs in the project for every ABP_* / *_ABP asset found in the extracted data |
| 3 | Deletes the original ABP files from the extracted data (they crash the editor if imported as-is) |
| 4 | Deletes three character-capture widget files that also crash the editor |
| 5 | Moves the remaining extracted content into the project's Content/ folder |
| 6 | BindWidget mass repair — scans every imported Widget Blueprint and auto-patches Source/**/*.h to add missing meta=(BindWidget) (variable widgets only). If it reports patched headers, rebuild (build.ps1) before cooking any Widget override |
Expect the editor to be mostly unresponsive during phase 1. The whole process typically takes 5–15 minutes and uses ~50 GB of temporary disk space under the game's Content/Paks/Data/ folder (cleaned up automatically at the end).
When finished, restart the editor so new assets appear in the Content Browser.
Run JJK Mod Kit → Asset Tools → Stub Character-Capture WBPs to create placeholder widgets for the three capture screens that were removed during import:
WBP_CharacterCaptureEnemyWBP_CharacterCapturePlayerWBP_CharacterCaptureSimple
Without these stubs, references to those widgets may cause issues when browsing certain assets.
After import and an editor restart, you should see game folders under Content/ (Characters, Widgets, Maps, Effects, etc.). Open a few assets in the Content Browser to confirm they load.
If the JJK Mod Kit menu is missing, open the Output Log and check for Python errors. You can reload the menu manually:
import importlib, init_unreal; importlib.reload(init_unreal)Run that in Window → Developer Tools → Output Log (Python console), or via Tools → Execute Python Script.
Once assets are imported:
- JJK Mod Kit → New Mod — creates a folder under
Content/Mods/with amanifest.json. - Edit or override game assets inside your mod folder.
- JJK Mod Kit → Cook & Export All Mods — cooks and copies mods to the game's
Content/Mods/folder (derived from your Game Exe Path setting).
For overriding individual game assets that live in protected directories, use Cook & Export Asset Overrides and the Core Packages to Cook list in Edit → Project Settings → Plugins → JJK Mod Kit.
The Game Exe Path in JJK Mod Kit → Settings is wrong or blank. Point it at Jujutsu Kaisen CC.exe and try again.
Place retoc.exe in the project's Tools/ folder.
- Make sure the game is fully installed and you can launch it normally.
- Check the Output Log for
[retoc]lines. - Confirm
Tools/oo2core_9_win64.dllis present (needed for Oodle-compressed pak data).
Regenerate project files: right-click JujutsuKaisenCC.uproject → Generate Visual Studio project files, then rebuild.
Some assets are known to be problematic even after stubbing. See Developer Notes below.
- Many Animation Blueprints (original cooked ABPs — the import replaces these with stubs)
Content/Widgets/Commons/WBP_CharacterCaptureEnemyContent/Widgets/Commons/WBP_CharacterCapturePlayerContent/Widgets/Commons/WBP_CharacterCaptureSimple
Use the stub tools under JJK Mod Kit → Asset Tools rather than opening the original cooked versions.
Game widgets whose animations use the custom AbramsSequencer* tracks (for example
WBP_FreeBattleTeamCharacterSelect) need care when uncooked and re-cooked:
- The editor never keeps cooked MovieScene compiled data; re-cooking an uncooked asset
regenerates it. The reconstructed
Source/Frameworktrack classes now implementIMovieSceneTrackTemplateProducerso theF<Section>Evaluatetemplates are regenerated correctly (seeSource/Framework/Private/SequencerTrackBase.cpp). Rebuild the project (build.ps1, or Ctrl+Alt+F11) before the next cook so the cooked binaries contain this change. - Opening an uncooked animation used to assert in
FSequencer::GetTrackEditor("Unable to find a track editor ...").Source/AbramsEdnow registers a generic stub track editor for everyUSequencerTrackBase-derived track, so animations can be opened. - Cook & Export Asset Overrides now verifies each staged package with
Content/Python/cooked_asset_guard.py. If a cooked package loses serialized/Script/...Evaluatetemplates, staging is refused with an explicit error instead of writing a broken override. Baselines are captured automatically at uncook time intoSaved/AssetBaselines/.
Background and evidence: Saved/uncooker_investigation_report.md.
Run this command from any terminal with the Unreal Editor closed (or press Ctrl+Alt+F11 inside the editor to Live-Compile without closing it):
& "$env:ProgramFiles\Epic Games\UE_5.1\Engine\Build\BatchFiles\Build.bat" `
JujutsuKaisenCCEditor Win64 Development `
"$(Get-Location)\JujutsuKaisenCC.uproject" `
-waitmuteximport importlib, init_unreal; importlib.reload(init_unreal)