Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Frequently used tools for modding workflows
Install guide
If you never installed a previous version of the plugin, you can go straight to #step-1-install-the-plugin
Open the Blender Preferences (Toolbar: Edit
-> Preferences
) and select the AddOns
tab
Complete either of the options below:
Remove
buttonThe build-in Blender way. Should work. If it doesn't check the second option
Check the plugin's file
entry. It will usually be something like this:
Navigate there with your Windows Explorer (Hotkey: Windows+R
, paste the path above after changing your Blender version), and delete everything — either the entire folder, or all files inside.
Optional: Close and re-open Blender
Download the latest version of the plugin from github:
On the releases page, find the most recent release
Scroll past the change notes to the Assets section
Download the zip file with the plugin:
Start Blender
Open the Blender Preferences (Toolbar: Edit
-> Preferences
) and select the AddOns
tab
Click the "Install" button and select the zip file you downloaded in step 2
You only need to do this if you never installed the plugin before.
After you have successfully installed the plugin, you can now use the search bar to find it:
Make sure the box is checked and restart Blender.
You can do both by hand. Find your Blender install's plugin folder, the path will look something like this (replace 3.6 with your Blender version):
Inside the plugins folder, the Wolvenkit Blender IO Suite will be installed to the subfolder i_scene_cp77_gltf
.
To uninstall the plugin, delete the entire folder.
To install the plugin, find the folder in your downloaded zip file that contains the file __init__.py
, move it here, and rename it.
Now, restart Blender.
WolvenKit - The ultimate mod editor for REDengine games
To dowload the tool and know more about it, go to the WolvenKit Wiki:
WolvenKit is an open-source modding tool for Cyberpunk 2077 and The Witcher 3: Wild Hunt. Our vision is to develop a standalone software which can read and write all REDengine file formats, simplify and accelerate modding workflows, and help you create great mods for great games.
How the Wolvenkit Blender plugin works
You can find specific instructions for Installing the Wolvenkit Blender Plugin on the corresponding wiki page.
For the plugin's original readme, check github.
The plugin is developed on Blender 3.6 and Blender 4.0. For maximum compatibility, install the same version.
As soon as you have a mesh or armature selected, the viewport toolbar (keyboard shortcut to hide/unhide: n
) will show you the CP77 Modding
tab:
In the animation tools, you can find
shortcuts for playing, renaming and deleting existing animations
shortcuts to add new actions and insert keyframes
You can load one of Cyberpunk's default armatures at any time:
If you import an .anims file, selecting any armature will give you the option to play any existing animation:
Lets you transfer vertex weights from one collection to the other (please read the info box below):
The plugin will transfer weights by submesh name. If your target armature has more submeshes than your source armature, simply create duplicates and rename them accordingly.
For documentation of the autofitter, see the corresponding wiki page.
Lets you change the armature target (the skeleton that'll move and deform your mesh)
Lets you export a hair profile. For documentation, see #hair-profiles-.hp
You can find a guide about at the link.
With the press of a button, you can switch out the currently active material to a coloured and numbered grid for easier UV mapping.
If the UV checker is currently assigned, pushing the button again will restore the original material.
The collision tools and -generator can
generate of convex colliders with the exact shape of your mesh The number of vertices to sample should be set to match the number set in the .phys file in order to ensure successful export
generate box and capsule colliders with either user specified sizing or sized automatically to match the selected mesh
export edited collision bodies back to .phys ***currently requires a wolvenkit converted .phys.json file
Game version | Plugin version | Wolvenkit version |
---|---|---|
2.0.0 or higher
latest (at least 1.5.0)
up to 1.6.3_hotfix1 (but before 2.0)
<=
How to run scripts in Blender
This page will show you how to run Python scripts in Blender. It's not strictly speaking part of the Blender plugin, but I had to put this somewhere, and it's least out of place here.
To run scripts, you need to switch to the scripting perspective. Click the corresponding entry on the perspective toolbar at the very top:
The script panel looks like this:
Click into the Text Editor
panel directly below it
Paste the contents of whatever script you want to run (Hotkey: Ctrl+V
)
Hit the Play button above the editor panel to run the script (Hotkey: Alt+P
)
Optional: Look at the Python Console below the 3d viewport to see feedback
Copy the contents of the console window, or pull it as big as your screen allows and take a screenshot. Give this information to the Netrunner who told you to run the script and watch as they fix it.
While you have text selected in the Blender System console, your Blender will be completely unresponsive.
Published: Feb 08 2024 by Last documented edit: Feb 08 2024 by
Click on the "New Text" button to create a new document:
If your script doesn't work, Blender will have generated an . To look at it, toggle Blender's System Console:
If you don't have a Netrunner (or if you are that person), this is where you hit up Google or (you can skip the steps 1-5 in the linked guide).
How to use the auto refitter
If you need a tutorial for manual refitting, check R&R: Refitting (step by step) or follow the links from there.
With a mesh selected, you can find it in the Mesh Tools section of the CP77 panel. Use the dropdown to select a target body, then click the button to apply the changes:
Future versions of the plugin will make this process much easier. For now:
Duplicate the mesh (Hotkey: Shift+D
, Esc
)
Delete the shapekeys from one of the meshes
Delete the modifier from the other mesh
After the shapekeys are gone, apply the modifier:
Select the mesh without shapekeys (the one you changed by applying the modifier)
Switch to the Data tab and create a modifyer by hitting the + button
Name your new shapekey Basis
. This is how it's supposed to look when no shapekeys are active.
Select the mesh with shapekeys (the one with the original shape)
Switch to the Data tab, select the second shapekey in the list, and transfer it:
Repeat the process with all other shapekeys
You can now delete the original mesh.
OK, that's a bit nasty, because it means you'll have to either merge the shapekeys, or create Garment support from scratch (which is easier than it sounds like).
If you want to merge, select the shapekey that you want to change, and set its value as high as you can without clipping. Then, select the "New Shape from Mix" entry in the dropdown menu (see the screenshot above).
You can now delete your original shapekey and rename the newly-created one (which will be called "Key 2" or something like that) to the original's name.
The lattice modifier has to be created from hand and added to the Wolvenkit Blender IO suite.
TODO: This section will eventually document the steps how you can
add a body mod to your local version of the plugin
share that edit with everyone else by having it added officially
How to import and export with the Wolvenkit Blender plugin
You can find additional information here:
Archived: Exporting and importing meshes (has additional information that might come in handy)
If your mesh won't export from Wolvenkit, try unchecking the following box(es) in the export settings:
Select File -> Import -> Cyberpunk GLTF
In the Blender File view, find the glb you exported from Wolvenkit. By default, the textures will be saved to your material depot in PNG format already.
For a rough guide on finding your way around Blender, check Cyberpunk Shaders in Blender or #step-2-processing-the-downloaded-mesh
You must first select all meshes that you want to export. The plugin will automatically add their parent armature.
Select File -> Export -> Cyberpunk GLB
For an explanation of the sidebar settings on the right, read on below the picture.
Do not check this box if you are exporting a .glb file without animation data (it is for exporting animations)
By default, the Wolvenkit Blender IO Suite will only export selected meshes and their parent armatures. Unchecking this box will display the Export Visible Meshes checkbox, which is unchecked by default.
If you don't check either of these boxes, the plutin will export all meshes and armatures into the same .glb file. You usually do not want this.
The process of importing animations into Blender is the same as it is with meshes.
Select your armature
Follow the process for #meshes, but check the #animations checkbox in the side panel.
You can export an entity by adding it to your project and running the corresponding script from inside Wolvenkit. Here are the relevant guides:
After you have exported the entity from Wolvenkit via script, switch to Blender and select File -> Import -> Cyberpunk Entity (.json)
Navigate the file browser to the ent.json
in your project's raw
folder and import it.
Will switch the workbench's rendering mode from Eevee to Cycles. This will make sure that the shaders work as intended.
Will fix lighting
Will read materials from material.json
files, generating shaders in the process.
This option imports a vehicle entities collision bodies for editing. The collision bodies give substance to the mesh and determine how the world responds to the vehicle - without proper collision bodies, your character, NPCs and anything else your vehicle bumps into would pass right through the mesh. Unless you're adding a new vehicle or significantly altering an existing one, you generally want to leave this box unchecked.
Entity export is currently (1.5.0) not supported.
To export edited collision bodies back to .phys.json, simply press the "export collisions" button in the Collision Tools Panel and use the File View to navigate to your original .phys.json.
** Currently only modifying existing .phys files is supported.
To export streamingsectors, you have to use the corresponding Wolvenscript. The workflow is documented here.
After you have exported the streamingsector from Wolvenkit via script, switch to Blender and select File -> Import -> Cyberpunk StreamingSector
Navigate in the file view to your Wolvenkit project's root file, and select the .cpmodproj
file:
The export process is not part of the plugin yet (1.5.0); it is documented here.
To learn more about .hp files and their paramaters, check here
Select the imported hair and switch to Blender's Shading
perspective. Here, you can alter the gradients,
Recommended: make sure that your material name in Blender ends with _cards
Make sure that your hair mesh is selected
In the CP77 Modding panel, select Export Hair Profile
Your new .hp.json file will be generated in the raw
folder of Wolvenkit project that you imported the hair mesh from with the name of mod_<material name in Blender>.hp.json
:
If it's not working as expected
The first thing people on Discord will tell you is to read this page, so you might as well get it out of the way.
Blender errors will show up in the system console window (View -> Toggle System Console).
You can see the exact Blender version in the lower right corner of the program:
Open the preferences from the menu (Edit -> Preferences)
Switch to the AddOns
tab in the bar on the left
In the filter field at the top right of the list, search for cyberpunk
Expand the entry and find the Version
field
You need to restart Blender after updating the plugin!
See if Blender encountered any errors by checking the console output. From the menu, select View
-> Toggle System Console
.
After updating Wolvenkit, make sure to re-export your .mesh with materials!
The plugin needs your Wolvenkit Depot to a) exist and b) be more or less recent.
If you aren't sure how old your depot is or if you have one at all, it might be time to regenerate:
If it's not set, set it now
If it's set: Open the folder in Windows Explorer and delete everything there.
After regenerating your depot, make sure to re-export your .mesh with materials!
The tool of your choice for editing multilayered materials
This page will teach you how to download and configure MLSetupBuilder, the tool of choice to edit multilayered materials in Cyberpunk.
MLSetupBuilder (commonly referred to as "MLSB") is a Cyberpunk 2077 modding tool to comfortably edit MLSetup files, developed and maintained by Neurolinked.
For integration with Wolvenkit, install MLSB as a plugin:
Click on "Home" in Wolvenkit's title bar
Select "Plugins" in the left sidebar
If MLSB is installed, you'll see an "Update" button, otherwise, it will say "Install". Do that.
We will now launch MLSB and do the initial setup.
In Wolvenkit's Plugin view, click "Open", this will open a Windows Explorer with the install folder (Cyberpunk 2077\tools\neurolinked\mlsetupbuilder
)
Navigate to the folder with the higest version (at the time of this guide, that is MlsetupBuilder-1.6.7
)
Start MlsetupBuilder.exe
Optional: You can pin that file to your start menu or create a shortcut if you want to launch MLSB directly.
Here's how (or scroll down for the screenshot):
Right-click on the newly created mlsetup.json
file
Select "Open in MLSetupBuilder"
As of Version 1.6.7, this is what you will see now:
Start by importing the file from the preview. That will populate the Layer Config box with the MLSetup that you just loaded.
Don't forget to hit "Apply" after you have changed a material.
Once you're done:
select File -> Export
overwrite the original mlsetup.json
switch back to Wolvenkit
in the "raw
" folder, right-click on your file
select "Import/Convert from JSON"
Congratulations — you now have an .mlsetup
! If you pack your mod and launch the game, you should now see your changes.
There are 3 important functions to note:
Materials: this manages the tiles, opacity, offset, and roughness of the texture.
Color: this manages color and luminosity of the texture.
µblend: this manages the pattern and acts as a secondary, tiled normal map. Additionally, the contrast
value can be used to block out parts of the layer to create patterns.
You can only use microblends if this layer's mask is not fully white.
Note
After any edits, make sure to Apply edits to save progress and complete changes to any/all functions (Hotkey: Ctrl+Shift+A
)
Each and every layer is attached to its own Multilayer layer when converted from .json to .mlsetup. When adding new layers, ensure designating intended functions for each layer as part of the larger Multilayer inside WolvenKit.
This is where you can load models from the game for a direct preview which layer will affect which parts: simply click on the "Library" button.
Here, you can either browse to your model directly, or use text search:
After selecting a model, you can close the library browser again. Now selecting a layer will show you directly which parts of the mesh it corresponds to.
That's it! Happy recoloring!
Inside MLSB there are some other tools, the most important one is the Material Composer.
From this window you can import and export .Material.json files ( these files are exported by Wolvenkit with the WithMaterial option). You can edit the materials parameters, adding material or removing them from the material file. Material templates found in the .Material.json file can be put in the Library and then used later for another edit of materials of a completely different mesh. You can duplicate entries just changing the name of the material and putting them in the buffer again (that's what i did to have 10 different material colors that comes for the glass material of the Kendachi Monokatana mod). Material Composer will also display all the material parameters that comes with the material template (materials baked by the CDPR system have their parameters hidden if they were left as default before the baking of the release).
Now, switch to MLSetupBuilder.
Select "File -> Preferences"
Apply the following settings:
Press Ctrl+R to reload MLSB and make sure that the settings are applied.
Open the menu "Build" and select "Repository" to uncook the archives:
Select the following settings (if you want to uncook everything, this step can take several hours, so we'll only do the essentials for now)
Click "Uncook".
Wait. Do not interact with the program in any way until the process has finished - especially interacting with the console might just freeze up the entire windows cmd process. This is not MLSB's fault, but due to a Windows standard implementation.
This process can take some time — if you have selected everything, it can be several hours on slow machines. (You should've listened during step 1, choomba ;))
When the process is complete, close the Depot Generator window.
Optional: if you can't see any changes, press Ctrl+R
to relaod MLSB.
In the bottom left corner, hit "Start"
Wait.
When the process is complete, close the Depot Generator window.
Optional: if you can't see any changes, press Ctrl+R
to relaod MLSB.
Close MLSB, then open %APPDATA%\Mlsetupbuilder\config.json
in a text editor and decrement the version by one (e.g. 1.6.8
=> 1.6.7
). This will force MLSB to re-check its settings.
Alternatively, you can also delete the file and reconfigure.
object Object
If you have installed it as a Wolvenkit plugin, that directory will be Cyberpunk 2077\tools\neurolinked\mlsetupbuilder
.
Does the progress bar still move? If yes, then you're good - ignore this.
If not, you haven't left your fingers off MLSB and need to start over. Click "Uncook", then go afk until it's done.
The auto-refitter is a tool developed by that automates the tedious process of refitting meshes for the various body mods.
You can only export files which are part of a .
(Wolvenkit wiki)
(Wolvenkit wiki)
For where to export a mesh, see
For how to export a mesh, see
In the file picker, overwrite the glb you were editing (you need to to import back to Wolvenkit).
For where to import a mesh, see
For how to import a mesh, see
You can use Wolvenkit's to export .anims to .glb. The default setting is fine.
For where to import an .anim, see
For how to import an .anim, see and change the to Anims
.
(you can also use this for characters)
a hair mesh with materials (the default setting), then import it
You can now .
Published: Jan 20 2024 by Last documented update: Apr 19 2024 by
This page contains troubleshooting options for the .
If the plugin gives you error messages on export, please check instead.
If you can't solve your problem with these steps, feel free to reach out on in the #blender-add-on
channel.
As of , the plugin supports 4.1.0 and requires >= 4.0.2
Check on that this is the last available version of the plugin.
If it's not, you need to update. the old version, then the most recent plugin
Our technical experts will want to see this. If you can't make sense of it via Google or ChatGPT, hit up the #blender-add-on
channel on .
Please complete the steps in first!
You need the ().
If that doesn't help, you can also give the a try.
In the , find the
Follow the instructions on the Wolvenkit wiki to .
Published: ??? by Last documented update: Jan 20 2024 by
At the bottom of the page, you will find . Keep in mind that they are outdated.
MLSB <= 1.6.8 does not include a full material preview. The 3d view will only show you which parts of a mesh are affected by your material. If you want to preview a material in colour, you'll have to do this in Blender — use the 's .
To learn more about , check the link
To create your own mlmask, check
To create your own normal map, check
There is a dedicated channel on the and a thread on the , where you can find a chat history full of (yet) undocumented features, along with previews and videos of the most recent development versions.
If that doesn't work for any reason, you can install it by hand: download the latest release from and extract the files to following subfolder in your Cyberpunk game directory (the number must be the same as displayed in the WKit plugin list)
Cyberpunk 2077\tools\neurolinked\mlsetupbuilder\MlsetupBuilder-1.6.7
To make the most of MLSB's features, you will want to it first. However, you can start using the tool right away.
In the project explorer under Wolvenkit's archive
folder, right-click on am mlsetup
file
This folder will only be visible in the "source" or "archive" tab of your
Select ""
This will generate an mlsetup.json
file in your project's .
This folder will only be visible in the "source" or "raw" tab of your project explorer
The preview was hiding an empty 3d viewport. To , you will need to MLSB first, but you can already click through the individual layers and assign (such as roughness, normal strength, base material and colour) from the "Material Properties" panel.
We're assuming that you have already configured Wolvenkit. If you haven't, please .
In Wolvenkit, extract a (Generate Materials). Note that this window shows you the Depot Path for Step 5.
While it is doing that (it may take a few minutes), download and extract it to a folder of your choice.
Again, this step is optional, you can straight away.
Repeat Step 1 from , but select Microblends this time
That's it, you're done now and can use the !
You need to . If that doesn't make the error go away and your most recent version is something with 1.6.7, update the interface.js — download it from Neurolinked's github repository, then replace the file with the same name in MLSB's install directory, subfolder resources\app\js
.
If that doesn't help either, it's worth trying Wolvenkit Console's latest .
Please keep in mind that these guides are seriously outdated. If things don't look as expected, check this guide, which is much more up-to-date, or find help on Discord (link in )
Game folder v1.6.7 |
|
Game folder v1.6.8 |
|
uncook folder | You can find this folder in your WolvenKit's settings as "Depot Path" (you've seen it in the window from Step 1) |
Wolvenkit Depot Path | You can find this folder in your WolvenKit's settings as "Depot Path" (you've seen it in the window from Step 1) |
Wolvenkit-CLI.exe | The executable of Wolvenkit Console from Step 2, You can download the last compatible and tested CLI from inside MLSB going in the menu Help > Download Wolvenkit.CLI |
How does MLSB's tag browser work?
In 1.6.8, the MLSetupBuilder library has been completely overhauled. This page will tell you how to find things there.
The model browser of 1.6.7 has been transformed from a tree with sub-branches into a table with many capability. One of those capability is tags filtering.
If you don't care for the theory, skip directly to #how-do-i-start-using-tags-filters
Filtering will only consider an item's name, but not its visual appearance:
Tags are displayed to the right, but are written text-like in the Database. Every keyword is divided from the other with a space. As the caption says, the selected line tags is written like : base man massive head
It is important because there are some rules to this syntax that will help you atomize the search of one model into the 40K+ models paths stored in the Database. The most important rule is that every model starts with :
base - for Vanilla Cyberpunk 2077 models
PL - for Phantom Liberty ONLY models
In the Models Library panel, click on the tags filter button in the header of the table
Let's say we wanna search only in the models of the Phantom Liberty expansion for man models.
We will add a first condition specifying in the options that our tags Starts with the word PL
Then we can click on Add Condition and specify that the tags need to Contains the word man
with a space before the word man
The space is NEEDED since the also the keyword woman contain the word man
You will see that for every condition you add, the datas will be filtered in realtime.
You can remove and add tags filtering condition as you like.
Clicking to the little x
in the right upper corner of the tags filtering panel you can toggle the panel and access the list you got.
You can combine the tags filtering with the basic search field in the table interface to find what you need.
The basic search field search model by their path in the archives, this means that ALL the part of the path can match a text filter like that.
base
PL
player
man
woman
child
big
fat
massive
animals
gloves
arms
head
item
legs
shoes
torso
vehicle
mechanical
weapons
firearms
melee
explosives
environment
Details about the keyworks:
player identify all those materials that by model name are for sure assigned to the game player
animal identify the models related to the Animals Gang member body size
Tag filtering ca be combined with the default path search to display only legs models related in this case to jeans
How the savegame editor works
Using the save editor puts you at risk of creating a bricked savegame. This means that the save will still load in Cyberpunk, but certain things in the game are broken (e.g. quests are stuck or won't trigger).
If your savegame crashes on load, please check the #troubleshooting section.
CyberCAT is version dependent. If you want a savegame to load with a certain version of the game, you must use the compatible version of CyberCAT.
On Windows, save games are stored in
Import your savegame
Make the necessary changes
Export your savegame again. Save it in the same folder.
After loading a save, you can export V's appearance as a preset from the Appearance tab. This will create a v2preset
file, which you can import via Load Preset
.
You can add items from the Inventory tab or edit existing items by double-clicking on them.
Switch inventories in the upper right corner
Edit items by double-clicking them
Add new items by using the corresponding button
In the Add Item tab, you can use the dropdown to search the item's base ID. If that doesn't help you, check the top sections of our wiki page Spawn Codes (BaseIDs/Hashes) on how to find a specific item.
CyberCAT lets you edit quest facts:
This is an excellent way to brick your savegame forever. Make a backup. You have been warned. (Check here for an explanation)
While you progress through the main story, Cyberpunk will log your progress by setting quest facts
. These are not standardized and will only be checked under specific circumstances, usually when the game is about to trigger the next stage of a quest or event.
Once that moment has passed, there is no way to re-trigger it other than loading an earlier save. This is not an issue of tooling, it's simply due to how Cyberpunk's quest system works.
Unfortunately, no. Quest state data is currently not editable with the save editor and there are currently no plans on implementing it.
Past: no. Future: Maybe. Almost all quest facts will at best do nothing by setting or changing them and more commonly will break your quest system. There are very few that will work and most are dependent on when they're set.
Your only option is to reload from a previous save and make better choices. If only life worked the same way.
While the save editor currently supports setting them, we recommend using CET commands if you must go down that route. The CET command list contains some that might work in very few instances. Again, most of these are not supported and are highly dependent upon when they are set.
Appearance editor is disabled until its fully fixed.
Only gender and voice tone can be changed.
Loading / Saving of presets still works
Item additions might not fully work yet
Make sure that you export to a savegame folder. They contain the following files:
metadata.9.json
sav.dat
screenshot.png
CyberCAT needs those files to correctly export the savegame.
Please keep in mind that nobody is paid to work on this tool — CyberCAT is maintained by volunteers in their free time.
Once you have exhausted all other means of support, you can find help in #save-editing
on the Wolvenkit Discord. Please have the following things handy:
Plugin error messages and how to resolve them
This should only happen for meshes with armatures.
Switch to the Data tab (the green triangle)
If you don't have vertex groups, add one
If you already have vertex groups, select the one named to the bone closest to your ungrouped vertices
If you aren't already, switch to Edit Mode (Hotkey: Tab
)
Click the "Assign" button under the vertex groups panel
Switch to the Data tab (the green triangle)
The plugin should have switched your viewport to Edit Mode (if not, do it yourself - hotkey: Tab
)
Find out which vertices are the problem by moving them around in the edit view
In the list of vertex groups, select the armature bone closest to your ungrouped verts
Click the "Assign" button under the vertex groups panel
Rinse and repeat the process for all submeshes until the plugin lets you export
You are trying to export a pose, but you didn't select your armature. Click on the armature object in the outliner:
You're trying to export something, but you haven't selected any meshes. Select everything that you want to export in the outliner (top-right panel) - the armature parent will be auto-selected for you.
For Cyberpunk material assignments to work, your mesh must have UV maps.
Switch to the Data tab and add one:
Triangulation means that faces must have exactly three corners.
The plugin should have switched the viewport to Edit Mode. If not, do it yourself (Hotkey: Tab
)
Triangulate faces (Hotkey: Ctrl+T
). The default settings are fine.
You should now be able to export.
The armature (rig, skeleton) is the thing that makes your mesh move in-game.
It's enough to check the "Export as Static Prop" box during export, and the error will go away.
Open the Modifiers
tab (the orange wrench) and repeat the following steps for each mesh:
Make sure that there is exactly one Armature
modifier present. If there is none, click Add Modifier
and add one.
Click into Object
and select the armature that your mesh is parented to.
Turn on UV Sync Selection:
Once you have found an overlapping vertex, select linked (Hotkey: Ctrl+L
)
Move the entire UV island by a whole tile in any direction (Hotkey: e.g. G
-> X
-> 1
)
Repeat the process until there are no more overlapping islands.
What is 010 Editor?
010 Editor is a generic hex editing software which is capable of reading and writing REDengine W2RC files. A custom template for the 010 Editor created by @alphaZomega must be used to parse game files as human-readable.
The 010 Editor can be downloaded from Sweetscape's website
Install 010 Editor and run it.
install alphaZomega's template by navigating to Templates > View Installed Templates, then click Add and add CP77_CR2W.bt.
Navigate to your Cybeprunk 2077 installation, locate the oo2ext_7_win64.dll
file, then copy and paste the DLL to the same location as the BT template file.
Unpack and pack the compressed "KARK'd" data within a CP77_CR2W file
Deletes an entire name and value's worth of a section inside the aforementioned formatted file
Changes all the Material headers' numbers inside a file to be a universal one with zero offsets
Creates a new material header inside a file
Using Redmod to create mods.
REDmod is a command line tool developed by CDPR and Yigsoft, which allows us to interact with game files in a variety of ways.
Modules for mod creators:
An example REDmod might look something like this:
When sharing you mod, you would package the folder that is the name of the mod. You could also package the mods folder with the "mod folder", but it is not necessary and it is assumed one might have other mods in their mods
folder anyways.
For a REDmod to be recognized and loaded by the game engine, you must include an info.json
file. This file sits in the root folder of the mod's folder at the same level as the subfolders containing your modded files. There are two required entries and a few optional entries that can be in this json file. At minimum a name
field and a version
field are needed:
In the above:
The name
field is the mod's name and should generally be the same as the folder the info.json
file sits in.
The version
field is the mod's version. The version should generally use "Semantic Versioning"
The description
field is optional for all mods, but it is generally suggested one should include it so other tools have something to display for a given mod.
INFO - Semantic Versioning is a method of versioning where each number gives meaning for a release based on their position. It uses the format
MAJOR.MINOR.PATCH
where aMAJOR
release change is one which will break workflows,MINOR
could break a workflow but is generally safe and might introduce deprecations, and aPATCH
is a small non breaking change that all users on the sameMAJOR
andMINOR
can update to without any issues.
Game Version | CyberCAT version |
---|---|
Published: Apr 19 2024 by Last documented update: Apr 19 2024 by
This page will tell you how to resolve error messages from the .
This should only happen for meshes with armatures. You can check the screenshot under for references.
For more information on this, check .
You should now be able to export, but your material will most likely look funky. To remedy this, refer to ->
You have vertex groups in your mesh that don't have a corresponding bone in the armature. to delete them:
If your mesh isn't supposed to move, check
If your mesh is supposed to move with the body, check
You should have an armature in your .blend file because you're importing over an original Cyberpunk mesh. If you don't, you might want to refer to a guide such as and follow the steps.
That's due to . The only thing you can do to avoid the issue is to make sure that no two vertices share the same UV coordinate.
switch to the UV editing perspective ( -> )
alphaZomega's CP77_CR2W.bt 010 template can be downloaded from the following link:
if you're looking for how to use REDmod to install and manage mods as a user, click
When creating a REDmod, there is a certain file structure that you need to follow to ensure that it can be used by others. You will want to have a folder that is the name of the mod and in this folder you will have a file named info.json.
Whether you are doing , , , , or other mods (archive mods), you will also need to have at least one subfolder for the mod files to go into. This subfolder should be located on the same level as the info.json
file, and be nested directly inside the folder with the mod name.
The customSounds
field is semi-optional. It is required for .
2.1.1
>= 0.27d
2.0 / Phantom Liberty
>= v0.26
1.63_hotfix1
???
REDmod can export .mesh, .w2mesh, .xbm, rsvg and .svg files using the resource-export command.
redmod resource-export -depot=<depot> -input=<resource-path> -output=<file> -<optional parameters>
PARAMETERS
using the import and resource-import commands
Redmod can be used to import a large variety of files into REDengine formats for use in your mods.
Red Engine Format | Raw Format |
---|---|
.fnt (font)
.ttf: TrueType font
.otf: OpenType font
.cff: Compact Font Format
.regionset (Texture Region Set)
.json: Texture region set definition.
.mesh (Mesh)
.xml: Speed Tree XML Resource File .smd: Source Mesh Data
.fbx: Autodesk FBX
.curveset (Curve Set)
.csv Comma Separated Value Table
.mlsetup (MultiLayer Setup file)
.json: MultiLayer Setup JSON File .mlsetup: MultiLayer Setup File
.genericanimdb (Generic anim database)
.csv: csv file
.cubemap (Cubemap)
.dds: DirectDraw Surface
.bmp: Windows Bitmap
.jpg: Joint Photographics Experts Group .tga: Truevision Targa
.png: Portable Network Graphics
.exr: OpenEXR
.rig (Rig)
.re CDPR proprietary format
.ies (IES Light Profile Data Resource)
.ies: IES light profile
.mlmask (Multilayer Mask)
.tiff: Tagged Image File Format
.tif: Tagged Image File Format
.json: JSON
.rsvg (SvgResource)
.svg: SVG Resource definition file
.xbm (Bitmap Texture)
.dds: DirectDraw Surface
.bmp: Windows Bitmap
.jpg: Joint Photographics Experts Group .tga: Truevision Targa
.png: Portable Network Graphics
.tiff: Tagged Image File Format
.tif: Tagged Image File Format
.exr: EXR
.cube: Cube LUT
psiberx's RedHotTools - a powerful utility for better mod development
You can download RedHotTools on psiberx's github:
To install it, extract both downloaded files directly into your Cyberpunk 2077 game directory.
Integrated with Cyber Engine Tweaks, Wolvenkit and VisualStudioCode, it offers the following features:
RHT can reload archives, scripts and tweaks for you at runtime without having to restart the game.
For documentation on how to do this, check RHT: Hot Reload
See scripts validation and binding errors
Prevent game from starting if scripts compilation fails
With the RHT overlay for Cyber Engine Tweaks, you can inspect game objects at runtime:
Here, you can inspect world nodes and their properties:
Here, you can scan for any nodes around you:
If you expand the node properties, you can simply hide them at run-time, or use the integration with Removal Editor to create permanent presets:
Reverse search of world nodes and spawned entities
RedHotTools lets you look up chunk masking of existing items at runtime.
You can inspect chunkmasks of player or NPC equipment via AppearanceCreatorMod; check Submeshes, Materials and Chunks -> #acm for details.
For player or NPC clothing, you can use the Watch tab. Find the component in the corresponding puppet's component array:
TBD
redmod import -gameRoot=<depot> -inputPath=<file> -animset=<resource-path> [options]
The import
command imports an .re
animation file into an existing .anims
animation set file.
Optional parameters include specifying an existing animation name to rename inside the animset file (otherwise the filename of the .re
animation file is used) or specifying a different output path (default is overwrite).
INFO - It is best to name
.re
animation correctly even if you replace an existing animation, because the imported animation will always have the filename of the.re
file.
-gameRoot=<path>
directory-path to the depot for animset and output (e.g. C:\modding\depot
)
INFO - this is the base depot from which relative <resource-paths> are loaded
INFO - You need to have the
.rig
file used by the.anims
animationset present in your depot path.
-inputPath=<file>
absolute path to the animation .re
file
-animset=<resource-path>
resource .animset file to use
INFO - resource path must start with
base\
(e.g.base\animations\npc\generic_characters\male_average\open_world\generic_male_average__stand__rh_cane_lh_cigar__01.anims
)
-outputPath=<resource-path>
resource .anims
file name to write, default is to overwrite the input animset (resource path must start with base\
)
-animationRename=<name>
parameter representing the old name of animation to be replaced by the new animation (default is the filename of the .re
animation file)
INFO - the imported animation will always have the filename of the
.re
file even if you specify the animationRename parameter.
-?|-h|--help
Prints out a description of how to use the command.
redmod import -gameRoot="E:\modding\depot" -input="E:\raw files\animtest1\macarena_long (1).re" -animset=base\animations\npc\generic_characters\male_average\open_world\generic_male_average__stand__rh_cane_lh_cigar__01.anims -output=base\out\new_test.anims -animationRename=stand__rh_cane_lh_cigar__01__smoke__02"
Imports the animation file E:\raw files\animtest1\macarena_long (1).re
into the animset file E:\modding\depot\base\animations\npc\generic_characters\male_average\open_world\generic_male_average__stand__rh_cane_lh_cigar__01.anims
and replaces the animation with the name stand__rh_cane_lh_cigar__01__smoke__02 with the name macarena_long (1). The result is saved to to E:\modding\depot\base\out\new_test.anims
.
The REDmod animation import tool can be used as a Plugin in WolvenKit.
Add the .re
animation file you wish to import to your /Raw folder in your mod project
Add the .anims
animation set file from the game with the Asset Browser
Click View > Import/Export tool
In the Import/Export tool, navigate to Import: a list of all .re
animation file in your /Raw folder will appear
Double click the entry to change the import options:
Select the .anims
animation set file to import from the dropdown
Select the animation name you wish to override from the dropdown
Click process
INFO - It is best to name
.re
animation correctly even if you replace an existing animation, because the imported animation will always have the filename of the.re
file.
INFO - You need to have the
.rig
file used by the.anims
animationset present in your WolvenKit project.
See also: Import Command
The import
command imports an .re
animation file into an existing .anims
animation set file.
Optional parameters include specifying an existing animation name to rename inside the animset file (otherwise the filename of the .re
animation file is used) or specifying a different output path (default is overwrite).
INFO - It is best to name
.re
animation correctly even if you replace an existing animation, because the imported animation will always have the filename of the.re
file.
INFO - You need to have the
.rig
file used by the.anims
animationset present in your depot path.
To make a script mod in REDmod:
make a new mod and create a new folder here: <Cyberpunk 2077>/mods/MODNAME/scripts
add an info.json
file to <Cyberpunk 2077>/mods/MODNAME/scripts
with some mod info
copy the .script
file(s) you want to change from <Cyberpunk 2077>/tools/redmod/scripts
preserving the folder structure!
Done. To test, launch the game with REDmod.
How to hot reload things with RedHotTools
There is nothing here yet! Maybe you'd like to write it?
To make a tweak mod in REDmod:
make a new mod and create a new folder here: <Cyberpunk 2077>/mods/MODNAME/tweaks
add a info.json
file to <Cyberpunk 2077>/mods/MODNAME/tweaks
with some mod info
The REDmod sound import tool can be used in a WolvenKit project.
Add the .wav
sound files you wish to import to your /customSounds folder in your mod project
Click Tools > Sound Modding Tool
In the Sound Modding Tool, choose which event to mod from the list of game sound events
Adjust the parameters in the bottom right
Click Save
Place raw .wav
audio files inside <Cyberpunk 2077>/mods/<name>/customSounds
. Include a info.json file with your mod (<Cyberpunk 2077>/mods/<name>/customSounds/info.json
) where you sepcify how to use your custom sounds.
name - the game audio event to override
type - the sound type. Options are:
mod_skip: do not play this sound event
mod_sfx_2d: will be played without any positions / attenuation
mod_sfx_city: has a longer attenuation that is suitable for city sounds
mod_sfx_low_occlusion: has a long attenuation that isn't occluded much e.g. a VO or quest sound that you don't want to be muffled
mod_sfx_occlusion: medium attenuation with normal occlusion
mod_sfx_radio: needs to be tuned to a broadcast channel (e.g. radio)
mod_sfx_room: has a shorter attenuation suitable for something that can be heard across a room
mod_sfx_street: has a medium attenuation, good for something to be heard down a street
mod_sfx_ui: for menu and ui sound replacement
file - the .wav
file to use (inside /customSounds
)
gain and pitch
How to contribute to the thing you're currently reading (please do)!
This page gives you some intel on how the wiki works and why you should start contributing.
Wikis are the most open source thing since the invention of democracy, because everyone can edit them (that includes you!). They gather and share knowledge, facilitating all kinds of beautiful change — like the library of Alexandria before it was DDOSed by fire.
In terms of our wiki, that means:
Unfortunately, most people don't edit the wiki.
Of course there are plenty of good reasons, so let's go over them one by one (open the box)
Before you can edit, you need to sign up to Gitbook (no way around it). It's integrated with github, so you can use that or your google log-in.
As of today (March 2024), I've never received a single spam mail from them.
You can't edit without a change request (which is a snapshot of the wiki as-it-is that you can fuck around with to your heart's content).
Your edits will be saved in your change request, so that you (or somebody else) can resume editing later. See
You can create one by clicking the Edit button in the upper right corner:
In the top left of your
Clicking on "Change Requests" to the left opens a side bar panel where you can browse existing change requests:
Click the "Edit" button to create a new change request:
When you're done editing, you can request a review. The button is on the topright where the Edit button used to be:
... and that's it. After requesting a review, you don't have to do anything — your MR either gets merged directly, or the reviewer may change some things around (usually scatter some links), or they'll get back on you to clear things up.
copy the .tweak
file(s) you want to change from <Cyberpunk 2077>/tools/redmod/tweaks
preserving the folder structure!
Done. To test, launch the game with REDmod.
Published: Feb 11 2024 by Last documented edit: Feb 11 2024 by
To skip the pep talk, you can jump directly to or (github/Google account required)
If you're already convinced, you can skip straight ahead to or
Everyone can learn how to make mods for Cyberpunk 2077 You don't know shit about Netrunning? Doesn't matter, !
We don't have to research stuff all over . Want more than that? Here's where you can start digging...
You can easily find people who can help you Published: Feb 11 2024 by If you make any progress on this, please contact on Discord
You will never be bullied for sharing knowledge or skills on this wiki. If you ever feel as if you are, please get in touch with the mods on the , and we'll clear up the misunderstanding — because communication is hard and everyone here has the same goals.
That's easy, just scroll down to and find out!
That being said, if you really feel uncomfortable publishing anything in "bad English", we can solve that! You can either add it to the (e.g. "PLEASE FIX GRAMMAR my guide about stuff
"), or run your text through ChatGPT (this is exactly what LLMs are for!)
Until you complete the steps under and a wiki admin merges your changes, nothing of what you do will go live, so you can safely break everything.
When creating a new change request, please give it a title immediately (see the screenshot under as for why)
If you want to know more, you can check for this, or read the TL;DR below:
What is Noesis?
From the website: Noesis is a tool for previewing and converting between hundreds of model, image, and animation formats. It utilizes a robust plugin system, with support for native extension modules and Python scripts.
Noesis is considered one of Cyberpunk 2077 Modding's cornerstones for its ability to open .mesh files and convert it into a wide variety of other 3d file extensions (like GLB and FBX) thanks to alphaZomega's CP77 Python script that makes that possible.
Download Noesis from Rich Whitehouse's website https://richwhitehouse.com/index.php?content=inc_projects.php
Download the plugin from here https://www.mediafire.com/file/uhc9d68mvj7oqj6/fmt_CP77mesh_1.6.zip\
After installing Noesis, put the fmt_CP77mesh.py file in the python folder located inside the plugins folder, and make sure that oo2ext_7_win64.dll
is placed next to the plugin in folder.
Open your .mesh file in Noesis64.exe, then right click on it inside the app and press Export, from there you will be given file extensions to export into, .FBX is the go-to for any usual process and for easier importing into 3D Apps like Blender and 3DS Max.
Same goes for .xbm files.
Open your 3d file (like .fbx or .glb) in Noesis64.exe, export and select .mesh - CyberPunk 2077 mesh [PC], when a dialogue box shows up browse and select the .mesh file that is appropriate for your import(for example if it was a shirt you'd probably export over .mesh files that has shirts in them), then click OK.
Download from
for WKit export "With Materials" |
Justifies UVs, generation of hair cards Mesh has to be in quads |
Ctrl+J only works if they don't share bones |
Using REDmod to export .mesh and .w2mesh files to .fbx format
Optional Parameters for meshes
Example Command:
You can also export to .fbx with REDmod through the Wolvenkit GUI!
REDmod can export REDengine .xbm files to several raw formats for editing.
dds: DirectDraw Surface bmp: Windows Bitmap jpg: Joint Photographics Experts Group tga: Truevision Targa png: Portable Network Graphics
XBM PARAMETERS
you can also export textures using the wolvenkit gui (recommended)