How to update pose packs for Patch 2.2. and ArchiveXL 1.19
Published: January 3 by @nutboy Last documented update: January 4 2025 by
This page is for both modders AND mod users who made or installed pose packs before patch 2.2 released, and want pose packs to be compatible with:
new vanilla Photomode NPC
modded Photomode NPV added with ArchiveXL
Luckily you only need to edit the .yaml
and the .xl
file!
You can use python scripts to update all pose packs in your mod folders, or update each pose pack by hand.
MAKE A BACKUP OF YOUR MOD FILES.
Create a folder on your desktop (or anywhere that isn't your Cyberpunk2077 folder) with a copy of all the .xl files in your archive/pc/mods
folder, and also make a copy of your r6/tweaks
folder before proceeding.
Tip: The quick and dirty way I do this is by selecting the files or folder I want to make a backup of, and then right clicking and sending it to a zip file. If I mess up, I unzip the backup file and overwrite the files in my mod folders.
Download these two Python Scripts from GitHub using the download button ⬇ on the far right. Save them somewhere in your computer. (I have a dedicated folder for Python scripts now)
If it's your first time, follow the wiki guide for running Python scripts. Setup is fast and easy.
Open the folder containing your Python scripts in Windows Explorer
Type cmd
into the address bar, and press enter. This will open a command window.
Type the following and press enter (you can autocomplete with the Tab
key) :
The script will now ask you for the path to your mods folder
Open The Cyberpunk 2077 Game Directory in a Windows Explorer window
Browse to archive/pc/mods
Right-click into the command window to paste the path (or press Ctrl+V
)
Hit Enter
The script will now process all of your .xl files, adding the necessary scopes. That was it!
Next, we'll process the .yaml files.
Go back to the command window from the previous section's step 1
Type or paste pip install pyyaml
into command prompt and press enter.
It will confirm the install.
Type the following and press enter (you can autocomplete with the Tab
key):
The script will now ask you for the path to your mods folder
Open The Cyberpunk 2077 Game Directory in a Windows Explorer window
Browse to r6/tweaks
Right-click into the command window to paste the path (or press Ctrl+V
)
Hit Enter
Open your game and look for any broken pose packs.
If they don't work correctly in new Photomode even after using the scripts, it's likely there was an issue in the formatting of the original mod file.
You can check over the pose pack's yaml/xl for errors yourself (if you feel comfortable doing this), or ask the modder to revise it.
If you're a modder who makes pose packs, you can also use these scripts on your mod's packed folder (instead of your installed mods folder) to automate updating for patch 2.2 NPCs & ArchiveXL 1.19 Photomode NPVs.
If you already updated your mod for 2.2, you can run the scripts anyway, but they won't (shouldn't) do anything that isn't empty lines.
If your XL already includes the new photomode NPC entities, delete those entries and add the scope only.
If your file already has entries for the new photo mode poses, delete them
If you don't have any of those sections (because your poses are only for one body gender), you can skip that part of the process.
Find the line photo_mode.character.femalePoses:
and change it:
Find the line photo_mode.character.malePoses:
and change it:
If your file already has entries for the new photo mode poses, delete them
Now, add the photo mode poses for NPCs:
You're done! You can now use your pose pack with Photomode NPCs & AXL Photomode NPV.
Copy the folder path. If you need help, check
Copy the folder path. If you need help, check
Now, go to ArchiveXL: adding Photo Mode Poses -> , and follow the steps there.
How to hook up custom photo mode poses with ArchiveXL
Published: May 09 2023 by @manavortex Last documented update: December 17 2024 by @manavortex
This guide will walk you through adding poses to Cyberpunk 2077's photo mode with ArchiveXL.
Difficulty: You know how to read ;)
Easy Photomode Poses by wolv will do all this automatically and is up-to-date with 2.2! You can skip a bunch of reading and just use the required tool
To make poses from scratch, check Poses/Animations: make your own
To scale poses/animations, check Scaling Poses/Animations
We will hook up an existing .anims
file to photo mode. If you don't have one, you can find a dummy file in the AMM pose guide.
Tool versions:
Cyberpunk 2077 2.2
WolvenKit >= 8.15.0
Notepad++ (you can use any text editor, but N++ is recommended)
Your finished pose mod will have the following dependencies:
Download either of these files:
This tutorial assumes that your Wolvenkit project is called your_cool_new_pose_pack
, and that your legal name is your_beautiful_name
.
If that's not the case, please adjust accordingly!
At any point during this guide, you can press the green Install
button on Wolvenkit's toolbar to check the mod in Wolvenkit.
Use Wolvenkit's Rename
feature with the Update in project files
box checked
Use Notepad++ to edit photomode_poses_tutorial.xl
. Search&replace the original path (tutorial\animations\netrunner_making_poses
) with your new folder path.
Test. The. Mod.
Proceed to Step 2: hook up your poses
We usually do this at the very end and I'm leaving you alone with it. However, this time we start by renaming the folders.
Here's how your project should look when you're done.
Select the highlighted tutorial
folder and press f2. This will open the rename dialogue.
Change its name, and check the Update in project files?
box
Do the same for the netrunner_making_poses
folder (you want your file structure to be as tidy as it can be - future you will thank you for it)
Switch your project browser to the resources tab and open photomode_poses_tutorial.xl
in notepad++:
Use Edit
-> Replace
(Keyboard shortcut: Ctrl+H
) to open the search and replace menu. Replace the old path with your new path:
tutorial\animations\netrunner_making_poses
-> your_beautiful_name\animations\your_cool_new_pose_pack
Hit "Replace All"
Save your file (Keyboard shortcut: Ctrl+S
)
Now, rename the files under resources
as well:
photomode_poses_tutorial.xl
-> your_cool_new_pose_pack.xl
r6\tweaks\tutorial\photomode_poses_tutorial.yaml
-> r6\tweaks\tutorial\your_cool_new_pose_pack.yaml
Rename r6\tweaks\tutorial
to r6\tweaks\your_beautiful_name
That's it for the renaming. Time to test!
Install the mod, and make sure that you still have photo mode poses.
This file tells Cyberpunk to load your custom poses and will be in the same folder as the .archive file for your mod. It looks like this:
You have to adjust the paths under set
and en-us
to your new changed folder structure.
If you want to support more body types from the Nibbles Replacer, you can switch to the Mod Browser and enter the following search query to find all the entities:
base\characters\entities\photomode_replacer > .ent
Here's what those things do:
animations:
A list of entities and animation files that you want to add to them
animations/entity:
The relative path to the photomode .ent file. There are just three of them.
animations/set:
The relative path to the .anims file in your Wolvenkit project.
localization/onscreens/en-us:
A file with translation strings. Holds the name of your photo mode pose set.
You can name this file whatever you want, just make sure that you change the path and name in the .xl file.
Change the yellow box UI-Photomode-tutorial-netrunner-making-poses
to something unique to your mod.
To do future you a favour, use names that will make sense even after a year or two - e.g. UI-Photomode-your_beautiful_name-my_cool_poses
instead of UI-Photomode-ghuawstsedr-hsarht223445
The green text is the name that will show up in photo mode.
femaleVariant
is the default key - if you don't need different pose names for the male body gender, leave it empty.
If you have created your own animations (as a replacer or for AMM), then you are already familiar with this kind of file. If not, it is time to appropriate one from the game files - pick any, since the process is just like with a replacer.
Just as a reminder, here's how they look:
You will need the green text in your .yaml file.
Optional: If you want your pose to move, you can set the duration in the .yaml as well!
Without this file (r6/tweaks/your_beautiful_name/your_cool_new_pose_pack.yaml
), the animations will be in the entity, but the photo mode won't know about them.
You can use this tool by @wolv to autogenerate your .yaml. If you do that, then you can skip this entire section and check the result.
As of Dec 17 2024, the tool is not yet up-to-date with 2.2!
The yaml file has three sections:
The first block will introduce your new category to the photo mode.
I recommend doing search and replace on netrunner_making_poses
, because it's used a bunch of times.
PhotoModePoseCategories.netrunner_making_poses
: This is the name of the category, used to assign individual pose entries to your category.
displayName:
This must match the secondaryKey
in your .json
If one of your poses is called idle_stand
, that will break a bunch of other mods. Please re-name it in both the .anims file and the .yaml before releasing.
Now comes a long list of entries. They'll look like this:
You need to add one of those for every pose from your .anim file that you want to show up in photo mode.
PhotoModePoses.sit_chair_table_keyboard__2h_on_keyboard__make_amm_addon
: This is the unique key to assign your pose to your pose set. You'll need it in the third block.
animationName
: This must match the animation name in your .anim file (the green box).
category
: This must match the category in the first block.
displayName
: What'll show up in photo mode
You register your poses for photo mode by creating the following entry categories. You can use yaml anchors to minimize copy-pasting:
Add both code blocks:
Characters with *AddPoses
will use the poses defined under &AddPoses
. If you don't want a character to use certain poses, don't put *AddPoses
next to their photomode.character
entry.
An entry without YAML anchors, where poses are manually appended to each character, looks like this:
The entries in the list must match the unique keys that you've defined in the second block, and you need one entry per pose.
If you have different names for differently-gendered poses, you need to use the correct lists.
Before you can share your pose pack, you need to change the paths. If you don't and the next modder also doesn't, then only one of your mods will work.
You can find a full guide on changing the paths here.
If you rename files or folders under resources, remember to delete the old control files from your game directory.
At any point during this guide, you can press the green Install
button on Wolvenkit's toolbar to check the mod in Wolvenkit.
You can find a more detailed guide on this on xbae's website.
It is possible to have certain props spawned automatically. However, this feature works only for Player V.
In your .yaml file (r6/tweaks/your_beautiful_name/your_cool_new_pose_pack.yaml
), add the acceptedWeaponConfig
attribute.
In the case of weapons, V spawn with whatever weapon you were holding when entering PhotoMode, or the default weapon if none was defined.
The position of the prop is defined by WeaponRight
/ WeaponLeft
bone.
You can limit the availability of poses by setting a poseStateConfig
. For example, the following entry in your yaml will cause the pose to be unavailable unless V is swimming forwards:
Once installed, it will be in the same folder as the .archive
file for your mod — so you should name it your_mod_name.archive.xl
Your file should look like this:
While editing .xl files, make sure to keep the indent (the number of spaces at the beginning of the line). If you fuck up, you can use yamllint to check.
From the animations
section, delete the blocks that you don't want
Replace tutorial\animations\netrunner_making_poses\pXa.anims
with the relative path to your .anim
file(s) as copied from Wolvenkit's project browser
Replace tutorial\animations\netrunner_making_poses\localization.json
with the relative path to your .json
file as copied from Wolvenkit's project browser
Optional: For compatibility with older game versions, copy the code under animations:
(not the label itself) from the <= 2.1 page
in the code box above and add it to your file.
Optional, but recommended: Run your .xl file through yamllint to check for syntax errors.
Save your file.
The .xl is now updated to support vanilla Photomode NPC and Photomode NPV!
Before finishing up, make sure to run your file through yamlLint and get rid of any errors.
If you rename files or folders under resources, remember to delete the old control files from your game directory!
Find a list of the potential entries under Cheat Sheet: Poses/Animations ->
Find a list of the potential entries under Cheat Sheet: Poses/Animations ->