G.A.SG.A.S Docs
G.A.S Docs / Other

Gym & Fitness

Train on real gym equipment anywhere in the world — a timing-based rep minigame builds persistent Strength and Stamina stats with real gameplay effects, placed entirely in-game with an admin dashboard.

Version v1.0.0Framework Qbox / QBCoreUpdated July 2026 $14.99 Get it on the store →

Train on real gym equipment anywhere in the world. A timing-based rep minigame builds persistent Strength and Stamina stats with real gameplay effects, and an in-game admin dashboard lets you place equipment in any gym MLO, on the beach, in the prison yard — no config coordinates needed.

Features

  • 8 equipment types — bench press, chin-ups, free weights, dumbbell curls, push-ups, sit-ups, treadmill, yoga. All native GTA animations/scenarios (the free-weights barbell spawns itself).
  • Rep minigame — a cursor sweeps a bar; hit SPACE in the zone. Perfect reps give bonus gains, and the zone shrinks as you get stronger.
  • Real effects — strength drives GTA core melee damage & climb speed plus a configurable melee damage modifier; stamina drives sprint duration (optional run-speed multiplier). Yoga relieves stress.
  • Progression that breathes — diminishing returns, a daily fatigue cap, and slow decay if you skip the gym (all configurable).
  • In-game placement dashboard (/gymadmin) — pick equipment, name the gym, optionally spawn a prop, stand where the animation should play and press E. Teleport to or delete any spot from the table. Auto map blips per gym.
  • Player dashboard (/fitness) — stats, daily fatigue, workout history, city leaderboard.
  • HUD-ready — stats replicate as player statebags (gymStrength, gymStamina) any HUD can read. Server/client exports included.
  • Server-authoritative — all gains validated server-side (rep rate + distance checks), stored in MySQL per citizenid.

Dependencies

  • ox_lib
  • oxmysql
  • Qbox (qbx_core) or QBCore (qb-core) — set Config.Framework

Install

  1. Drop rr-gym into your resources and ensure rr-gym after ox_lib, oxmysql and your core.
  2. Tables auto-create on first start (sql/install.sql included if you prefer manual import).
  3. In game as admin: /gymadmin → Add Equipment → place your first spots.

Commands

CommandWhoWhat
/fitnesseveryoneFitness dashboard (stats / history / leaderboard)
/gymadminadmin ACE (Config.AdminAce)Placement & management dashboard

Config.AdminAce must be an ACE, not a principal. Qbox's default permissions already include add_ace group.admin admin allow, so admins work out of the box. On other setups, add that line (or point the config at an ACE you already grant, e.g. command).

Reading the stats from other resources

-- client
local stats = exports['rr-gym']:GetStats()          -- { strength, stamina }
local str = LocalPlayer.state.gymStrength           -- statebag (any resource)

-- server
local row = exports['rr-gym']:GetPlayerFitness(src) -- full stats row
local str = Player(src).state.gymStrength

Escrow notes (Tebex packaging)

  • Encrypt: client/*.lua, server/main.lua
  • Keep open: config.lua, locales/*, html/*, sql/*, README.md
Last updated August 10, 2026