Setup guide

Daily Rewards

Players sign in each day and pick one of three random rewards, with a bonus pick every few sign-ins and a fresh start each month.

  • Version 1.0.0
  • Works on VORP, RSG Core, QBCore RedM
  • Resource Britannia_DailyRewards
  • Updated 19 Oct 2026

Overview

Daily Rewards gives your players a reason to come back every day. Each day they open a panel and pick one of three rewards, rolled at random from your own list. Every third sign-in of the month they also pick a bonus reward. On the 1st of each month everyone starts again.

  • One reward a day, chosen from three random offers.
  • A bonus pick every 3rd sign-in of the month (days 3, 6, 9 and so on).
  • A panel that shows the month as a track of days: claimed days are filled in gold, bonus days are outlined in gold.
  • The panel opens by itself after spawning when a reward is waiting, or with /daily.
  • Rewards can be items, cash or gold.

Requirements

  • poggy_core (free), version 0.14.0 or newer.
  • oxmysql.
  • One of VORP, RSG Core or QBCore RedM (poggy_core connects the script to it).

Install

  1. Download Britannia_DailyRewards from portal.cfx.re → Assets → Granted Assets.
  2. Put the Britannia_DailyRewards folder in your server's resources folder.
  3. Add ensure Britannia_DailyRewards to server.cfg, after ensure poggy_core.
  4. Check that every item in Config.DailyRewards and Config.BonusRewards exists in your items list. Item names are the database names. Change the lists to suit your server.
  5. RSG Core / QBCore RedM: set Config.ImagePath to your inventory's image folder (for example nui://rsg-inventory/html/images/), and use your framework's item names in the reward lists.
  6. Restart the server.

The table britannia_dailyrewards is created automatically on the first start.

Configuration

The script is encrypted with Cfx.re asset escrow. shared/config.lua stays editable, and every option in it is commented.

SettingWhat it doesDefault
Config.LocaleLanguage file to use from locales/'en'
Config.DebugPrints extra lines in the server and F8 consolesfalse
Config.UtcOffsetHoursTime zone for when a new day starts, in hours ahead (+) or behind (-) UTC. 0 is UK winter time, 1 is UK summer time0
Config.BonusEveryEvery this many sign-ins in a month, players also pick a bonus reward3
Config.CountBy'account' counts once per player (their Rockstar licence), whatever character they play. 'character' gives every character its own daily reward'account'
Config.CommandChat command that opens the panel'daily'
Config.AutoOpentrue opens the panel by itself after spawning when today's reward is waiting. false shows a reminder insteadtrue
Config.AutoOpenDelaySeconds after the character spawns before the panel opens (or the reminder shows)20
Config.ImagePathWhere item pictures come from. The file is <item>.png'nui://vorp_inventory/html/img/items/'
Config.ChoicesHow many different rewards players are offered each day3
Config.DailyRewardsThe daily reward list35 entries (cash, food, drink, tobacco, horse care, ammo and more)
Config.BonusRewardsThe bonus reward list, in the same format20 entries

Each reward is one line. Every line has the same chance of being offered:

lua
{ item = 'bread', amount = 3, label = 'Bread' },     -- an item (database name)
{ money = 'cash', amount = 3, label = '$3' },        -- money: 'cash' or 'gold'

The starting lists are worth little (a daily pick is worth about $1 to $4, a bonus about $5 to $10), so they don't flood your economy. Tune them to yours.

Commands and permissions

Command / keyWhoWhat it does
/dailyEveryoneOpens the rewards panel. The name is Config.Command.

How it works

  • Each day, the panel offers three different rewards from Config.DailyRewards. The player picks one with Take it.
  • A sign-in counts when the player claims that day's reward, not when they join.
  • On every 3rd sign-in of the month (set by Config.BonusEvery), the player also picks one of three bonus rewards from Config.BonusRewards.
  • A "day" is a calendar day in the time zone set by Config.UtcOffsetHours.
  • On the 1st of each month, everyone starts again from 0. A bonus left unclaimed from last month is dropped.
  • By default progress is counted per player (their licence), so playing a second character does not give a second reward.

Fair play. The server rolls the three choices and saves them, so leaving and rejoining doesn't re-roll them. A player can only take something that was actually offered to them, and only once per day. If they can't carry an item, nothing is used up: they can make room and try again.

Troubleshooting

The panel doesn't open after spawning

It only opens by itself when today's reward (or a bonus) is still waiting, and only after Config.AutoOpenDelay seconds. If Config.AutoOpen is false, players get a reminder to type /daily instead.

Players see "You have no active character."

The player must have a character loaded. Make sure poggy_core is started before Britannia_DailyRewards, and that it is 0.14.0 or newer.

A reward says "You can't carry that"

The player's inventory is full, or the item's limit is reached. Nothing is used up: they can make room and pick again.

A reward says "That reward couldn't be given just now"

The item or money type could not be given. Check that the item name in the config exists in your items list, exactly as written in the database.

Item pictures are missing

Config.ImagePath must point at your inventory's image folder, and each picture must be named <item>.png. On RSG Core or QBCore RedM, change it from the VORP default.

Players can claim once for each character

Set Config.CountBy = 'account' to count once per player, whatever character they play.

The day changes at the wrong hour

Set Config.UtcOffsetHours to your time zone (for example 1 for UK summer time).

Version history

  • 1.0.0: first public release.

Still stuck?

Open a ticket on our Discord with your framework, your poggy_core version and what you see, and we'll help you get it running.

Get help on Discord