import math import os import struct import tempfile import unittest from unittest import mock import remote_packages import setup_tool_dynamic as dynamic class _Var: def __init__(self, value): self.value = value def get(self): return self.value def _make_tool(): tool = object.__new__(dynamic.ModernWowSetupTool) tool.vt_fov = _Var(1.9199) tool.vt_farclip = _Var(1500) tool.vt_frill = _Var(300) tool.vt_nameplate = _Var(41) tool.vt_maxcam = _Var(100) tool.vt_soundchan = _Var(64) tool.vt_quickloot = _Var(True) tool.vt_bg_sound = _Var(True) tool.vt_laa = _Var(True) tool.vt_cam_fix = _Var(True) tool.vt_custom_glues = _Var(True) return tool def _base_client_data(): data = bytearray(0x46795C) data[ dynamic._CLIENT_BUILD_OFFSET: dynamic._CLIENT_BUILD_OFFSET + len(dynamic._CLIENT_BUILD) ] = dynamic._CLIENT_BUILD data[ dynamic._CLIENT_VERSION_OFFSET: dynamic._CLIENT_VERSION_OFFSET + len(dynamic._CLIENT_VERSION) ] = dynamic._CLIENT_VERSION data[0x0C1ECF:0x0C1ED1] = b"\x74\x10" data[0x0C2B25:0x0C2B27] = b"\x74\x0B" data[0x3A4869] = 0x14 data[0x126:0x128] = b"\x0F\x01" for offset, original, _patched in dynamic._CAMERA_REGIONS: data[offset:offset + len(original)] = original for offset, original, _patched in dynamic._CUSTOM_GLUES_SITES: data[offset] = original struct.pack_into("