Files
Campus-25/server/vps_restore_orig_bundles.py
2026-10-14 06:59:51 +02:00

22 lines
1.1 KiB
Python

"""
VPS: put the ORIGINAL (Unity 6000-built) avatar bundles back, undoing vps_swap_bundles.py.
Why: the UnityPy-resaved "2021.3" copies fail in the 20250718 client for every bundle - even a
bundle that was natively 2021.3 and was merely re-saved - while the untouched originals are
byte-identical to what the reference server (cdn.recflare.net) serves and loads on PC. The
converted copies are parked in /opt/campus/conv2021/out/<name> so this is reversible.
No catalog rewrite is needed any more: the server stamps each definition with the sha256 of the
file it serves (BundleHashes), so restart the service and the hashes follow the files.
"""
import os, shutil
BLOBS = "/opt/campus/Data/CDN/AvatarBlobs"
ORIG = "/opt/campus/AvatarBlobs.orig6000"
PARK = "/opt/campus/conv2021/out"
restored = missing = 0
for name in os.listdir(ORIG):
src = os.path.join(ORIG, name); live = os.path.join(BLOBS, name)
if os.path.exists(live):
shutil.move(live, os.path.join(PARK, name))
shutil.move(src, live); restored += 1
print(f"restored {restored} original bundles into {BLOBS}; converted copies parked in {PARK}")