A persistent vehicle saving mod for Grand Theft Auto V built using C# and ScriptHookVDotNet.
Ever parked a vehicle somewhere in GTA V and returned later only to discover that it had despawned?
Stay Parked allows players to save vehicles at their current location and automatically restore them when the game is restarted.
Park your vehicle. Leave the game. Come back. Stay Parked.
- Save up to 50 vehicles
- Automatically restore saved vehicles after restarting GTA V
- Save vehicles anywhere in the game world
- Simple save and remove interaction
- A vehicle must be entered at least once before it can be saved
- Configurable save/remove key
- Optional map blips for saved vehicles
- GTA-style vehicle blip icons
- Persistent JSON-based save system
Vehicle data includes:
- Position
- Heading
- Primary and secondary colours
- Vehicle modifications
- Wheel type
- Custom tyres
- Vehicle extras
- Window tint
- Engine health
- Body health
- Petrol tank health
- Dirt level
- Vehicle driveability state
- Enter a vehicle.
- Exit the vehicle.
- Stand near the vehicle.
- Press the configured key to save it.
- The vehicle is stored in the persistent save file.
To remove a saved vehicle, stand near it and press the same configured key again.
A vehicle must have been entered by the player at least once before it becomes eligible for saving.
Stay Parked supports a maximum of 50 saved vehicles.
Remove an existing saved vehicle before saving another vehicle when the limit has been reached.
- Grand Theft Auto V
- Script Hook V
- ScriptHookVDotNet v3
Copy the following files into your GTA V scripts directory:
SaveVehicleAnywhere.dll
SaveVehicleAnywhere.ini
Example:
Grand Theft Auto V/
|
└── scripts/
├── SaveVehicleAnywhere.dll
└── SaveVehicleAnywhere.ini
The save file will be created automatically after saving your first vehicle:
scripts/SavedVehicles.json
The configuration file is:
SaveVehicleAnywhere.ini
Default configuration:
[Settings]
SaveKey=Y
Blips=TrueChanges the key used to save and remove vehicles.
Supported keys: A to Z
Example:
SaveKey=EControls whether saved vehicles appear on the GTA V map.
Blips=TrueShows saved vehicle blips.
Blips=FalseDisables saved vehicle blips.
StayParked/
|
├── Config/
│ └── ModConfig.cs
|
├── Models/
│ ├── SavedVehicleData.cs
│ └── VehicleModData.cs
|
├── Properties/
│ └── AssemblyInfo.cs
|
├── Services/
│ ├── ConfigService.cs
│ ├── SaveService.cs
│ └── VehicleService.cs
|
├── UI/
│ └── ContextUI.cs
|
├── Main.cs
└── SaveVehicleAnywhere.csproj
The project is separated into several components:
Handles mod configuration, including:
- Save key
- Blip settings
Contains data models used to store vehicle information.
Handles:
- Vehicle detection
- Vehicle state collection
- Vehicle spawning
- Persistent saving and loading
- JSON serialization
Handles the in-game context messages shown to the player.
Acts as the main ScriptHookVDotNet script and coordinates the mod's behaviour.
Vehicle information is stored locally in:
SavedVehicles.json
When GTA V starts, Stay Parked:
- Loads the saved vehicle data.
- Recreates saved vehicles.
- Places them at their saved locations.
- Restores their saved state.
- Creates vehicle blips if enabled.
This project was developed using:
- C#
- .NET Framework
- ScriptHookVDotNet
- Script Hook V
- JSON-based data persistence
Open the project in JetBrains Rider or Visual Studio and build the project.
The compiled DLL can then be placed inside:
Grand Theft Auto V/scripts/
- A vehicle must be entered at least once before it can be saved.
- A maximum of 50 vehicles can be saved simultaneously.
- Other vehicle-related mods may interfere with vehicle persistence.
- Script Hook V and ScriptHookVDotNet must be installed correctly.
Initial public release.
Features include:
- Persistent vehicle saving
- Automatic vehicle restoration
- Configurable save key
- Optional vehicle blips
- Support for up to 50 saved vehicles
Created by Shreyas
Park your vehicle.
Leave the game.
Come back.
Stay Parked.