Society fleets
Enable society fleet checkout deliberately
Fleet checkout is Qbox-first and fails closed unless DRS Garages, an allowed caller, a supported society banking provider, a ready fleet journal, the exact job/boss/grade/on-duty authority, and a server-side model allowlist all pass. Reuse the same durable request id for every retry.
Exports & integration boundaries
Client presentation export
ResolveVehiclePresentation(modelOrHash) returns the configured model, display name, brand, addon flag, and ordered image candidates. It is presentation-only and grants no purchase or ownership authority.
local presentation = exports.drs_vehicleshop:ResolveVehiclePresentation(modelOrHash)Protected society fleet exports
Only resources listed in Config.Fleet.AllowedCallers may request the server-resolved catalogue, purchase an allowlisted job vehicle, or inspect service health. PurchaseFleetVehicle requires a stable 8–64 character requestId and the acting player source.
local catalog = exports.drs_vehicleshop:GetFleetCatalog({
actorSource = source,
job = 'police'
})
local result = exports.drs_vehicleshop:PurchaseFleetVehicle({
requestId = durableRequestId,
actorSource = source,
action = 'society_purchase',
job = 'police',
model = 'police3',
garageIndex = 1
})
local status = exports.drs_vehicleshop:GetFleetServiceStatus()Legacy compatibility boundary
The client still accepts qr-vehicleshop:client:openShop during transition and reads two legacy state-bag keys during entity recovery. New calls and state use drs_vehicleshop:*; financial server callbacks are not exposed under QR aliases.
Release & source notes
- Keep the resource folder named drs_vehicleshop and use the drs_vehicleshop:* namespace for new integrations.
- The public source currently has no tag or GitHub release. Pin the tested main-branch commit and review repository changes before updating production.
- The README describes a local preview directory that is not present in the audited public snapshot; it is not part of this deployment guide.
- The MIT license and NOTICE retain RaySist and QR Development attribution for the original qr-vehicleshop foundation.