Richte QBCore-Skripte mit einem klaren Manifest und einer eindeutigen Abhängigkeitsliste ein. Teste vor dem Produktiveinsatz Konfiguration, Spracheinstellungen, Startreihenfolge und serverseitige Event-Prüfungen.
Deklariere die Ressourcengrenze
Lies Paket-README und Release Notes, bevor du etwas änderst. Übernimm Ressourcenordner, Abhängigkeiten, Konfigurationspfade und mögliche Datenbankmigrationen aus dieser Dokumentation und führe nur dokumentierte Migrationen im Staging aus. Das folgende Manifest ist ein Strukturbeispiel und ersetzt die Paketanleitung nicht.
fx_version 'cerulean'
game 'gta5'
dependency 'qb-core'
shared_script 'config.lua'
shared_script 'locales/en.lua'
client_script 'client/main.lua'
server_script 'server/main.lua'
Passe Konfiguration und Locales sicher an
Prüfe config.lua und mitgelieferte Locale-Dateien vor dem ersten Start. Halte serverspezifische Werte in der Konfiguration, übernimm nur dokumentierte Locale-Keys und bewahre den Upstream-Standard als Vergleichspunkt. Übernimm eine Änderung nur, wenn eine Person dafür verantwortlich ist, sie ein Upstream-Update ohne Core-Patch übersteht und sie vor Production im Staging getestet wurde.
Starte Abhängigkeiten zuerst
Starte in server.cfg qb-core vor dem Skript, das davon abhängt. Installiere den Datenbankadapter, den deine genaue qb-core-Version benötigt, vor qb-core; der Upstream-Core deklariert oxmysql. Prüfe zusätzliche Ressourcenabhängigkeiten separat. Starte jede weitere dokumentierte Abhängigkeit zuerst und nutze ensure erst, nachdem du jeden Ressourcen-Ordnernamen überprüft hast.
ensure qb-core
ensure your-resource
Validiere Events auf dem Server
Behandle Client-Eingaben als nicht vertrauenswürdig. Nutze Network-Events nur, wenn Daten zwischen Client- und Server-Kontext wechseln müssen, und validiere Berechtigungen, Eigentum, Position, Inventar, Geld und Zustand mit serverseitigen Daten, bevor etwas Wertvolles geändert wird. Lasse einen Client ohne Server-Prüfungen keine Belohnung, keinen Preis, keinen Zielspieler und keine privilegierte Aktion wählen.
Teste jede Änderung im Staging
Nutze einen Staging-Server mit repräsentativer Konfiguration und einer entbehrlichen Datenbank. Starte die Ressource aus einem sauberen Neustart, teste ihren Hauptspielerablauf mit einem autorisierten und einem nicht privilegierten Konto, prüfe Serverfehler und wiederhole nach einem Ressourcen-Neustart. Halte vor Production exakte Version und Konfigurationsdelta fest.
Primärquellen: aktueller qb-core-Quellcode, Cfx-Ressourcenmanifest-Dokumentation und Cfx-Leitfaden zur Serversicherheit.
Referenzdokumentation
Quelle: qbcore-fivem/qb-core · Cfx.re — Ressourcenmanifest · Cfx.re — Serversicherheit