Configuración
HZ-Bets tiene dos capas de configuración:
config/config.lua— valores estructurales por defecto + cosas que el panel no expone (puntos de entrada, coordenadas de NPC, la lista de ligas de ESPN, the-odds-api, el tope de pago, la marca y los colores).- Panel de administración de hz_lib (
bridge_schema.lua) — valores de juego en vivo y recargables en caliente que anulan los valores por defecto reflejados. Cámbielos en el juego, sin reiniciar. Mientras ningún admin guarde un campo, el panel muestra y usa el valor de config.lua.
Limites de apuesta y dinero
| Ajuste | Por defecto | Significado |
|---|---|---|
minBet / maxBet | 100 / 50000 | importe min y max por apuesta |
maxPerEvent | 1 | máximo de apuestas abiertas que un jugador mantiene en un evento (relajado para el mercado de goleador de varias selecciones) |
maxTotal | 25 | máximo de apuestas abiertas que un jugador mantiene en todos los eventos |
account | bank | cuenta de dinero del framework (bank / cash) |
Cuotas y riesgo de la banca
| Ajuste | Por defecto | Significado |
|---|---|---|
Config.Odds.DefaultModel | parimutuel | modelo de respaldo para eventos creados a mano |
vig | 0.05 | margen de la banca (5%) descontado del pozo parimutuel |
seedPool | 500 (config.lua) · 1000 (valor por defecto del panel) | semilla virtual por resultado que estabiliza las cuotas iniciales (nunca dinero real). Se usa el valor de config.lua, que es también el que muestra el panel, hasta que un admin guarde otro |
Config.Odds.MinDecimal / MaxDecimal | 1.01 / 20 | suelo y techo de cualquier cuota bloqueada |
Config.Bet.MaxPayoutPerSelection | 1000000 | tope de seguridad de la banca — pago total máximo que la banca llegara a deber sobre un resultado |
MaxPayoutPerSelection es su palanca de seguridad: una apuesta que empujaría la exposición de la banca sobre un resultado por encima de ese valor es rechazada. Ajustelo a lo que su economía pueda absorber. 0 = sin tope (no recomendado con cuotas en vivo).Consulte Mercados y cuotas para saber que significa cada modelo.
Red de seguridad para eventos atascados
Config.AutoVoidStuckAfterSec = 24 * 3600 -- 24h
Un evento LOCKED cuyo resultado nunca llega (un feed de API muerto) se anula automáticamente y se reembolsa cada importe apostado una vez que ha pasado esta cantidad de segundos desde su fecha limite — así el dinero de las apuestas nunca queda congelado para siempre. Establezca 0 para desactivar.
Temas de marca (sin recompilar)
Todo el esquema de color de la interfaz se controla mediante tres colores enviados desde la configuración y aplicados en tiempo de ejecución — cámbielos y la app se recolorea sin recompilar la web, solo con un restart hz_bets.
local ThemePresets = {
red = { Accent = '#B01024', AccentHi = '#850919', Gold = '#D8A64E' }, -- Red preset (default)
navy = { Accent = '#152A52', AccentHi = '#0E1C3A', Gold = '#D2A33C' }, -- Navy premium
cyan = { Accent = '#006C9E', AccentHi = '#00557A', Gold = '#E0A92E' }, -- HZ Cyan
}
Config.Theme = ThemePresets.red -- swap to .navy / .cyan, or set custom hex
Los tres presets están verificados WCAG-AA (blanco sobre acento legible, tinta oscura sobre dorado). El wordmark editable del encabezado usa Config.Brand.
Fuentes
Cada fuente de eventos se activa y se ajusta en Config.Sources. ESPN, OpenLigaDB y RP también tienen sus interruptores en el panel; the-odds-api se configura solo en config.lua. Consulta la página dedicada de Fuentes de eventos.
Idioma
Config.Locale (anulable desde el panel) selecciona el idioma de la interfaz: en, fr, es. Los archivos de idioma están en config/locales/<code>.lua.
