Wolfenstein Modloader Buy me a coffeeKaffee spendieren

Wiki / Start hereEinstieg

Wolfenstein Modding Wiki

ReferenceNachschlagewerk Original page in the GitHub wikiOriginalseite im GitHub-Wiki

In plain wordsIn einfachen Worten

The start page of the wiki covers Wolfenstein: The New Order and Wolfenstein II: The New Colossus. It opens with a 'Start here' table that sends players to the WolfSDK Loader guide, modders to the Studio guide, and everyone to the FAQ and the mod.json format, in English and German, plus the download of WolfSDK 0.3.1. It explains the three levels of proof: measured in the running game, inferred from the program file, or only a text string found in the file. A big table shows what currently works, what does not, and what is still unverified for each game.

  • Strict rule: a text found in the game program does not prove the feature exists; of 2,231 harvested setting names in Wolfenstein II, 409 were not settings at all.
  • The New Order: patched archives load in game (14/14 rebuilt files, 48 minutes of play, 0 errors); cheat settings from config files stay locked, while the console (Ctrl+^) is code-read only and untested.
  • Wolfenstein II: value edits (pistol magazine 10 to 30), a custom weapon skin, a custom map and maps loaded from the developer menu are confirmed in a running game.
  • Wolfenstein II: the encrypted config files were cracked and used to run God mode and infinite ammo in a real save; sound and video replacement in the Studio (0.3.0) is not yet tried in game.
  • Still not working or unverified: The New Order's new 3D models and megatexture pixels, Wolfenstein II's megatexture pixels and loose files.

Die Startseite des Wikis behandelt Wolfenstein: The New Order und Wolfenstein II: The New Colossus. Sie beginnt mit einer Tabelle „Start here“, die Spieler zur Anleitung des WolfSDK Loaders schickt, Modder zur Studio-Anleitung und alle zur FAQ und zum mod.json-Format, auf Englisch und Deutsch, dazu der Download von WolfSDK 0.3.1. Sie erklärt die drei Beweisstufen: im laufenden Spiel gemessen, aus der Programmdatei abgeleitet oder nur ein Text, der in der Datei gefunden wurde. Eine große Tabelle zeigt für jedes Spiel, was funktioniert, was nicht und was noch unbestätigt ist.

  • Strenge Regel: Ein Text im Spielprogramm beweist nicht, dass die Funktion existiert; von 2.231 gesammelten Einstellungsnamen in Wolfenstein II waren 409 gar keine Einstellungen.
  • The New Order: Gepatchte Archive laden im Spiel (14/14 neu gebaute Dateien, 48 Minuten Spielzeit, 0 Fehler); Cheat-Einstellungen aus Konfigurationsdateien bleiben gesperrt, die Konsole (Strg+^) ist nur aus dem Code gelesen und ungetestet.
  • Wolfenstein II: Wertänderungen (Pistolenmagazin 10 auf 30), ein eigener Waffen-Skin, eine eigene Karte und Karten aus dem Entwicklermenü sind im laufenden Spiel bestätigt.
  • Wolfenstein II: Die verschlüsselten Konfigurationsdateien wurden geknackt und damit Gottmodus und unendliche Munition in einem echten Spielstand ausgelöst; der Austausch von Sounds und Videos im Studio (0.3.0) ist im Spiel noch nicht ausprobiert.
  • Noch nicht möglich oder unbestätigt: neue 3D-Modelle und Megatextur-Pixel in The New Order, Megatextur-Pixel und lose Dateien in Wolfenstein II.

Technical detailsTechnische Details

Der technische Teil ist auf Englisch – so, wie er im Wiki steht. Unterstrichene Begriffe haben eine Erklärung auf Deutsch.

Start here

You want to… English Deutsch
play with mods, cheats or a custom map WolfSDK Loader WolfSDK Loader
make mods (textures, texts, decls, scripts) WolfSDK Studio WolfSDK Studio
find a quick answer FAQ FAQ
write a mod.json by hand Mod format Mod-Format
learn which values a mod can change Modding Guide –

Keywords: start here, home, wiki, getting started, first steps, WolfSDK, Loader, Studio, Hier starten, Startseite, Erste Schritte

Download

Download: the current app release, WolfSDK 0.3.0, is on the release page: a Loader for players and a Studio for modders (the Studio download contains the Loader too). Windows only, Steam versions of both games. Unzip and run WolfSDK.cmd; Python is bundled.

