refactor: substitute by invoking the field's own engine encoder (slot 0)
Replaces hand-rolled per-type bit-writes with one generic call: resolve the per-field encoder = *(*(fieldInfo+0x38)) (slot 0), build paramsPtr from fieldInfo+0x40/0xc9, write the fake into a scratch in the engine's native layout (int64/uint64/byte/double), call enc(dst, fieldInfo, paramsPtr, scratch, 0). Correct bit-format by construction for int/uint/int64/uint64/bool/float32/fixed32/ fixed64. Deleted WriteUBitLong + the VarintWriter gamedata entry/resolution (IntEncoderDetour Phase-1 doesn't use it). Quantized/coord/normal/string/array stay passthrough (value layout not synthesizable). Fault->restore cursor, never double-call original. Build 0/0. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
P
Prefix committed
e7593159e86164e32d7faef89d373b77d98bccef
Parent: 48b521a