"Because remembering fingerprints was more annoying than writing a script xd"
An automation tool for GTA Online heist puzzles, built with AutoHotkey v2
An upgraded version of the standalone script "GTA Casino Solver v2"
Now supports all 16:9 and ultrawide (21:9) monitors through the OpenCV detection engine
Video Tutorials
Cluckin' Bell Replay Guide
Dr. Dre Contract Replay Guide
Cayo Perico Replay Guide
Diamond Casino Replay Guide
Kortz Center Puzzle Solvers + Replay Guide
Buffered Ledge Grab automation for Diamond Casino
This repository includes:
- VaultOps: Main all-in-one toolkit with GUI support, multi-heist automation, Discord rich presence, and both AHK/OpenCV detection engines
- Standalone Scripts: Independent puzzle solvers for specific heists (Fingerprint, Keypad, etc.)
- NoSave Replay Script: Standalone replay script without the full toolkit
- AFK Key Holder: Holds or periodically sends a selected key to avoid AFK kicks during jobs, races, freeroam activities, or other long idle sessions in GTA Online
- Public to Solo Session Helper: Forces GTA Online to disconnect from the current session host, causing the lobby to be converted into a solo public session. Useful for heist preps, sell missions, and other activities without other players interfering.
- Triggerbot: Automatically fires when the crosshair turns red. Useful for quickly and accurately shooting NPCs such as police officers, helicopter pilots, and mission enemies during heists, freemode, and other PvE activities.
- VaultOps ● GTA Online Heist Toolkit
- Auto-solves Fingerprint and Keypad puzzles in the Diamond Casino and Kortz Center heists
- Auto-solves the Cayo Perico Fingerprint Cloner puzzle
- Automates the Buffered Ledge Grab glitch, primarily used in the Diamond Casino heist
- Supports both AHK-based and OpenCV-based detection methods
- Supports all common 16:9 and 21:9 ultrawide resolutions
- Enhanced NoSave — Automatically enables the firewall when needed and disables NoSave on exit
- Manual and auto solving modes
- Discord Rich Presence support — shows your current activity with randomly selected heist-themed status messages
- GUI app with labels/tooltips and customizable hotkeys — designed for non-technical users
Is this a mod?
No — it is not a mod, nor does it modify the game or its files.
It is simply an external AHK-based tool with a GUI.
Does it inject or access game memory?
No — it does not inject DLLs, modify memory, hook into the game process, or require disabling anti-cheat.
How does it work then?
It runs externally using AutoHotkey and OpenCV:
- Reads pixels from the screen (to detect puzzles)
- Sends keyboard and mouse inputs (to automate interactions)
Is this safe to use? Will I get banned?
The puzzle solvers (fingerprint/keypad) function similarly to input automation and are generally lower risk when used normally.
However, the NoSave feature involves exploiting game behavior — excessive or repeated abuse may increase the risk of account action.
So what should I keep in mind?
Use responsibly, and avoid overusing the NoSave replay glitch.
Everything runs externally, similar to a macro tool, with a GUI designed for ease of use.
- Windows (tested on Windows 11)
- GTA Online — tested and supported on both Enhanced and Legacy
- 60 FPS or more (required only for Buffered Ledge Grab Automation)
- The game should be running in Borderless Fullscreen or Borderless Windowed mode
- Supported resolutions
- Supports all common 16:9 and 21:9 ultrawide resolutions
- Internet connection (optional)
- Used only for update checks
- No data is collected or sent externally
- The update-check logic is fully visible in the source code
- Firewall enabled (optional)
- Required for the NoSave feature
- The toolkit can automatically enable it when needed
- Administrator privileges
- Required for NoSave, firewall management and auto-updates.
This is a hobby project built while learning AutoHotkey.
Use responsibly, and keep in mind that some features may not align with Rockstar Games’ Terms of Service. You’re responsible for how you use it.
Provided as-is, with no guarantees.
🔍 VirusTotal scan (for transparency only. AutoHotkey automation tools are commonly flagged by heuristic engines): https://www.virustotal.com/gui/file/cc754f925bc194dd7cd3198bfe0bbb8e045e8874139a9861429f2eac076693da
- Download and run the setup vaultOps-Setup.exe to extract the contents
- Launch
vaultOps.exe - Click Enable Scripts
- Start a heist puzzle → the tool will detect it automatically → marks the prints for Diamond Casino and Kortz Center hacks, and auto-solves in case of Cayo Perico fingerprints.
Optional:
- Press Auto
Hto solve instantly - Or stay in Manual
Mto select prints yourself
Note
Windows may display a warning when launching the setup. This is because the setup is not code-signed, which can cause Windows SmartScreen to treat it as an unrecognized application.
If this happens, click More info and then run anyway to continue the installation. Don't worry, it's safe and won't harm your computer :]
- Allows you to replay the heist by preventing the game from saving
How to use:
Important
One-Time Setup
After completing your heist setups, force a save → switch to Story Mode → return to GTA Online.
- Enable NoSave either from the app, or using the hotkey, which is
]by default, during the heist - Make sure it is active before the payment cutscene
- After returning to freeroam, switch to Story Mode while keeping NoSave enabled
- Once Story Mode loads, disable NoSave
- Return to GTA Online.
- Force a save by pressing Alt + F4, then press ESC to cancel the quit prompt.
- Switch to Story Mode, then return to GTA Online (without NoSave enabled). The heist can now be replayed without setups.
FAQ
Can I do it with others/friends?
Yes. Other players can join the heist normally, but only the host should enable NoSave. If other players use NoSave, it won't affect the replay, but the money they receive will be counted as illegitimate in their player stats.
When exactly should I enable NoSave?
Most players enable NoSave a few seconds before reaching the buyer/destination, but you can also enable it at any point during the heist.
Do I have to do the one-time setup after every replay?
No. The one-time setup is only needed to make sure your setups are saved before using NoSave. After that, you can replay the heist as many times as you want without repeating it.
Q: I lost my heist. What did I do wrong?
If you've already done a heist using the old replay method, complete any other heist as the host using the new replay method before replaying this one. Otherwise, you'll lose the heist.
Post-Patch Tutorial: https://youtu.be/6ZYJPmXAMu4
Behavior:
- Works by temporarily blocking network communication
- Requires firewall to be enabled
Note
- The app will attempt to enable the firewall automatically if it's not enabled.
- VaultOps may warn you if third-party antivirus/firewall software appears to be interfering with NoSave.
- The app will automatically disable NoSave on exit to prevent leaving the firewall in a blocked state.
- You can safely press
Alt + F4while NoSave is active to check if it's working. If the game shows "Save Failed", NoSave is working.
Tip
Full replay tutorials:
- Cayo Perico: https://youtu.be/Cd5V64UiiGY
- Diamond Casino: https://youtu.be/fBdukmCSDeA
- Kortz Center: https://youtu.be/2f2PhGMIApw
- Automates the Buffered Ledge Grab glitch, primarily used in the Diamond Casino heist, eliminating the need to time the inputs manually.
How to use:
- Enable Ledge Grab in the GUI app. (There is no hotkey to toggle this option.)
- Position your character near the ledge so that it is facing the ledge and ready to take cover.
- Press the Take Cover key (
Qby default) to start the automation. - Wait for the script to perform the ledge grab sequence. Keyboard and mouse input will be temporarily blocked during this time.
- Once you see the "Input re-enabled" tooltip, move to the desired position.
- Press the Take Cover key again to stop the automation.
Full tutorial: https://youtu.be/hupQ7fMXHTE
Note
- You need to have Snapmatic Quick Launch enabled in the phone settings.
- If your in-game Take Cover keybind is not
Q, change it in the GUI app, or the in-game controls, before using the feature. - If the automation works but the teleport fails, reposition yourself so that your character doesn't start running immediately after taking cover. Watch this tutorial for an explanation: https://youtu.be/vSxFCNy3g4s
- Do not close the phone until you are teleported to the ledge, otherwise the glitch will simply fail.
- This feature is primarily intended for the Diamond Casino heist, since the glitch is not useful for looting in the Cayo Perico heist.
- You will not be able to use the ledge grab feature while vaultOps is in Manual or Auto mode, and the puzzle solvers will be unavailable while the ledge grab automation is active.
-
Enable Scripts
- Activates the puzzle solvers
- Automatically detects puzzles and switches modes when possible
Behavior:
- Auto-detection may occasionally misdetect normal scenes as puzzles
- This can cause the label or selected mode to switch unexpectedly
Recommendation:
- Enable only when solving puzzles
- Or use Manual mode to prevent automatic switching
- Assign a hotkey for quick toggling
-
Detection Engine
-
AHK
- Legacy pixel-based detection
- Fast and battle-tested
- Available only on supported lower 16:9 resolutions
-
OpenCV
- More flexible image-based detection
- Recommended for higher resolutions and ultrawide displays
- Automatically selected on unsupported resolutions/aspect ratios
- Higher resolutions and 21:9 setups will use OpenCV automatically
-
-
Select Heist
-
Diamond Casino / Kortz Center
- Shown as "DC / Kortz" in the GUI
- Solves Fingerprint and Keypad puzzles
- Both heists use the same Fingerprint and Keypad puzzles, so the same solver (DC / Kortz) works for either heist
- Switches to Manual mode by default when the puzzle is detected
-
Cayo Perico
- Solves the fingerprint cloner puzzle
- Switches to Auto mode by default when the puzzle is detected
- Pressing
Mswitches to Manual mode and shows the number of left / right clicks needed to solve the puzzle, allowing you to select the prints yourself
-
-
Choose Mode (Diamond Casino / Kortz Center only)
- Fingerprint — Detects and solves the fingerprint puzzle
- Keypad — Detects and solves the keypad puzzle
Note
Switching to Manual mode disables automatic puzzle detection, preventing unintended mode changes
All hotkeys are customizable.
| Action | Default | Description | Notes |
|---|---|---|---|
| Enable Scripts | [ |
Enables / disables automation | Recommended: disable when not solving puzzles |
| NoSave | ] |
Temporarily blocks saving the progress to replay the heist | Requires Windows Firewall to be enabled |
| Manual | M |
Detects patterns without selecting them | Useful for full manual control |
| Auto Hack | H |
Automatically solves detected puzzles | Can be enabled before starting for smoother flow |
| Reset | R |
Stops current solving and resets state | Re-enables auto detection and sets solver to (idle) |
| Option | Description | Notes |
|---|---|---|
| Delay (30 – 200 ms) | Controls auto-mode solving speed | Lower = faster but unstable Higher = slower but stable Recommended / Default: 40 ms |
| Tooltip Position | Chooses where status tooltips appear on the screen | Supports six screen positions. Default: Top-Right (ToolTipPos=4). Can currently be changed only in zSettings.ini. |
| Tooltip Y Offset | Adjusts the vertical position of status tooltips | Useful for avoiding overlap with in-game HUD elements or display burn-in. Can currently be changed only in zSettings.ini. |
- Clicking
immediately disables NoSave, terminates the app, and stops all running scripts. - Clicking
minimizes the app to the taskbar. - Using the
button:
- Click and hold to drag the app around the screen.
- Click once to center the app on the screen.
- Clicking
forcefully terminates GTA V and disables NoSave if it is enabled. - Using the
button:
- Click once to enable Discord Rich Presence.
- Discord Rich Presence:
- Automatically updates your Discord profile based on the active vaultOps feature.
- Randomly selects a heist-themed status message for the active feature.
- Activity priority: NoSave → Solvers → Ledge Grab → Idle.
- Idle status is only shown when Scripts are enabled.
- Click
again to disable Discord Rich Presence.
Don't want the full toolkit? Use the standalone package instead.
The standalone package includes:
- Fingerprint Solver for Diamond Casino / Kortz Center
- Keypad Solver for Diamond Casino / Kortz Center
- Cayo Perico Fingerprint Solver
All standalone solvers share a single OpenCV engine and common resources to reduce package size and avoid duplicated files.
- vaultOps-Standalone-Pack.exe — Includes all standalone puzzle solvers in a single package
- NoSave-Standalone.exe — Standalone NoSave replay script only
- AFK-Key-Holder — Holds or periodically sends a selected key to avoid AFK kicks during jobs, races, freeroam activities, or other long idle sessions in GTA Online
- Solo Session Helper — Forces GTA Online to disconnect from the current session host, causing the lobby to be converted into a solo public session. Useful for heist preps, sell missions, and other activities without other players interfering.
- Triggerbot — Automatically fires when the crosshair turns red. Useful for quickly and accurately shooting NPCs such as police officers, helicopter pilots, and mission enemies during heists, freemode, and other PvE activities.
Installation: (vaultOps Standalone Pack)
- Download and run
vaultOps-Standalone-Pack.exe - The package will automatically extract into a folder named
vaultOps-Standalone-Packin the current directory - Launch any standalone solver separately as needed
Note
- The standalone pack already includes built-in NoSave support for all puzzle solvers, so the separate NoSave standalone is only needed if you want to use NoSave by itself.
- NoSave and the Utility Scripts are distributed as standalone executables and are not SFX packages. Simply download and run the
.exefile to launch them.
Warning
- Running multiple standalone solvers at the same time is not recommended, since they share the same default hotkeys and may trigger actions simultaneously.
- If you want to use multiple solvers together, using the full VaultOps toolkit is recommended instead, since it manages all solvers within a single unified app.
Want to run or modify the project locally? Follow these steps:
-
Clone the repository:
git clone https://github.com/infpdev/gtao-heist-toolkit.git -
Navigate to the project directory:
cd gtao-heist-toolkit -
Install the Python dependencies required for the OpenCV engine:
pip install -r ./lib/py_helpers/requirements.txtThis requires Python to be installed and added to your system PATH.
-
Launch
vaultOps.ahkor any standalone script to run the project locally.
_src/
│
├─ 1920x1080/, 1600x900/, 1366x768/ # Legacy AHK template assets for supported 16:9 resolutions
│
├─ lib/
│ ├─ build_scripts/
│ │ ├─ build_files.zip # AHK and Inno Setup portable files for building the project
│ │ ├─ dist.ahk # Build distribution (compile + package)
│ │ ├─ virusTotalScan.ahk # Post-build VirusTotal scanning
│ │ └─ inno_setup.iss # Inno Setup installer config
│ │
│ ├─ gui/
│ │ ├─ anchorDetection.ahk # Anchor detection logic for AHK mode
│ │ ├─ hotkeyHelpers.ahk # Hotkey event callbacks
│ │ ├─ instructionFieldHelpers.ahk # GUI field text management
│ │ ├─ keyHelpers.ahk # Custom keyboard input handling (Native key sending)
│ │ ├─ richPresenceHelpers.ahk # Rich Presence management
│ │ ├─ tooltipsHelpers.ahk # Status tooltip updates
│ │ └─ windowHelpers.ahk # Window focus + activation handling
│ │
│ ├─ py_helpers/ # Python/OpenCV helpers
│ │ ├─ DiscordRPC.py # Discord Rich Presence helper
│ │ ├─ anchorDetection.py # Anchor detection logic for OpenCV detection engine
│ │ ├─ Fingerprint.py # Diamond Casino / Kortz fingerprint detection logic for OpenCV detection engine
│ │ ├─ Keypad.py # Diamond Casino / Kortz keypad detection logic for OpenCV detection engine
│ │ ├─ Rubio.py # Cayo Perico fingerprint detection logic for OpenCV detection engine
│ │ ├─ OpenCV_Engine.py # OpenCV detection engine + IPC listener
│ │ ├─ helpers.py, gta_helpers.py # Helper functions for OpenCV and Discord Rich Presence
│ │ └─ requirements.txt # Python deps for OpenCV detection engine
│ │
│ ├─ scripts/
│ │ ├─ ElRubio.ahk # Cayo Perico multi-stage fingerprint
│ │ ├─ Fingerprint.ahk # Diamond Casino / Kortz fingerprint detection + solving
│ │ ├─ Keypad.ahk # Diamond Casino / Kortz keypad sequence solving
│ │ ├─ LedgeGrab.ahk # Buffered Ledge Grab automation
│ │ └─ NoSave.ahk # NoSave replay helper
│ │
│ ├─ standalone scripts/ # Individual scripts - Solvers and NoSave
│ │
│ ├─ utils/ # Utility scripts (AFK Key Holder, Public to Solo Session Helper, Triggerbot)
│ │
│ ├─ ahk2dc_socket.ahk # AHK script for IPC communication with the Discord Rich Presence helper
│ ├─ ahk2py_socket.ahk # AHK script for IPC communication with the OpenCV detection engine
│ ├─ autoUpdate.ahk # Auto-update helper for minor patch releases
│ ├─ checkResolution.ahk # Resolution detection and fallback handling
│ ├─ commonFuncs.ahk # Shared utilities for the Toolkit and Standalone scripts
│ ├─ initHotkeys.ahk # Hotkey registration + event binding
│ ├─ pureCommonFuncs.ahk # Shared utilities for the Toolkit and Standalone scripts (no global dependencies)
│ ├─ sharedCanonicalHelpers.ahk # Canonical hotkey conversion helpers
│ ├─ standaloneHelpers.ahk # Shared helpers for standalone builds
│ ├─ standaloneUpdate.ahk # Auto-updater for standalone scripts
│ └─ updateCheck.ahk # Version checking
│
├─ vaultOps.ahk # Entry point (main GUI + mode control)
├─ zAnchorCache.ini # Cached anchor coordinates for solvers
├─ zSettings.ini # User configuration (hotkeys, delay, etc.)
│
└─ README.md # Documentation (this file)
Entry Point
vaultOps.ahk— Main GUI, mode control, engine selection, and solver lifecycle
Core Utilities
Fingerprint.ahk— Diamond Casino / Kortz fingerprint solverKeypad.ahk— Diamond Casino / Kortz keypad solverElRubio.ahk— Cayo fingerprint cloner solverLedgeGrab.ahk— Buffered Ledge Grab automationrichPresence.ahk— Discord Rich Presence helperNoSave.ahk— NoSave handling and firewall automationUtil-AFK-Key-Holder.ahk— AFK key holder with customizable hotkeys and on-screen instructions for AFK jobsUtil-Solo-Public-Session.ahk— Public to solo session helperUtil-TB.ahk— Triggerbot with customizable hotkeys and configurable pixels
Helper Scripts
ahk2py_socket.ahk— AHK script for IPC communication with the OpenCV detection engineahk2dc_socket.ahk— AHK script that communicates with the Discord Rich Presence helper and updates the status based on the active featureautoUpdate.ahk— Minor patch updatercheckResolution.ahk— Resolution/aspect-ratio checks and engine availabilitycommonFuncs.ahk— Shared helpers and tooltip utilitiesinitHotkeys.ahk— Hotkey registration and callbackssharedCanonicalHelpers.ahk— Canonical hotkey formatting/helpersstandaloneHelpers.ahk— Shared helpers for standalone buildspureCommonFuncs.ahk— Shared utilities for the Toolkit and Standalone scripts (no global dependencies)updateCheck.ahk— Version checking and update notificationsstandaloneUpdate.ahk— Auto-updater for standalone scripts
Python Helpers (lib/py_helpers/)
OpenCV_Engine.py— IPC listener/backend entry pointDiscordRPC.py— Discord Rich Presence helperanchorDetection.py— Puzzle anchor detectionFingerprint.py— Diamond Casino / Kortz fingerprint detectionKeypad.py— Diamond Casino / Kortz keypad detectioncayofingerprint.py— Cayo fingerprint detectionrequirements.txt— Python dependencies for development mode
Build System
dist.ahk— Build/package automationvirusTotalScan.ahk— Optional VirusTotal scan helperinno_setup.iss— Inno Setup installer config
Each solver operates independently with its own detection logic, state handling, and reset behavior. Solvers are instantiated on mode change and destroyed on exit to avoid conflicts.
This project builds upon existing ideas and implementations in the community:
-
NoSave: Based on the replay method described in
https://www.reddit.com/r/gtaglitches/comments/okz5lg/exploit_pc_v1_nosavingsaveblock_method_ahk_replay/ -
Fingerprint / Keypad detection: Inspired by
https://github.com/gbs0/gta_casino_solver -
OpenCV: Inspired by VKit (https://github.com/ItsCEED/vkit-toolbox)
This project extends those implementations with:
- Automatic solving algorithms
- Multi-heist support
- Discord Rich Presence integration
- Custom GUI and usability improvements
Shared for educational and personal use.
while this project does not require funding, if you find it useful, consider feeding my car (or a stray car) some tuna.
i’ll make sure to pet the car for you, and also post a picture of the car with your tag below it :]
here's a car for reading this far C:
⠀⠀⠀⠀⣠⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢰⣿⠀⠉⠙⢲⢄⡀⠀⠀⠀⠀⠀⠀⠀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢸⠈⠀⠀⠀⠀⠈⠘⠋⠉⠉⠉⠛⢓⣾⢋⠽⣷⣀⡀⠀⠀⠀⠀⠀
⠀⠀⠀⢸⠀⢀⡄⠀⠀⠀⠀⠀⠀⠐⣶⡲⣾⠏⡜⣤⣿⣏⠁⠀⠀⠒⠒⡂
⠀⠀⠀⠈⡶⠃⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣧⣙⡔⣳⡿⣭⡷⢤⣤⣀⣸⠋
⠀⠀⢀⡼⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣷⣽⡿⠿⠛⢿⣿⢙⠣⡆⣽⣿⠀
⢀⣤⠞⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣎⣵⣾⣿⣧⠀
⠉⢿⡖⠤⠀⠀⣰⣧⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⡿⣷⡚⠛⠀
⠒⠘⢾⣲⠀⠀⠛⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⣴⣦⡄⠀⠀⠋⠁⣻⣷⣄⠀
⠀⠄⠚⠫⣂⠀⠀⠀⠀⠀⢠⣶⣶⠄⠀⠀⠐⢿⠿⠁⠀⢀⠖⡖⣯⣿⣟⡀
⠀⠀⠀⠀⠈⠓⠤⣀⡀⠀⠀⠈⠀⠀⠀⠀⠀⠀⠀⠀⠀⣌⢙⡲⣿⡇⠀⠁
⠀⠀⠀⠀⠀⠀⠀⢀⡽⢻⣖⠲⠤⣤⣤⣤⣤⣤⣶⠾⠓⠊⢫⠀⠈⠁⠀⠀
⠀⠀⠀⠀⠀⠀⠐⢻⣿⠧⣾⣯⠙⠉⠁⠀⠀⠀⠈⠳⣄⠀⠀⠁⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠈⢿⡇⡼⣗⡞⠀⠀⠀⣦⠀⠀⠀⠀⠙⢦⠀⠀⢠⢷⠀
⠀⠀⠀⠀⠀⠀⠀⠀⡞⠙⢧⠞⠀⠀⠀⢠⡿⠀⠀⠀⠀⠀⠈⣧⠚⠁⣸⠀
⠀⠀⠀⠀⠀⠀⠀⠰⡇⢀⠞⠀⠀⠀⠀⣼⠃⠀⠀⠀⠀⠀⠔⡿⠀⡠⡻⠀
⠀⠀⠀⠀⠀⠀⠀⠀⢧⡞⠀⠀⠀⠀⡰⠋⠓⠦⣄⡀⠀⣀⡴⠧⠤⠚⠁⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠲⠴⠶⠚⠓⠒⠒⠉⠉⡉⠉⢁⠀⣀⡀⠀⠀⠀
- Add file-based caching for the solvers to improve performance and reduce redundant processing - v3.2
- Add automatic updates for minor patches - v3.5
- Add support for ultrawide (21:9) resolutions - v4
- Add full compatibility with GTA Legacy - v4.20.69
- Add support for Kortz Center puzzles - v4.69.67
- Add Discord Rich Presence support - v4.69.69


