Salta ai contenuti

Personalizzazione

Tutto ciò che è pensato per essere modificato si trova in quattro cartelle aperte: config/, locales/, bridge/ e items/. Il resto del codice Lua è protetto da escrow.


FileCosa decideAperto?
config/config.luaLingua, sistema di interazione, notifiche, consegne, mining offline, l’NPC venditore e il suo blipSì
config/warehouses.luaI tre magazzini: prezzo, postazioni rig, immagine, punto di arrivo, punto di consegna pacchi; impostazioni di uscita e blip possedutiSì
config/shop.luaOgni componente nel negozio del laptop: prezzo, watt, hashrate, categoriaSì
config/cryptos.luaLe monete: nome, prezzo base, volatilità, difficoltà, colore, iconaSì
config/webhook.luaI due webhook Discord. Caricato solo lato serverSì
locales/*.luaOgni stringa di testo, in gioco e sul laptopSì
bridge/bridge_client.luaNotifiche, testo di aiuto, callback e il wrapper per ox_target / qb-target / drawtextSì
bridge/bridge_server.luaGiocatori, denaro, nomi e oggetti tramite fmLibSì
items/Definizioni degli oggetti per ox, qb ed ESX, e le icone degli oggettiSì
html/Il negozio del venditore e lo schermo del laptop, più le immagini dei magazzini in html/img/Sì, non escrowed
mic_crypto_props/I modelli in streaming e le anteprime 3D mostrate dal laptopSolo asset

OpzioneCosa faPredefinito
Config.LocaleQuale file in locales/ viene utilizzato'en'
Config.Interactionox_target, qb-target o drawtext (un avviso Premi E)'ox_target'
Config.CustomLaptopNotificacionstrue: i messaggi del negozio e degli scambi appaiono come toast sullo schermo del laptop. false: notifiche normali del tuo frameworktrue
Config.ReceiveProductsDirectlyToInventorytrue: i pezzi acquistati sul laptop vanno dritti nell’inventario. false: viene lasciata una scatola nel magazzino da raccoglierefalse
Config.OfflineMiningSe i rig continuano a minare mentre il proprietario è disconnessotrue
Config.OfflineRateVelocità del mining offline. 1.0 è velocità piena, 0.5 metà1.0

Il nome dell’opzione CustomLaptopNotificacions è scritto esattamente così nel file — mantieni questa ortografia.

OpzioneCosa faPredefinito
Config.NPC.modelModello ped del venditores_m_y_ammucity_01
Config.NPC.coordsDove si trova il venditore, con rotazioneVicino al porto
Config.NPC.scenarioCosa sta facendo il venditoreWORLD_HUMAN_CLIPBOARD
Config.NPC.interactDistanceQuanto devi essere vicino2.5
Config.Blip.enableMostra il venditore sulla mappatrue
Config.Blip.sprite / color / scaleAspetto del blip478 / 5 / 0.8
Config.Blip.nameNome del blipCrypto Warehouse Shop

MagazzinoidPrezzoPostazioni rig (rigSlots)
Piccolowarehouse_small50,0008
Mediowarehouse_medium150,00021
Grandewarehouse_large350,00037

Ogni magazzino ha questi campi:

CampoCosa fa
idNome interno. Mantieni i tre id così come sono
name, descriptionTesto del negozio, preso dal file della lingua
priceCosto, pagato in contanti o banca — sceglie l’acquirente
rigSlotsIl numero mostrato nel negozio
imageImmagine nel negozio, presa da html/img/
security, powerEtichette mostrate nel negozio
viewCoordsDove il pulsante Visualizza manda l’acquirente per dare un’occhiata
insideCoordsDove arrivi quando entri; anche l’uscita si trova qui
packageCoordsDove atterra la scatola delle consegne

Sopra l’elenco:

OpzioneCosa faPredefinito
Config.ExitCoordsDove escono tutti, indipendentemente dal magazzino in cui si trovavanoAccanto al venditore
Config.WarehouseBlipsSprite, colore e scala del blip per i magazzini che possiedi478, verde, 0.7

Config.Shop.Categories imposta le quattro schede del negozio sul laptop (GPU, PSU, ventole, rack). Config.Shop.Items è l’elenco dei componenti. Gli acquisti dal laptop vengono sempre pagati tramite banca.

CampoCosa fa
idIl nome dell’oggetto. Deve corrispondere a un oggetto nel tuo inventario e a un modello in mic_crypto_props
categorygpus, psus, fans o racks
label, descriptionTesto del negozio, preso dal file della lingua
priceCosto
imageNome del file dell’icona
wattsPer GPU e ventole: quanto consuma. Per i PSU: quanto fornisce
hashrateSolo GPU: GH/s per scheda
temperature, coolingCalore per GPU e raffreddamento per ventola, usati dallo schema di bilanciamento in cima al file. Questa versione non li applica in gioco — viene controllata l’energia

Prezzi predefiniti:

ComponentePrezzoComponentePrezzo
Badger Comm-100450PostOP 500W150
Wiwang PC-G900Whiz Wireless 850W350
eCola OC Edition1,600Merryweather 1600W800
iFruit Pro Max2,800Darrell Brother Fan45
Sprunk Xtreme4,500FlyUS Aero Fan120
Standard 5-Slot Rig1,200Atomic Vortex 120mm250

Il blocco di commenti in cima a config/shop.lua spiega quali PSU e ventole servono a ciascuna fascia di GPU per un rig completo. Leggilo prima di modificare watts — è il modo più rapido per mantenere ogni fascia assemblabile.

Come viene controllata l’alimentazione. Quando viene installata una GPU o una ventola, il consumo totale del rig (ogni GPU e ventola presente) più il nuovo componente deve rientrare nella capacità totale dei suoi PSU. In caso contrario, il componente viene rifiutato con un messaggio di energia insufficiente.


Sono incluse quattro monete. Puoi aggiungere o rimuovere voci liberamente; una nuova moneta viene aggiunta alla tabella del mercato al successivo avvio.

MonetaNomePrezzo baserangedifficulty
MWXMerryweather Crypto850.50101.0
FLKFleeca Token45.2050.5
PEGPegassi Coin12,500.00255.0
LIFELifeInvader Chain120.75150.8
CampoCosa fa
labelNome mostrato sul laptop, preso dal file della lingua
shortSigla (ticker)
basePriceIl prezzo attorno al quale oscilla la moneta
rangeDi quanto può oscillare, in percentuale in positivo o negativo
difficultyPiù è alta, più è lento il mining
color, iconColore e icona Font Awesome sul laptop

Come si muove il mercato. Ogni 15 minuti ciascuna moneta riceve un nuovo prezzo: il suo basePrice sale o scende di un valore casuale entro la percentuale range. Il prezzo viene salvato, quindi sopravvive ai riavvii.

Come paga il mining. I proprietari dividono l’hashrate del loro magazzino tra le monete usando i cursori sul laptop. Ogni minuto, ciascuna moneta guadagna GH/s allocati × 0.01 ÷ difficulty. Una scheda Badger (0.10 GH/s) su MWX genera 0.001 MWX al minuto. L’hashrate non allocato a una moneta non mina nulla.

Trading. Acquistare una moneta preleva il denaro dalla banca del giocatore al laptop; vendere versa il denaro nella banca del giocatore al laptop. I saldi appartengono al magazzino, quindi chiunque abbia l’accesso condiviso può scambiarli.


OpzioneCosa viene registrato
Config.WebhookBuyOgni acquisto di cripto sull’exchange
Config.WebhookSellOgni vendita di cripto sull’exchange

Ogni messaggio contiene il nome del personaggio, i suoi identificatori license, steam e discord (quello Discord come menzione), la moneta, la quantità e il totale. Lascia un URL vuoto per disattivare quel log. Il testo del messaggio si trova nel file della lingua (webhook_buy, webhook_sell).

Questo file viene caricato solo lato server, quindi gli URL non vengono mai inviati ai giocatori.


In locales/ sono presenti undici lingue: en, es, fr, de, it, pt, nl, ar, ja, ko, ru. Imposta Config.Locale sul codice desiderato.

Per aggiungerne una, copia locales/en.lua in un nuovo file rinominato con il tuo codice, cambia la riga Locales['en'] con il tuo codice, traduci la parte destra di ogni riga e imposta Config.Locale su di esso. Il laptop e il negozio del venditore leggono lo stesso file.

Una chiave mancante nel tuo file viene mostrata come Translation [xx][key] does not exist — non c’è fallback all’inglese, quindi mantieni tutte le chiavi presenti in en.lua.

Alcuni avvisi sono scritti in inglese nel codice sotto escrow (il testo di aiuto Press E to place Rig / install GPU e l’etichetta Collect Package) e non provengono dal file della lingua.


La cartella bridge/ è aperta così puoi collegare lo script a qualsiasi risorsa usi il tuo server.

FileCosa gestisce
bridge/bridge_client.luaRilevamento del framework, Bridge.Notify, Bridge.ShowHelpNotification, callback e ogni interazione: target per entità, zone e modelli per ox_target, qb-target o il ciclo drawtext integrato
bridge/bridge_server.luaRilevamento del framework, giocatori, contanti e banca, nomi dei personaggi e AddItem / HasItem / RemoveItem / RegisterUsableItem tramite fmLib

Una risorsa di notifiche diversa: modifica Bridge.Notify in entrambi i file.

Una risorsa di target diversa: le tre funzioni Add…Interaction e le rispettive Remove… in bridge_client.lua sono gli unici punti in cui vengono gestiti i target.

Un framework diverso: il blocco di rilevamento in cima a ciascun file e le funzioni per denaro, giocatore e nome sono tutto ciò che serve. Gli oggetti non dipendono dal framework — passano tramite fmLib.

Conti in denaro. I magazzini vengono pagati tramite cash o bank (sceglie l’acquirente); gli acquisti e gli scambi sul laptop usano bank. Su ESX, cash sono i contanti del giocatore e bank è il conto bancario.