Community and Discord: https://lopekinz.github.io/wolfenstein-modloader/#community

Keywords: download, release, WolfSDK 0.3.1, WolfSDK 0.3.0, Loader ZIP, Studio ZIP, Discord, community, herunterladen

Documentation — Getting Started

This wiki describes two games and a tool:

  • Wolfenstein: The New Order (id Tech 5, WolfNewOrder_x64.exe) — the loader reads, patches, and launches this game.
  • Wolfenstein II: The New Colossus (id Tech 6, NewColossus_x64vk.exe) — the loader locates and launches it, passing Cvars, and writes its archives too: wolfsdk/tncpatch.py patches its IDCL containers directly (wolfsdk/game.py, TITLES["tnc"].mods = True for both titles). Decl value edits, a BC1 weapon skin, and a full dlc_0-precedence custom map have all been confirmed working in a real, running game — see the tables below and TNC Modding Surface.

The apps are described on WolfSDK Loader and WolfSDK Studio; their source and README are in the repository folder modloader/. The pages below contain what has been discovered about the games.

Keywords: documentation, research, overview, The New Order, The New Colossus, id Tech 5, id Tech 6, Dokumentation, Forschung


The Most Important Rule: Measured ≠ Speculated

This project is only as valuable as you can trust your claims. Therefore, the documents define three levels of proof, most sharply formulated in Asset-Loading-Paths.md:

Grade Means Example
Measured / RUNTIME In the log of a running game, on the disc, or proven via a run with real data. WARNING: com_allowConsole CANNOT be set in retail! in qconsole.log
Inferred / CVAR Read from the binary; the Name↔Meaning mapping is guessed via neighborhood. The .text of both games is SteamStub-encrypted, there is no call site as proof. fs_overlaypath — "Extra location for game files (with precedence over fs_basepath)"
Speculated / STRING The text exists in the binary, nothing more. A dead code path looks just as good. FSPATH_OVERLAY as an RTTI name

Keywords: evidence, proof, measured, inferred, speculated, evidence grades, Beleg, gemessen

Strings Are Not Proof: the Cvar Example

A string in the EXE does not prove that the function exists. How large the difference is: of 2231 "Cvar names" harvested as strings from Part 2, 409 are not Cvars at all, and 1433 real Cvars were missed. The engine's own registry holds 3,256, of which 304 are exposed to the retail console (TNC-CVar-Catalog.md, TNC-CVar-Validation.md).

For the game launched so far, almost nothing has been done. By far the largest part of all statements about Effect is unverified; statements about Format are mostly not.

Keywords: strings, cvar names, registry, exposed cvars, unverified, effect vs format


Which Document Answers Which Question

The tables below point to the page for each question. For the apps themselves, start with Start here.

Keywords: which page, document index, table of contents, where to find, Inhaltsverzeichnis

Questions about the Apps and Writing Mods

Question Document
How do I install and use the loader? WolfSDK-Loader
How do I use the Studio? WolfSDK-Studio
Short answers to common questions FAQ
Which fields does mod.json have? Mod-Format
How do I write a Mod? Which values exist for weapons, skins, enemies? Modding-Guide.md
What doesn't work, and why? How does the Retail-Cvar block work? Modding-Limits.md
How do I load maps from the developer menu of Part 2? TNC-Dev-Menu

Keywords: loader, studio, faq, mod.json, modding guide, limits, dev menu, which page

Questions about Formats and Asset Types

Question Document
What do the archives from Part 1 look like? (master.index, chunkN.index/.resources, Decls, BIM) File-Formats.md
What asset types exist at all, how many, text or binary? Engine-Modding-Surface.md
What in the game has not been touched yet? Starting equipment, .entities, .script, AI, Ammo TNO-Modding-Surface.md
The same for Part 2: 174 types, difficulty levels, enemy health, Gore, cost of an Edit TNC-Modding-Surface.md

Keywords: file formats, archives, asset types, modding surface, master.index, entities

Questions about Audio, UI and Textures

Question Document
How is the Audio layer built, and how do you make the game louder/grittier? Audio.md
Menu, HUD, Menu text — what can be changed? UI-Assets.md
How does the Megatexture (.pages) work? TNO-Virtual-Textures.md
How are the texture databases of Part 2 (.texdb) built? TNC-Texture-Database.md

Keywords: audio, sound, UI, HUD, menu text, megatexture, virtual textures, texdb

Questions about Loading Paths, Saves and Cvars

