PhoneHub + Pulse Doku
PhoneHub + Pulse Phone — Installationsanleitung
Integrierte Edition 1.4.6 · ZeroDev
Diese Edition vereint Pulse Phone, das PhoneHub-Gebäude, das eigene PhoneHub OS, den 3D-Handy-Kiosk, die Reparaturwerkbank und das Lager-/Liefersystem für das Personal. Sie ist ein eigenes Produkt, getrennt von der reinen Handy-Edition. Installiere das Handy und die Laden-Resource zusammen. Lass nicht zwei Kopien von phone oder zwei Versionen der PhoneHub-Map laufen.
1. Vor der Installation
- Sichere deine bestehende Handy-Resource, Map-Resource, Konfiguration und Datenbank.
- Nutze OneSync und GTA Game Build 2699 oder neuer.
- Starte zuerst deine Datenbank, dein Framework, Inventar, deine Voice-Resource und screenshot-basic.
- Lass die Resource-Namen genau
phoneundzerodev_phonehub_mlo. - Entferne vorherige PhoneHub-Resources aus dem aktiven Resource-Verzeichnis und entferne doppelte
ensure-Zeilen. Bewahre Backups außerhalb dieses Verzeichnisses auf. - Lass jede andere Map, die dasselbe Gebäude am Portola Drive ersetzt, deaktiviert.
- Schließ FiveM komplett und stopp den Server, bevor du Map-Dateien ersetzt. Starte den Server, dann starte FiveM erneut. Trenne Clients, bevor du dieses gestreamte MLO ersetzt oder neu startest. Ein verbundener Client kann die Map behalten, auch wenn er weit vom Gebäude entfernt ist; ein Hot-Restart kann diesen Client zum Absturz bringen.
Dieses Paket enthält keinen Server-Lizenzschlüssel, kein Framework, kein Inventar und keine kostenpflichtigen Scripts von Drittanbietern. Nach der Verarbeitung durch Keymaster muss der Server-Key zu dem Account gehören, der für dieses neue kombinierte Asset berechtigt ist. Eine Berechtigung für die alte reine Handy-Edition gilt nicht für diese neue Edition.
2. Die Resources kopieren
Kopier die Ordner phone und zerodev_phonehub_mlo aus diesem Download in das Resource-Verzeichnis deines Servers. Du kannst sie in jeden Kategorie-Ordner legen; behalte die Ordnernamen genau bei.
screenshot-basic. Die Kamera braucht screenshot-basic, gestartet vor phone; die Standard-Resource funktioniert. Der Download enthält auch eine schlankere Kopie (sie zeichnet das Spielbild nur, während ein Foto gemacht wird, mit demselben Namen, denselben Exports und Events). Der Wechsel darauf ist optional: Behalte deinen alten Ordner als Backup außerhalb von resources, teste die Scripts, die Screenshots machen, und leg den alten Ordner zurück, wenn sich etwas ändert. Der Quick Start von Pulse Phone, Schritt 6, enthält die Schritte; die geänderten Dateien stehen in screenshot-basic/ZERODEV-CHANGES.md.
Füg diese Zeilen nach deinen bestehenden Abhängigkeiten in die server.cfg ein:
ensure phone
ensure zerodev_phonehub_mloKopier keine alte Handy-Engine oder UI in das neue Paket. Bei einem Upgrade übertrag die Einstellungen, die du brauchst, in die neuen Konfigurationsdateien. Behalte deine Datenbank, den KVP-Speicher der Resource sowie die Ordner media und ownermedia. Die neue phone/config/phonehub_business.lua enthält Liefereinstellungen, die es in der reinen Handy-Edition nicht gibt.
Die konfigurierte Ladentheke liegt bei -749.541, -216.952224, 36.256562, Ausrichtung 210. Der Standort des Ladens ist in der sauberen integrierten Edition bereits konfiguriert. PhoneHub ist in dieser Edition der einzige Handyladen: Der Laden am Legion Square aus dem reinen Handy-Paket gehört nicht dazu. Eine config.lua aus 1.4.4 oder früher listet noch den Legion Square; dieser Eintrag wird übersprungen, und die Konsole sagt das einmal. Drück die PhoneHub-Taste (standardmäßig E) oder nutze /phonehub am Kiosk im Laden, an einem Reparaturtisch, an der Servicetheke oder am Steuerpunkt auf dem Dach, um das PhoneHub-Terminal zu öffnen. Der Kiosk öffnet Shop, ein Reparaturtisch öffnet Repair. Die Taste lässt sich in den FiveM-Tastenbelegungen ändern. Der Befehl verlangt dieselbe Nähe wie die Taste; Aktionen des Personals brauchen weiterhin eine Berechtigung vom Server.
3. Framework, Inventar und andere Scripts
Beginne mit Config.Framework = 'auto' und den automatischen Provider-Einstellungen in phone/config/config.lua. Der Health-Bericht des Handys beim Start nennt die tatsächlich gewählten Provider. Prüf diesen Bericht, bevor du Käufe tätigst.
| Framework | Setup |
|---|---|
| ESX Legacy | Starte es_extended und das Inventar vor phone. Importiere zerodev_phonehub_mlo/setup/phonehub_esx_jobs.sql; das fügt fehlende Job-Ränge hinzu, ohne einen Spieler zuzuweisen. |
| QBCore | Füg den mitgelieferten Job-Eintrag zerodev_phonehub_mlo/setup/phonehub_qb_job.lua zur Shared-Jobs-Tabelle deines Cores hinzu. Registrier die Handy-Items mit der Item-Anleitung des Handys. |
| Qbox | Registrier denselben Job/dieselben Ränge über deine installierte Qbox-Job-Konfiguration oder eine unterstützte Job-Registrierungs-API. Nutze ox_inventory-Item-Definitionen. |
| ox_core / vRP | Konfiguriere den bestehenden Framework-Adapter des Handys und einen Job-Provider, der den PhoneHub-Job und den numerischen Rang zurückgibt. Nutze ACE-gesteuerten Gebäudezugriff, wenn dein Job-System diese nicht bereitstellt. |
| Standalone / Custom | Öffentliches Einkaufen ist über die bestehende Standalone-/Custom-Bridge des Handys verfügbar. Zugriff für Personal braucht einen konfigurierten Job-Provider oder ein vertrauenswürdiges Administrator-ACE. |
Inventar-Adapter decken ox_inventory, unterstützte Inventar-Funktionen von Frameworks und die genannten Drittanbieter ab, die in phone/guides/integrations.md aufgelistet sind (oder in der Integrationsanleitung, die deinem Handy-Build beiliegt). Jeder Provider braucht seine echten Item-Definitionen und eine kompatible API-Version. Fehlende Items werden von den Health-Checks des Handys gemeldet; unterdrück diese Fehler nicht. Beispiele für das Item-Setup liegen unter phone/config/items/.
Die bearbeitbaren Bridges des Handys decken Voice, Society-Konten, Banking, Garagen, Housing, Dispatch und andere Integrationen ab. Behalte genau einen ausgewählten Provider pro Funktion. Leg umbenannte Resources über Config.ResourceNames fest; nutze Config.Providers, um einen Provider ausdrücklich zu wählen. Beliebige Exports von Drittanbietern sind nicht automatisch kompatibel: Implementier die dokumentierte Custom-Bridge, wenn dein Script nicht gelistet ist. Framework-Adapter und automatisierte Vertragstests sind keine Behauptung, dass jede Drittanbieter-Version live getestet wurde.
Live getesteter Stack für dieses Release: ESX Legacy, ox_inventory, oxmysql und pma-voice. Auf einem anderen Framework führ die Checks für den ersten Start aus Abschnitt 7 aus, bevor du den Laden eröffnest.
4. Öffentlicher Laden oder Business im Besitz von Spielern
Führ einen der beiden Befehle in der Serverkonsole aus:
phonehubmode public
phonehubmode businessDer gewählte Modus bleibt über Neustarts erhalten. Der öffentliche Modus behält das normale Einkaufen bei. Der Business-Modus wendet dauerhaften Lagerbestand und Reservierungen auf Käufe an der PhoneHub-Theke an. Der Business-Modus deaktiviert Inzahlungnahmen an der Theke. Derselbe Handy-Checkout prüft Preise, Zahlungen und die Item-Übergabe.
Setz den Job-Namen und die Ränge in phone/config/phonehub_business.lua:
| Rang | Standardaufgaben |
|---|---|
| 0 — Azubi | Business-Terminal ansehen, angekommene Lieferungen annehmen, Gebäudesteuerung |
| 1 — Verkauf | Aufgaben des Azubis plus Lieferantenbestellungen |
| 2 — Techniker | Bestellen/Annehmen und konfigurierte Reparaturrolle |
| 3 — Manager | Alle Personal-Steuerungen plus Stornierung/Erstattung offener Lieferantenbestellungen |
Weise Jobs mit den normalen Administrations-Tools deines Frameworks zu. Öffne auf dem Handy Services → My Work → PhoneHub → Staff and account für die Firmenverwaltung. Sie nutzt die unterstützten Personal-/Society-Funktionen des gewählten Frameworks. Die kombinierte Edition unterstützt außerdem dauerhaften Besitz durch Spieler, über einen Kauf im Spiel im Business-Tab oder den unten beschriebenen Zuweisungsbefehl für Administratoren. Alle Besitzpreise sind Beträge in der Spielwährung.
Bei ESX mit esx_addonaccount importiere außerdem zerodev_phonehub_mlo/setup/phonehub_esx_society.sql, bevor du die Account-Resource startest, und starte dann deinen Server neu. Das legt das Firmenkonto society_phonehub mit Saldo null an, ohne einen bestehenden Saldo zu ersetzen. Wenn du den Job umbenannt hast, pass die Kontoendung an. Andere Banking-Provider brauchen ihr normales Firmenkonto-Setup für den konfigurierten Job. Prüf eine kleine Einzahlung und Abhebung in Company, bevor du das Business eröffnest.
Das Betriebsbudget ist ein separates internes Journal für Wareneinkäufe. Verkäufe erhöhen es; Lieferantenbestellungen ziehen davon ab. Es ist nicht automatisch ein Society-Bankkonto und kein abhebbares Bargeldguthaben für Spieler.
5. Lieferantenbestellungen und Warenlieferung
Drück an der Servicetheke E, um das PhoneHub-Terminal zu öffnen, dann Stock. Wähl ein Produkt, eine Konfiguration und eine Menge. Der Server berechnet das Lieferantenangebot und prüft Rang, Nähe und Betriebsbudget des Mitarbeiters.
Eine Lieferung dauert standardmäßig 120 Sekunden. Sie bleibt über Neustarts unterwegs. Nach der Ankunft wählt ein Mitarbeiter am Terminal Receive delivery. Das Standardziel destination='stock' fügt die Ware dem Lagerjournal des Ladens hinzu, das der Checkout verbraucht, unabhängig vom Inventar-Provider des Käufers. Wiederholte Annahmeanfragen können dieselbe Lieferung nicht doppelt hinzufügen. Manager können eine nicht angenommene Lieferung für eine einmalige Budgeterstattung stornieren.
Konfiguration:
delivery = {
seconds = 120,
autoReceive = false,
destination = 'stock',
resource = '',
export = '',
}Für ein eigenes Lager/Stash setz destination='custom' und gib einen Server-Export an. Er erhält (shipment, source) und muss shipment.id als dauerhaften Schlüssel zur Vermeidung von Duplikaten nutzen. Gib nur true zurück, wenn jede Zeile erfolgreich eingelagert wurde. Konfiguriere die Item-/SKU-Zuordnung deines Inventars in diesem Adapter. Eine eigene Lieferung fügt Items nicht zusätzlich dem internen Verkaufsjournal hinzu; verbinde deinen Lager-Verkaufsablauf ausdrücklich, um doppelten Bestand zu vermeiden. Es wird kein universeller Stash-Adapter vorausgesetzt.
Eine unsichere externe Übergabe wird zur Prüfung zurückgehalten und nie blind wiederholt. Nach der Prüfung des Ziel-Inventars nutze:
phonehubdelivery <shipment-id> delivered
phonehubdelivery <shipment-id> retryPrüf bei einer unsicheren Reservierung beim Kunden-Checkout die Zahlungs- und Inventardatensätze, bevor du phonehubresolve <reservation-id> returned|delivered nutzt.
6. Ladensteuerung
Drück E in der Nähe des Service-Steuerpunkts oder des Steuerpults auf dem Dach.
- Space: Schlösser von Eingangs- und Dachtür, Ladenlicht, das Lounge-Display, das Terrassendach (automatisch bei Regen oder Schnee oder offen/geschlossen), Terrassen-Heizstrahler oder Lüftung, Terrassenstrom und ein 15-sekündiger Sprinklertest.
- Cameras: Entrance overview, Showroom overview und Service counter. Zurück zum Terminal schließt die Kamera; Escape beendet.
- Stock und Business: Lieferantenbestellungen, Lieferungen, Einnahmen, das Verkaufs- und Reparaturjournal und Teamzugriff.
Die Gebäudesteuerung braucht den PhoneHub-Job oder das konfigurierte Personal-/Admin-ACE. Der öffentliche Zugriff auf die Terrassensteuerung wird separat in systems_config.lua konfiguriert. Gib phonehub.admin nur deinem vertrauenswürdigen Administrator-Principal, niemals allen. Setz phoneResource='phone' in der Systemkonfiguration des MLO.
Automatiktüren nutzen Näherungssensoren, wenn sie entriegelt sind. Ihre beweglichen Flügel müssen fest bleiben, auch wenn sie offen sind. Möbel, Glas und Beleuchtung sind gestaltete Map-Assets; nicht jedes Dekoobjekt hat eine Gameplay-Interaktion.
7. Abnahme beim ersten Start
- Starte den Server und führ
phone:healthaus. Bestätige die erwarteten Framework-, Inventar-, Datenbank- und Voice-Provider und dass keine benötigten Items fehlen. - Tritt normal bei und besuch den Laden. Geh vom Gehweg durch beide Eingangspaare, die Treppe hoch und runter und durch die Dachtür, mit deaktiviertem Noclip.
- Öffne und schließ das Glasdach. Seine acht Paneele müssen in jeder Position in den Führungsschienen ausgerichtet bleiben. Teste das automatische Schließen bei Regen/Schnee separat.
- Öffne jede CCTV-Ansicht, wechsle zwischen ihnen und beende. Die Szene muss sichtbar sein, und die normale Spieleransicht/der normale Fokus müssen zurückkehren.
- Verriegle beide Türgruppen mit einem Personal-Account. Prüf die Kollision von beiden Seiten. Entriegle sie und prüf erneut die Öffnungsanimation bei Annäherung.
- Prüf Tag-/Nachtbeleuchtung, Display an/aus, Glas, Beschilderung, Sitze und alle Kanten. Geh und fahr auf das Gebäude zu und von ihm weg, um die Streaming-Übergänge zu prüfen.
- Kauf im öffentlichen Modus ein Handy/Zubehör. Prüf im Business-Modus die Bestandsabnahme, Bestellungen durch Mitarbeiter, Ankunft/Annahme, zu wenig Geld und unberechtigten Zugriff.
- Starte den Server neu und bestätige, dass Laden-Modus, Bestand und offene Lieferungen erhalten bleiben. Wiederhol einen doppelten Annahme-/Stornierungsversuch; es dürfen keine doppelten Waren oder Erstattungen erscheinen. Prüf, dass mehrere Spieler denselben Zustand des Ladens sehen.
phonehubcheck in der F8-Konsole des Clients meldet die tatsächliche Ausrichtung des Dachs; jedes Paneel sollte eine Ausrichtung nahe 1 melden. Das ist eine Diagnose, kein Beweis, dass die optische Qualität oder die Kollisionen korrekt sind. Automatisierte Checks können nicht jeden Kamerawinkel oder alle Serverkombinationen bestätigen.
8. Fehlerbehebung und Updates
Port 30120 belegt: Eine andere Serverinstanz läuft bereits. Stopp sie über dein txAdmin (oder das Host-Panel), statt einen zweiten FXServer zu starten.
Steuerung fehlt: Prüf, dass beide Resources gestartet sind, ihre Namen unverändert sind und der Spieler am Steuerpunkt steht. Sieh dir die F8-Fehler des Clients und die Serverfehler an.
Kein Zugriff für Personal: Prüf den konfigurierten Job, den numerischen Rang, die Nähe zur Servicetheke und den gewählten Job-Provider. Der öffentliche Laden-Modus gibt keine Personalrechte.
Alte Map/alte Oberfläche bleibt: Entferne doppelte Resources/ensure-Einträge. Schließ FiveM komplett, stopp den Server, ersetz die Dateien, starte dann den Server und FiveM erneut. Ein bloßes Neuverbinden kann veraltete gestreamte Assets behalten. Lad das MLO nicht im laufenden Betrieb neu, während ein Client verbunden ist, auch nicht weit vom Gebäude entfernt.
Zurückrollen: Stopp diese Resources, stell die gesicherten Resource-Ordner und die Konfiguration wieder her und starte dann mit deinem bestehenden txAdmin neu. Behalte den Datenbank-/KVP-Speicher, außer du stellst bewusst ein konsistentes Daten-Backup wieder her.
Bewahre die mitgelieferten Release-Hashes (SHA256.json) für Support-Anfragen auf.
PhoneHub OS und Besitz
Config.PhoneHubOS in phone/config/phonehub_business.lua steuert diese Edition. ownership='both' erlaubt den Kauf im Spiel und die Zuweisung durch Administratoren. Setz 'admin' oder 'purchase', um nur einen Weg zu erlauben. purchasePrice ist ein Betrag in der Spielwährung. Administratoren nutzen phonehubowner <online player id> in der Serverkonsole oder mit dem ACE phonehub.admin. Die Zuweisung ist gesperrt, solange eine Kaufzahlung aussteht. Ein Besitzer wird am Charakter-Identifier des Frameworks gespeichert, nie an einer flüchtigen Source-Nummer des Spielers. Der Besitz aktiviert das bestehende dauerhafte System für Lagerbestand und Betriebsbudget.
Besitzer fügen im Business-Tab Personal oder Manager in der Nähe hinzu. Diese eigenständigen Rollen laufen über die Identitäts-Bridge des Frameworks; sie ändern nicht den Hauptjob eines Spielers. Bestehende PhoneHub-Job-Rollen und konfigurierter Admin-Zugriff funktionieren weiterhin. Manager können Ware bestellen, und das Personal kann standardmäßig angekommene Lieferungen annehmen. Der Bestand bleibt reserviert, bis ein Kauf oder eine Lieferantenlieferung bestätigt ist.
service='hybrid' erlaubt sowohl betreuten als auch Selbstbedienungs-Checkout und -Reparaturen. 'self' erlaubt direkten Service; 'staff' verlangt in diesem Laden ein vom Kunden freigegebenes Angebot des Personals. Das einzelne Produkt behält sein bestehendes Shopping-OS.
Geh am Kiosk im Laden heran und drück E. Der Shop-Tab lädt das echte geschützte Pulse-Modell, mit Drehen per Ziehen, Ansicht von vorne/hinten, Zoom und dem gewählten Finish. Der Preis kommt vom Handy-Server. Die Zahlung verlangt eine Bestätigung und nutzt das konfigurierte Inventar, Geld und die Übergabe des Handys in der Box. Eine Zeitüberschreitung ist kein Beweis für eine fehlgeschlagene Abbuchung; prüf das Inventar und das Zahlungsjournal, bevor du es erneut versuchst.
Kunden bitten im Help-Tab um Hilfe beim Kauf oder bei der Reparatur und bekommen eine Wartenummer. Das Personal wählt im Counter-Tab einen Kunden in der Nähe und bereitet ein Angebot vor; nur dieser Kunde kann es freigeben und bezahlen. Beide müssen im selben Laden im selben Routing-Bucket bleiben. Eine Reparaturfreigabe ist an das gewählte einzigartige Gerät und seinen angebotenen Preis gebunden. Ein Gerätewechsel macht sie ungültig.
Bei betreuten Reparaturen öffnet der Techniker das Terminal an einem freien Reparaturtisch, bereitet das Reparaturangebot für den Kunden vor und bleibt für die Annahme dort. Der Tisch wird vor der Zahlung reserviert. Eine erfolgreich bezahlte Reparatur spielt die Montage-Sequenz mit diesem Spieler als Techniker ab; bei Selbstbedienung übernimmt der Techniker des Ladens. Die Handy-Engine ist für die Reparatur des Geräts zuständig und stellt bezahlte Arbeit nach einer unterbrochenen Serversitzung wieder her. Die Client-Props erstellen oder ersetzen nie ein Inventar-Handy.
Der Space-Tab an den Steuerpunkten auf dem Dach und an der Theke steuert Glasdach, Klima, Schlösser, Beleuchtung und Display. Geometrie, Wetterschutz, Bodenbelag und Sitzgelegenheiten aus dem fertigen MLO bleiben erhalten.