Script ESX QBCore QBOX Standalone vRP

Airhockey rcore

$25.00

rcore Airhockey – Dai vita ai tuoi interni con un minigioco di Air Hockey completamente interattivo per FiveM. Compatibile con il framework ESX per server FiveM.

Product facts

Framework
ESX, QBCore, QBOX, Standalone, vRP
Resource type
Script
Creator / Brand
rcore
Included files
1 downloadable file
Add to Cart
Miniatura minigioco rcore Airhockey FiveM
Airhockey rcore
$25.00
FiveM Air Hockey | rcore

File di configurazione

Config = {
    -- send paddle position to your opponent every 33ms (30x/s)
    -- lower the value for faster sync sync between paddles
    PositionSendRate = 33,
    -- maximum time the puck can stay on one side in ms
    PenaltyTime = 10000,
    -- block these while playing
    RestrictedControls = {37, 157, 159, 160, 161, 162, 163, 164, 165, 158, 101, 337, 53, 54, 47, 140, 141, 263, 264,
                          142, 143, 24, 257, 44, 282, 283, 284, 285, 69, 70, 114, 99, 100, 102, 22, 74, 68, 25, 36, 345,
                          346, 347, 91, 92},
    BounceStrength = 0.05, -- camera bounce effect
    DrawTableScore = true, -- draw actual match score for viewers on top tables
    Framework = 0, -- 0: Standalone (no bets), 1: ESX, 2: QBCore
    EnableBets = true,
    MinBet = 1000,
    MaxBet = 10000,
    BetType = 2, -- 1: Choose the lower stake for both (P1 choose 1k, P2 choose 2k, stake will be 1k for both), 2: both can set their own stakes
    WinMultiplier = 2, -- winner gets 2x the stake
    SpawnDistance = 30.0,
    UIFontID = 0, -- fontId (used in menus)
    UIFontName = nil, -- name of the font (used in scaleforms and notifications)
    NotifySystem = 1, -- 1: native notify, 2: okokNotify, 3: esx_notify, 4: qb_notify, 5: ox_notify
    -- Enable rcore_stats? (https://store.rcore.cz/package/6273968)
    Rcore_Stats = GetResourceState("rcore_stats") ~= "missing"
}

Objects = {{
    pos = vector3(-1635.939453, -1052.837891, 12.148856),
    heading = 318.0
}, {
    pos = vector3(-1634.047485, -1054.425537, 12.148856),
    heading = 318.0
}}

Translation = {
    MATCH_SETTINGS = "Match Settings",
    SLOW = "Slow",
    MEDIUM = "Medium",
    FAST = "Fast",
    PUCK_SPEED = "Puck Speed",
    PUCK_SPEED_DESC = "The maximum speed of the puck.",
    MAX_SCORE = "Max Score",
    MAX_SCORE_DESC = "The match will end after someone reaches this amount of goals.",
    START = "Start",
    START_DESC = "Press this to save the rules & start the match.",
    LATENCY_HIGH = "Looks like your latency (%s) is too high. Your gameplay won't be that great.",
    LATENCY_NORMAL = "Your latency is %s",
    END_WINNER = "winner.",
    END_LOSER = "loser.",
    END_STATS_SAVES = "%s saves",
    END_STATS_SHOTS = "%s shots on goal",
    END_STATS_GOALS = "%s goals",
    END_STATS_PLAYER = "%s m player travel",
    END_STATS_PUCK = "%s m puck travel",
    END_STATS_TITLE = "Air Hockey",
    TIMERBAR_PENALTY = "PENALTY",
    WAITING_FOR_OP = "Waiting for opponent.",
    TABLE_USED = "This Air Hockey table is being used by someone else.",
    NOT_CLOSE_ENOGUH = "Seems like you're not close enough. Walk away and try again",
    NOT_ENOUGH_PLAYERS = "To start Air Hockey, ask one more player to come closer to the table.",
    WAITING_FOR_OP_TO_JOIN = "Waiting for your opponent to join the match.",
    PRESS_TO_PLAY = "Press ~INPUT_CONTEXT~ to play Air Hockey.",
    MATCH_CANCELLED = "Match Cancelled",
    MATCH_CANCELLED_DESC = "One of you have disconnected, or cancelled the match",
    STARTING = "Waiting for players...",
    WAITING_FOR_HOST = "%s is changing the rules",
    PRESS_TO_CONFIRM_BET = "Press Enter to confirm the bet %s on your win",
    READY = "Ready",
    READY_DESC = "Press Enter if you're ready to play.",
    WAITING_FOR_OP_READY = "Please wait until your opponent confirm they're ready.",
    BETTINGS_CAPT = "Bettings",
    BETTINGS_INFOPANEL = "STAKE: %s",
    BETTING_ACC = "Account",
    BETTING_STAKE = "Stake",
    BETTINGS_USE_ACC_DESC = "Use '%s' account to pay for the stake. Max: %s",
    -- Update 1.1.0
    PADDLE_SKIN = "Paddle Skin",
    PADDLE_SKIN_DESC = "Choose the skin of your paddle.",
    PUCK_SKIN = "Puck Skin",
    PUCK_SKIN_DESC = "Choose the skin of the puck.",
    COLOR_BLUE = "Blue",
    COLOR_GREEN = "Green",
    COLOR_RED = "Red",
    COLOR_ORANGE = "Orange",
    COLOR_GRAY = "Gray",
    COLOR_PURPLE = "Purple",
    COLOR_PINK = "Pink",
    COLOR_BLACK = "Black",
    
    Get = function(key)
        return Translation[key] or "Missing Translation: " .. key
    end
}

 

🔧 Integrazione Plug & Play

  • Converte i tavoli da air hockey esistenti in tavoli giocabili

  • Controlli fluidi e reattivi sia per i giocatori

  • Perfetto per sale giochi, bar, casinò, lounge o interni personalizzati

🎮 Partite Personalizzabili

Imposta le partite come preferisci:

  • 3 opzioni di velocità del disco (lento, medio, veloce)

  • Massimo numero di round configurabile per duelli brevi o battaglie più lunghe

  • Configurazione semplice per adattarsi al ritmo e all'economia del tuo server

👀 Spettatori dal vivo

  • I giocatori nelle vicinanze possono guarda le partite in corso in tempo reale

  • Trasforma qualsiasi tavolo da air hockey in un punto d'incontro sociale

  • Ottimo per eventi della community, tornei o rivalità amichevoli

📊 Statistiche Dettagliate della Partita

Alla fine di ogni partita, i giocatori vedono un riepilogo completo:

  • Obiettivi

  • Salvataggi

  • Tiri in porta

  • Distanza di viaggio del disco

  • Distanza di corsa del disco

Perfetto per vantarsi, classifiche o eventi basati sulle statistiche.

🧤 Gameplay basato sull'abilità: Salva quel disco

  • Reazioni rapide e buon posizionamento vengono premiati

  • Difendere il tuo obiettivo è gratificante quanto segnare

  • Soffitto di abilità abbastanza alto da mantenere impegnati i giocatori abituali

💸 Sistema di Scommesse (Opzionale)

Aumenta il calore con scommesse in-game:

  • I giocatori possono scommettere su se stessi prima di una partita

  • Il vincitore prende il piatto, a seconda della configurazione del tuo server

  • Aggiunge rischio, ricompensa e tensione extra a ogni round

  • Aumenta ritenzione dei giocatori con un'attività secondaria divertente

  • Incoraggia interazione sociale e competizione amichevole

  • Si adatta naturalmente a server RP, casual e orientati all'economia

Setup guide

The package exposes a small editable config and no README, so installation can remain concise.

Requirements and preparation

  • Standalone mode for games without bets, or ESX/QBCore for framework-backed betting.
  • Configured air-hockey table coordinates.

Installazione

  1. Estrarre rcore_airhockey.
  2. Select standalone, ESX or QBCore in config.lua and configure bets, payout, sync rate and tables.
  3. Start after the framework only when framework-backed bets are enabled.

Configuration checkpoints

  • Test two-player join/leave, scoring, paddle synchronization and match cleanup.
  • With bets enabled, verify minimum/maximum amounts and payouts with insufficient-funds cases.

Safety: Back up the affected resource and database tables, use credentials owned by your server, and complete a staging test before replacing a live resource. The full configuration remains in the download package.

Informazioni aggiuntive

Framework

ESX, QBCore, QBOX, Standalone, vRP