Skip to content

Framework Support

This is the only RedMorrow resource that supports QBR

Alongside VORP, RSG Core, RedEM:RP and standalone. If you run qbr-core, this one detects it natively.

Detection

lua
Config.Framework = 'auto'

On start the resource looks for a running core, in this order:

Checked forBecomes
vorp_corevorp
rsg-corersg
redem_roleplayredemrp
qbr-coreqbr
nothing foundstandalone

It prints the result:

[rm_Lantern] framework: vorp

To skip detection, name it outright: 'vorp', 'rsg', 'redemrp', 'qbr' or 'standalone'.

What each core is used for

Only three things. Everything else is framework independent.

IdentityA stable key for saving each character's colour and brightness, and for tracking who placed which lantern
NotificationsSo messages match the rest of your server
InventoryOnly when Config.Inventory.RequireItem is on
CoreIdentityNotification
VORPcharIdentifierNotifyRightTip
RSGcitizenidFunctions.Notify
RedEM:RPcharidShowBasicTopNotification
QBRcitizenidFunctions.Notify
StandalonelicenseBuilt-in on-screen text

Standalone

Fully supported, not a degraded mode. Without a framework:

  • players need the lantern weapon, exactly like singleplayer
  • notifications use built-in on-screen text
  • settings are saved against the player's license
  • everything else — carrying, saddle, placement, colour, sync — is identical

Custom cores and inventories

bridge/client.lua and bridge/server.lua are left readable in the escrowed build specifically so you can adapt them. Nothing else in the resource talks to a framework.

Adding a core

In both bridge files, add a branch to detect():

lua
if resourceRunning('my-core') then return 'mycore' end

Then handle 'mycore' where the others are handled — core binding, Bridge.GetIdentifier, Bridge.Notify, and the three inventory functions.

Adding an inventory

If your core is already detected but you use a different inventory, change just the three functions in bridge/server.lua:

lua
function Bridge.HasItem(src, item, amount)    -- return true/false
function Bridge.RemoveItem(src, item, amount) -- return true/false
function Bridge.AddItem(src, item, amount)    -- return true/false

They are only called when Config.Inventory.RequireItem is on.

Safe failure

Every framework call is wrapped. If an export is missing, renamed, or your core updates and changes its API:

  • item checks return true, so a misconfigured server never traps a player's lantern in limbo
  • notifications fall back to built-in on-screen text
  • identity falls back to the player's license

The resource keeps working. It may stop gating on items or stop matching your notification style, but nothing breaks and nothing is lost.

Running without your core started first

Detection happens once, at resource start. If rm_Lantern starts before your core, it may log standalone.

Fix it by ordering server.cfg:

cfg
ensure vorp_core
ensure vorp_inventory
ensure rm_Lantern

Or pin it explicitly and skip detection entirely:

lua
Config.Framework = 'vorp'

Documentation for RedMorrow. Scripts are licensed per server — redistribution is not permitted.