Documentazione di PhoneHub + Pulse
PhoneHub + Pulse Phone — guida all'installazione
Edizione integrata 1.4.6 · ZeroDev
Questa edizione unisce Pulse Phone, l'edificio PhoneHub, il PhoneHub OS personalizzato, il chiosco 3D dei telefoni, il banco di riparazione e il sistema di magazzino/consegne per il personale. È un prodotto separato dall'edizione solo telefono. Installa insieme il telefono e la risorsa del negozio. Non usare due copie di phone o due versioni della mappa PhoneHub.
1. Prima dell'installazione
- Fai un backup della risorsa telefono attuale, della risorsa mappa, della configurazione e del database.
- Usa OneSync e la game build di GTA 2699 o successiva.
- Avvia prima database, framework, inventario, risorsa voce e screenshot-basic.
- Mantieni i nomi delle risorse esattamente
phoneezerodev_phonehub_mlo. - Rimuovi le risorse PhoneHub precedenti dalla cartella delle risorse attive e rimuovi le righe
ensureduplicate. Tieni i backup fuori da quella cartella. - Tieni disattivata qualsiasi altra mappa che sostituisce lo stesso edificio di Portola Drive.
- Chiudi completamente FiveM e ferma il server prima di sostituire i file della mappa. Avvia il server, poi riapri FiveM. Disconnetti i client prima di sostituire o riavviare questo MLO in streaming. Un client connesso può mantenere la mappa anche quando è lontano dall'edificio; riavviarlo a caldo può far crashare quel client.
Questo pacchetto non include una license key del server, un framework, un inventario o script di terze parti a pagamento. Dopo l'elaborazione su Keymaster, la key del server deve appartenere all'account che ha diritto a questo nuovo asset combinato. Il diritto sulla vecchia edizione solo telefono non dà diritto a questa nuova edizione.
2. Copia le risorse
Copia le cartelle phone e zerodev_phonehub_mlo da questo download nella cartella resources del tuo server. Puoi metterle in qualsiasi cartella di categoria; mantieni esattamente i nomi delle cartelle.
screenshot-basic. La fotocamera ha bisogno di screenshot-basic avviato prima di phone; la risorsa standard funziona. Il download include anche una copia più leggera (disegna l'immagine del gioco solo mentre si scatta una foto, con lo stesso nome, gli stessi export ed eventi). Passarci è facoltativo: tieni la tua vecchia cartella come backup fuori da resources, prova gli script che fanno screenshot e rimetti la vecchia cartella se cambia qualcosa. La guida rapida di Pulse Phone, passaggio 6, ha i passaggi; i file modificati sono elencati in screenshot-basic/ZERODEV-CHANGES.md.
Aggiungi queste righe dopo le dipendenze già presenti in server.cfg:
ensure phone
ensure zerodev_phonehub_mloNon copiare un vecchio motore o una vecchia UI del telefono nel nuovo pacchetto. In caso di aggiornamento, porta le impostazioni che ti servono nei nuovi file di configurazione. Mantieni il database, lo storage KVP della risorsa e le cartelle media e ownermedia. Il nuovo phone/config/phonehub_business.lua include impostazioni di consegna assenti nell'edizione solo telefono.
Il bancone del negozio configurato è a -749.541, -216.952224, 36.256562, heading 210. La posizione del negozio è già configurata nell'edizione integrata pulita. PhoneHub è l'unico negozio di telefoni in questa edizione: il negozio di Legion Square del pacchetto solo telefono non ne fa parte. Un config.lua mantenuto dalla 1.4.4 o precedente elenca ancora Legion Square; quella voce viene saltata e la console lo segnala una volta. Premi il tasto PhoneHub (E di default), oppure usa /phonehub, al chiosco in negozio, a un banco di riparazione, al bancone assistenza o al punto di controllo sul tetto per aprire il terminale PhoneHub. Il chiosco apre Shop e un banco di riparazione apre Repair. Il tasto si può cambiare nelle impostazioni tasti di FiveM. Il comando richiede la stessa vicinanza del tasto; le azioni del personale richiedono comunque il permesso del server.
3. Framework, inventario e altri script
Parti da Config.Framework = 'auto' e dalle impostazioni automatiche dei provider in phone/config/config.lua. Il report di stato all'avvio del telefono indica i provider effettivamente scelti. Controlla quel report prima di fare acquisti.
| Framework | Configurazione |
|---|---|
| ESX Legacy | Avvia es_extended e l'inventario prima di phone. Importa zerodev_phonehub_mlo/setup/phonehub_esx_jobs.sql; aggiunge i gradi di lavoro mancanti senza assegnare nessun giocatore. |
| QBCore | Aggiungi la voce di lavoro fornita zerodev_phonehub_mlo/setup/phonehub_qb_job.lua alla tabella dei lavori condivisi del tuo core. Registra gli item del telefono seguendo la guida agli item del telefono. |
| Qbox | Registra lo stesso lavoro/gradi tramite la configurazione dei lavori di Qbox installata o l'API di registrazione lavori supportata. Usa le definizioni degli item di ox_inventory. |
| ox_core / vRP | Configura l'adapter del framework già presente nel telefono e un provider di lavori che restituisca il lavoro PhoneHub e il grado numerico. Usa l'accesso all'edificio controllato tramite ACE se il tuo sistema di lavori non li espone. |
| Standalone / custom | Gli acquisti pubblici sono disponibili tramite il bridge standalone/custom già presente nel telefono. L'accesso del personale richiede un provider di lavori configurato o un ACE da amministratore fidato. |
Gli adapter per gli inventari coprono ox_inventory, le funzioni di inventario dei framework supportati e i provider di terze parti indicati in phone/guides/integrations.md (o nella guida alle integrazioni inclusa nella tua build del telefono). Ogni provider richiede le sue vere definizioni degli item e una versione dell'API compatibile. Gli item mancanti vengono segnalati dai controlli di stato del telefono; non nascondere quegli errori. Gli esempi di configurazione degli item sono in phone/config/items/.
I bridge modificabili del telefono coprono voce, conti society, banking, garage, housing, dispatch e altre integrazioni. Tieni esattamente un provider selezionato per ogni funzione. Fissa le risorse rinominate tramite Config.ResourceNames; usa Config.Providers per scegliere un provider esplicitamente. Export di terze parti arbitrari non sono compatibili automaticamente: implementa il bridge custom documentato quando il tuo script non è in lista. Gli adapter dei framework e i test di contratto automatici non significano che ogni versione di terze parti sia stata testata dal vivo.
Stack testato dal vivo per questa release: ESX Legacy, ox_inventory, oxmysql e pma-voice. Su un altro framework, esegui i controlli al primo avvio della sezione 7 prima di aprire il negozio.
4. Negozio pubblico o attività dei giocatori
Esegui uno dei due comandi nella console del server:
phonehubmode public
phonehubmode businessLa modalità scelta resta salvata tra un riavvio e l'altro. La modalità pubblica mantiene gli acquisti normali. La modalità business applica magazzino persistente e prenotazioni agli acquisti fatti al bancone PhoneHub. La modalità business disattiva le permute al bancone. Lo stesso checkout del telefono verifica prezzi, pagamenti e consegna degli item.
Imposta il nome del lavoro e i gradi in phone/config/phonehub_business.lua:
| Grado | Mansioni predefinite |
|---|---|
| 0 — tirocinante | Vedere il terminale aziendale, ricevere le consegne arrivate, controlli dell'edificio |
| 1 — vendite | Mansioni del tirocinante più ordini ai fornitori |
| 2 — tecnico | Ordini/ricezione e ruolo di riparazione configurato |
| 3 — manager | Tutti i controlli del personale più annullamento/rimborso degli ordini di fornitura in sospeso |
Assegna i lavori con i normali strumenti di amministrazione del tuo framework. Apri Services → My Work → PhoneHub → Staff and account sul telefono per la gestione aziendale. Usa le funzioni personale/society supportate del framework selezionato. L'edizione combinata supporta anche la proprietà permanente da parte dei giocatori tramite un acquisto in gioco nella scheda Business o con il comando di assegnazione da amministratore descritto più sotto. Tutti i prezzi di proprietà sono importi in valuta di gioco.
Per ESX con esx_addonaccount, importa anche zerodev_phonehub_mlo/setup/phonehub_esx_society.sql prima di avviare la risorsa dei conti, poi riavvia il server. Questo crea il conto aziendale society_phonehub a saldo zero senza sostituire un saldo esistente. Se hai rinominato il lavoro, aggiorna di conseguenza il suffisso del conto. Gli altri provider banking richiedono la loro normale configurazione del conto aziendale per il lavoro configurato. Verifica un piccolo deposito e un piccolo prelievo in Company prima di aprire l'attività.
Il budget operativo è un registro interno separato per l'acquisto della merce. Le vendite lo aumentano; gli ordini ai fornitori lo riducono. Non è automaticamente un conto bancario society e non è un saldo in contanti prelevabile dai giocatori.
5. Ordini ai fornitori e consegna della merce
Al bancone assistenza, premi E per aprire il terminale PhoneHub, poi Stock. Scegli un prodotto, una configurazione e una quantità. Il server calcola il preventivo del fornitore e verifica il grado del dipendente, la vicinanza e il budget operativo.
La consegna predefinita richiede 120 secondi. Resta in transito anche dopo i riavvii. Quando arriva, un dipendente seleziona Receive delivery al terminale. Il valore predefinito destination='stock' aggiunge la merce al registro del magazzino del negozio usato dal checkout, indipendentemente dal provider di inventario del giocatore che compra. Richieste di ricezione ripetute non possono aggiungere due volte la stessa spedizione. I manager possono annullare una spedizione non ricevuta per un unico rimborso sul budget.
Configurazione:
delivery = {
seconds = 120,
autoReceive = false,
destination = 'stock',
resource = '',
export = '',
}Per un magazzino/stash custom, imposta destination='custom' e indica un export lato server. Riceve (shipment, source) e deve usare shipment.id come chiave di deduplicazione permanente. Restituisci true solo quando ogni riga è stata salvata correttamente. Configura in quell'adapter la mappatura item/SKU del tuo inventario. La consegna custom non aggiunge anche gli item al registro vendite interno; collega esplicitamente il flusso di vendita del tuo magazzino per evitare merce duplicata. Non si presuppone nessun adapter universale per gli stash.
Una consegna esterna incerta viene tenuta in revisione, mai ritentata alla cieca. Dopo aver controllato l'inventario di destinazione, usa:
phonehubdelivery <shipment-id> delivered
phonehubdelivery <shipment-id> retryPer una prenotazione di checkout di un cliente incerta, controlla i registri di pagamento e inventario prima di usare phonehubresolve <reservation-id> returned|delivered.
6. Controlli del negozio
Premi E vicino al punto di controllo dell'assistenza o al piedistallo di controllo sul tetto.
- Space: serrature della porta d'ingresso e della porta del tetto, luci del negozio, lo schermo della lounge, la copertura della terrazza (automatica con pioggia o neve, oppure aperta/chiusa), riscaldatori o ventilazione della terrazza, alimentazione della terrazza e un test degli sprinkler di 15 secondi.
- Cameras: Entrance overview, Showroom overview e Service counter. Tornare al terminale chiude la telecamera; Esc esce.
- Stock e Business: ordini ai fornitori, consegne, incassi, il registro di vendite e riparazioni e gli accessi del team.
I controlli dell'edificio richiedono il lavoro PhoneHub o l'ACE di personale/admin configurato. L'accesso pubblico ai controlli della terrazza si configura separatamente in systems_config.lua. Assegna phonehub.admin solo al tuo principal amministratore fidato; mai a tutti. Imposta phoneResource='phone' nella configurazione dei sistemi dell'MLO.
Le porte automatiche usano sensori di prossimità quando sono sbloccate. Le loro ante in movimento devono restare solide, anche da aperte. Mobili, vetri e illuminazione sono asset della mappa; non ogni oggetto decorativo ha un'interazione di gameplay.
7. Verifica al primo avvio
- Avvia il server ed esegui
phone:health. Conferma i provider attesi di framework, inventario, database e voce, e che non manchi nessun item obbligatorio. - Entra normalmente e visita il negozio. Cammina dal marciapiede attraverso entrambe le coppie di ingressi, su e giù per le scale e attraverso la porta del tetto con il noclip disattivato.
- Apri e chiudi la copertura. I suoi otto pannelli devono restare allineati nei binari di guida in ogni posizione. Prova a parte la chiusura automatica con pioggia/neve.
- Apri ogni vista CCTV, passa dall'una all'altra ed esci. La scena deve essere visibile e la vista/focus normale del giocatore deve tornare.
- Blocca entrambi i gruppi di porte con un account del personale. Controlla le collisioni da entrambi i lati. Sblocca e verifica di nuovo l'animazione di apertura per prossimità.
- Controlla l'illuminazione di giorno/notte, schermo acceso/spento, vetri, insegne, sedute e tutti i bordi. Cammina e guida avvicinandoti/allontanandoti dall'edificio per controllare le transizioni dello streaming.
- Compra un telefono/accessorio in modalità pubblica. In modalità business, controlla la riduzione del magazzino, gli ordini dei dipendenti, arrivo/ricezione, fondi insufficienti e accessi non autorizzati.
- Riavvia il server e conferma che modalità del negozio, magazzino e consegne in sospeso restino salvati. Ripeti un tentativo duplicato di ricezione/annullamento; non devono comparire merce o rimborsi duplicati. Verifica che più giocatori vedano lo stesso stato del negozio.
phonehubcheck nella console F8 del client riporta l'allineamento effettivo della copertura; ogni pannello dovrebbe riportare un allineamento vicino a 1. È uno strumento diagnostico, non la prova che qualità visiva o collisioni siano corrette. I controlli automatici non possono certificare ogni angolo di camera o tutte le combinazioni di server.
8. Risoluzione dei problemi e aggiornamenti
Porta 30120 occupata: un'altra istanza del server è già in esecuzione. Fermala dal tuo txAdmin (o dal pannello dell'host) invece di avviare un secondo FXServer.
Controlli mancanti: verifica che entrambe le risorse siano avviate, che i loro nomi non siano cambiati e che il giocatore sia al punto di controllo. Controlla gli errori nell'F8 del client e nel server.
Nessun accesso per il personale: controlla il lavoro configurato, il grado numerico, la vicinanza al bancone assistenza e il provider di lavori selezionato. La modalità negozio pubblico non dà permessi al personale.
Resta la vecchia mappa/la vecchia interfaccia: rimuovi le risorse/voci ensure duplicate. Chiudi completamente FiveM, ferma il server, sostituisci i file, poi avvia il server e riapri FiveM. Una semplice riconnessione può mantenere asset in streaming vecchi. Non ricaricare a caldo l'MLO mentre un client è connesso, anche se lontano dall'edificio.
Tornare indietro: ferma queste risorse, ripristina le cartelle delle risorse e la configurazione di backup, poi riavvia con il tuo txAdmin. Mantieni il database/lo storage KVP a meno che tu non stia ripristinando di proposito un backup coerente dei dati.
Conserva gli hash della release forniti (SHA256.json) per le richieste di supporto.
PhoneHub OS e proprietà
Config.PhoneHubOS in phone/config/phonehub_business.lua controlla questa edizione. ownership='both' consente sia l'acquisto in gioco sia l'assegnazione da amministratore. Imposta 'admin' o 'purchase' per consentire una sola strada. purchasePrice è un importo in valuta di gioco. Gli amministratori usano phonehubowner <online player id> dalla console del server o con l'ACE phonehub.admin. L'assegnazione è bloccata mentre un pagamento di acquisto è in sospeso. Il proprietario viene salvato sull'identificativo del personaggio del framework, mai su un numero source temporaneo del giocatore. La proprietà attiva il sistema permanente di magazzino e budget operativo già esistente.
I proprietari aggiungono personale o manager vicini nella scheda Business. Questi ruoli indipendenti passano dal bridge di identità del framework; non cambiano il lavoro principale di un giocatore. I ruoli di lavoro PhoneHub esistenti e gli accessi amministrativi configurati continuano a funzionare. Di default, i manager possono ordinare forniture e il personale può ricevere le spedizioni arrivate. La merce resta riservata finché un acquisto o una consegna del fornitore non viene confermato.
service='hybrid' permette sia checkout e riparazioni assistiti sia self-service. 'self' permette il servizio diretto; 'staff' richiede un'offerta del personale approvata dal cliente in questo negozio. Il prodotto venduto da solo mantiene il suo sistema di acquisto attuale.
Al chiosco in negozio, avvicinati e premi E. La scheda Shop carica il vero modello Pulse protetto, con rotazione trascinando, vista fronte/retro, zoom e finitura selezionata. Il prezzo arriva dal server del telefono. Il pagamento richiede una conferma e usa l'inventario, i soldi e la consegna del telefono in scatola configurati. Un timeout non prova che l'addebito sia fallito; controlla l'inventario e il registro dei pagamenti prima di riprovare.
I clienti chiedono aiuto per vendite o riparazioni nella scheda Help e ricevono un numero di coda. Il personale sceglie un cliente vicino nella scheda Counter e prepara un'offerta; solo quel cliente può approvarla e pagare. Entrambi devono restare nello stesso negozio nello stesso routing bucket. L'approvazione di una riparazione è legata al dispositivo unico selezionato e al suo prezzo preventivato. Cambiare dispositivo la annulla.
Per le riparazioni assistite, il tecnico apre il terminale a un banco di riparazione libero, prepara l'offerta di riparazione per il cliente e resta lì fino all'accettazione. Il banco viene riservato prima del pagamento. Una riparazione pagata andata a buon fine esegue la sequenza di assemblaggio con quel giocatore come tecnico; il self-service usa il tecnico del negozio. Il motore del telefono gestisce la riparazione del dispositivo e recupera i lavori pagati dopo una sessione del server interrotta. I prop lato client non creano né sostituiscono mai un telefono nell'inventario.
La scheda Space, ai punti di controllo sul tetto e al bancone, controlla copertura, clima, serrature, illuminazione e schermo. Geometria, protezione dalle intemperie, pavimenti e sedute dell'MLO completato vengono mantenuti.