Installation
Install gs-moonshining: dependencies, start order, items, and framework bootstrap.
Follow every step. Most startup errors come from a missing dependency, the wrong folder name, or items that were never added.
Download
Purchase with your own Cfx / Keymaster account. Download from Keymaster. You can transfer the grant to another account from Keymaster if needed.
Escrow errors: FiveM/RedM Asset Escrow.
Keep the resource folder named gs-moonshining (or gs-moonshining-project during local staging). ensure below uses gs-moonshining.
Dependencies (required)
| Dependency | Notes |
|---|---|
| OxMySQL | Required |
| Framework stack | VORP or RSG (see tables below) |
VORP
| Dependency | Link |
|---|---|
| vorp_core | https://github.com/VORPCORE/vorp_core-lua |
| vorp_inventory | https://github.com/VORPCORE/vorp_inventory-lua |
| vorp_menu | https://github.com/VORPCORE/vorp_menu |
RSG
| Dependency | Notes |
|---|---|
| rsg-core | Required |
| rsg-inventory | Required |
| rsg-menubase | Shop menus |
| ox_lib | Server notifications |
Dependencies (optional)
| Dependency | Notes |
|---|---|
| Legends-Keypress | Default skillcheck. Replace in editable/client.lua if you prefer another minigame |
Asset order
Start frameworks and OxMySQL before gs-moonshining. Wrong order usually shows as missing exports.
VORP
ensure oxmysql
ensure vorp_core
ensure vorp_inventory
ensure vorp_menu
ensure legends-keypress
ensure gs-moonshiningRSG
ensure oxmysql
ensure ox_lib
ensure rsg-core
ensure rsg-inventory
ensure rsg-menubase
ensure legends-keypress
ensure gs-moonshininglegends-keypress is optional. Skip that line if you are not using it.
Framework bootstrap
Open config.lua:
Config.Framework = 'auto' -- auto | vorp | rsg
Config.Locale = 'en'
Config.DevMode = false"auto" checks rsg-core, then vorp_core. Force vorp or rsg if both are present. Details: Integrations.
Items
Item images are bundled in items/images. Copy them into your inventory image folder so shop and inventory icons match.
VORP
Run items/items.sql against your VORP items table (or skip if you already have matching item names and update Config instead).
Copy PNGs from items/images into your VORP inventory images folder (typically vorp_inventory/html/img/items/).
VORP inventory SQL
INSERT INTO `items` (`item`, `label`, `limit`, `can_remove`, `type`, `usable`, `groupId`, `metadata`, `desc`, `weight`) VALUES
('resource_still_kit', 'Still Kit', '5', '1', 'item_standard', '1', '1', '{}', 'A kit for setting up a still to make distilled spirits.', '0.25'),
('resource_still_bucket', 'Mash Bucket', '4', '1', 'item_standard', '1', '1', '{}', 'Helps with the fermentation of a mashed wash', '0.2'),
('consumable_alcohol_moonshine_apple_crumb', 'Apple Crumb Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Apple Crumb Moonshine is a handcrafted spirit blending sweet apples with buttery crumb flavors. Smooth and versatile, perfect neat or in cocktails.', '0.25'),
('consumable_alcohol_moonshine_apple', 'Apple Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Apple moonshine is a handcrafted spirit distilled with sweet, crisp apples. Smooth and aromatic, perfect for sipping neat or mixing into cocktails.', '0.25'),
('consumable_alcohol_moonshine_blackberry', 'Blackberry Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Blackberry moonshine is a handcrafted spirit infused with ripe blackberries. Sweet, fruity, and smooth, perfect neat or in cocktails.', '0.25'),
('consumable_alcohol_moonshine_peach', 'Peach Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Peach Moonshine is a handcrafted spirit infused with juicy peaches. Sweet, fragrant, and smooth, perfect for sipping or mixing into cocktails.', '0.25'),
('consumable_alcohol_moonshine_raspberry', 'Raspberry Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Raspberry Moonshine is a handcrafted spirit infused with ripe raspberries. Sweet, tangy, and smooth, perfect for sipping or mixing into cocktails.', '0.25'),
('consumable_alcohol_moonshine_tropical_punch', 'Tropical Punch Moonshine', '10', '1', 'item_standard', '1', '1', '{}', 'Tropical Punch Moonshine is a handcrafted spirit infused with vibrant tropical fruits. Sweet and smooth, perfect for sipping or mixing into exotic cocktails.', '0.25'),
('consumable_alcohol_moonshine_wild_cider', 'Wild Cider Moonshine', '10', '1', 'item_standard', '1', '1', '{}', 'Wild Cider Moonshine is a handcrafted spirit infused with tangy wild cider. Crisp and smooth, perfect for sipping or mixing into cocktails.', '0.25'),
('consumable_alcohol_moonshine', 'Simple Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Plain Moonshine is a handcrafted, pure distilled spirit. Bold and smooth, perfect for sipping neat or using as a versatile base in cocktails.', '0.25'),
('consumable_alcohol_moonshine_plum', 'Plum Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Plum Moonshine is a handcrafted spirit infused with rich plums. Sweet and smooth, perfect for sipping neat or mixing into cocktails.', '0.25'),
('consumable_alcohol_moonshine_alaskan', 'Alaskan Ginseng Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'Alaskan Ginseng Moonshine is a handcrafted spirit infused with wild Alaskan ginseng. Earthy and invigorating, perfect for sipping neat or mixing into unique cocktails.', '0.25'),
('consumable_alcohol_moonshine_american', 'American Ginseng Moonshine', '20', '1', 'item_standard', '1', '1', '{}', 'American Ginseng Moonshine is a handcrafted spirit infused with premium American ginseng. Earthy and smooth, perfect for sipping neat or mixing into unique cocktails.', '0.25'),
('consumable_mash_apple', 'Apple Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of apples used for various recipes', '0.25'),
('consumable_mash_apple_crumb', 'Apple Crumb Mash', '10', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of mint and apples used for crafting Moonshine', '0.25'),
('consumable_mash_blackberry', 'Blackberry Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of blackberries used in cooking and beverages', '0.25'),
('consumable_mash_peach', 'Peach Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of peaches used in culinary preparations', '0.25'),
('consumable_mash_raspberry', 'Raspberry Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of raspberries used for culinary purposes', '0.25'),
('consumable_mash_plum', 'Plum Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of plums used in cooking and distilling', '0.25'),
('consumable_mash_tropical_punch', 'Tropical Punch Mash', '10', '1', 'item_standard', '1', '1', '{}', 'A mashed mixture of a variety of berries used for making moonshine', '0.25'),
('consumable_mash_wild_cider', 'Wild Cider Mash', '10', '1', 'item_standard', '1', '1', '{}', 'A powerful and highly concentrated mashed batch of apple cider and mints', '0.25'),
('consumable_mash_strong', 'Strong Mash Batch', '20', '1', 'item_standard', '1', '1', '{}', 'A powerful and highly concentrated mash batch for advanced recipes', '0.25'),
('consumable_mash_alaskan', 'Alaskan Ginseng Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A blend of ingredients used in the production of Alaskan ginseng moonshine', '0.25'),
('consumable_mash_american', 'American Gin Mash', '20', '1', 'item_standard', '1', '1', '{}', 'A blend of ingredients used in the production of American ginseng moonshine', '0.25'),
('corn', 'Corn', '50', '1', 'item_standard', '0', '1', '{}', 'Dried corn used for mash recipes.', '0.1'),
('wheat', 'Wheat', '50', '1', 'item_standard', '0', '1', '{}', 'Wheat used for mash recipes.', '0.1'),
('sugar', 'Sugar', '50', '1', 'item_standard', '0', '1', '{}', 'Sugar used for mash recipes.', '0.1')
ON DUPLICATE KEY UPDATE
`item`=VALUES(`item`), `label`=VALUES(`label`), `limit`=VALUES(`limit`), `can_remove`=VALUES(`can_remove`), `type`=VALUES(`type`), `usable`=VALUES(`usable`), `groupId`=VALUES(`groupId`), `metadata`=VALUES(`metadata`), `desc`=VALUES(`desc`), `weight`=VALUES(`weight`);RSG
Merge items/rsg.lua into rsg-core/shared/items.lua (or require/copy the entries). Copy PNGs from items/images into rsg-inventory/html/images/.
Skip corn / wheat / sugar if your server already defines them under those names.
Quick config checklist
Config.DevMode = false
Config.Framework = 'auto'
Config.Locale = 'en'
Config.EnableShop = true
Config.EnableShacks = true
-- Supplies.*.itemName and Mash keys must match your inventory item names