From a44e4db1c374cc9e404320a6c8ad29cba0b73029 Mon Sep 17 00:00:00 2001 From: DownloadPizza Date: Thu, 11 Jun 2026 14:49:33 +0200 Subject: [PATCH] refactor: group scripts into walker/ wikigen/ bundle/ Organize the 16 loose scripts by concern: walker/ -- .wbt save tooling (sand, build_wbt, walker_hashes, harvest_hashes, recover_key) wikigen/ -- MediaWiki page generators (make_*_wiki, render_wiki) bundle/ -- Unity/Odin asset extraction (unitybundle, odin_read, extract_*, loot_probe, dump_loot_bytes) The only cross-script imports (build_wbt->walker_hashes, extract_loot->odin_read) live within the same folder, so each script's dir on sys.path[0] keeps them resolving with no code changes. All data paths are absolute, so the moves don't affect I/O. Named the code dir wikigen/ to avoid colliding with the generated wiki/ output dir; ignore the regenerable wiki_site/ render. --- .gitignore | 3 +++ dump_loot_bytes.py => bundle/dump_loot_bytes.py | 0 extract_data.py => bundle/extract_data.py | 0 extract_i2.py => bundle/extract_i2.py | 0 extract_loot.py => bundle/extract_loot.py | 0 loot_probe.py => bundle/loot_probe.py | 0 odin_read.py => bundle/odin_read.py | 0 unitybundle.py => bundle/unitybundle.py | 0 build_wbt.py => walker/build_wbt.py | 0 harvest_hashes.py => walker/harvest_hashes.py | 0 recover_key.py => walker/recover_key.py | 0 sand.py => walker/sand.py | 0 walker_hashes.py => walker/walker_hashes.py | 0 make_crafting_wiki.py => wikigen/make_crafting_wiki.py | 0 make_items_wiki.py => wikigen/make_items_wiki.py | 0 make_loot_wiki.py => wikigen/make_loot_wiki.py | 0 render_wiki.py => wikigen/render_wiki.py | 0 17 files changed, 3 insertions(+) rename dump_loot_bytes.py => bundle/dump_loot_bytes.py (100%) rename extract_data.py => bundle/extract_data.py (100%) rename extract_i2.py => bundle/extract_i2.py (100%) rename extract_loot.py => bundle/extract_loot.py (100%) rename loot_probe.py => bundle/loot_probe.py (100%) rename odin_read.py => bundle/odin_read.py (100%) rename unitybundle.py => bundle/unitybundle.py (100%) rename build_wbt.py => walker/build_wbt.py (100%) rename harvest_hashes.py => walker/harvest_hashes.py (100%) rename recover_key.py => walker/recover_key.py (100%) rename sand.py => walker/sand.py (100%) rename walker_hashes.py => walker/walker_hashes.py (100%) rename make_crafting_wiki.py => wikigen/make_crafting_wiki.py (100%) rename make_items_wiki.py => wikigen/make_items_wiki.py (100%) rename make_loot_wiki.py => wikigen/make_loot_wiki.py (100%) rename render_wiki.py => wikigen/render_wiki.py (100%) diff --git a/.gitignore b/.gitignore index f7f477d..7d5f516 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,9 @@ snapshots/ # Huge IL2CPP / GameAssembly dumps (regenerable, ~460MB) /il2cpp/ +# Local HTML render of the wiki (regenerable via wikigen/render_wiki.py) +/wiki_site/ + # Python __pycache__/ *.py[cod] diff --git a/dump_loot_bytes.py b/bundle/dump_loot_bytes.py similarity index 100% rename from dump_loot_bytes.py rename to bundle/dump_loot_bytes.py diff --git a/extract_data.py b/bundle/extract_data.py similarity index 100% rename from extract_data.py rename to bundle/extract_data.py diff --git a/extract_i2.py b/bundle/extract_i2.py similarity index 100% rename from extract_i2.py rename to bundle/extract_i2.py diff --git a/extract_loot.py b/bundle/extract_loot.py similarity index 100% rename from extract_loot.py rename to bundle/extract_loot.py diff --git a/loot_probe.py b/bundle/loot_probe.py similarity index 100% rename from loot_probe.py rename to bundle/loot_probe.py diff --git a/odin_read.py b/bundle/odin_read.py similarity index 100% rename from odin_read.py rename to bundle/odin_read.py diff --git a/unitybundle.py b/bundle/unitybundle.py similarity index 100% rename from unitybundle.py rename to bundle/unitybundle.py diff --git a/build_wbt.py b/walker/build_wbt.py similarity index 100% rename from build_wbt.py rename to walker/build_wbt.py diff --git a/harvest_hashes.py b/walker/harvest_hashes.py similarity index 100% rename from harvest_hashes.py rename to walker/harvest_hashes.py diff --git a/recover_key.py b/walker/recover_key.py similarity index 100% rename from recover_key.py rename to walker/recover_key.py diff --git a/sand.py b/walker/sand.py similarity index 100% rename from sand.py rename to walker/sand.py diff --git a/walker_hashes.py b/walker/walker_hashes.py similarity index 100% rename from walker_hashes.py rename to walker/walker_hashes.py diff --git a/make_crafting_wiki.py b/wikigen/make_crafting_wiki.py similarity index 100% rename from make_crafting_wiki.py rename to wikigen/make_crafting_wiki.py diff --git a/make_items_wiki.py b/wikigen/make_items_wiki.py similarity index 100% rename from make_items_wiki.py rename to wikigen/make_items_wiki.py diff --git a/make_loot_wiki.py b/wikigen/make_loot_wiki.py similarity index 100% rename from make_loot_wiki.py rename to wikigen/make_loot_wiki.py diff --git a/render_wiki.py b/wikigen/render_wiki.py similarity index 100% rename from render_wiki.py rename to wikigen/render_wiki.py