FAQ
El recurso no arranca
Comprueba primero que las dependencias obligatorias esten iniciadas:
ensure oxmysql
ensure cold_lib
ensure cold_bank
Si utilizas un framework, arrancalo antes de cold_bank.
¿Tengo que importar cold_bank.sql manualmente?
No.
server/schema.lua importa automaticamente cold_bank.sql al iniciar y crea las tablas necesarias si no existen.
Revisa la consola. Deberias ver un mensaje parecido a:
[cold_bank] SQL importada automaticamente desde cold_bank.sql (... sentencias).
Si falla, comprueba la conexion de oxmysql y los permisos del usuario MySQL.
¿Que frameworks soporta?
QBX
QBCore
ESX
standalone
Por defecto usa:
Config.Compatibility.framework = 'auto'
La consola indica cual se ha detectado.
Detecta el framework equivocado
Fuerzalo en config/config.lua:
Config.Compatibility.framework = 'qbx'
Tambien puedes usar:
'qbcore'
'esx'
'standalone'
Asegurate ademas de que solo esten iniciados los frameworks que realmente utiliza tu servidor.
No aparece ox_target / qb-target
Deja:
Config.Target.system = 'auto'
Y arranca el target antes de cold_bank.
Tambien puedes forzarlo:
Config.Target.system = 'ox_target'
o:
Config.Target.system = 'qb-target'
Si el target no esta disponible, cold_bank usa el modo clasico con E.
Quiero usar siempre la tecla E
Configura:
Config.Target.system = 'disabled'
Ajusta si hace falta:
Config.UI.interactKey = 38
Config.UI.interactDistance = 1.6
No puedo abrir un cajero
Comprueba que el modelo este incluido en:
Config.Bank.atmModels
Por defecto se incluyen:
prop_atm_01
prop_atm_02
prop_atm_03
prop_fleeca_atm
Si usas un ATM custom, añade su modelo.
En modo clasico revisa tambien Config.Bank.atmDetectRadius y Config.UI.interactDistance.
No aparece una sucursal
Revisa su entrada en:
Config.Bank.branches
Especialmente:
- Coordenadas.
- Altura
Z. headingsi utilizas target.Config.UI.drawDistance.
La transferencia dice que debo estar en una sucursal
Es el comportamiento esperado.
Por seguridad y diseño, las transferencias solo se permiten cuando la sesion activa es de tipo branch.
Desde un cajero puedes ingresar y retirar, pero no transferir.
No encuentra al destinatario por numero de cuenta
El numero debe existir en cold_bank_accounts y el jugador propietario debe estar conectado.
Ejemplo:
CB000123
Las transferencias offline no estan implementadas en esta version.
Tambien puedes introducir directamente el ID de servidor de un jugador conectado.
¿Por que el destinatario tiene que estar conectado?
Porque cold_bank abona el dinero usando el adaptador economico activo del framework (QBX, QBCore o ESX). La implementacion actual resuelve el destinatario contra jugadores online antes de realizar el abono.
El cajero cobra una cantidad adicional
Revisa:
Config.Bank.atmWithdrawFeePercent
Ejemplo:
Config.Bank.atmWithdrawFeePercent = 2
Al retirar 1000, se descontara tambien la comision configurada.
La comision no se aplica a retiradas desde una sucursal.
Quiero quitar la comision
Config.Bank.atmWithdrawFeePercent = 0
Me dice que la cantidad supera el limite
Revisa:
Config.Bank.maxDeposit
Config.Bank.maxWithdraw
Config.Bank.maxTransfer
Los limites se validan en servidor.
El historial no muestra todos los movimientos
Aumenta:
Config.Bank.historyLimit = 30
Este valor controla cuantos movimientos recientes se solicitan a MySQL para la interfaz.
Los registros antiguos no se borran por cambiar este limite.
¿Donde se guardan los saldos?
Depende del modo:
- QBX: economia de
qbx_core. - QBCore: economia de
qb-core. - ESX: cuentas del jugador en ESX.
- Standalone:
cash_balanceybank_balanceencold_bank_accounts.
cold_bank_accounts tambien guarda el numero de cuenta y nombre auxiliar aunque uses un framework.
Uso standalone y todos empiezan con saldo 0
Es el comportamiento por defecto.
En modo standalone las columnas se crean con:
cash_balance = 0
bank_balance = 0
Si necesitas una economia inicial distinta, debes integrarla con tu sistema o modificar la logica de provisionado/balances.
Aparece "Debes estar cerca de un cajero o una sucursal"
El servidor valida la proximidad en cada operacion.
Puede ocurrir si:
- Te has alejado del punto despues de abrir la UI.
- Las coordenadas de la sucursal son incorrectas.
- La interaccion custom abre el banco demasiado lejos del punto previsto.
Esta validacion es intencionada y evita ejecutar operaciones bancarias remotas mediante eventos manipulados.
Las acciones se bloquean si hago click muy rapido
Revisa:
Config.Bank.actionCooldownMs = 1200
Es un rate limit por jugador y tipo de accion.
No es recomendable bajarlo demasiado.
¿Puedo abrir el banco desde otro recurso?
Si, desde cliente:
exports['cold_bank']:OpenBank()
Este export abre la interfaz como un ATM en la posicion actual. Por ello no habilita transferencias y aplica la comision ATM si esta configurada.
¿Puedo cambiar los textos?
Si. Edita:
locales/es.lua
locales/en.lua
Y selecciona el idioma con:
Config.Locale = 'es'
Config.FallbackLocale = 'en'