File size: 1,295 Bytes
fd99160 e639531 529b124 0c343f8 b1c5e8e c057512 7689014 fd99160 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #!/usr/bin/env python3
"""Run the static QVM/native research pipeline; never launch game binaries."""
from pathlib import Path
import subprocess
import sys
def main():
if not Path('docs/inventory/snapshot.json').is_file():
raise SystemExit('Run from the repository root')
for script in ('fetch_analysis_references.py', 'analyze_qvm.py', 'analyze_native.py',
'analyze_vm_abi.py', 'analyze_native_dispatch.py', 'analyze_vm_extensions.py',
'analyze_native_metadata.py', 'analyze_native_coverage.py', 'analyze_auth_drop.py',
'analyze_deferred_auth.py', 'analyze_engine_control.py', 'analyze_frame_timing.py',
'analyze_event_queues.py', 'analyze_auth_announcements.py', 'analyze_game_cvars.py',
'analyze_cvar_changes.py', 'analyze_auth_queries.py', 'analyze_selector_bounds.py',
'analyze_chat_paths.py', 'analyze_chat_delivery.py', 'analyze_chat_expansion.py', 'analyze_chat_items_time.py', 'analyze_chat_locations.py', 'analyze_chat_crosshair.py', 'analyze_native_spatial.py', 'analyze_native_collision.py', 'analyze_collision_composition.py'):
subprocess.run([sys.executable, str(Path('scripts')/script)], check=True)
if __name__ == '__main__':
main()
|