FAQ

Allgemein

Ist das Skript mit meinem Framework kompatibel?

HZ-Weather unterstuetzt QBCore, ESX, QBX und den Standalone-Modus. Das Framework wird beim Start automatisch erkannt — keine manuelle Konfiguration erforderlich.

Funktioniert das Skript mit OneSync?

Ja. HZ-Weather ist vollstaendig kompatibel mit OneSync und OneSync Infinity. Die Wettersynchronisation nutzt GlobalState und State Bags fuer optimale Leistung.

Kann ich es zusammen mit einem anderen Wetterskript verwenden?

Nein. Sie muessen alle anderen Wetterskripte deaktivieren, bevor Sie HZ-Weather verwenden. Zwei aktive Wetterskripte fuehren zu visuellen und Synchronisationskonflikten.

Zu stoppende Skripte: vSync, qb-weathersync, cd_easytime, esx_weather usw.

HZ-Weather ersetzt automatisch qb-weathersync und cd_easytime ueber die provide-Direktive und stellt deren exports fuer Abwaertskompatibilitaet bereit.

Verbraucht das Skript viele Ressourcen?

Nein. HZ-Weather ist auf minimalen Einfluss optimiert: 0,00 ms im Ruhezustand clientseitig, ~0,08 ms bei aktiven Ereignissen (Tornado, Tsunami). Der serverseitige Einfluss ist vernachlaessigbar.

Welche Abhaengigkeiten gibt es? Erforderlich: Optional: xsound für die Tsunami-Sirenen.

Kein Framework erforderlich — das Skript funktioniert standalone.


Installation

Fehler "Asset not found" beim Start

Pruefen Sie:


  1. Der Ordner heisst exakt hz_weather

  2. Das Skript befindet sich in Ihrem resources/-Verzeichnis (z. B. resources/[standalone]/hz_weather/)

  3. Ihre Lizenz ist aktiv auf keymaster.fivem.net

  4. Sie verwenden dasselbe FiveM-Konto, das mit Ihrem Tebex-Kauf verknuepft ist


Fehler "Framework not detected"

Das ist normal, wenn Sie standalone (ohne Framework) arbeiten. Das Skript verwendet dann den Standalone-Modus.

Falls Sie ein Framework haben, stellen Sie sicher, dass es_extended oder qb-core in Ihrer server.cfg mit ensure vor hz_weather geladen wird.

Datenbanktabellen werden nicht erstellt

Hz-Weather erstellt seine Tabellen nicht selbst: Importieren Sie sql/install.sql vor dem ersten Start in Ihre Datenbank. Ohne die Tabellen zeigt die Konsole Please import sql/install.sql into your database. Falls der Import fehlschlägt:


  1. Prüfen Sie, ob oxmysql läuft und korrekt konfiguriert ist

  2. Überprüfen Sie, ob Ihr Datenbankbenutzer die CREATE TABLE-Berechtigung hat

  3. Importieren Sie die Datei erneut: Sie kann mehrmals ohne Fehler importiert werden


Wie aktualisiere ich das Skript?
  1. Laden Sie die neueste Version von Keymaster herunter
  2. Sichern Sie Ihren config/-Ordner
  3. Ersetzen Sie alle Dateien ausser config/
  4. Pruefen Sie den Changelog auf neue Konfigurationsparameter
  5. Starten Sie die Ressource neu: ensure hz_weather
Konfigurations-Overrides in der Datenbank werden automatisch beibehalten.

Administrationspanel

Das Admin-Panel oeffnet sich nicht
  1. Öffnen Sie es mit /weather, oder mit /hzpanel und dann dem Wetter-Modul
  2. Prüfen Sie, ob Sie Admin-Zugriff haben: die ACE admin (Config.AdminPermission), die Admin-Gruppe Ihres Frameworks, die ACE weather.admin oder eine hz_lib-Rolle mit dem Recht manage auf hz_weather
   add_ace group.admin weather.admin allow
  1. Wird der Zugriff verweigert, nennt die Serverkonsole die fehlende Berechtigung
  2. Versuchen Sie, die Ressource neu zu starten: ensure hz_weather
Das Panel oeffnet sich, zeigt aber keine Daten an
  • Stellen Sie sicher, dass die Datenbank erreichbar ist (ueberpruefen Sie den oxmysql-Status)
  • Pruefen Sie die F8-Konsole auf JavaScript-Fehler
  • Starten Sie die Ressource neu, um eine Datensynchronisation zu erzwingen

Wetter

Das Wetter aendert sich nicht automatisch

