Repository navigation
KCDMerge v1.4.2 — Release Notes
Overview
KCDMerge v1.4.2 is a critical bugfix release resolving game-breaking interaction failures, unresponsive keybindings, and settings menu freezes caused by dummy .tbl file generation in non-table CryEngine subsystems.
🚨 Critical Bug Fixes
1. CryEngine ActionMap & Input System Protection
- Problem: In previous versions, the merge pipeline generated zero-byte
.tbloverride files for any XML file processed during the merge. When mods modified engine configuration files such asLibs/Config/defaultProfile.xmlorLibs/Config/keybindSuperactions.xml, KCDMerge generated zero-byte dummy.tblfiles (e.g.,Libs/Config/defaultProfile.tbl). - Game Impact: CryEngine's ActionMap subsystem crashed or failed to initialize keybindings when encountering zero-byte
.tblfiles. In-game, this resulted in:- Interaction key (
[E]) completely non-responsive for looting chests, talking to NPCs, and picking herbs. - Lockpicking minigame unable to rotate or engage.
- Jump, dog commands, and secondary action bindings failing to trigger.
- Interaction key (
- Resolution: Strict path filtering has been implemented in
ModOutputBuilder.CreateTblFiles(). Only XML files strictly located underLibs/Tables/are eligible for.tbloverride creation. Non-table XML files are now safely bypassed.
2. Flash UI & Graphics Settings Freeze Prevention
- Problem: UI action maps and flowgraphs (e.g.,
Libs/UI/UIActions/MM_GraphicsSettings.xml) were previously also assigned empty.tbloverrides. - Game Impact: The in-game graphics and pause menus could freeze, hang, or display raw
[object]string placeholders when attempting to query Flash UI data. - Resolution: UI flowgraphs are no longer tagged with dummy
.tblfiles, allowing CryEngine's Flash UI engine to load them directly and reliably.
🧪 Automated Testing & Quality Assurance
- Added Unit Test Suite:
TblOverrideFilterTests(tests/KCDMerge.Tests/TblOverrideFilterTests.cs)- Tests positive identification of valid table files (e.g.,
Libs/Tables/rpg/rpg_param.xml,Libs\Tables\item\item.xml). - Tests rejection of engine configuration XMLs (
Libs/Config/defaultProfile.xml,Libs/Config/keybindSuperactions.xml). - Tests rejection of Flash UI files (
Libs/UI/UIActions/MM_GraphicsSettings.xml). - Tests rejection of animation metadata (
Animations/Mannequin/ADB/tags.xml) and material flowgraphs (Libs/MaterialEffects/Flowgraphs/fx.xml). - Ensures normalized cross-platform path handling (Windows
\vs Linux/).
- Tests positive identification of valid table files (e.g.,
🛠️ Upgrading & Usage
If you experienced broken interactions or frozen UI:
- Download
KCDMerge-v1.4.2-linux-x64.tar.gzfrom this release. - Extract the archive:
tar -xzf KCDMerge-v1.4.2-linux-x64.tar.gz cd KCDMerge-v1.4.2-linux-x64 - Copy the new
KCDMergeexecutable into your existing merge folder (or update your configuration). - Re-run
KCDMerge. It will automatically rebuild your merged.pakfiles without generating corrupting.tblfiles for your action maps or UI.