# Phase A6.P1 type-dumper runner — 2026-05-21 # # Attaches cdb to live retail acclient.exe, dumps the 8 struct types A6's # probe needs (Plane, CSphere, Position, CPolygon, SPHEREPATH, CTransition, # COLLISIONINFO, OBJECTINFO), and exits cleanly via qd. No breakpoints set, # no retail lag. ~5 seconds total. # # Output: tools/cdb/a6-types-dump.txt (ASCII) # # Prerequisites: # 1. Retail acclient.exe v11.4186 running (any state — login screen, world, # doesn't matter — as long as the binary + PDB are loaded). # 2. cdb.exe at the standard Windows Kits path. $cdbExe = "C:\Program Files (x86)\Windows Kits\10\Debuggers\x86\cdb.exe" if (-not (Test-Path $cdbExe)) { Write-Error "cdb.exe not found at $cdbExe." exit 1 } $scriptPath = Join-Path $PSScriptRoot "a6-types-dump.cdb" if (-not (Test-Path $scriptPath)) { Write-Error "a6-types-dump.cdb not found at $scriptPath." exit 1 } $outputPath = Join-Path $PSScriptRoot "a6-types-dump.txt" Write-Host "Attaching cdb to acclient.exe to dump struct types..." Write-Host "Output: $outputPath" # Capture cdb output to a regular file via Out-File (ASCII, not Tee-Object's UTF-16). & $cdbExe -pn acclient.exe -cf $scriptPath 2>&1 | Out-File -FilePath $outputPath -Encoding ASCII Write-Host "" Write-Host "Type dump complete. Output saved to $outputPath" Write-Host "Lines: $((Get-Content $outputPath).Count)"