Dokumentation

Pepper Fight Club

Box- und Kampfkarriere mit eigenem Kampfsystem – Story in 12 Kapiteln, Akademie mit 46 Lektionen, Profi-Rangliste, Training, Untergrund mit Razzien, PvP-Arena, Turniere und Wetten für ESX, QBCore und Qbox.

Überblick

Pepper Fight Club macht aus Faustkämpfen eine Karriere: vom Hinterhof in Davis bis zum Weltmeistertitel. Gekämpft wird mit einem eigenen Kampfsystem – jeden Treffer entscheidet der Server. Spieler folgen einer Story in 12 Abschnitten (Prolog, Kapitel 1–10, Epilog), lernen jede Technik in der Akademie, klettern in der Profi-Rangliste nach oben, kämpfen im Untergrund und treten in der Arena gegeneinander an.

Alles läuft über ein Tablet (F7 oder /fightclub). Admins richten die Spielorte einmal mit dem Assistenten /fcsetup ein und verwalten alles Weitere im Admin-Fenster /fcadmin.

Hinweis: Alle mitgelieferten Koordinaten sind Näherungen. Prüfe die Orte einmal auf deinem Server – der Assistent /fcsetup führt dich durch alle 36 Schritte.

Features

  • Eigenes Kampfsystem, jeden Treffer entscheidet der Server: Jab, Cross, Haken, Uppercut, Tritte, Clinch, Deckung, Pendeln, Parade, Konter, Kombos, Ausdauer und Finisher – mit Latenzausgleich für faires PvP
  • 4 Kampfstile: Straßenkampf, Boxen, Kickboxen, Freestyle
  • Niederschläge mit Ringrichter-Zählung und Aufsteh-Minispiel, Runden, Ecke mit Taktik, drei Punktrichter
  • Story-Karriere in 12 Abschnitten mit Szenen, Trainer, Promoter und Rivale – Entscheidungen führen zu 3 verschiedenen Enden
  • Akademie mit 46 Lektionen in 8 Modulen und 4 Prüfungen: Jede Technik lernst du erst, bevor du sie im Kampf einsetzt
  • Profi-Karriere: Rangliste mit 50 Boxern, Lizenzen, Trainingslager, Pressekonferenzen und 5 Titel
  • Untergrund: 8 Schauplätze mit 56 Kämpfern, Bossen, Rivalen, Ruf, Käfig und Gürteln – per Config auch als legale Liga
  • Arena für PvP: Herausforderungen mit Einsatz, Elo-Saisons, Champion-Gürtel, Turniere, Kampfabende und NPC-Schaukämpfe
  • Wetten mit festen Quoten, Spieler-Pool und Live-Wetten in der Ecke
  • Polizei-Razzien mit Hitze je Schauplatz, eingebautem Alarm oder eigener Dispatch-Anbindung
  • 17 Trainingsstationen mit Minispielen, Verletzungen, Ärzte und Ernährung
  • 29 Items für ox_inventory mit fertigen Bildern, Sponsoren, Manager, Cutman, Tages- und Wochenaufgaben, 58 Erfolge
  • Eigenes Gym (6 kaufbare Gyms) und Fight-Teams bis 6 Mitglieder
  • Level 1–100 mit Freischaltungen, Prestige bis Stufe 10 und Signature Move
  • Ersteinrichtungs-Assistent /fcsetup und Admin-Fenster /fcadmin mit 11 Reitern
  • Anzeigen frei anordnen: Position (frei ziehen oder fester Platz) und Größe jeder Anzeige im Admin-Fenster
  • Karriere pausieren: Ziel und Wegpunkte verschwinden, bis der Spieler weitermacht
  • Deutsch & Englisch, Config, Sprachdateien, Bridges und Installationsdateien offen

Voraussetzungen

