RSG Core
RSG Core is RedM's QBCore-style framework. If you have run a QBCore FiveM server, almost everything you know transfers — the structure, the naming conventions and the core object pattern are deliberately familiar.
Identifying it
RSG uses hyphens, following QBCore's convention rather than VORP's underscores:
rsg-core— the framework corersg-inventory— items and storagersg-multicharacter,rsg-appearance,rsg-hud— common modules
A resources folder full of rsg-* folders means RSG Core.
Load order
ensure oxmysql
ensure rsg-core
ensure rsg-inventory
ensure rsg-multicharacter
# RedMorrow resources after the core
ensure rsg_notebook
ensure rsg_trainrsg-core must start before anything that calls it.
Talking to RSG from a script
RSG follows the QBCore pattern of exposing the core through a single export:
local RSGCore = exports['rsg-core']:GetCoreObject()Player data is then reached the QBCore way:
local Player = RSGCore.Functions.GetPlayer(source)
-- Player.PlayerData.charinfo, Player.PlayerData.money, Player.PlayerData.job ...Verify against your version
RSG Core is under active development and the export surface has shifted between releases. Confirm the exact names against the rsg-core version you run before writing integration code — the shape above is the common one, not a guarantee for every build.
Coming from QBCore
The mental model carries over almost completely, but the content does not:
| Familiar from QBCore | RSG equivalent |
|---|---|
qb-core | rsg-core |
exports['qb-core']:GetCoreObject() | exports['rsg-core']:GetCoreObject() |
qb-inventory | rsg-inventory |
| Vehicles | Horses and wagons |
game 'gta5' | game 'rdr3' + rdr3_warning |
QBCore scripts do not run on RSG
The API shape being similar does not make the scripts portable. FiveM scripts reference GTA V natives, models, weapons and vehicles that do not exist in RDR2 — and they lack the required rdr3_warning manifest line. Buy RedM-native resources.
Common RSG problems
GetCoreObject returns nil — rsg-core has not started yet, or started after the script. Check the order in server.cfg.
Items do not appear in inventory — the item must be registered in RSG's shared item list, and the name in the script config must match exactly. Import the script's .sql if it ships one.
A QBCore script "almost" works — it will not. See the warning above.