Script ESX QBCore QBOX Standalone vRP

rcore Airhockey

$25.00

rcore Airhockey – Dale vida a tus interiores con un minijuego de Air Hockey completamente interactivo para FiveM. Compatible con el marco ESX para servidores FiveM.

añadir a la cesta
Miniatura del minijuego rcore Airhockey FiveM
rcore Airhockey
$25.00

Detalles del producto

Framework
ESX, QBCore, QBOX, Standalone, vRP
Tipo de recurso
Script
Creador / Marca
rcore
Archivos incluidos
1 archivo descargable

Detalles de la compra

Acceso a actualizaciones
Acceso de por vida a los archivos publicados en esta ficha Leer la política de acceso a actualizaciones
Formato de descarga
ZIP
Paquete verificado
2026-07-25 · 63 archivos en el paquete entregado

Archivo de configuración

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
}

 

🔧 Integración Plug & Play

  • Convierte los props de mesas de hockey aéreo existentes en mesas jugables

  • Controles suaves y receptivos para ambos jugadores

  • Perfecto para arcades, bares, casinos, salones o interiores personalizados

🎮 Partidos personalizables

Configure los partidos como desee:

  • 3 opciones de velocidad de puck (lento, medio, rápido)

  • Configurable max rounds para duelos cortos o batallas más largas

  • Configuración fácil para adaptarse al ritmo y la economía de tu servidor

👀 Espectadores en vivo

  • Los jugadores cercanos pueden ver partidos en curso en tiempo real

  • Convierte cualquier mesa de hockey aéreo en un punto de encuentro social

  • Excelente para eventos comunitarios, torneos o rivalidades amistosas

📊 Estadísticas detalladas del partido

Al final de cada juego, los jugadores ven un desglose completo:

  • Objetivos

  • Ahorros

  • Disparos a la red

  • Distancia de viaje del disco

  • Distancia de viaje de la pala

Perfecto para derechos de fanfarroneo, tablas de clasificación o eventos basados en estadísticas.

🧤 Juego basado en habilidades: Salva ese disco

  • Las reacciones rápidas y una buena posición son recompensadas

  • Defender tu objetivo se siente tan satisfactorio como anotar

  • Techo de habilidad lo suficientemente alto como para mantener a los jugadores regulares comprometidos

💸 Sistema de apuestas (Opcional)

Aumente la apuesta con apuestas en el juego:

  • Los jugadores pueden apuestan por sí mismos antes de un partido

  • El ganador se lleva el bote, dependiendo de la configuración de tu servidor

  • Añade riesgo, recompensa y tensión extra a cada ronda

  • Aumenta retención de jugadores con una actividad secundaria divertida

  • Fomenta interacción social y competencia amistosa

  • Se integra naturalmente en servidores RP, casuales y orientados a la economía

Guía de configuración

El paquete expone una pequeña configuración editable y no tiene README, por lo que la instalación puede seguir siendo concisa.

Requisitos y preparación

  • Modo Standalone para juegos sin apuestas, o ESX/QBCore para apuestas respaldadas por el framework.
  • Coordenadas de la mesa de air hockey configuradas.

Instalación

  1. Extracto rcore_airhockey.
  2. Selecciona standalone, ESX o QBCore en config.lua y configura apuestas, pago, tasa de sincronización y mesas.
  3. Iniciar después del framework solo cuando las apuestas respaldadas por el framework estén habilitadas.

Puntos de control de configuración

  • Probar unión/salida de dos jugadores, puntuación, sincronización de paletas y limpieza de partidas.
  • Con las apuestas habilitadas, verifica los montos mínimos/máximos y los pagos con casos de fondos insuficientes.

Seguridad: Haz una copia de seguridad del recurso y las tablas de base de datos afectadas, utiliza credenciales propiedad de tu servidor y completa una prueba de staging antes de reemplazar un recurso en vivo. La configuración completa permanece en el paquete de descarga.

Información adicional

Framework

ESX, QBCore, QBOX, Standalone, vRP