Antes de empezar#
Antes de instalar Arm Wrestling, asegúrate de que tu servidor cumple los requisitos mínimos. Tres cosas son obligatorias; todo lo demás es opcional y se detecta solo.
Requisito | Estado | Notas |
|---|---|---|
OneSync | Obligatorio | Declarado como dependencia: el recurso no arranca sin él. |
| Obligatorio | Guarda las mesas colocadas con el creador. |
| Obligatorio | Callbacks, el menú de la mesa y las notificaciones. |
Framework | Opcional |
|
| Opcional | Notificaciones con su estilo. |
| Opcional | Muestra el aviso [E] - Play Arm wrestle en lugar del texto 3D integrado. |
Arm Wrestling usa las mesas y animaciones de pulso del propio GTA V, así que no hay nada que hacer stream ni ningún pack de assets que instalar.
GitHubReleases · overextended/oxmysqlMySQL resource for FXServer.GitHubReleases · overextended/ox_libA FiveM resource and script library for Lua and JS.Descargar Arm Wrestling#
Después de comprar Arm Wrestling, el recurso se vincula automáticamente a tu cuenta de CFX Portal.
Inicia sesión en CFX Portal con la misma cuenta que usaste al finalizar la compra, abre Granted Assets y descarga Arm Wrestling.
Después de extraer la descarga, deberías tener la siguiente carpeta:
qs-armwrestling/
├── config.lua -- everything you may edit
├── custom/ -- money and player names per framework (editable)
├── client/ -- the game itself
├── server/ -- matches, bets and saved tables
├── shared/ -- helpers used by both sides
├── database/ -- sql.sql, imported once
├── locales/ -- 41 languages (editable)
└── web/build/ -- the interface, ready to useSolo
config.lua,custom/ylocales/se pueden editar. Todo lo demás está protegido por el escrow de assets de CFX y cada actualización lo reemplaza por completo. Mantén la carpeta con el nombreqs-armwrestling: la comprobación de versión la busca por ese nombre.
Instalar el recurso#
Mueve la carpeta qs-armwrestling al directorio de recursos de tu servidor. Puede estar en cualquier lugar dentro de él, incluida una carpeta de categoría:
resources/
└── [qs]/
└── qs-armwrestling/Una vez copiada, abre tu server.cfg y asegúrate de que cada dependencia, y todo lo que deba detectar, arranca antes que Arm Wrestling:
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# ensure qb-core
# ensure qbx_core
# Optional
ensure qs-interface
ensure qs-textui
ensure qs-armwrestlingEl orden de carga importa. El framework se detecta una sola vez, cuando arranca Arm Wrestling, así que uno que arranque después no se encuentra: Arm Wrestling pasa al modo standalone y las apuestas no cobran ni pagan nada. Un qs-textui que arranque después deja en su lugar el aviso integrado.
La base de datos#
Arm Wrestling guarda las mesas colocadas con el creador en una tabla de la base de datos, qs_armwrestling_tables. Importa database/sql.sql una vez, antes del primer arranque: el recurso lee esa tabla pero no la crea. Ejecuta el archivo en HeidiSQL, phpMyAdmin, DBeaver o cualquier cliente conectado a la base de datos de tu servidor:
CREATE TABLE IF NOT EXISTS `qs_armwrestling_tables` (
`id` VARCHAR(32) NOT NULL,
`coords` LONGTEXT DEFAULT NULL,
`model` VARCHAR(64) NOT NULL,
`label` VARCHAR(128) NOT NULL DEFAULT '',
`price` INT NOT NULL DEFAULT 0,
`payment_method` VARCHAR(16) NOT NULL DEFAULT 'money',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;Contiene una fila por mesa:
Columna | Contenido |
|---|---|
| El identificador de la mesa, calculado a partir de dónde está. Mover una mesa le da uno nuevo. |
| Posición y orientación en JSON: |
| El hash del prop, uno de |
| El nombre asignado en el creador. |
| El precio y la cuenta ( |
Dar acceso al creador#
El creador de mesas está protegido por un permiso ACE, command.armwrestlecreator por defecto. Dáselo a tu grupo de administradores en server.cfg y añádete a ese grupo:
add_ace group.admin command.armwrestlecreator allow
add_principal identifier.license:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx group.adminSi tu grupo de administradores ya tiene add_ace group.admin command allow (el server.cfg por defecto de FiveM lo incluye), tu staff ya tiene acceso, porque esa línea cubre todos los comandos. Los aces de server.cfg se leen al ejecutarse, así que reinicia el servidor después de añadirlos.
El nombre del permiso es Config.Creator.permission. Cámbialo por un ace propio y concede ese en su lugar:
Config.Creator = {
permission = 'qs-armwrestling.admin',
-- ...
}El servidor lo vuelve a comprobar cada vez que se guarda, mueve o elimina una mesa, así que un cliente modificado no puede cambiar mesas sin él.
Configurar el recurso#
Todo está en un único archivo comentado, config.lua. Se lee al arrancar el recurso, así que reinicia qs-armwrestling después de editarlo.
Sección | Contenido |
|---|---|
| El idioma: uno de 41 códigos. |
| Se detecta solo a partir de la lista que tiene encima. Añade una línea ahí solo para admitir otro framework; consulta Integraciones. |
| El permiso del creador, la velocidad a la que gira y sube una mesa al colocarla, un desfase respecto al suelo y los modelos de mesa que se pueden elegir. |
| A qué distancia de la mesa debe estar un jugador para recibir un desafío, y cuánto espera un desafío una respuesta. |
| Apuestas entre jugadores: activadas o desactivadas, y el máximo y el paso del control de apuesta. |
| Los personajes que puede ser un bot, y la velocidad y la fuerza de cada dificultad. |
| Mensajes de depuración. Déjalo en |
Los valores que conviene revisar primero:
Config.Locale = 'en' -- ar, bg, bn ... uk, ur, vi, zh
Config.Challenge = {
nearbyPlayerRadius = 15.0, -- metres around the table to list opponents
timeout = 30, -- seconds to answer a challenge
}
Config.Betting = {
enabled = true, -- false removes the bet slider
min = 0,
max = 10000, -- the slider's maximum
step = 100, -- the slider's step
}
Config.Bot = {
defaultDifficulty = 'normal', -- used when a difficulty is missing
-- models and difficulties: see Usage
}Las dificultades del bot y los modelos de mesa se explican, valor por valor, en Uso.
Verificar la instalación#
Reinicia tu servidor y lee la consola. En una instalación que funciona verás:
[qs-armwrestling:INFO] Server framework loaded: esx
[qs-armwrestling:INFO] Loaded 0 arm wrestling table(s) from SQL.La primera línea indica el framework que encontró: esx, qb o standalone. Si dice standalone en un servidor que tiene un framework, ese framework arranca demasiado tarde. La segunda línea cuenta las mesas guardadas con el creador; si nunca aparece, o aparece un error oxmysql sobre qs_armwrestling_tables, el SQL no se ha importado.
Después entra en tu servidor y recorre el primer ciclo:
Coloca una mesa
Escribe
/armwrestlecreator, pulsa +, ponle nombre a la mesa, elige un modelo y pulsa Select. Apunta al suelo, haz clic izquierdo para soltarla y luego Save Table.Gánale a un bot
Acércate a la mesa y pulsa
E→ Player vs Bot → Easy → Ready. Después de GO!, pulsaElo más rápido que puedas.Desafía a alguien
Con un segundo jugador a menos de 15 m, elige Player vs Player, selecciónalo en la lista, fija una apuesta y pulsa Ready. Acepta desde su propia pantalla.
Nada en el creador necesita un reinicio: las mesas, los nombres y los modelos llegan a todos los jugadores al instante. Uso cubre todo lo que puede hacer una partida.



