Releases: WolvenKit/WolvenKit
8.18.0
8.18.0 — 2026-05-04
App
- Added: Import and export flow is now also available in the right click menu by @notaspirit
- Added: Sleeves and hair substitution for ArchiveXL by @manavortex
- Fixed: AMM prop generation now correctly reads mesh appearances by @manavortex
- Fixed: Delete unused materials now uses correct index by @manavortex
- Fixed: ArchiveXL item generator will now successfully handle component name uniqueness - various robustness fixes by @manavortex
- Fixed: Nested quest phase nodes no longer lose internal socket connections after paste/duplicate operations by @misterchedda
- Changed: Filepath handling has been adjusted to handle os and archive paths according to their respective specs. Archive paths are now stricter and os paths looser than the previous combined implementation. by @notaspirit
CLI
- Added: Sleeves and hair substitution for ArchiveXL by @manavortex
- Changed: Filepath handling has been adjusted to handle os and archive paths according to their respective specs. Archive paths are now stricter and os paths looser than the previous combined implementation. by @notaspirit
Nuget Packages
- Deprecated: SanitizePath in FileHelper, ToFilePath, ToFileName, IsSaneFilePath, and SanitizeFilePath in StringPathExtensions are now deprecated. Use new archive or os path methods in StringPathExtensions and in FilePathValidation tools instead. by @notaspirit
- Added: Sleeves and hair substitution for ArchiveXL by @manavortex
- Changed: Filepath handling has been adjusted to handle os and archive paths according to their respective specs. Archive paths are now stricter and os paths looser than the previous combined implementation. by @notaspirit
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
8.17.4
Notable changes:
Fix
- 'Add material and definition' not correctly generating all required properties by @manavortex
- 'Undynamifying Materials' no longer fails when encountering incompatible types by @manavortex
- MLSetup color drop down now populates fields incorrectly with display values by @manavortex
- 'Create World Builder Asset File' now puts all generated files into the correct folder @manavortex
- 'Find broken references' correctly considers text based resource files in the 'Resource' project directory by @manavortex
- Inconsistent naming for 'Launch Profiles' by @manavortex
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Full Changelog: 8.17.3...8.17.4
8.17.3
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Notable changes:
Critical Fixes
- Fixed being unable to open
.scenefiles generated via the "New File" dialog @notaspirit in #2850
Improvements
- Expanded drop down support for mesh appearances to more mesh components by @manavortex in #2822
- Dropdowns currently only auto-populate if the values are available without reading a different file. This will be addressed in the future; for now, just click the refresh button next to the dropdown.
- UX Improvements and new features for the "New Prop" dialog by @manavortex in #2802
- Clean up World Builder file references not in the project
- UI Layout adjustment for better readability
- Homogenize mesh appearances
8.17.2
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
New Contributors
- @DoctorPresto made their first contribution in #2778
- @github-actions[bot] made their first contribution in #2702
Fixes
Critical
- Fixed deletion and corruption of files when adding files to the project that were already present via the add dependencies functionality or manually
- Fixed Crash To Desktop when regenerating visual controllers
Import / Export / Serialization
- Fixed
scnSceneResourceswith certain content serializing incorrectly - Fixed MultiLayer Mask import export round trip for masks with a resolution that is not a power of 2
- Fixed quantized INT16 value being out of bounds during mesh import
UI/UX
- Fixed key value pair dropdowns incorrectly displaying in mi files
- Improved performance for filterable multiselect checkbox lists
- Fixed progress bar getting stuck when using 'find broken files'
- Fixed grid issues in import export view after changing values
- Fixed
CNamevalue changing without user input - Fixed creation of TweakXL folder when it is not needed
- Adjusted various UI Scaling
Quests and Scenes
- Fixed generation of incorrect cut socket in
scnQuestNode - Fixed incorrect ID for new dialogue lines
- Fixed incorrect connection type when converting to a phase
General
- Fixed appending items when atelier contains a single entry
- Fixed material name missing if a
CMaterialTemplateis used directly - Fixed incorrect file path when generating world builder asset index file
- Fixed incorrect EquipmentEx placement slot syntax when generating an ArchiveXL item
- Reduced false positive rate when finding broken references
- Fixed undynamify creating incomplete resources
- Fixed generated Component names breaking AMM resizing
- Excluded
.binfiles from project validation
Cross Platform
- Fixed open file dialog for non windows operating systems
New Features
Quests and Scenes
- Added timeline editor for
scnSectionNode - Added unpacking
questPhaseNodeDefinitions internal graph into parent - Added ability to add localization entries from journal view
Import / Export
- Animations export now includes rich rig information
General
- Added prop generator for AMM and WB
- Added dialog to add the player head to the current project
- Added dialog to generate RadioExt Station
- Added dialog to extract embedded file path dialog with default to it's relative file path
- Added support for copy pasting multiple file paths in asset browser
- Added ability to set LODMode to appearance by holding ctrl during the process of forcing the LOD level to 0
Improvements
Import / Export
- Adjusted material extraction to include base shader for the blender addon
File Paths
- Disallowed brackets in file names
- Improved path replacement for resource files
- Added txt files to resource files considered for path replacement
- Added morphtargets to be considered for renaming dependencies
- Added mod author name for some autogenerated file paths
- Added the raw directory as a valid location for exported world builder projects
Quests and Scenes
- Improved quest node descriptions for
scnScenesVersionsSceneChanges,scnDynamicAnimSetSRRef,scnReferencePointDefandscnSectionInternalsActorBehavior - Improved cross file copy pasting
UI/UX
- Improved the export view to dynamically show only relevant options
- Improved the editor view for texture resource path in
inkTextureSlot - Filtered out images belonging to an exported inkatlas from the import view
- Improved parts override by showing the chunkmask in the description
- Reduced notification clear time
- Improved communication of errors during file validation
- Added color picker for
TintColorvectors - Improved visual representation of
entEntityParameterBuffersin.appfiles - Improved copying of materials between meshes with new dialog
- Improved entity preview to resolve dynamic names
- Improved display value for default bit field values
General
- Improved ArchiveXLs item generation integration with TweakXL in regards to variants
- Added MTO warning when overwriting base game MultiLayer Setups
- Allow overwriting existing files from InkAtlas generator
- Added Presets for InkAtlas generator
- Sort Tweak entries when writing to yaml
- Changed default auto update setting to ask users before updating (this will only affect new configurations)
Full Changelog: 8.17.1...8.17.2
8.17.1
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Fixes
CLI
- Fixed critical error in CLI / NuGets
Import / Export
- Fixed lod info resetting to default values
Editor
- Chunkmasks will no longer reset if you hold the shift key down while pasting a component
- "Add dependencies" works for .mi and .mlsetup files again
- Fixed a bug where 'Reset Object' wouldn't properly reset the object to its default value
Quest and Scene Editor
- Creating a new questphase file from scratch will properly initialize the quest graph
- Dialog preview in Section nodes will now properly default to English when available
Changes
ArchiveXL item generator
- Wolvenkit now features a new ArchiveXL item generator. Find it in File -> Add New...
QOL
- "Help" menu got a bunch of new entries to wiki guides
- "Project" - "Scan for broken references" will now ask users what to do about files in other mods
- "Project" - "Utilities" - "Generate item codes from yaml" can now generate you spawn codes for all your ArchiveXL items
Editor
- More nodes will display their properties without being opened (e.g. journalEntries)
- "Copy as Handle" will now be visible for anything that's a handle
Quest and scene editor
-
New buttons in the Scene Editor (by @misterchedda in #2667)
Creating new actors, dialogues, etc can now be created via the new button bar.
Buttons for the following properties have been added: Actor, Prop, Dialogue, Choice Item, Animation, Workspot, Effect.
Using the buttons to create these properties will automatically calculate relevant IDs and initialize default values in relevant places making them ready to edit. -
Better node graph details for various nodes (by @misterchedda in #2672)
You now will see better and useful node details in the quest and scene graphs for nodes include UseWorkspot, Teleport, Interrupt, and more. -
New right-click option to hide/unhide all unused sockets in a questphase or scene. (by @MrBilL61 in #2612)
-
Node properties now auto-select in the ‘Node Properties’ tab when a node is selected in the graph. Support is included for nodes like Journal, Condition, PauseCondition, and more. (by @manavortex and @misterchedda in #2676)
Dropdown
- Now supports all (?) meshComponents to show dropdowns for
mesh.depotPathandmeshAppearance
Toolbar
- The toolbar in mesh files has been tidied up a little, there is an ArchiveXL entry now
- You can now "Copy materials from other mesh". This also offers a button to use ArchiveXL patch meshes - please note that the mod has to be installed for this
Full changelog
- version bump for nightly by @notaspirit in #2607
- show 'dependencies' submenu in ent by @manavortex in #2610
- show bind name for vehicle light component by @manavortex in #2611
- feat: added hide/unhide sockets for all nodes in graph view by @MrBilL61 in #2612
- CVM: refresh component's IsDefault if chunkMask changes by @manavortex in #2613
- export-args: tostring by @manavortex in #2608
- CVM: appearancePartComponentOverrides show appearanceName by @manavortex in #2617
- Added .inkcharactercustomization to search&replace in resources by @manavortex in #2619
- Check project path for special characters (#1962) by @manavortex in #2609
- RedCNameEditor: Allow file paths by @manavortex in #2621
- #2577 fixed chunkmask reset on paste by @manavortex in #2618
- fix(ImportViewModel): prevent concurrent file access errors when importing meshes/morphtargets by @poirierlouis in #2622
- created gha to bump version by @notaspirit in #2614
- added debug check to auto update by @notaspirit in #2625
- cvm dropdown for meshes: support patch meshes by @manavortex in #2630
- cvm: added dropdown options for inkcc group by @manavortex in #2620
- fix: image preview when format is invalid or unsupported by @poirierlouis in #2624
- fix(HashHelper): sanitize depot path by @poirierlouis in #2623
- copy materials to other mesh: better check by @manavortex in #2638
- tie automatic flag switching to validating editor by @manavortex in #2639
- Help menu: more links by @manavortex in #2637
- questjournal: refresh when updating id by @manavortex in #2640
- Update 2.31 by @seberoth in #2645
- Some small fixes by @seberoth in #2647
- feat(WelcomePageView): improve layout and responsiveness by @poirierlouis in #2628
- #2360 show 'copy as handle' for all handles in CVM by @manavortex in #2650
- fix remaining static links by @manavortex in #2655
- Removed unused service handling by @seberoth in #2654
- fix: reset object to default value by @misterchedda in #2662
- add Visibility binding for Mlsetup item by @misterchedda in #2663
- feat: display uint props as known enum and bitfield types by @flibdev in #2504
- Fix incorrect lodlevelinfo on import by @notaspirit in #2626
- fix: wwtools crash when converting a WEM to an OGG buffer by @poirierlouis in #2651
- Scan for broken references: ask user what to do about modded files by @manavortex in #2656
- General fixes by @seberoth in #2665
- Debugging for WScripts by @seberoth in #2664
- Fix: "view" menu entries by @manavortex in #2644
- feature: generate item codes by @manavortex in #2666
- CVM: expand materialtemplate's properties when opening by @manavortex in #2668
- fix: UI in import / export tools by @poirierlouis in #2649
- cvm descriptor: entVisualTagSchema by @manavortex in #2671
- feat: add scene editor button bar by @misterchedda in #2667
- feat: more quest/scene node details by @misterchedda in #2672
- cvm: added values for phone journal entries by @manavortex in #2673
- filterTextbox (redstring): will now refresh on focus lost by @manavortex in #2674
- made filtertextbox persistent across journal entries by @manavortex in #2675
- Auto loading for HashService/CRUIDService by @seberoth in #2677
- fix(RedTreeView): force style of a selected item by @poirierlouis in #2670
- Quest editor: auto select path node by @manavortex in #2676
- importargs: disable garment support param by default for wepaons etc by @manavortex in #2679
- fix: initialize graph for questphase on creation by @misterchedda in #2681
- throw if bones are imported into a mesh without by @manavortex in #2682
- fix: prefer en-us for dialogLine event detail by @misterchedda in #2684
- fix: handle null graph connection references by @misterchedda in #2687
- feat: improve UI of Scene Graph and its dialog by @poirierlouis in #2688
- fix(ProjectExplorer): font scaling in hierarchical tree and flat tree by @poirierlouis in #2689
- fix: make itemId editable in Dialogue tab by @misterchedda in #2690
- feat: generate ArchiveXL files thanks to a wizard dialog by @manavortex in #1868
- Feature: add items to atelier store / ccxl vendor by @manavortex in #2685
- fix: info bar text scaling and padding in scene/questPhase editors by @misterchedda in #2695
Full Changelog: 8.17.0...8.17.1
8.17.0
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
New features
In-App Updater
Rejoice, for Wolvenkit has an in-app updater again (by @notaspirit in #2494). You can configure it in the settings.

Project wide validation
-
File Validation can now check
.yamland.xlfiles by @manavortex in #2438 -
The "Project" dropdown now offers new ways of checking your project for errors:
- Scan for broken file references: Scan files in your
archiveandresourcesfolders for invalid paths, displaying results in a pop-up. This will both feature self-references and paths that are not in the game files or your project. - Scan for broken files: Scan files in your
archivefolder to make sure they contain valid data, displaying results in a pop-up - Run File Validation on the entire project: Will trigger File Validation for every file in your project, printing results to the log window.
Project -> Clean Up
- Delete empty folders: Will run automatically each time you pack your mod. Empty directories and folder trees in
archivewill be deleted. - Delete empty meshes: Useful for cleaning up template projects and uuvh4 hair projects. This will delete mesh files without geometry and remove their components from the
.appand.entfiles.
UX/UI
Quest Editor
Thanks to @misterchedda and @MrBilL61, the Quest Editor has gotten a lot of love. We still have a long way to go, but it's not as terrible as it used to be.
- Unified the graph tab with a node property editing panel for .scene and .questphase files
- Improved graph UI with color coded nodes and better node details including semantic descriptions for condition nodes
- Tons of QoL improvements including more right-click actions such as duplicate node, detach node, convert to phase, goto node, new shortcuts, and more
- Contextual dropdown support for quest and scene fields including journal paths, actors/props, performers, and more
- Bug fixes: scene nodes will now correctly show their missing CutDestination (aka Cancel) input socket
For more info on shortcuts and right-click editor actions, visit the wiki for Quest Editor and Scene Editor

File Wizards
Files -> Add Files... now features a list of File Wizards. Here's what they do:

- Add Photo Mode Files: Create photo mode files from a character's
.entand.appfile. - Generate .inkatlas: Create an icon atlas for preview icons from a folder with .pngs
- Generate quest files: Create a skeleton template for a quest mod
- Generate WorldBuilder prop files: Creates the txt file that tells WorldBuilder about your
.meshand.entfiles
The CR2W Editor
Editor toolbar
Many standard workflows are now part of Wolvenkit at the push of a button. You can find the full documentation in the Wolvenkit wiki.
Editor changes
The file editor has seen a lot of improvements that will hopefully make your life easier in the future, such as:
- Wolvenkit will show Vector properties as colors if the game treats them as such. One such example is BaseColorScale, which you can use to tint textures for colour variants. (by @manavortex in #2385)
- Many properties along your standard workflows now have dropdown menus with pre-populated values. While picking a value from the dropdown menu will populate the text field, you can still use the editors directly!
When editing a mesh component, you can pick from the mesh appearances
- ResourceRef context menu: Add/Remove dynamic substitution by @manavortex in #2445
New logo and splash screen
- Replace the logo with a custom-made one by @platyple in #2287
- better splash screen by @manavortex in #2495
Important Fixes
- Discord RPC will now share your project and the current file. If you don't want that much transparency, you can turn it off in the settings.
(by @JakubMarecek in #2492 / @manavortex in #2572) - Game Version 2.3 Support
What's Changed
Dropdown
- CName dropdown by @manavortex in #2390
- dropdown menu for certain resource paths and CNAmes by @manavortex in #2399
- mlsetup: "Smart" dropdown menus by @manavortex in #2463
- show dropdown menu for mesh component paths by @manavortex in #2523
- added dropdown menu to root entity default appearance by @manavortex in #2525
- Dropdownmenu values for cvm value by @manavortex in #2526
- added dropdown for
phaseResourceandsceneFileby @MrBilL61 in #2424 - added redstringDropdownEditor by @manavortex in #2443
- CVM material properties: follow mi chain by @manavortex in #2493
UX/UI
- World Builder Prop List generator by @manavortex in #2507
- feat: improve quest editor by @misterchedda in #2464
- feat: add scene editor by @misterchedda in #2444
- feat: add scene graph node selection persistence by @misterchedda in #2514
- added f7 shortcut to create new folder by @manavortex in #2472
- "your document has changes" popup by @manavortex in #2371
- showing HSV_Mod vector as color by @manavortex in #2385
- Clear Chunk Materials in Selection by @manavortex in #2447
- Replace the logo with a custom-made one by @platyple in #2287
- better splash screen by @manavortex in #2495
Everything Else
- Fix secor preview not working due to illegal characters in node name by @justarandomguyintheinternet in #2293
- fixing exception and invalid file path by @manavortex in #2288
- add material dependencies: will no longer abort after first material by @manavortex in #2292
- rocket launcher arm substitution: check against right string by @manavortex in #2301
- fix facial anim for !female by @manavortex in #2300
- animAnimSetEntry node: shift-click expands "animation" node by @manavortex in #2306
- make redmod scripts and tweaks consistent in the project explorer by @rfuzzo in #2312
- File validation on entire project: Made it less spammy by @manavortex in #2314
- mesh tools: unparented bones don't throw an exception anymore by @manavortex in #2316
- search&replace for TweakDBId by @manavortex in #2317
- #2163 remove primary constructors by @manavortex in #2192
- .xl default file name => projectname.archive.xl by @manavortex in #2318
- Added project files to rig export by @manavortex in #2319
- prevent endless loop during startup by @manavortex in #2322
- fixed ArchiveXL substitution check for arms by @manavortex in #2325
- fixed dynamic material name used/unused detection by @manavortex in #2336
- #2295: fixed locate project prank b...
8.16.1
Notable changes:
- Game version 2.21 support
- Hair CCXL Material Conversion
- Added settings to wscript
- feature: remember open files
Critical bug fixes:
- Fixed bug while renaming folders which would delete them
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
What's Changed
- un-dynamify mesh materials by @manavortex in #2171
- Fix TweakDB lookup by @seberoth in #2185
- import export tools refresh on project load by @rfuzzo in #2189
- fix plugin manager installing wrong RHT file by @rfuzzo in #2188
- fix(LogView): improve responsiveness by @poirierlouis in #2200
- #2202 new files: better filter by @manavortex in #2203
- feat: add copy relative path button in treegrid by @Silvakabe in #2217
- Update 2.21 by @seberoth in #2223
- fix: quest and scenes RDTDataViewModel search by @Sun1ive in #2220
- feature: remember open files by @manavortex in #2142
- #2128 change facial animation: refresh by @manavortex in #2195
- Delete partsvalues and overrides by @manavortex in #2215
- View: exposing save/delete default layout by @manavortex in #2225
- rename/refactor: will now also work in inkcc files by @manavortex in #2226
- fix: graph view crash by @Sun1ive in #2230
- Added basic support to view quest/scene graphes with custom/dynamic nodes by @seberoth in #2241
- WScript improvements by @seberoth in #2251
- fix: wrong facial anim gender by @manavortex in #2262
- Fixed wrong error message when no onSave hook were executed by @seberoth in #2260
- fix incorrect collision shape rotation in sector preview by @notaspirit in #2255
- Moved GeometryCache from App to Common by @seberoth in #2263
- feat: hair mesh conversion to the dynamic ccxl structure by @Silvakabe in #2254
- Added settings to wscript, attempt no. 3 by @seberoth in #2265
- fixed issues and improved error handling when renaming files by @notaspirit in #2272
- fix: hair ccxl button hides for .mesh files with no appearances by @Silvakabe in #2271
- GarmentSupport fixes by @seberoth in #2270
- Change some UI names in entSpawner / object spawner import feature by @justarandomguyintheinternet in #2277
- Nuget update by @seberoth in #2276
New Contributors
- @Silvakabe made their first contribution in #2217
Full Changelog: 8.16.0...8.16.1
8.16.0
Notable changes:
- New log view by @poirierlouis
- some (switch, quest output) node properties by @JakubMarecek
- engine and cli fixes by @seberoth
- feature/searchbar for CR2W editor by @manavortex
- added "change animation" and "to photo mode app" to .app menu bar by @manavortex
- Convert to photo mode app by @manavortex
- feat: add UI scaling + improve UX by @poirierlouis
- Update 2.2 by @seberoth
- NPV: Create photo mode files by @manavortex
New Contributors
- @notaspirit made their first contribution in #2123
- @Sun1ive made their first contribution in #2126
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
What's Changed
- WIP: Trying to enable .inkatlas previews by @manavortex in #1967
- Added button to stop running script in Log view by @poirierlouis in #1972
- Logs a nice message when interrupting a wscript by @poirierlouis in #1973
- Added buttons to filter logs by level by @poirierlouis in #1975
- Improved Log view with scrollbar and shortcuts by @poirierlouis in #1976
- fix(MeshExport): Prevent trying to save materials if there aren't any by @seberoth in #1979
- some (switch, quest output) node properties by @JakubMarecek in #1955
- #1965 pixel grid snapping by @manavortex in #1968
- Added support for RedVector2Editor by @poirierlouis in #1987
- feature/searchbar for CR2W editor by @manavortex in #1956
- Linux: Remove call to ntdll completely by @seberoth in #1990
- Fixed exception when ChunkMask value is null by @poirierlouis in #1988
- fixed validating editor for dynamic paths by @manavortex in #1992
- displaying bone names in mesh file arrays by @manavortex in #1994
- Removed unused ScriptDocument by @poirierlouis in #1995
- Update JetBrains logo by @poirierlouis in #2000
- fix(RDTWidgetView): visibility of widgets in canvas by @poirierlouis in #2001
- fix(GraphView): Better error message for missing sub graph files by @seberoth in #2007
- feat(RDTWidgetView): add snap grid feature by @poirierlouis in #2004
- fix: Don't analyze archives when loading via cli by @seberoth in #2008
- Fixed nugets not including required files by @seberoth in #2005
- fix: "Open in new tab" checking wrong property for already opened files by @seberoth in #2009
- fixing regenerate visual controllers by @manavortex in #2010
- Added nuget infos for WolvenKit.Common by @seberoth in #2011
- material name: will now update parent display node by @manavortex in #2013
- fix(AnimExport): Fixed wrong array size for SIMD alligned buffers. by @seberoth in #2012
- Prevent threading issue with compressing/decompressing images by @seberoth in #2015
- Update nugets by @rfuzzo in #1983
- CVM: removed duplicate description for ints by @manavortex in #2022
- Post nuget update fixes by @seberoth in #2024
- Removed tmp extension by @seberoth in #2028
- Upgraded DirectXTexNet by @seberoth in #2025
- Added reader/writer for Razer Chroma animations by @seberoth in #2021
- fix(PropertiesView): scale/hide gizmos of mesh preview by @poirierlouis in #2019
- fixed redmod deployment and info.json by @manavortex in #2029
- exception fixes and CVM context menu performance by @manavortex in #2033
- fixed chunk duplication behaviour in groups (shift key) by @manavortex in #2034
- Mesh Export/Import issues by @seberoth in #2037
- added "change animation" and "to photo mode app" to .app menu bar by @manavortex in #2038
- npv: anim file conversion stuff to/from photomode by @manavortex in #2039
- search and replace: progress bar, regex support by @manavortex in #2041
- search&replace: added checkboxes by @manavortex in #2042
- search&replace: fixed count in children by @manavortex in #2043
- search&replace: faster, duplication checks, persistent expansion states by @manavortex in #2044
- Convert to photo mode app by @manavortex in #2045
- fix search not considering uninitialized nodes by @manavortex in #2046
- fix performance hog in search with too many nodes by @manavortex in #2047
- Fix/search and replace performance 2.0 by @manavortex in #2048
- Rename npv dialogue labels by @manavortex in #2052
- feat: add UI scaling + improve UX by @poirierlouis in #1954
- ctrl+w closes active editor by @manavortex in #2053
- sarch&replace: more performance fixes by @manavortex in #2054
- fix(RDTInkAtlasView): make editor readonly by @poirierlouis in #2055
- Context menu entries by @manavortex in #2056
- context menu: show/hide entries based on modifiers by @manavortex in #2057
- various small UX changes by @manavortex in #2058
- fixed "paste selection" by @manavortex in #2059
- fixed Home overlay after breaking it yesterday by @manavortex in #2060
- find broken refs in file by @manavortex in #2062
- renamed "delete empty submeshes" by @manavortex in #2063
- Project and appfile actions by @manavortex in #2064
- Project and appfile actions by @manavortex in #2065
- Paste for multiselect by @manavortex in #2067
- Move copy paste into treeview by @manavortex in #2071
- allow setting chunkmask to 0 again by @manavortex in #2072
- Fix photomode convert by @manavortex in #2073
- fixing animgraph crash by @manavortex in #2074
- Update 2.2 by @seberoth in #2075
- Mesh fixes by @seberoth in #2076
- Better CurveSet handling by @seberoth in #2050
- Feature/redtreeview contextmenu refactoring by @manavortex in #2077
- Dispose EffectManager on close by @seberoth in #2083
- fix copy/paste check across multiple tabs by @manavortex in #2078
- #2087 fix broken file ref dialogue not working by @manavortex in #2088
- export tool: disabling without files by @manavortex in #2090
- convenience when copying/moving file on itself by @manavortex in #2085
- Changed morphTarget normal / tangent to Vec3 instead of Vec4. by @seberoth in #2095
- Skip class selection for handles when only one type is allowed by @seberoth in #2101
- BitfieldEditor fix by @seberoth in #2100
- Use CamelCase for JSON data in GLBs by @seberoth in #2099
- Fixed ambiguous wscript function definition by @seberoth in #2102
- #2062 #2002 descriptors and values for cvm by @manavortex in #2103
- fix(CLI): Removed invalid check by @seberoth in #2107
- feat(CurveEditor): improve contras...
8.15.0
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Version compatibility
Check the wiki for update instructions — older versions may not work and we don't support them.
Notable changes
-
The CR2W editor has a new menu bar now, where you can find many convenient functions:

-
new wscript features, wscripts can be run from the dock now
-
New graph view features
-
OpusPak/OpusInfo support to CLI
-
export/import tool fixes and other UI fixes
New Contributors
- @Zhincore made their first contribution in #1771
- @0x25CBFC4F made their first contribution in #1777
- @halgari made their first contribution in #1850
- @yretenai made their first contribution in #1924
- @poirierlouis made their first contribution in #1941
What's Changed
- fix(MaterialExport): Fixed searching in wrong file for nested embedded references. Fixes #1690 by @seberoth in #1691
- handling&doku when game executable couldn't be launched by @manavortex in #1689
- Feature/view controls for sector preview by @Simarilius-uk in #1695
- refactor(TexturePreview): Refactored texture preview by @seberoth in #1702
- Fix/inkwidget preview by @seberoth in #1704
- Graph nodes properties by @JakubMarecek in #1707
- default values for cvm Multilayer_Layer by @manavortex in #1703
- Fix/dynamic material export by @manavortex in #1709
- Feature/replace path after rename by @manavortex in #1699
- added clear all materials by @manavortex in #1713
- usability: cvm doubleclick behaviour by @manavortex in #1715
- pop-up: save dirty files before packing/launching by @manavortex in #1720
- feature(CR2WEditor): Added possibility to extract/save embedded files in the CR2WEditor view. by @seberoth in #1719
- scenes - animName - rid animation container index name by @JakubMarecek in #1725
- mesh materialViewer should always have a material by @manavortex in #1716
- file size in file explorer's flat view by @manavortex in #1728
- Graph nodes properties by @JakubMarecek in #1733
- Fixed cfoliage buffer layout by @seberoth in #1747
- Fixed entVisualControllerComponent generation by @seberoth in #1739
- unify archive lists in archive manager by @rfuzzo in #1616
- Add w2mesh to the list of types that can be exported. by @Simarilius-uk in #1749
- Use Default Encoder for RedJsonSerializer by @dragonzkiller in #1757
- fixed property name calculation for components+appearances by @manavortex in #1770
- fix: Change header text to "Selected" for the column of selected items by @Zhincore in #1771
- trying to save without a project will now show an annoying popup by @manavortex in #1769
- Graph editor save state by @JakubMarecek in #1772
- fix(ProjectExplorer): Fixed sorting by @seberoth in #1778
- Another memory optimization patch by @0x25CBFC4F in #1777
- Enhance NodeRef caching in WolvenKit.RED4 by @0x25CBFC4F in #1765
- HashTool window now uses new algo to calculate NodeRef's hash by @0x25CBFC4F in #1784
- 1753: name and e-mail default for new project in settings by @manavortex in #1787
- fixed csv text/value display & update by @manavortex in #1781
- MeshView: added copy appearance name button by @manavortex in #1786
- rename dialog will show refactoring checkbox by @manavortex in #1790
- mesh: generate missing materials (definitions+instances) by @manavortex in #1780
- Delete packed folder, HotReload packs everything by @manavortex in #1789
- Launchprofiles refactoring & overhaul by @manavortex in #1793
- CVM: Unused materials will now consider auto-generated chunks by @manavortex in #1800
- find files using this: fixed task getting stuck by @manavortex in #1803
- project browser: visibility fixes by @manavortex in #1806
- Root Motion by @effs in #1751
- archiveXL check: better error messages by @manavortex in #1814
- CVM: DisplayName property to make chunkMaterials show LODLevels by @manavortex in #1818
- Mesh editor: "Select material" context menu entry by @manavortex in #1820
- holding shift on launch disables save game load by @manavortex in #1830
- Search&Replace: Adedd "swap" button by @manavortex in #1833
- CLI: Use guessed extension when uncooking by @dragonzkiller in #1834
- Fix importing opuspaks not producing new opuspaks by @Zhincore in #1839
- feature/add mesh dependencies by @manavortex in #1835
- added 'Is Loading' text to a bunch of editors by @manavortex in #1848
- Better folder moving via rename dialog by @manavortex in #1852
- Add Core to list of published packages by @halgari in #1850
- Feature: run file validation on project by @manavortex in #1854
- Feature/find unused stuff by @manavortex in #1858
- Feature/reopen last project by @manavortex in #1861
- feature: import entspawner json by @manavortex in #1862
- Feature/export import filtering by @manavortex in #1882
- #1483 partmapping reload on inktexture change by @manavortex in #1899
- json files can delete duplicates now by @manavortex in #1901
- Fix uncooking OpusInfo not dumping JSON by @Zhincore in #1914
- Add OpusPak/OpusInfo support to CLI by @Zhincore in #1910
- Fix non-windows platforms trying to load nt.dll for RtlAreLongPathsEnabled by @yretenai in #1924
- Scripting: Added
@descriptionand@usagescript file headers. by @seberoth in #1937 - SceneEditor: Fixed scnChoiceNode creation and adding new opions by @seberoth in #1934
- #1819 fixed drag&drop being all over the place by @manavortex in #1938
- Select and run a wscript from Log dock by @poirierlouis in #1939
- Add TweakDB API in wscript by @poirierlouis in #1945
Full Changelog: 8.14.0...8.15.0
8.14.0
❓ Wiki: https://wiki.redmodding.org/wolvenkit
❗ MAKE SURE TO INSTALL THE PREREQUISITES : .NET 8 runtime https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Version compatibility
Check the wiki for update instructions — older versions may not work and we don't support them.
Notable changes:
File Editor: Simple Mode
Wolvenkit now defaults to the Simple Editor, showing you only the most common properties.
You can toggle this on-the-fly by double-clicking the first toolbar button, or turn it off in the settings:

File: Import Archive
You can now import archives in the File menu:

Search and replace in Selection
You can now search and replace in Wolvenkit's file editor. Please note that there are no safety checks and no way to un-do this!

Quality of life
Trimming textbox
The depot path edit box will now show you the relevant parts of the path:

Meshes: Delete unused materials
Clean up templates in one click (and turn off all those file validation errors)

Log File Viewer
The log file viewer is now faster, prettier, and more deadly. Also, you can copy lines by clicking the handy icon at the end of the line:

Editor: Context menu
In many places through the app, the context menu will now offer you different options if you hold down the Shift key:

Editor: Property previews
Many properties will now show you a preview of what's inside:

What's Changed
- Collapse expand treeview nodes by @manavortex in #1592
- added copy array content command by @manavortex in #1594
- mesh import: better error message by @manavortex in #1595
- split chunkviewmodel desc+value by @manavortex in #1596
- Remove/webview by @rfuzzo in #1598
- Added node descriptor fallback for worldNodes by @manavortex in #1601
- Import export tools bugfixes by @manavortex in #1603
- RGB colour picker for BaseColorScale by @manavortex in #1606
- implemented "search and replace" in editor view. seems to work??? by @manavortex in #1608
- brought chunk view model type back by @manavortex in #1609
- Feature/editor replace in selection by @manavortex in #1610
- fixed export error for appearances without chunks by @manavortex in #1611
- Dynamic class improvements by @seberoth in #1614
- Descriptors+Values in ChunkViewModel by @manavortex in #1613
- Project explorer: context menu "copy relative path" by @manavortex in #1612
- ProjectExplorer: added "Create new folder" to context menu by @manavortex in #1617
- descriptor+value for gameBinkVideoRecord by @manavortex in #1619
- ChunkViewModel: Delete unused materials by @manavortex in #1621
- Improved CR2W handling by @seberoth in #1620
- fixed value being overwritten by @manavortex in #1622
- projectFileBrowser: hopefully more robust copy by @manavortex in #1618
- scene graph load fix when NotablePoints and LocStore are missing by @JakubMarecek in #1625
- Material context menu entries by @manavortex in #1624
- fixed a premature return in array search&replace by @manavortex in #1627
- added a missing descriptor by @manavortex in #1623
- 1599 empty array item by @manavortex in #1629
- fix(anims): Additive Anim Import Uses Correct Math to Strip Local Transform by @effs in #1631
- fixed duplication index flip by @manavortex in #1634
- fix(mesh, import): Allow Optimized VEC3 COLOR_ Attributes in glTF by @effs in #1636
- descriptor read-only, "simple mode" editor by @manavortex in #1633
- hiding nodes in .app and .ent by @manavortex in #1639
- Add Ukrainian to the LocKey settings by @FedorenkoCodes in #1643
- refactor(LogView): Improved performance & usability? by @seberoth in #1647
- fixed "copy absolute path to raw" by @manavortex in #1644
- Graph nodes properties by @JakubMarecek in #1645
- Truncating text box for DepotPath by @manavortex in #1640
- Alternative TrimmingTextBox by @manavortex in #1653
- removed write protection from arrays of buffers by @manavortex in #1654
- InkAtlasPreview: changing SlotName should update model by @manavortex in #1650
- 1655 fixed missing refresh after delete by @manavortex in #1656
- added taskbar icon for Nightly by @manavortex in #1659
- Feature/sync node selection by @manavortex in #1657
- ArchiveXL dynamic paths, fixes mesh_ent preview by @manavortex in #1646
- Feature/import archive by @manavortex in #1663
- Fix/empty node name none by @manavortex in #1665
- skipping dynamic path resolution (and check) for non-mesh-components by @manavortex in #1666
- refactor(HashService): Redone storing of custom hashes by @seberoth in #1664
- Fix/sector tab sync and filter by @manavortex in #1667
- fix(GUI): Fix crash while removing TreeView items by @seberoth in #1671
- search&replace: don't abort by @manavortex in #1670
- fixed project explorer collapse on save by @manavortex in #1669
- Graph nodes properties by @JakubMarecek in #1673
- Custom hash improvement by @seberoth in #1674
- depot path will update parent value by @manavortex in #1675
- Refactoring/archive manager replace with original by @manavortex in #1662
- First actor test isnt triggering most of the time, this seems to. by @Simarilius-uk in #1672
- Updated CI by @seberoth in #1679
- Add FileExistsInRaw function to see if a file is in the raw folders. by @Simarilius-uk in #1678
- Added WScript CreateInstanceAsJSON function by @justarandomguyintheinternet in #1677
- reverted an unintended change by @manavortex in #1680
- Trimming textbox: triple click selects all by @manavortex in #1684
- minor tweaks&fixes by @manavortex in #1681
- Feature: WScript HashString function by @justarandomguyintheinternet in #1682
- Fix/mesh path lookup by @manavortex in #1686
- fix(ArchiveManager): Load order again? by @seberoth in #1683
- Added "Copy Tweak Name" to Tweak Browser by @manavortex in #1687
New Contributors
- @JakubMarecek made their first contribution in https://github.com/WolvenK...