Files
tokyo-wangan-racing/src/shared/GameConfig.luau
T
jesse 9a2f2d4dc9
CI / quality (push) Failing after 5m53s
Initial MVP: drivable RX-7 vertical slice + server-authoritative systems
- Rojo + Wally project; ProfileStore (loleris) for safe saves
- Shared: GameConfig, Cars (RX-7 free starter), ProfileTemplate, Remotes
- Server: DataManager, Economy, CarManager, RaceManager, MapBuilder, AntiCheat
- Client: neon HUD + Garage/Dealership UI (buy/equip/upgrade), race/daily
- Procedural Tokyo expressway (spawn pad, finish line, neon pylons, kill walls)
- CI workflow (Gitea/GitHub), Makefile, selene+stylua clean, rojo builds
- Docs: README, GDD, realistic solo ROADMAP
2026-07-21 23:30:53 -04:00

38 lines
1.5 KiB
Luau

--!strict
--[[
GameConfig.luau
Central tunable constants. Anything you might want to balance later lives here,
NOT hard-coded in systems. Single source of truth for numbers.
]]
local GameConfig = {}
-- Economy -------------------------------------------------------------------
GameConfig.StartingCash = 1500 -- enough to feel, not enough to skip the RX-7
GameConfig.StartingRep = 0
GameConfig.StartingCarId = "rx7_fc" -- the player's real 1993 Mazda RX-7
-- Race rewards (flat MVP model; tune per-race later) -------------------------
GameConfig.RaceBaseReward = 250
GameConfig.RaceWinBonus = 400
GameConfig.RaceRepReward = 15
-- Daily login ----------------------------------------------------------------
GameConfig.DailyRewardCash = 300
GameConfig.DailyRewardRep = 10
GameConfig.DailyCooldownSeconds = 20 * 60 * 60 -- 20h so a "daily" is reliably claimable each day
-- Anti-cheat sanity bounds (server-side validation) --------------------------
-- Max believable straight-line speed in studs/sec for the FASTEST car + boosts.
-- Anything sustained above this => flagged. Generous to avoid false positives in MVP.
GameConfig.MaxPlausibleSpeed = 400
-- DataStore ------------------------------------------------------------------
GameConfig.ProfileStoreName = "PlayerData_v1" -- bump the _vN to wipe/migrate in dev
GameConfig.UseMockInStudio = true -- ProfileStore mock store when testing in Studio (no live DataStore)
-- Autosave interval handled by ProfileStore internally; kept here for reference.
GameConfig.SessionTag = "fnf-sim-mvp"
return GameConfig