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

SkyLift — AI Helicopter Taxi

On-demand helicopter charters with a full AI pilot flight engine — book from the /skylift dashboard, watch the heli land on the pad, board with [E], and fly anywhere on the map. No player pilots needed.

Version v2.0.0Framework QboxUpdated July 2026 $9.99 Get it on the store →

On-demand helicopter charters with a full AI pilot flight engine — no player pilots needed. Book from the standalone /skylift dashboard (or wire it into your own phone via the provided exports), watch the heli fly in, land exactly on the pad, board with [E], and get flown across the map.

Features

  • AI pilot, start to finish — spawns in, flies to the pickup pad, performs a scripted precision touchdown (no AI hover-forever), flies you to the destination, lands, and despawns after you step out.
  • Modern booking dashboard — dark command-center NUI: pickup pads sorted nearest-first, live distance-based fares per destination, route + fare-breakdown confirmation, helipad search.
  • Server-authoritative pricing — fares computed on the server; distance-based with min/max clamps and a configurable city tax. Charged from cash, then bank.
  • Refund logic — spawn failures, boarding timeouts, and pre-boarding cancels are refunded automatically; abandoning ship mid-flight is not.
  • 18 helipads out of the box — every pad is both a pickup and a destination; add your own with a single config line.
  • MySQL flight history (auto-created table) — optional.

Player flow

  1. /skylift (bindable key) → choose a pickup helipad (nearest first).
  2. Choose a destination — each shows its live fare.
  3. Review the route + fare breakdown → Request Helicopter. A GPS route is set to the pickup pad.
  4. The AI pilot flies in and lands exactly on the pad. Press [E] to board.
  5. You're flown to the destination, the heli lands, you step out, it flies off.

/cancelheli is a manual escape hatch for an active flight.

Dependencies

  • qbx_core (Qbox) — payment + player identity
  • ox_lib — notifications
  • oxmysql — flight history (optional; disable via Config.Database.enabled)

Configuring (config.lua)

  • Branding: Config.Brand (shown in the UI topbar and notifications). Replace ui/logo.png with your own square logo to rebrand the dashboard.
  • Helipads: Config.Helipadscoords = vec4(x, y, z, heading); the heli lands exactly on this coord facing heading, so use the precise touchdown spot.
  • Pricing: Config.PricePerUnit, MinPrice, MaxPrice, TaxRate.
  • Aircraft: Config.HeliModel (tries carbon, then supervolito2, then maverick).
  • Landing height: if a pad floats/sinks, nudge Config.LandZAdjust (+up / -down).
  • Timeouts / speeds / approach: all in config.lua.
  • Map blips: Config.PadBlips.enabled.

Integrations (optional — runs fine without them)

  • Any banking resource exposing CollectTax(amount, src, memo, citizenid) — the tax portion is credited to it (Config.CityBank).
  • Phone integration: the booking backend is fully exported, so you can drive it from any phone app UI.

Exports (client)

  • exports['rr-helitaxi']:GetPickupOptions(){ brand, active, pads[] }
  • exports['rr-helitaxi']:GetFares(pickupId){ pickup, destinations[] }
  • exports['rr-helitaxi']:BeginFlight(pickupId, destId)true | false, reason
  • exports['rr-helitaxi']:IsFlightActive(){ active, phase, dest }
  • exports['rr-helitaxi']:CancelFlight()

Files

  • config.lua — helipads, pricing, aircraft, flight tuning, blips, integrations.
  • server.lua — authoritative fares, payment, refunds, MySQL history.
  • client.lua — the AI flight engine + /skylift NUI host.
  • ui/ — the booking dashboard (logo.png = your brand icon).
Last updated August 10, 2026