Skip to content

Installation

Requirements

  • oxmysql — the only hard dependency. It stores placed decks.
  • A framework — VORP, RSG Core or RedEM:RP — or none at all. The resource detects what is running at startup and falls back to standalone mode when nothing is.

Nothing else. No audio resource, no UI library, no CDN scripts.

1. Database

Run install.sql against your database. It creates the rm_phonograph_decks table.

The INSERTs at the bottom are VORP-specific

They register the items in VORP's items table. Skip them on other frameworks.

2. Items

This is the only per-framework chore.

FrameworkWhat to do
VORPNothing extra — the install.sql INSERTs covered it
RSG CoreAdd phonograph and the four record_* items to rsg-core/shared/items.lua
RedEM:RPRegister the same item names in your inventory's item config
StandaloneNothing — there are no items; placement uses a command

The item names must match config/cabinets.lua (phonograph) and the keys of config/records.lua:

phonograph
record_camptown
record_entertainer
record_clementine
record_gymnopedie

3. Icons

Copy everything from inventory_icons/ into your inventory's item-image folder — on VORP that is:

vorp_inventory/html/img/items/

Five 128×128 transparent PNGs. The filenames already match the item names.

Restart your inventory resource afterwards.

4. Start order

Ensure the resource after your framework and oxmysql:

cfg
ensure oxmysql
ensure vorp_core        # or rsg-core / redem_roleplay / nothing

ensure rm_phonograph

It recovers from the wrong order, but don't rely on it

If the framework comes up after this resource, the bridge notices and switches over from standalone automatically. The correct ensure order is still the reliable path.

5. Staff access

Grant the ace to your admin group in server.cfg:

cfg
add_ace group.admin rm_phonograph.admin allow

Or list character identifiers in Settings.access.admins instead — see Configuration.

6. Configure

Open config/settings.lua and set at least:

  • languageen, de, es, fr, it or pt
  • The record URLs in config/records.lua

Records with no URL are skipped

An entry with an empty url never appears on the shelf. Every one of them is named in the server console at boot, so check that line.

That's it

The web overlay ships prebuilt in web/dist/. You do not need Node.js unless you plan to modify the UI — see the Developer Guide.

Verifying

  1. Use the phonograph item from your bags — you should carry the cabinet with a ghost preview.
  2. Hold [R] to set it down.
  3. Press [R] at the placed cabinet to open the deck.
  4. Click a record sleeve and confirm a second player nearby hears the same track.

If any of that does not happen, Troubleshooting works through it.

Escrow note

INFO

On the RedM Escrow edition ($20), config/, locales/, server/frameworks/ and install.sql are open for editing; the rest of the Lua is protected by CFX Escrow.

Everything in this documentation that tells you to edit a file only ever points at those. The Open Source edition ($40) ships the full codebase.

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