The WHERE clause is the lock
Balance and freeze checks live in the SQL that moves money (WHERE balance >= ? AND is_frozen = 0), not in Lua beforehand. Zero rows updated means denied — the cash never moved.
joyride.games is two people. First resource: ledger-first banking for FiveM RP servers. Every cash movement is one atomic SQL transaction. If the row doesn’t update, the money doesn’t move.
Not a screenshot. Drawn here. Route is the metaphor, not a feature demo.
01 / First product
In development · not for sale yetMost RP banks check the balance in script, then write it in a second step. That gap is where double-clicks and parallel requests print money. We don’t leave a gap.
Balance and freeze checks live in the SQL that moves money (WHERE balance >= ? AND is_frozen = 0), not in Lua beforehand. Zero rows updated means denied — the cash never moved.
Every call — deposit, withdraw, transfer — appends a row, success or not. An admin can see who tried to drain a frozen account, not only who succeeded.
Owner, manager, member are checked inside the money movement, not after it. A forged account id does not spend someone else’s balance.
config.lua for limits, currency, ATM points-- Subtract only if the money is actually there.
-- 0 rows = denied. There is no second chance.
UPDATE jr_accounts
SET balance = balance - :amt
WHERE id = :from
AND balance >= :amt
AND is_frozen = 0;
-- Then the journal, always:
INSERT INTO jr_transactions
(from_id, amount, actor, reason, denied_code)
VALUES
(:from, :amt, :citizenid, 'withdraw',
NULL -- or 'insufficient_funds' / 'frozen' / 'no_access');
-- Lua never decides the balance.
-- Three verbs: deposit, withdraw, transfer.
Illustrative of the invariant — not a paste of the shipping source. Amounts are integers. No float cents.
02 / Two lanes
Paid scripts for the people who run a city. Free tools for the people who play in one. Nothing here requires the other.
Scripts and assets for FiveM roleplay servers, built to drop into a live city — not a screenshot. First up: jr_banking. When it ships, it will be sold through Tebex.
Written guides for the next big open-world release are live now. Interactive companions — maps, collectible trackers, checklists — are still in the oven. No paywall, no account required, ever.
Player section
Independent pre-release notes. Not a product announcement. Trackers mentioned elsewhere on this page are still coming — these are articles, not tools.
GTA 6 is sold as a single-player experience. PlayStation lists 1 player. Xbox lists single player. Two-player campaign and split-screen are unconfirmed.
ReleaseGTA 6 is Rating Pending on Rockstar’s store. PlayStation shows likely Mature 17+. PEGI has no final public entry. What each board has actually published.
LocationsAmbrosia is a named GTA 6 destination. Brian Heder’s bio sits next to the tour button; his written setting is the Keys. Official facts only.
AnalysisAn Extended Look is 26 minutes of in-game PS5 footage, out 27 Aug 2026. What Rockstar stated, what IGN and others reported, what remains unconfirmed.
03 / Studio
joyride.games is the shared name for what two people build: server-side scripts for FiveM communities, and small free tools for players around whichever open-world release is worth building for next. There is no team behind the curtain — if it ships under this name, one of us wrote it.
We operate as a small independent outfit based in Georgia, under the umbrella of Margats, our holding entity. No investors, no roadmap decks. The first product is still in development. We would rather say that than pretend a store exists.
04 / Mail
No newsletter, no drip. One message when the Tebex store or a player tool goes live. Unsubscribe whenever — there will barely be anything to leave.