Prüfen Sie diese Punkte:


  • Config.FreezeWeather = false, und das Wetter ist im Panel nicht eingefroren

  • Mit aktivierten Jahreszeiten (Standard) folgt das Wetter der weatherSequence der Jahreszeit in config/seasons.lua (Dauer in echten Minuten, standardmäßig 35 bis 100 Minuten pro Eintrag)

  • Mit deaktivierten Jahreszeiten durchläuft Config.DynamicWeather = true die Liste aus config/weather.lua (weatherCycletimer, standardmäßig 90 Minuten)

  • Eine von einem Admin eingestellte Zone bleibt gesperrt, bis sie entsperrt wird (Schloss-Symbol auf der Panel-Karte oder /weatherunlock <zone|all>)

  • Zonen mit ignoreSeason = true (Cayo Perico) behalten ihr eigenes Wetter


Überprüfen Sie auch, ob kein anderes Wetterskript läuft.

Wie erzwinge ich permanenten Schnee / Weihnachten? Option 1 — Administrationspanel: Öffnen Sie das Panel, wählen Sie das Wetter XMAS und wenden Sie es auf alle Zonen an. Ein von einem Admin gesetztes Wetter ist gesperrt und übersteht Neustarts, bis Sie es entsperren (Schloss-Symbol auf der Karte oder /weatherunlock all). Option 2 — Server-Exports:
exports['hz_weather']:setZoneWeather('mont_josiah', 'XMAS')
Die Zonennamen sind die aus config/zones.lua. Eine so gesetzte Zone ist nicht gesperrt: Frieren Sie das Wetter im Panel ein (oder Config.FreezeWeather = true), damit die Jahreszeiten es nicht ändern. Option 3 — Jahreszeitensystem: Tragen Sie in config/seasons.lua XMAS in die weatherSequence der Presets ein (zum Beispiel die des Winters, mit startingSeason = 'winter').
Wie deaktiviere ich Schnee vollstaendig?

Mit aktivierten Jahreszeiten (Standard) entfernen Sie SNOW, SNOWLIGHT und BLIZZARD aus der weatherSequence des Winters in config/seasons.lua (die anderen Jahreszeiten haben keinen Schnee).

Mit deaktivierten Jahreszeiten setzen Sie decemberSnow = false in config/weather.lua und geben den Sequenzen Schneefall und Schneesturm probability = 0 (sie laufen nur im Dezember).

Zonenuebergaenge sind zu abrupt

Erhoehen Sie Config.ZoneTransitionDistance in config/config.lua. Der Standardwert ist 800.0 Meter. Ein hoeherer Wert erzeugt eine breitere Mischzone zwischen den Zonen.

Sie koennen auch Config.WeatherInfluence.enabled = true aktivieren, damit sich benachbarte Zonen natuerlich vermischen.


Zonen

Zonen werden nicht geladen oder nicht erkannt
  1. Stellen Sie sicher, dass PolyZone vor hz_weather in der server.cfg gestartet wird
  2. Pruefen Sie die Serverkonsole auf Datenbankfehler
  3. Die Zonen kommen aus config/zones.lua. Die Tabelle hz_weather_zones enthält nur Zonen, die im Zonen-Editor des Panels gespeichert wurden, und diese Zeilen haben Vorrang vor der Datei (die Konsole listet sie beim Start auf)
  4. Versuchen Sie, eine Zone ueber das Admin-Panel zu erstellen, um zu testen
Wie erstelle ich benutzerdefinierte Zonen? Option 1 — Konfigurationsdatei: Fügen Sie Zonen in config/zones.lua hinzu: einen Kreis (Mittelpunkt und Radius) oder ein Polygon (Punkte, minZ und maxZ), mit einer Priorität. Option 2 — Administrationspanel: Öffnen Sie das Panel, gehen Sie zum Tab Zonen, zeichnen Sie ein Polygon oder einen Kreis und füllen Sie die Details aus. Option 3 — Server-Export:
exports['hz_weather']:createZone({
    name = 'ma_zone',
    label = 'Meine benutzerdefinierte Zone',
    center = vector3(x, y, z),
    radius = 1500.0,
    shape = 'circle',
    priority = 1,
    weather = 'CLEAR',
})

Jahreszeiten & Temperatur

Wie funktionieren die Jahreszeiten?

Jede Jahreszeit definiert eine Wettersequenz (z. B. Sommer = EXTRASUNNY -> CLEAR -> CLOUDS -> CLEAR), die automatisch durchlaufen wird, und ihre eigene Temperaturkurve.

Drei Zyklusmodi sind verfügbar (cycleMode in config/seasons.lua):


  • disabled — Nur manuelle Steuerung (ueber Admin-Panel oder Befehle)

  • auto — Rotation durch die 4 Jahreszeiten auf einem Timer (cycleDuration, Standard: 120 echte Minuten pro Jahreszeit)

  • realtime — Reale Kalendermonate werden auf Jahreszeiten abgebildet


Wie wird die Temperatur angezeigt?