Abhängigkeit Pflicht/optional Wofür Link
FiveM-Server-Build ≥ 7290 Pflicht in fxmanifest.lua als /server:7290 hinterlegt https://runtime.fivem.net/artifacts/fivem/build_server_windows/master/
OneSync Pflicht serverseitiges Kampfsystem, Instanzen, Zuschauer https://docs.fivem.net/docs/scripting-reference/onesync/
ESX Legacy, QBCore oder Qbox Pflicht (eins davon) Geld, Jobs, Namen, Admin-Gruppen – Config.Framework = 'auto' erkennt es https://github.com/esx-framework/esx_core
ox_lib Pflicht UI-Bausteine, Callbacks https://github.com/overextended/ox_lib
oxmysql Pflicht Datenbank (MySQL/MariaDB, 18 Tabellen fc_*) https://github.com/overextended/oxmysql
ox_inventory Pflicht 29 Items (Tablet, Bandagen, Handschuhe …) https://github.com/overextended/ox_inventory
ox_target optional Interaktion mit Figuren – ohne läuft es über Hinweis + Taste E https://github.com/overextended/ox_target
RTX Gym (Realistic oder Basic Gym System) optional Training im RTX-Gym stärkt die Fight-Club-Werte, Kämpfe geben RTX-Combat-XP (Config.RtxGym). Beim Basic Gym (rtx_gym) liest der Fight Club die Werte über exports.rtx_gym:GetAllStats und übernimmt den Trainingszuwachs (beim ersten Mal auch vorhandene Werte, gedeckelt; Config.RtxGym.ToFightClub.basic) –

Kampf-Animationen inklusive: Der Fight Club bringt überarbeitete Nahkampf-Animationen mit (Wolf Fire Modz, FiveM-Paket von Popcorn Roleplay, mit Freigabe eingebunden). Sie ersetzen die GTA-Animationen für alle unbewaffneten Kämpfe auf dem Server und sind nur in der Third-Person-Ansicht sichtbar – im Kampf wird die Ego-Perspektive gesperrt (Config.CombatAnimations). Läuft schon ein anderes Nahkampf-Animationspaket, eins davon entfernen. Credits und Lizenz: install/LICENSE-ANIMATIONS.txt.

