SkillfulLocks for Gothic 1 Remake

Lock connections scale with your Picklock skill:
  - Untrained: vanilla locks, untouched
  - Skilled (1st level): as many connections removed as PROVEN safe
    for that exact lock (per-lock solvability table, see below)
  - Master (2nd level): no connections at all - every piece moves alone

The mod uses the game's own connection-removal mechanic (the hidden
LockpickPrecision attribute): when the lockpicking minigame starts it
detects your skill tier and writes the wanted precision value. The
vanilla value is restored when the minigame ends, so saves stay clean
and uninstalling is safe.

The 1.2 safety table: the game's removal pass does not check that a
lock stays solvable, and layouts are only authored for the vanilla
removal range (0-2). So every one of the 416 locks was extracted from
the game's script cache and run through an exhaustive solver; the mod
ships a per-lock maximum safe removal depth and the Skilled tier never
goes beyond it. Locks unknown to the table (a future game patch) fall
back to the vanilla-authored maximum of 2.

Requires UE4SS, experimental build (the game runs UE 5.4.3):
https://github.com/UE4SS-RE/RE-UE4SS/releases/tag/experimental-latest

Install:
1. Install UE4SS into ...\Gothic 1 Remake\G1R\Binaries\Win64
   (dwmapi.dll next to G1R-Win64-Shipping.exe).
2. Copy the SkillfulLocks folder from this archive into
   ...\G1R\Binaries\Win64\ue4ss\Mods\
   The included enabled.txt activates the mod automatically;
   no mods.txt editing is needed.
3. Start the game. ...\ue4ss\UE4SS.log should show:
   [SkillfulLocks] 1.2.0 loaded: 416 locks known, 416 safe depths; ...

Configure: edit SkillfulLocks\Scripts\config.lua
  removeConnections - per tier: false (vanilla), a number (remove N,
                      capped per lock by the safety table), "all"
                      (remove everything) or "auto" (the per-lock
                      proven-safe maximum). Default: untrained false,
                      skilled "auto", master "all".
  debug             - per-lock log lines in UE4SS.log (on by default)
Apply config changes with a game restart (preferred) or CTRL+R.

Compatibility: works with and without LockpickSettings. Its boosted
durability values are recognized automatically (the extraTries value
is read from its installed config), load order does not matter. Note
its F8 connection display shows the authored layout, so it may paint
connections this mod already removed until a move disproves them.

TESTERS WANTED: the safety table is built on a simulation of the
minigame that already predicted a real deadlocked chest correctly,
but broad in-game confirmation is what this release is for. If any
lock ever feels unsolvable on the Skilled tier, please post a bug
report with the lock line from UE4SS.log, e.g.:
   [SkillfulLocks] lock 'OC_Chest_XYZ_Lock': tier skilled,
   precision -> 4 (auto, 4 of 8 connections removed)
and mention whether a lockpick broke during that attempt (pick breaks
may remove extra connections - that is the game's own mechanic, and
exactly what we want field data on).

Notes:
- Breaking a pick may remove further connections on top: that is the
  game's own per-break mechanic and it stays active.
- The skill tier is detected from the lockpick durability at minigame
  start. An unrecognized value (another mod changing durability) leaves
  the lock vanilla and logs one line.
- Singleplayer only; the game has no anti-cheat.

Uninstall: delete the SkillfulLocks folder, or just its enabled.txt to
keep it around but inactive. Locks return to vanilla behavior.

Credits: Tautellini's publicly documented G1R modding research
(LockpickPrecision behavior, modding surface notes) made this mod
possible. All code and bundled data in this archive are original
(the lock data is extracted from the game's own script cache).
