Wolfenstein Modloader Buy me a coffeeKaffee spendieren

In plain wordsIn einfachen Worten

This is the assignment given to a research worker, not a result. Archive files of Wolfenstein II: The New Colossus carry a check value at position 0x08 of their header, and the game rejects a custom archive if it is wrong. Another value at 0x20 is already solved as a FarmHash64, but standard tests for 0x08 failed. The worker should try further hash variants without changing any game files, and if nothing works, list what was ruled out and suggest the next test.

  • The game checks the value at +0x08 when loading an archive.
  • The log once reported 'hash: 6e9d625602ddbc9e, wants 3533df45c7f9b1d2', which gives the correct value for one case.
  • The value at +0x20 is already known: FarmHash64 over the metadata area.
  • Candidates to try: FarmHash/CityHash with seeds, hashes over other header areas, CRC mixtures.
  • Any claimed success needs several counter-tests.

Dies ist der Auftrag an einen Forschungs-Worker, kein Ergebnis. Archivdateien von Wolfenstein II: The New Colossus haben an Position 0x08 ihres Headers einen Prüfwert, und das Spiel lehnt ein eigenes Archiv ab, wenn er falsch ist. Ein anderer Wert bei 0x20 ist bereits als FarmHash64 gelöst, doch Standardtests für 0x08 schlugen fehl. Der Worker soll weitere Hash-Varianten testen, ohne Spieldateien zu ändern, und bei Misserfolg auflisten, was ausgeschlossen ist, und den nächsten Test vorschlagen.

  • Das Spiel prüft den Wert bei +0x08 beim Laden eines Archivs.
  • Das Log meldete einmal 'hash: 6e9d625602ddbc9e, wants 3533df45c7f9b1d2' und liefert damit den richtigen Wert für einen Fall.
  • Der Wert bei +0x20 ist bereits bekannt: FarmHash64 über den Metadatenbereich.
  • Zu testende Kandidaten: FarmHash/CityHash mit Seeds, Hashes über andere Header-Bereiche, CRC-Mischungen.
  • Jeder behauptete Erfolg braucht mehrere Gegenproben.

Technical detailsTechnische Details

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

Objective: Determine the algorithm for the currently unresolved IDCL header value at offset 0x08 using existing retail archives and probe artifacts without modifying the game installation.

Context:

  • The header at +0x20 is a FarmHash64 of the metadata area [0x78 : subsequent IDCL incl.] and was resolved in the build.
  • The header at +0x08 is validated by the Engine Loader. In a small custom container, 6e9d625602ddbc9e was accepted; previously, the log showed: hash: 6e9d625602ddbc9e, wants 3533df45c7f9b1d2.
  • Standard probes (unseeded Farm/City/XXH/MD5/SHA over obvious ranges) failed.
  • Tools: tools/probe_tnc_hash.py, Parser wolfsdk/idcl.py; Retail archives located in <Steam library>\steamapps\common\Wolfenstein.II.The.New.Colossus\base.

Investigate: Clean candidates: FarmHash/CityHash variants/Seeds, Hash over normalized header/metadata ranges, CRC mixtures, or IDCL-related structures. Do not modify existing files. If a helper script is required, create it only under re_probes/hash08_scratch/.

Acceptance Criteria:

  • Reproducible command/code approach and at least multiple counter-tests with claimed success.
  • On no success: Clearly delineated excluded families and the most sensible next Oracle test.
  • Optional report only under re_probes/agent_reports/hash08.md.