Installation

  1. Ressource aus dem Cfx.re Portal (Granted Assets) herunterladen
  2. Nach resources/[pepper]/pepper_fightclub entpacken – nicht umbenennen
  3. Items eintragen: den Inhalt von install/ox_items_de.lua (bzw. install/ox_items_en.lua) in ox_inventory/data/items.lua einfügen – innerhalb der Tabelle, direkt vor der letzten schließenden }. Kein zweites return { einfügen
  4. Bilder kopieren: alle Bilder aus install/images/ nach ox_inventory/web/images/
  5. In der server.cfg nach den Abhängigkeiten starten und das Admin-Recht vergeben:
ensure oxmysql
ensure ox_lib
ensure es_extended        # bzw. qb-core / qbx_core
ensure ox_inventory
# ensure ox_target        # optional – ohne ox_target interagieren Spieler mit E
ensure pepper_fightclub

add_ace group.admin pepper.fightclub.admin allow
  1. Datenbank: Die 18 Tabellen (fc_*) legt das Script beim Start selbst an. Ohne CREATE-Recht vorher install/pepper_fightclub.sql importieren
  2. Server starten – in der Konsole erscheint eine grüne Zeile Pepper Fight Club v… gestartet (Framework: …)
  3. Im Spiel als Admin /fcsetup ausführen und die Spielorte festlegen (siehe Ersteinrichtung)

Erster Test

  1. Als Admin /fcsetup starten und mindestens die ersten Schritte (Hinterhof) mit E setzen – oder mit X pausieren
  2. F7 (oder /fightclub) drücken: das Tablet öffnet sich mit Profil, Story und Akademie
  3. Zur Startfigur am Hinterhof gehen und die Karriere beginnen – der erste Kampf zeigt Tastenhilfe und Kampf-Anzeige
  4. Mit /fcquit brichst du einen Kampf ab, mit /fcwipe setzt du deinen Test-Spielstand zurück

Konfiguration

Datei Inhalt
config/config.lua Sprache, Framework, Admin-Recht, Befehle, Tasten, Interaktion, Story, Geld, Dispatch, Bewegungsmodus
config/combat.lua Kampfsystem, Stile, Techniken, Kombos, Finisher, Regeln, KI
config/fighters.lua · config/venues.lua Gegner und Kämpfe · Untergrund-Schauplätze
config/academy.lua · config/pro.lua Lektionen und Prüfungen · Profi-Rangliste, Titel, Trainingslager
config/training.lua · config/health.lua Stationen und Gyms · Verletzungen, Ernährung, Doping
config/arena.lua · config/betting.lua PvP, Saison, Turniere, Kampfabende · Wetten
config/underground.lua Hitze, Razzien, Flyer, Legal-Modus
config/items.lua · config/economy.lua Items · Händler, Sponsoren, Aufgaben, Erfolge, Gym, Team, Prestige
config/locations.lua · config/setup.lua Orte und Ringe · Ersteinrichtung
config/story.lua · config/story_late.lua Story-Kapitel und Szenen
config/progression.lua Level-Kurve, Werte, Ränge
config/server.lua Discord-Webhook für Logs, Versionshinweis, Schutzgrenzen gegen Makros und Absprachen (ServerConfig.Protection) – wird nie an Clients gesendet
locales/de · locales/en alle Texte

Wichtige Optionen:

Option Standard Bedeutung
Config.Locale 'de' Sprache (de / en), gilt für alle Spieler
Config.Framework 'auto' auto, esx, qbcore, qbox, standalone
Config.AdminAllowCommandAce false true = jeder mit ACE command ist Fight-Club-Admin
Config.Commands fightclub, fcquit, … Namen der Spieler-Befehle
Config.Keys siehe Steuerung Tasten im Kampf (FiveM-Steuerungsnummern) · tablet = Vorgabe F7
Config.Interaction 'auto' ox_target, wenn gestartet, sonst Hinweis + E · 'target' · 'key'
Config.MovementMode 'strafe' Bewegung im Kampf: 'strafe' = Kampfhaltung, Blick zum Gegner · 'assist' = normale Bewegung, Blick wird weich zum Gegner gedreht
Config.Story.Enabled true Story-Karriere an / aus
Config.Story.Instanced true Szenen und Kapitelkämpfe in eigener Instanz (Routing-Bucket)
Config.Story.AllowSkip true Szenen mit BACKSPACE überspringen
Config.Story.StartNpc · StartLoc 'lil_d' · 'backyard_promoter' Figur und Ort, an dem die Karriere beginnt · StartNpc = nil = auch im Tablet startbar
Config.Story.AllowPause true Spieler dürfen die Karriere pausieren (/fcpause, Tablet, Pops)
Config.Hud.Layout {} Startwerte für Position und Größe der Anzeigen (im Spiel: /fcadmin → Anzeigen)
Config.Underground.enabled true false = Legal-Modus: keine Hitze, keine Razzien, kein Schwarzgeld, „Liga“ statt „Untergrund“
Config.Combat.AutoSpectate false true = alle Spieler im Umkreis bekommen das Kampf-HUD automatisch (auf RP-Servern nicht empfohlen)
Config.Combat.SpectateHint true Spieler in der Nähe eines Kampfes bekommen den Hinweis auf /fcwatch
Config.Combat.RingWalls true unsichtbare Wände an Ringen mit Seilen · je Ring abschaltbar mit walls = false
Config.Money.account 'cash' Konto für Börsen (cash / bank)
Config.Money.black 'auto' Schwarzgeld: ESX-Konto black_money, bei QBCore / Qbox Item markedbills · 'account', 'markedbills', 'cash'
Config.Economy.PayoutAccount · PayAccount 'bank' · 'cash_then_bank' Auszahlungen der Wirtschaft · Zahlweise bei Käufen
Config.Dispatch.mode 'builtin' Razzia-Alarm: 'builtin' = Meldung + Kartenpunkt bei Polizisten im Dienst · 'event' = eigenes Ereignis · 'none'
Config.Dispatch.jobs police, sheriff Jobs, die als Polizei zählen
Config.Setup.Enabled · AutoPrompt true · true Ersteinrichtung an · Admins daran erinnern
Config.Progression.GlobalXpMultiplier 1.0 Tempo des Aufstiegs
Config.Economy.PayoutMultiplier 1.0 skaliert Auszahlungen der Wirtschaft (Sponsoren, Aufträge, Aufgaben, Erfolge, Gym)

Fast jedes Modul hat einen eigenen Schalter Enabled (z. B. Config.Training, Config.Arena, Config.Betting, Config.Pro). Nach jeder Änderung die Ressource neu starten.

Ersteinrichtung

Beim ersten Start – solange noch kein Ort gesetzt ist – erinnert das Script jeden Admin beim Einloggen und danach alle 10 Minuten an die offene Einrichtung. Gestartet wird sie mit /fcsetup.

Der Assistent fragt 36 Orte in der Reihenfolge des Spielverlaufs ab: Hinterhof und Muscle Beach, die Untergrund-Schauplätze, die Hallen der Profi-Karriere, die Arena, die Trainings-Gyms, Laden und Händler, die 6 Spieler-Gyms und die Laufstrecken. Links am Bildschirm steht der aktuelle Schritt, du kannst dabei normal laufen.

Taste Funktion
E Ort hier setzen (deine Position und Blickrichtung)
G zum Vorschlag teleportieren
BACKSPACE Schritt überspringen – der Vorschlag bleibt
X Pause – mit /fcsetup geht es beim selben Schritt weiter
  • Mitziehen: Ein Ring nimmt alles mit, was zu ihm gehört – Figuren, Stationen, Requisiten im Umkreis. Laufstrecken drehen sich mit dem Startpunkt mit. Bei Ringen zeigt eine rote Vorschau Größe und Ausrichtung; stell dich in die Mitte und schau in Ringrichtung
  • Von Hand gesetzte Orte überschreibt der Assistent nie
  • /fcsetup restart beginnt von vorn, /fcsetup stop pausiert
  • Später: /fcadmin → Reiter Einrichtung zeigt alle Schritte mit Status und setzt einzelne Schritte neu. Einzelne Orte änderst du unter /fcadmin → Orte (hinteleportieren, „Hierher“ setzen, zurücksetzen)
  • Export: /fcexport (oder Export im Reiter Orte) gibt alle geänderten Orte als Lua-Zeilen in der Server-Konsole und in F8 aus – zum Übernehmen in config/locations.lua

Gesetzte Orte liegen in der Datenbank und gelten sofort, ohne Neustart.

Anzeigen anordnen

/fcadmin → Reiter Anzeigen legt Position und Größe der Anzeigen für alle Spieler fest: Kampf-Anzeige, Story-Ziel, Meldungen, Tastenhilfe, Level-Up, Pratzen & Lauf, Trainingsstationen, Live-Wetten und Razzia-Hinweis. In der Liste änderst du die Größe in 10-%-Schritten. Editor öffnen zeigt alle Anzeigen als Rahmen über dem Spiel: Rahmen frei ziehen (rastet in der Bildmitte ein), einen von 9 festen Plätzen wählen, Größe per Regler oder Mausrad (50–200 %), dann Speichern. Die Anordnung liegt in der Datenbank und gilt sofort. Startwerte für neue Server stehen in Config.Hud.Layout.

Spieler-Anleitung

Tablet

F7 oder /fightclub öffnet das Tablet. Die Taste kann jeder Spieler in den GTA-Einstellungen unter Tastenbelegung → FiveM umlegen. Ab Level 2 bekommt jeder Spieler einmal das Item Fight-Club-Tablet; Benutzen öffnet es ebenfalls.

Am Anfang gibt es die Reiter Start, Karriere, Ausbildung, Profil, Steuerung. Mit dem Level kommen Training, Box-Rec, Untergrund, Arena, Wetten, Hitze, Laden, Verträge, Aufgaben, Gym & Team und Erfolge dazu. Der Reiter Start zeigt die nächsten Freischaltungen.

Steuerung im Kampf

Taste Funktion
Linke Maustaste leichter Schlag (Jab / Schwinger)
Rechte Maustaste schwerer Schlag (Cross / Heumacher)
A / D + linke Maustaste Haken links / rechts
S + linke Maustaste Körpertreffer
S + rechte Maustaste Uppercut
STRG (halten) Deckung
LEERTASTE Ausweichen · Aufstehen nach einem Niederschlag
A / D + LEERTASTE Pendeln
F Schubser / Spezialschlag, im Kickboxen Tritte
G Clinch (Freestyle)
Q Provozieren
E Finisher, wenn das Adrenalin voll ist · in Dialogen: weiter
BACKSPACE Szene überspringen

Welche Technik eine Taste auslöst, hängt vom Stil und von den gelernten Lektionen ab – der Reiter Steuerung im Tablet zeigt die Belegung deines Servers. /fcquit gibt einen laufenden Kampf auf.

Story

Die Karriere beginnt im Hinterhof in Davis und führt über Delgado's Boxing Gym an der Muscle Beach bis zum WM-Kampf. Prolog, 10 Kapitel und Epilog erzählen die Geschichte mit Szenen, Gesprächen, Nachrichten im Tablet und Kapitelkämpfen. Entscheidungen – etwa zum Untergrund, zu Doping oder zu Schiebung – verändern die Ehre und führen zu einem von 3 Enden. Zwischen den Kapiteln braucht es Level; der Reiter Karriere zeigt das nächste Ziel und was du bis dahin tun kannst. Szenen am Gym starten nicht von selbst – dort heißt es „[E] Story fortsetzen“.

Gestartet wird die Karriere bei Lil' D im Hinterhof (Kartenpunkt „Karriere beginnen“), nicht im Tablet. Wer gerade etwas anderes vorhat, pausiert die Karriere im Tablet, bei Pops oder mit /fcpause: Ziel, Wegpunkte und Szenen verschwinden, bis man fortsetzt – der Fortschritt bleibt gespeichert.

Akademie

Im Reiter Ausbildung liegen 46 Lektionen in 8 Modulen: Drills, Pratzen, Rhythmus, Laufstrecken, Sparring mit Ziel und Regelkunde. Eine Technik ist erst im Kampf nutzbar, wenn ihre Lektion bestanden ist. Dazu kommen 4 Prüfungen: Aufnahmetest, Amateur-Lizenz (ab Level 8), Profi-Lizenz (ab Level 35) und Meisterprüfung (ab Level 98), ein Tagesplan mit 3 Aufgaben und das Vertrauen deiner Trainer.

Box-Rec und Profi-Karriere

Der Reiter Box-Rec zeigt deine Bilanz, die Rangliste mit 50 Boxern und die Angebote der Promoter. Siege bringen dich nach oben, die Börse richtet sich nach deinem Rang. Mit dem Rang öffnen sich die 5 Titel: Los Santos, San Andreas, Nordamerika, Weltmeister und Vereinigter Weltmeister – mit Trainingslager, Pressekonferenz und Einlauf.

Training und Gesundheit

17 Trainingsstationen (Sandsack, Liegestütze, Laufstrecken, Schattenboxen und mehr) in den Gyms Muscle Beach, Hinterhof-Gym und Keller-Gym verbessern deine Werte mit einem Minispiel; jede Einheit kostet Trainingsenergie. Kämpfe hinterlassen Blessuren und manchmal Verletzungen – sie heilen mit der Zeit, beim Arzt oder mit Items wie Eisbeutel und Verband.

Untergrund

8 Schauplätze: Hinterhof, Parkhaus, Kellerloch, Hafenhalle, Schrottplatz-Käfig, Steinbruch, Dachterrasse VIP und Die Grube. Am Promoter nimmst du Kampfangebote an, an jedem Schauplatz gibt es eine Rangliste, Ruf, einen Boss, Rivalen und einen Gürtel. Börsen werden hier als Schwarzgeld ausgezahlt (einstellbar). Jeder Kampf erhöht die Hitze des Schauplatzes – wird sie zu hoch, kommt eine Razzia: Nach der Vorwarnung bleibt Zeit, die Zone zu verlassen; wer bleibt, zahlt eine Strafe und darf eine Weile nicht in den Untergrund. Polizisten im Dienst können an Untergrund-Schauplätzen nicht kämpfen oder wetten.

Der Hinterhof ist nach dem Prolog offen, alle weiteren Schauplätze öffnen sich in Kapitel 4, wenn Sal Marino sein Angebot macht. Im Legal-Modus (Config.Underground.enabled = false) heißt der Untergrund „Liga“: keine Hitze, keine Razzien, und die Story erzählt Kapitel 4 passend dazu – Sal bietet seine eigene Show-Liga an statt illegaler Kämpfe.

Arena

In der Arena kämpfen Spieler gegeneinander: freie Herausforderungen (ab Level 5, optional mit Einsatz), Ranglisten-Kämpfe mit Elo-Wertung und Monatssaison (ab Level 20), Warteschlange mit NPC-Gegner, wenn niemand frei ist, Turniere mit 4, 8 oder 16 Plätzen, Kampfabende mit Fight-Card und ein Champion-Gürtel. Fremden öffentlichen Kämpfen und Schaukämpfen schaust du mit /fcwatch zu.

Wetten

Wetten gehen nur vor Ort: beim Buchmacher, im Tablet oder mit /fcbet in der Nähe eines Rings. Kämpfe mit NPCs haben feste Quoten, PvP-Kämpfe einen Spieler-Pool. Mit dem Level kommen Methoden-, Live- und Rundenwetten sowie höhere Limits dazu. Wetten geben keine XP.

Wirtschaft

Im Sportladen gibt es Handschuhe, Schutzausrüstung, Essen und Erste Hilfe, beim Untergrund-Händler mehr. Ausrüstung nutzt sich ab und lässt sich im Laden reparieren. Dazu kommen Sponsoren-Verträge, Manager, Cutman, Promoter-Aufträge, Tages- und Wochenaufgaben, 58 Erfolge mit wählbaren Titeln, ab Level 70 ein eigenes Gym (kaufen oder mieten, mit Upgrades) und ab Level 72 ein Fight-Team.

Prestige

Ab Level 100 startest du per Prestige wieder bei Level 1 – deine Techniken bleiben, du bekommst einen Stern und Punkte für kleine Vorteile. Bis zu 10 Prestige-Stufen sind möglich. Auf Level 100 wählst du außerdem deinen Signature Move. Die Hall of Fame nimmt Spieler mit Level 100, Weltmeistertitel oder Prestige auf.

Befehle und Rechte

Befehle

Spieler

Befehl Funktion
/fightclub (F7) Tablet öffnen
/fcquit laufenden Kampf oder laufende Lektion aufgeben
/fcduel <ID> Freundschaftskampf anbieten (Spieler in der Nähe)
/fcaccept Freundschaftskampf annehmen
/fcwatch öffentlichem Kampf oder Schaukampf in der Nähe zuschauen – nochmal = aufhören
/fcpause Karriere pausieren / fortsetzen
/fcchallenge <ID> [Einsatz] Ranglisten-Herausforderung · /fcchallenge frei <ID> [Einsatz] freie Herausforderung · /fcchallenge ja / nein antworten
/fcqueue Warteschlange am Arena-Schauplatz an / aus
/fcbet Wettschein für Kämpfe in der Nähe (Taste frei belegbar)

Die Namen stehen in Config.Commands (config/config.lua) und Config.Arena.Commands (config/arena.lua).

Admin

Befehl Funktion
/fcadmin Admin-Fenster: Orte, Anzeigen, Einrichtung, Spieler, Kämpfe, Profi-Karriere, Schauplätze, Gesundheit, Arena, Untergrund, Wirtschaft
/fcsetup Ersteinrichtung starten / fortsetzen · restart von vorn · stop Pause
/fcsetpos <ort> Ort auf die eigene Position setzen
/fcresetpos <ort> Ort auf den Config-Wert zurücksetzen
/fctp <ort> zu einem Ort teleportieren
/fcorte alle Ortsnamen anzeigen (* = geändert)
/fcexport geänderte Orte als Lua-Zeilen ausgeben (Server-Konsole + F8)
/fcxp <menge> [ID] XP geben
/fclevel <level> [ID] Level setzen
/fcunlock <technik|all> [ID] Techniken freischalten
/fcstory reset | <kapitel> [schritt] [ID] Story zurücksetzen oder in ein Kapitel springen (z. B. chapter5)
/fcfight <kampf> einen Kampf aus Config.Fights starten
/fcexam [prüfung] [ID] Prüfung zurücksetzen (Standard: Aufnahmetest)
/fcwipe [ID] alle Fight-Club-Daten eines Spielers löschen
/fcmove strafe|assist Bewegungsmodus im Kampf für dich umschalten (Test)
/fcanimstyle [overhaul|classic] Kampf-Animationsstil für dich umschalten (Vergleich; ohne Angabe wechseln)
/fcengine [native|scripted] Kampf-Motor für neue Kämpfe: GTA-Nahkampf oder eigenes Kampfsystem (bis zum Neustart)
/fcdebug Kampf-Debug-Anzeige an / aus

Ohne [ID] gilt ein Befehl für dich selbst. Admin-Befehle prüft der Server bei jedem Aufruf.

Rechte

Admin ist, wer eine dieser Bedingungen erfüllt:

  • ACE-Recht pepper.fightclub.admin (Config.AdminAce) – der verlässliche Weg auf jedem Framework
  • eine Framework-Gruppe aus Config.AdminGroups (Standard admin, superadmin, god)
  • nur wenn Config.AdminAllowCommandAce = true: jeder mit dem allgemeinen ACE-Recht command (Standard aus – das haben auf vielen Servern auch Moderatoren)
add_ace group.admin pepper.fightclub.admin allow
add_ace identifier.license:DEINE_LIZENZ pepper.fightclub.admin allow

Für Entwickler

Exports

-- Server
exports.pepper_fightclub:getProfile(src)        -- Profil (Name, Level, Rang, Werte, Bilanz, Ehre, Stile, Techniken) oder nil
exports.pepper_fightclub:isInFight(src)         -- true, solange der Spieler kämpft
exports.pepper_fightclub:getProRank(src)        -- Platz in der Profi-Rangliste (1–50, 51 = ohne Rang) oder nil
exports.pepper_fightclub:getProLicense(src)     -- 'none' | 'amateur' | 'pro' oder nil
exports.pepper_fightclub:openBetting(src, venue) -- Wettschein für einen Spieler öffnen

-- Client
exports.pepper_fightclub:openBetting(venue)     -- Wettschein öffnen (venue = Schauplatz-ID oder nil = Kämpfe in der Nähe)

useItem ist der Export für ox_inventory: Die Item-Vorlagen in install/ tragen ihn schon ein (server = { export = 'pepper_fightclub.useItem' }). Selbst aufrufen musst du ihn nicht.

Hooks für Jail- und Polizei-Scripts

Server-Ereignisse – mit AddEventHandler zuhören, nicht mit RegisterNetEvent:

AddEventHandler('pepper_fightclub:raid', function(data) end)
-- data = { venue, phase, coords, police, players = { src, … } }
AddEventHandler('pepper_fightclub:arrestZoneLeft', function(src, venue) end)
-- Spieler hat die Zone rechtzeitig verlassen
AddEventHandler('pepper_fightclub:raidCaught', function(src, venue, info) end)
-- Spieler war bei Razzia-Ende noch in der Zone · info = { fine, police, banUntil, late }

Mit Config.Dispatch.mode = 'event' ruft das Script bei einem Alarm TriggerEvent(Config.Dispatch.event, data) auf (Standard pepper_fightclub:dispatch, data = { coords, title, message, code }) – dort bindest du dein Dispatch-Script an. Ob die Polizei bei einer Razzia automatisch Geldstrafen verteilt, regelt Config.Underground.Raid.fineWithPolice (Standard false: Mit echter Polizei übernimmt sie oder dein Jail-Script).

Die internen Ereignisse zwischen den Modulen (Fight.Bus) sind keine öffentliche Schnittstelle und können sich ändern.

Framework-Anbindung

bridge/server/esx.lua, qbcore.lua, qbox.lua und standalone.lua liefern Geld, Jobs, Namen und Admin-Gruppen, bridge/client/frameworks.lua die Benachrichtigungen. Alle Bridges sind offen.

Fehlerbehebung

Problem Lösung
Ressource startet nicht, die Konsole nennt eine fehlende Abhängigkeit oxmysql, ox_lib und ox_inventory müssen vor pepper_fightclub starten, OneSync muss an sein, Server-Build 7290 oder neuer
Konsole: „Datenbank konnte nicht vorbereitet werden“ oxmysql prüfen oder install/pepper_fightclub.sql von Hand importieren
/fcadmin: keine Berechtigung ACE-Zeile aus „Rechte“ eintragen und den Server neu starten
Items ohne Bild oder unbekannt Schritt 3 und 4 der Installation prüfen, dann ox_inventory neu starten
Figur steht in einer Wand, Ring liegt schief /fcadmin → Orte → „Hierher“, oder den Schritt unter Einrichtung neu setzen
Kein „[E]“ an einer Figur Config.Interaction prüfen; mit ox_target erscheint stattdessen das Target-Menü
/fcexport gibt nichts aus es wurden noch keine Orte geändert

FAQ

Wer darf /fcadmin und /fcsetup benutzen?

Wer das ACE-Recht pepper.fightclub.admin hat oder in einer Gruppe aus Config.AdminGroups ist. Das allgemeine command-Recht zählt nur mit Config.AdminAllowCommandAce = true.

Die Ressource startet nicht – was prüfe ich zuerst?

oxmysql, ox_lib und ox_inventory müssen vor pepper_fightclub starten, OneSync muss an sein und der Server-Build 7290 oder neuer. Die Konsole nennt die fehlende Abhängigkeit beim Namen.

Die Datenbank-Tabellen fehlen.

Die 18 Tabellen (fc_*) legt das Script beim Start selbst an. Hat dein Datenbank-Benutzer kein CREATE-Recht, importierst du install/pepper_fightclub.sql von Hand.

Items sind unbekannt oder haben kein Bild.

Inhalt von install/ox_items_de.lua bzw. install/ox_items_en.lua innerhalb der Tabelle in ox_inventory/data/items.lua einfügen, die Bilder aus install/images/ nach ox_inventory/web/images/ kopieren und ox_inventory neu starten.

Die Orte passen nicht zu meiner Map.

Die mitgelieferten Koordinaten sind Näherungen. Mit /fcsetup setzt du alle Orte der Reihe nach, mit /fcadmin → Orte einzelne. Gespeichert wird in der Datenbank; mit /fcexport übernimmst du sie in die Config.

Geht es ohne ox_target?

Ja. Ohne ox_target steht an Figuren ein Hinweis, Spieler interagieren mit E (Config.Interaction = 'auto').

Kann ich die Tasten im Kampf ändern?

Ja, in Config.Keys (config/config.lua) mit FiveM-Steuerungsnummern – z. B. Deckung 36 (STRG) oder Ausweichen 22 (Leertaste). Die Tablet-Taste F7 ändern Spieler selbst in den GTA-Einstellungen unter Tastenbelegung → FiveM.

Kann ich den Untergrund abschalten?

Ja: Config.Underground.enabled = false ist der Legal-Modus – keine Hitze, keine Razzien, kein Schwarzgeld, „Liga“ statt „Untergrund“. Die Story-Szenen erzählen weiterhin vom Untergrund.

Was passiert mit der Polizei?

Polizisten im Dienst können an Untergrund-Schauplätzen nicht kämpfen oder wetten, außer Dienst schon (Config.Underground.AllowOffDuty). Bei einer Razzia alarmiert das Script die Polizei – eingebaut oder über dein Dispatch-Script (Config.Dispatch.mode). Sind zu wenige Polizisten im Dienst, läuft eine „Razzia light“ ohne echte Polizei.

Wie stelle ich das Tempo des Aufstiegs ein?

Config.Progression.GlobalXpMultiplier (Standard 1.0) skaliert alle XP, Config.Economy.PayoutMultiplier die Auszahlungen von Sponsoren, Aufträgen, Aufgaben, Erfolgen und Gyms.

Wie ändere ich Texte oder stelle auf Englisch um?

Config.Locale = 'en' in config/config.lua – die Sprache gilt für alle Spieler. Alle Texte stehen offen in locales/de/*.json und locales/en/*.json, die Items in install/ox_items_en.lua.

Wie sieht es mit der Performance aus?

Den Kampf rechnet der Server nur, solange ein Kampf läuft. Figuren, Ringe und Marker werden lokal und nach Entfernung erzeugt. Einen gemessenen resmon-Wert nennen wir erst nach der Messung.

Was passiert bei einem Restart?

Laufende Kämpfe und Szenen enden. Level, Story, Lektionen, Orte, Rangliste und Items liegen in der Datenbank bzw. im Inventar.

Wie spiele ich ein Update ein?

Ordner pepper_fightclub ersetzen und deine Änderungen an config/ und locales/ vorher sichern. Gesetzte Orte und HUD-Anordnung liegen in der Datenbank und bleiben erhalten; neue Items stehen im CHANGELOG.md.

Support

Ticket im Discord öffnen: https://discord.gg/6NaFJWKDYu (Kategorie „Script Support“) – den Kauf vorher mit /verify verknüpfen. Auf Deutsch oder Englisch.

Permanent auf dem Dev-Server von Pepper Scripts getestet.

Changelog

Aktuelle Version: 1.0.4 (2026-10-25). Alle Änderungen stehen auf der Updates-Seite und in CHANGELOG.md in der Ressource.


Fehler gefunden? Melde ihn im Discord.