Features & Details
**Step into the ring. Feel every punch.**
CY-Boxing is a complete prize-fight system for RedM servers running VORP.
Built around timing, stamina and consequences β not arcade mini-games.
No `ox_target`. No client-trust. No half-finished features.
---
## β Why CY-Boxing?
- β **Server-authoritative** damage calculation β anti-cheat safe
- β Native RedM prompts (no `ox_target` dependency)
- β Complete round / KO / TKO system with get-up mechanic
- β Built-in betting, persistent stats & full fight history
- β Combo system, ring-edge bonus, stamina exhaustion lock
- β Multi-language out of the box (DE / EN)
- β Multiple rings supported per server
- β Modular code structure β clean and maintainable
---
## π― Features
### Combat System
- Custom fist-fight (RedM default combat disabled in fights)
- Head vs. body hit zones via camera pitch
- Stamina system with regen, exhaustion lock & low-stamina cooldown
- Combo system (3 hits = damage bonus)
- Ring-edge / corner damage bonus
- HP-scaled knockdown chances (no random KOs at full HP)
### Fight Flow
- Configurable rounds, round time, break time, prep countdown
- Knockdown counter per round
- 3 knockdowns = Technical KO
- W/A/S/D get-up mini-mechanic during the count
- Decision on points if no KO occurs
### Economy & Persistence
- Built-in betting system with payouts & house fee
- Persistent W/L/KO stats per player (oxmysql)
- Full fight history with timestamps
- Auto-creates DB tables on first start
### Ring & UI
- Native RedM prompts (G / F / R / B)
- Multiple rings per server (Valentine, Saint Denis included)
- Live NUI HUD: round, time, scores, stamina
- Referee system (VORP job or admin)
- Camera shake, optional blood, sound FX
---
## βοΈ Fully Configurable
Every value is exposed in `shared/config.lua`. Examples:
**Fight settings**
```lua
Config.Fight = {
Rounds = 3, -- Number of rounds (3-5 recommended)
RoundTime = 90, -- Seconds per round
BreakTime = 10, -- Break between rounds
PrepTime = 5, -- Countdown before fight start
KnockdownsPerTKO= 3, -- Knockdowns in one round for TKO
CountdownTime = 10, -- Counting time on knockdown
GetUpKeyPresses = 8, -- Key presses needed to get up
GetUpTimeWindow = 8000, -- Time (ms) to get up
}
Combat / Damage / Stamina
Config.Combat = {
BaseDamageHead = 8,
BaseDamageBody = 4,
StaminaMax = 100,
StaminaPerPunch = 8,
StaminaRegen = 4,
-- HP-scaled knockdown chance (no random KOs at full HP)
KnockdownChanceHeadMax = 0.45,
KnockdownChanceBodyMax = 0.20,
KnockdownHpThreshold = 0.85,
-- Combo system: 3 consecutive hits = damage bonus
ComboBonusAt = 3,
ComboBonusDmg = 0.25, -- +25% on combo hit
ComboWindowMs = 2000,
-- Corner penalty: more damage when hit at the ropes
RingEdgeRatio = 0.67,
RingEdgeBonus = 0.20, -- +20% damage in edge zone
}
Scoring
Config.Scoring = {
PointsPerHit = 1,
PointsPerHeadHit = 2,
PointsPerKnockdown = 10,
ActivityBonus = 5,
}
Betting
Config.Betting = {
Enable = true,
MinBet = 5,
MaxBet = 500,
HouseFee = 0.05, -- 5% house fee
Currency = "money", -- "money" or "gold"
}
Multiple rings out of the box
Config.Rings = {
{ id = "valentine_ring", label = "Valentine Boxing Ring", ... },
{ id = "saintdenis_ring", label = "Saint Denis Underground", ... },
-- Add as many as you want
}
π₯ Showcase / Trailer: