scrDbg is a script debugger for RAGE games.
It allows you to inspect, manipulate, and debug game scripts in real-time.

Source code is available here: https://github.com/ShinyWasabi/scrDbg

Supported Games:
- Grand Theft Auto IV: The Complete Edition
- Red Dead Redemption
- Max Payne 3
- Grand Theft Auto V (Legacy & Enhanced)
- Red Dead Redemption 2

Features:
- View running scripts
- Pause scripts
- Kill scripts
- Export disassembly, strings, statics, globals, and natives
- Exception handling
- View functions
- View stack
  - View callstack
  - Edit stack frame (function args, locals, temps)
- View disassembly:
  - Jump to a raw address
  - Binary search  (pattern, hex, decimal, float, string)
  - NOP instructions
  - Apply custom patches
  - Generate patterns
  - View xrefs
  - Set breakpoints
- Logging
  - Log script frame times
  - Log function calls
  - Log native calls with type information
  - Log static and global writes
- Statics editor
- Globals editor

Usage:
1. Disable BattlEye from Rockstar Games Launcher for GTA V.
2. Launch the game.
3. Run scrDbg.exe.

Changelog:
4.0.0
- Added full support for Max Payne 3
- Added full support for Red Dead Redemption
- Added full support for Red Dead Redemption 2
- Added value type support for stackframe, statics, and globals editing:
  - INT
  - BIT_FIELD
  - FLOAT
  - TEXT_LABEL
  - STRING
- Various bug fixes and improvements
3.0.0
- Added full support for Grand Theft Auto IV: The Complete Edition
- Added argument and return value type information for native call logs
- Added show elapsed time since thread creation for GTA V
- Changed function naming scheme from index-based to PC-based
- Various bug fixes and improvements
2.1.0
- Updated for game build 1013.20/3725
- Added editing support for stack frame temp variables
- Added logging support for script function calls
- Added new natives from game build 1013.17/3717
- Various bug fixes and improvements
2.0.0
- Added support for searching hexadecimal, decimal, float, and string values in the binary search
- Moved ScriptVM into scrDbg; it is now scrDbg.dll and injected into the game by scrDbg.exe
- Added a new Logs tab:
  - Log the duration of a single script frame (in ms)
  - Log native calls with their names, arguments, and return values
  - Log static and global writes
  - Logs can be filtered by a single script or all scripts
- Various bug fixes and improvements
1.3.0
- Added current function display and selected instruction description in the disassembly view
- Added view callstack and stackframe with editing support
- Added an option to make breakpoints pause the entire game or only the script
- Added tooltips for labels and buttons
- Various bug fixes and improvements
1.2.0
- Added an option to view xrefs for the selected address in the disassembly view
- Added export options for statics, globals, and natives
- Added a searchable function list showing name, range, length, and argument/local/return counts
1.1.0
- Added an option to export a script's disassembly to a file
- Added translation support for text labels in the disassembly view
- Added an option to export only text labels when exporting a script's string table
- Added support for displaying native names, hashes, and handlers in the disassembly view
1.0.0
- Initial release

Credits:
- maybegreat48 (https://github.com/maybegreat48) for External (https://github.com/maybegreat48/External) and GTA-V-Script-Decompiler (https://github.com/maybegreat48/GTA-V-Script-Decompiler).
- alloc8or (https://github.com/alloc8or) for GTA 5 (https://alloc8or.re/gta5/nativedb/), Max Payne 3 (https://alloc8or.re/mp3/nativedb/), and RDR2 (https://alloc8or.re/rdr3/nativedb/) Native DB.
- GTAIV.EFLC.FusionFix (https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix) for GTA 4 Natives (https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix/blob/master/source/natives.ixx).
- therouletteboi (https://github.com/TheRouletteBoi) for RDR1 Native DB (https://therouletteboi.github.io/rdr/nativedb/).
- Foxxyyy (https://github.com/Foxxyyy) for the script decompiler in Magic-RDR (https://github.com/Foxxyyy/Magic-RDR).
- OldAgario (https://github.com/OldAgario) for logo design.