Question Document
Can you load loose files instead of archives? DLC folders? Overlay paths? Asset-Loading-Paths.md
What do save games and profiles look like, and what is protected there? Save-Games-and-Profiles.md
Which Cvars does Part 2 have, with description and default? TNC-CVar-Catalog.md — 3116 settable Cvars from the engine registry
Which Cvars does Part 1 have, which are cheats, and how do you set them? TNO-CVar-Catalog.md — 3194 Cvars from the engine registry

Keywords: loading paths, loose files, overlay, save games, profiles, cvar catalog, cvars

Questions about the Console, Scripts and Research Status

Question Document
How does Part 2's console/Cvar restriction work, and which commands reach the game without a patch? TNC-Console-Unlock.md
What do Kiscule's 205 script node types do, grouped by purpose? Kiscule-Node-Reference.md
Where do the documents contradict each other? Known-Contradictions.md
What has happened since the last session, what is open? Research-Status-2026-09-21.md

Keywords: console unlock, kiscule, script nodes, contradictions, research status

Raw Data and Long Pages

Raw data without prose: cvars_tnc.json and cvars_tno.json (the engines' cvar registries), cvars_tnc_echt.json (listCvars output of the running engine: the 304 exposed Cvars), samples/ (Before/After images of Gore Mods).

Asset-Loading-Paths.md and TNO-Virtual-Textures.md are long. Both have a short answer at the very top; those who only need the decision read only that.

Keywords: raw data, json, cvars_tnc.json, cvars_tno.json, samples, long pages


What Works, What Doesn't, What Is Unverified

"Unverified" here always means: plausible but not confirmed in a running game — not "uncertain measured". The status of the WolfSDK 0.3.0 features themselves is in the FAQ.

Keywords: status, what works, unverified, measured, research status, Stand

The New Order (id Tech 5): Archives and Decls

Area Status Proof
Read archives, 203,843 assets, 105 types works, measured Index Round-Trip byte-identical, File-Formats.md
Parse Decls and surgically change them works, measured 0 Round-Trip deviations, File-Formats.md §4
Patch in existing Slot + Revert works, measured Apply→Revert sha256-identical; Order-invariant Modding-Limits.md §4
Load patched archives in game works, measured — 14/14 .resources rebuilt, 373 assets, 48 min playtime, 0 error lines in log Modding-Limits.md §4
Weapon values, enemies, skins, Gore via Decls works (Format measured, Effect unverified in game) Modding-Guide.md
Sound Decls: Volume, Range, Mixbuses works (Format measured, Effect unverified) Audio.md §4
Player starting equipment (entityDef:player/…) works (Fields measured, Effect unverified) TNO-Modding-Surface.md §4.4

Keywords: The New Order, TNO, archives, decls, patch, revert, weapon values, sound decls

The New Order: Cheat Cvars

Area Status Proof
g_permaGodMode, g_permaInfiniteAmmo, g_fov, g_damageScale, pm_togglesprint, com_showFPS, g_showHud works, not affected by the block Modding-Limits.md §1
Cheat cvars (devgui, Gore Cvars, all pm_* speeds, g_gravity, Intro skip) via Config or +name value does not work, measured — rejected from a Config, accepted from command line and wiped by Cheat Reset. toggle name v v (console or +toggle) is code-only, not yet run in game; the loader sends cheat cvars as +toggle since 0.2.0 (Not yet confirmed in game) Modding-Limits.md §1-2, TNO-CVar-Catalog

Keywords: TNO cvars, cheat cvars, retail lock, cheat reset, toggle, +toggle, g_permaGodMode

The New Order: Console and DevGUI

Area Status Proof
Console in The New Order unmeasured — opens with Ctrl+^ (code only); com_allowConsole does not open it Modding-Limits.md §2
DevGUI / Ingame Menu via debugmenu.txt does not work, measured at the main menu — file patchable, but no consumer for debugmenu.txt found in the exe (code only); devgui only stays on inside a level Modding-Limits.md §2, UI-Assets.md §5

Keywords: TNO console, Ctrl+^, com_allowConsole, DevGUI, debugmenu.txt, ingame menu

The New Order: What Does Not Work

Area Status Proof
Patch EXE (Steam version) does not work — .text is SteamStub-encrypted Modding-Limits.md §2
Particles (particle) change does not work, measured TNO-Modding-Surface.md §6.1
New 3D Geometry (.md6mesh) does not work — binary, not examined Modding-Limits.md §5
Replace Virtual-Texture-Pixel does not work — container read, Codec (clipped JPEG-XR) not TNO-Virtual-Textures.md §8
Create new assets (new index entry) does not work without extending the Patcher TNO-Modding-Surface.md §6.4
Edit save games blocked — nothing encrypted, but the 4-byte checksum header is not recomputable Save-Games-and-Profiles.md §3

Keywords: does not work, EXE patch, particles, geometry, virtual texture pixels, new assets, save games

The New Order: Unverified Menu, HUD and Map Data

Area Status Proof
Change Menu text (strings/*.lang) length-preserving unverified — raw deposited, raw write path exists in Patcher, mods/menue_marke built but never applied (not in the public packages) UI-Assets.md §3
Replace HUD/UI Textures (BIM) unverified — Encoder exists (only RGBA8); the engine loaded four self-built BIMs error-free, no one has checked how they look Modding-Limits.md §5, File-Formats.md §5
.entities / .script change (Enemies, Pickups, Script VM) unverified — plaintext, but enforces Chunk Rebuild TNO-Modding-Surface.md §4.1/4.2

Keywords: unverified, menu text, strings, HUD textures, BIM, entities, script

The New Order: Unverified Loading Paths and Shaders

Area Status Proof
Loose files instead of archive (fs_overlaypath) unverified — Cvar and search path output prove it, precedence not Asset-Loading-Paths.md, Experiment E1/E2
Own DLC package (dlc/<name>/info.txt) unverified — possession check against Steam visible in binary Asset-Loading-Paths.md, E7
Translate renderProg HLSL at runtime unverified TNO-Modding-Surface.md §2.10

Keywords: unverified, loose files, fs_overlaypath, own DLC package, renderProg, HLSL

The New Colossus (id Tech 6): Developer Console and Cvars

Area Status Evidence
Developer console (com_enableDeveloperMode 1) works, measured — real console in retail build, impossible in Part 1 Research-Status-2026-09-21.md
Cvars via startup argument works — Steam asks once at steam:// arguments Research-Status-2026-09-21.md
Cvar catalog from the engine registry (3,256 registered, 3116 settable, 304 exposed; descriptions and defaults) works, measured — read from a memory snapshot of the running game TNC-CVar-Catalog.md

Keywords: The New Colossus, TNC, developer console, com_enableDeveloperMode, startup arguments, cvar catalog

The New Colossus: Console Restriction

Area Status Evidence
Console/Cvar restriction (34/304 exposed vs. 234/3,256 total) works, measured — resourceExec <loader-replaced cfile> -s drops the restriction for the file; God, Notarget, g_infiniteAmmo 1 confirmed executing in a real save game TNC-Console-Unlock.md
+devMode_ prefix, devMode_enable partially confirmed — devMode_enable is a real, exposed, retail-settable Cvar (observed live at value 1 on a running process), but it gates only one dispatcher branch that no proven entry point reaches — not load-bearing for the console unlock above TNC-Console-Unlock.md §1, Save-Games-and-Profiles.md §5

Keywords: console restriction, exposed commands, resourceExec, devMode_enable, devMode, TNC console

The New Colossus: Archives and Applying Mods

Area Status Evidence
Read .texdb, unpack Oodle works, measured — 24 files, 437,706 entries, gap 0 TNC-Texture-Database.md
Read IDCL archives (.resources, v12) works — layout verified against all 24 files; since 0.2.0 the loader writes them and the Studio reads them wolfsdk/idcl.py, Known-Contradictions.md W8
Apply mods / write archives works, measured — wolfsdk/tncpatch.py writes IDCL containers directly; decl value edits (pistol magazine 10→30) confirmed in game wolfsdk/game.py (mods=True), Explosive Pistol mod

Keywords: TNC archives, IDCL, texdb, Oodle, apply mods, decl edits, tncpatch

The New Colossus: Textures

Area Status Evidence
Replace textures (weapon skin, single material) works, measured — a custom BC1 pistol skin (.bimage+.texdb blocks re-encoded and appended, all 40 textures.cache copies patched) shows on the first-person model in a running game session notes, 2026-09-25
Replace textures (Virtual-Texture/Megatexture pixel plane) does not work — Key-to-asset name mapping missing, tile content undeciphered, every size change rewrites the entire (up to 8 GB) file; unaffected by the weapon-skin finding above, which is a different, smaller container TNC-Texture-Database.md §6

Keywords: TNC textures, weapon skin, BC1, bimage, textures.cache, megatexture, virtual texture

The New Colossus: Audio, Saves and Loose Files

Area Status Evidence
Change audio Built, not yet confirmed in game — since 0.3.0 the Studio replaces sounds (PCM WAV) and videos (Bink 2) for The New Colossus, because Revert now restores the original sound packs and video files; not yet tried in game Audio.md, Modding-Limits.md
Change save games partial — .verify is not a lock (save game loaded as "corrupted" in dev mode), profile/progress are AES encrypted Save-Games-and-Profiles.md §5
Loose files (resource_loadLooseAssets) unverified — Cvar description matches verbatim, runtime evidence missing Asset-Loading-Paths.md, E5/E6

Keywords: TNC audio, Wwise, sound packs, held back, save games, verify, loose files

The New Colossus: Custom Maps and Developer Menu

Area Status Evidence
Custom DLC / custom map (dlc/<name>/…, dlc_0 precedence) works, measured — the engine mounts the first dlc/* folder (alphabetical) whose packagemapspec.json lists the map; a dlc_0 folder beats retail dlc_2 for map c2v1, confirmed in game with a relit custom light layout and a normal mission start. The loader's Install map… sets it up TNC-Custom-Map-Status.md, Research-Report-Tnc-Custom-Maps
Developer menu loads maps (devmap) works, measured — the Dev Menu Map Loading mod turns each map entry into console lines ending in devmap TNC-Dev-Menu

Keywords: custom map, dlc_0, packagemapspec.json, c2v1, Install map, developer menu, devmap

The New Colossus: cfile Entries

Area Status Evidence
cfile entries (encrypted configs/localization under .resources) works, measured — the AES-128-CBC/HMAC-SHA256 key is derived ("swapTeam\n\x00" + salt + resource name), round-trip byte-exact on 67/67 retail payloads; the loader builds new, game-accepted payloads under existing names (wolfsdk/tnccrypt.py), used to unlock the restricted console Research-Report-Cfilekey2

Keywords: cfile, encrypted config, AES, HMAC, tnccrypt, key derivation


Before you believe anything stated here

These documents were created side-by-side in a short time and contradicted each other at 20 places. Raised in Known-Contradictions.md, processed on 21.09.2026: 17 were fixed in the text, 3 remain open with justification — two of which are embedded in the code and belong to other workers.

In case of a conflict, the rule remains: the newer, more detailed individual investigation overrides the older summary — and both override the README.

Keywords: contradictions, which document is right, newer overrides older, Widersprüche

Corrections That Changed the Direction of a Statement

So that no one falls back to an old status:

  • The Patcher does not hang onto the file end but writes into the slot; File-Formats.md §3 described up to that point the procedure, which demonstrably leads to a crash (W4).
  • A BIM Encoder exists (wolfsdk/image.py, only RGBA8) — six places explained it as missing (W5).
  • The IDCL Container (Part 2) and the .pages Container (Virtual Textures) are read, not "unsolved" (W8, W9).
  • The 2231 Cvars for Part 2 are candidates; 222 of them are among the 304 exposed Cvars (W3). Against the full registry of 3,256: 1822 are real, 409 are not Cvars.
  • The Slot space is exactly csize, not csize + 15 (W6).

Keywords: corrections, slot write, BIM encoder, IDCL, pages container, csize


Recalculate Evidence

Every document names the tool from which its numbers originate. All are purely read-only and do not start a game. They live in the research workspace: they are not part of the public modloader/ folder or the public packages.

python tools/verify_all.py              # all harmless checks
python tools/survey_engine.py           # engine-surface.md
python tools/survey_modding_surface.py  # moddingflaeche-tno.md
python tools/survey_tnc.py              # moddingflaeche-tnc.md   (~4 min)
python tools/probe_audio.py             # audio.md        (~70 s)
python tools/probe_ui_assets.py         # ui-assets.md
python tools/probe_vtpages.py selftest  # virtualtextures.md
python tools/probe_texdb.py             # texdb.md
python tools/probe_idcl.py              # IDCL-Derivation
python tools/probe_loadpaths.py --self-test   # ladepfade.md
python tools/probe_savegame.py          # spielstaende.md

Keywords: verification tools, probe, survey, recalculate, reproduce

Negative Findings and Game Updates

probe_loadpaths.py --self-test also checks the negative findings. If it fails after a game update, the affected document is outdated — this applies generally to all verification tools here.

Keywords: negative findings, self-test, game update, outdated documents