Skip to content

Developer resources

Framework documentation, defensive coding practices and field-tested references for C# development against LSPDFR and RAGE Plugin Hook.

Primary documentation.

18 guides
Burnsie.CommonFeature documentation for the common layer behind every Hideout plugin: logging, threading, safe natives, dispatch, crowd behavior and audio.Open documentation

Defensive engineering.

Core practices
  1. 01

    Guard every entity access with null + Exists() checks in Process(), event handlers and End(). The game can cull peds, vehicles and blips at any time; unguarded access is the #1 cause of LSPDFR plugin crashes.

  2. 02

    Clean up in BOTH OnCalloutNotAccepted() and End() — End() also runs when a callout is aborted. Dismiss() peds and vehicles so they return to the ambient population; Delete() blips.

  3. 03

    Keep callout state in instance fields, never static fields — statics leak state between callout runs.

  4. 04

    Share one static readonly Random for randomization. Random.Next's upper bound is exclusive, so use Next(array.Length), not Next(array.Length - 1).

  5. 05

    Never block Process(). Run timed dialogue in GameFiber.StartNew and gate one-shot events behind bool flags so they cannot re-fire every frame.

  6. 06

    Beware same-tick state transitions: changing state mid-Process can make checks later in the same block unreachable on every future tick.

Repositories worth studying.

Reviewed

External reference index.

11 topics

LSPDFR Development

Building LSPDFR plugins, callouts, police features, agency integrations and supporting systems.

Community Resource Collections

Pages that collect development links, references, spreadsheets, forum posts and community resources.

Open Source Examples

Repositories worth studying to learn how other developers structure GTA V, RPH and LSPDFR plugins.

UI and Menu Libraries

In-game menus, prompts, notifications, instructional buttons and Rockstar-style UI.

Natives and Low-Level References

Native functions, hashes, controls and engine-level behaviour not directly wrapped by RPH or LSPDFR.

World, Zone, Scanner and Location Data

Realistic callout placement, jurisdiction logic, scanner audio, patrol areas and world-aware plugins.

Ped, Weapon and Damage References

Spawning characters, assigning weapons, creating suspects, backup units, ambient scenes and injury effects.

Standards, Polish and Design

Small but useful resources for making plugins feel consistent with the wider LSPDFR ecosystem.

Map, Asset and File Tools

Working with GTA V files, maps, models, interiors, textures, archives, placements and coordinates.

General GTA V Scripting

For non-LSPDFR GTA V scripts or learning broader GTA V scripting concepts.

Suggested learning path.

  1. 01Learn the basics of C#.
  2. 02Read the RAGE Plugin Hook documentation.
  3. 03Build a small test plugin.
  4. 04Learn how GameFibers work.
  5. 05Read the LSPDFR API examples.
  6. 06Build a basic callout.
  7. 07Study open-source plugins.
  8. 08Add UI with RAGENativeUI or LemonUI.
  9. 09Use NativeDB for lower-level GTA functions.
  10. 10Use CodeWalker, OpenIV and Sollumz for world, file and asset work.
  11. 11Build reusable helper code before creating multiple large plugins.

A note on old documentation.

GTA V modding resources are spread across official docs, GitHub repositories, old forum posts, spreadsheets and community tools. Some older resources are still extremely useful, but always test against your current GTA V, RAGE Plugin Hook and LSPDFR versions. This list focuses on single-player GTA V modding, RAGE Plugin Hook and LSPDFR development.

Leaving the Hideout

You are about to leave Burnsies Hideout and open an external site in a new tab.

External sites are not operated by Burnsie. Only download files from sources you trust.