Die Temperatur wird im HUD des Skripts (Config.HUD), mit dem Befehl /temp und in den Wetter-Handy-Apps (LB Phone / QS Smartphone) angezeigt. Die Einheit ist konfigurierbar in Config.TemperatureUnit — 'C' fuer Celsius oder 'F' fuer Fahrenheit.

Folgt die Echtzeitsynchronisation meiner Zeitzone?

Der realtime-Modus verwendet die Serverzeit (die Uhr Ihres Rechners). Wenn Ihr Server in UTC laeuft, folgen die Jahreszeiten dem UTC-Kalender. Passen Sie zur Einstellung die Zeitzone Ihres Server-Rechners an.


Naturkatastrophen

Tornado-/Tsunami-Befehle funktionieren nicht
  1. Pruefen Sie, ob Config.Tornado.Enabled = true und Config.Tsunami.Enabled = true in der Konfiguration stehen
  2. Sie benötigen Admin-Zugriff (siehe Installation)
  3. Befehle: /tornado start, /tornado stop, /tsunami start, /tsunami stop
Die Tornado-Physik wirkt schwach

Passen Sie die Kraefte in config/config.lua an:


  • Config.Tornado.HorizontalPullForce — Anziehungskraft zum Zentrum

  • Config.Tornado.VerticalForce — Vertikale Auftriebskraft

  • Config.Tornado.TangentialForce — Rotationskraft

  • Config.Tornado.ForceScale — Globaler Multiplikator


Hoehere Werte = zerstoererischerer Tornado.

Der Tsunami-Wasserstand steigt nicht

Der Tsunami verwendet LoadWaterFromPath — dieser native Aufruf erfordert einen gueltigen Wasserpfad. Ueberpruefen Sie, ob die Wasserdatendatei in der Ressource vorhanden ist und ob der Server diesen nativen Aufruf unterstuetzt. Die Warnphase dauert 120 Sekunden, bevor das Wasser steigt (Config.Tsunami.WarningDuration).


Gameplay-Effekte

Die Fahrzeugtraktion aendert sich nicht bei Regen

Die Traktion ist standardmäßig deaktiviert: Setzen Sie Config.Effects.vehicleTraction.enabled = true in der Konfiguration. Die Standardmodifikatoren sind: Regen 70%, Schnee 50%, Blizzard 30% der normalen Haftung.

Spielereffekt-Benachrichtigungen (Kälte/Hitze)

Diese Benachrichtigungen sind seit v1.4.2 standardmäßig deaktiviert. Um sie zu erhalten, setzen Sie Config.Notifications.Temperature = true (und lassen notifications = true in Config.Effects.playerEffects).

Die Schwellenwerte sind coldThreshold (10 °C) und heatThreshold (30 °C) in Config.Effects.playerEffects. Ein fester Abstand von 2 °C und eine Wartezeit von 2 Minuten zwischen zwei Benachrichtigungen verhindern Wiederholungen, wenn die Temperatur um einen Schwellenwert schwankt.

Wie deaktiviere ich einen bestimmten Effekt?

Jeder Gameplay-Effekt hat seinen eigenen Schalter in config/config.lua:

Config.Effects = {
    vehicleTraction = { enabled = false },
    reducedVisibility = { enabled = true },
    playerEffects = { enabled = true },
    speedReduction = { enabled = false },
}
Config.BlackoutEnabled = true

Setzen Sie enabled = false (oder Config.BlackoutEnabled = false), um einzelne Effekte zu deaktivieren.


Handy-Integration

Welche Apps sind verfuegbar?
  • LB Phone — Dedizierte Wetter-App (kostenlos, separate Ressource)
  • QS Smartphone V3 — Dedizierte Wetter-App (kostenlos, separate Ressource)
  • QS Smartphone V2 (Pro) — Legacy-Version (verwenden Sie die App v1.x)
Siehe die Seite Wetter-Handy-Apps für die Installationsanleitungen.
Warum erfordert QS V3 eine manuelle Aenderung?

QS Smartphone V3 verwendet ein eingebautes natives Wetter-App-System. Die HZ-Weather-App muss diesen nativen Eintrag ersetzen, was eine einzeilige Aenderung in der QS Smartphone-Konfigurationsdatei erfordert. Dies ist eine Einschraenkung der QS V3-Architektur, nicht von HZ-Weather.

Kann ich die Wetterkarte in mein eigenes Handy integrieren?

Ja. Verwenden Sie die eigenstaendige map.html-Seite per Iframe:

<iframe src="https://cfx-nui-hz_weather/web/dist/map.html"
  style="width:100%;height:100%;border:none" />

Sie zeigt Zonen, Wetter, Temperatur, Wind und Jahreszeiteninformationen mit automatischer Aktualisierung an.


Keine Antwort gefunden? Treten Sie unserem Discord bei und oeffnen Sie ein Ticket!