Przejdź do głównej zawartości

Personalizacja

Wszystko, co masz zmieniać, znajduje się w czterech otwartych folderach: config/, locales/, bridge/ i items/. Reszta Lua jest objęta escrow.


PlikO czym decydujeOtwarty?
config/config.luaJęzyk, system interakcji, powiadomienia, dostawy, kopanie offline, NPC dealera i jego blipTak
config/warehouses.luaTrzy magazyny: cena, miejsca na rigi, obraz, miejsce pojawienia się, miejsce lądowania paczek; ustawienia wyjścia i blipów posiadanych magazynówTak
config/shop.luaKażda część w sklepie na laptopie: cena, waty, hashrate, kategoriaTak
config/cryptos.luaMonety: nazwa, cena bazowa, zmienność, trudność, kolor, ikonaTak
config/webhook.luaDwa webhooki Discord. Ładowane tylko na serwerzeTak
locales/*.luaKażdy tekst, w grze i na laptopieTak
bridge/bridge_client.luaPowiadomienia, tekst pomocy, callbacki oraz wrapper ox_target / qb-target / drawtextTak
bridge/bridge_server.luaGracze, pieniądze, imiona i przedmioty przez fmLibTak
items/Definicje przedmiotów dla ox, qb i ESX oraz ikony przedmiotówTak
html/Sklep dealera i ekran laptopa, a także obrazy magazynów w html/img/Tak, bez escrow
mic_crypto_props/Streamowane modele i podglądy 3D pokazywane na laptopieTylko zasoby

OpcjaCo robiDomyślnie
Config.LocaleKtóry plik z locales/ jest używany'en'
Config.Interactionox_target, qb-target lub drawtext (podpowiedź Press E)'ox_target'
Config.CustomLaptopNotificacionstrue: komunikaty sklepu i handlu pojawiają się jako toasty na ekranie laptopa. false: zwykłe powiadomienia twojego frameworkatrue
Config.ReceiveProductsDirectlyToInventorytrue: części kupione na laptopie trafiają prosto do ekwipunku. false: w magazynie zostaje zrzucona paczka do odebraniafalse
Config.OfflineMiningCzy rigi kopią, gdy właściciel jest rozłączonytrue
Config.OfflineRateJak szybko działa kopanie offline. 1.0 to pełna prędkość, 0.5 połowa1.0

Nazwa opcji CustomLaptopNotificacions jest tak zapisana w pliku — zachowaj pisownię.

OpcjaCo robiDomyślnie
Config.NPC.modelModel peda dealeras_m_y_ammucity_01
Config.NPC.coordsGdzie stoi dealer, wraz z kierunkiemPrzy porcie
Config.NPC.scenarioCo robi dealerWORLD_HUMAN_CLIPBOARD
Config.NPC.interactDistanceJak blisko musisz być2.5
Config.Blip.enablePokazuje dealera na mapietrue
Config.Blip.sprite / color / scaleWygląd blipa478 / 5 / 0.8
Config.Blip.nameEtykieta blipaCrypto Warehouse Shop

MagazynidCenaMiejsca na rigi (rigSlots)
Maływarehouse_small50 0008
Średniwarehouse_medium150 00021
Dużywarehouse_large350 00037

Każdy magazyn ma te pola:

PoleCo robi
idNazwa wewnętrzna. Zostaw trzy identyfikatory bez zmian
name, descriptionTekst sklepu, z pliku lokalizacji
priceKoszt, płatny gotówką lub z banku — wybiera kupujący
rigSlotsLiczba pokazywana w sklepie
imageObraz w sklepie, z html/img/
security, powerEtykiety pokazywane w sklepie
viewCoordsDokąd View wysyła kupującego, by rozejrzał się przed zapłatą
insideCoordsGdzie pojawiasz się po wejściu; tu też jest wyjście
packageCoordsGdzie ląduje paczka z dostawą

Nad listą:

OpcjaCo robiDomyślnie
Config.ExitCoordsGdzie wszyscy wychodzą, niezależnie od tego, w którym magazynie byliObok dealera
Config.WarehouseBlipsSprite, kolor i skala blipa dla magazynów, które posiadasz478, zielony, 0.7

Config.Shop.Categories ustawia cztery karty sklepu na laptopie (GPU, zasilacze, wentylatory, stelaże). Config.Shop.Items to lista części. Zakupy na laptopie są zawsze płatne z banku.

PoleCo robi
idNazwa przedmiotu. Musi odpowiadać przedmiotowi w twoim ekwipunku i modelowi w mic_crypto_props
categorygpus, psus, fans lub racks
label, descriptionTekst sklepu, z pliku lokalizacji
priceKoszt
imageNazwa pliku ikony
wattsDla GPU i wentylatorów: ile pobiera. Dla zasilaczy: ile dostarcza
hashrateTylko GPU: GH/s na kartę
temperature, coolingCiepło na GPU i chłodzenie na wentylator, używane przez zestawienie bilansu na górze pliku. Ta wersja nie uwzględnia ich w grze — egzekwowana jest moc

Ceny domyślne:

CzęśćCenaCzęśćCena
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

Blok komentarza na górze config/shop.lua rozpisuje, jakich zasilaczy i wentylatorów potrzebuje każdy poziom GPU do pełnego rigu. Przeczytaj go, zanim zmienisz watts — to najszybszy sposób, by każdy poziom dało się zbudować.

Jak sprawdzana jest moc. Gdy instalowane jest GPU lub wentylator, łączny pobór rigu (każde GPU i wentylator) plus nowa część muszą zmieścić się w sumie jego zasilaczy. Jeśli się nie mieszczą, część jest odrzucana z komunikatem not enough power.


W zestawie są cztery monety. Dodawaj i usuwaj wpisy swobodnie; nowa moneta jest dodawana do tabeli rynku przy następnym starcie.

MonetaNazwaCena bazowarangedifficulty
MWXMerryweather Crypto850,50101.0
FLKFleeca Token45,2050.5
PEGPegassi Coin12 500,00255.0
LIFELifeInvader Chain120,75150.8
PoleCo robi
labelNazwa pokazywana na laptopie, z pliku lokalizacji
shortTicker
basePriceCena, wokół której moneta się waha
rangeJak mocno może się wahać, w procentach w każdą stronę
difficultyIm wyższa, tym wolniej się kopie
color, iconKolor i ikona Font Awesome na laptopie

Jak porusza się rynek. Co 15 minut każda moneta dostaje nową cenę: jej basePrice przesunięte w górę lub w dół o losową wartość w granicach range procent. Cena jest zapisywana, więc przetrwa restart.

Jak płaci kopanie. Właściciele dzielą hashrate swojego magazynu między monety suwakami na laptopie. Co minutę każda moneta zarabia przydzielone GH/s × 0,01 ÷ difficulty. Jedna karta Badger (0,10 GH/s) na MWX daje 0,001 MWX na minutę. Hashrate nieprzydzielony żadnej monecie niczego nie kopie.

Handel. Kupno monety zabiera pieniądze z banku gracza przy laptopie; sprzedaż wypłaca do banku gracza przy laptopie. Salda należą do magazynu, więc każdy, komu go udostępnisz, może nimi handlować.


OpcjaCo jest logowane
Config.WebhookBuyKażdy zakup krypto na giełdzie
Config.WebhookSellKażda sprzedaż krypto na giełdzie

Każda wiadomość zawiera imię i nazwisko postaci, jej identyfikatory license, steam i discord (Discord jako wzmianka), monetę, ilość i sumę. Zostaw URL pusty, aby wyłączyć dany log. Tekst wiadomości jest w pliku lokalizacji (webhook_buy, webhook_sell).

Ten plik jest ładowany tylko na serwerze, więc adresy URL nigdy nie są wysyłane do graczy.


W locales/ jest jedenaście: en, es, fr, de, it, pt, nl, ar, ja, ko, ru. Ustaw Config.Locale na odpowiedni kod.

Aby dodać nowy, skopiuj locales/en.lua do nowego pliku nazwanego twoim kodem, zmień linię Locales['en'] na swój kod, przetłumacz prawą stronę każdej linii i ustaw w Config.Locale ten kod. Laptop i sklep dealera czytają ten sam plik.

Klucz brakujący w twoim pliku wyświetla się jako Translation [xx][key] does not exist — nie ma powrotu do angielskiego, więc zachowaj każdy klucz z en.lua.

Kilka podpowiedzi jest zapisanych po angielsku w kodzie objętym escrow (tekst pomocy Press E to place Rig / install GPU oraz etykieta Collect Package) i nie pochodzi z pliku lokalizacji.


bridge/ jest otwarty, abyś mógł wskazać skryptowi to, co działa na twoim serwerze.

PlikCo obejmuje
bridge/bridge_client.luaWykrywanie frameworka, Bridge.Notify, Bridge.ShowHelpNotification, callbacki oraz każda interakcja: targety encji, stref i modeli dla ox_target, qb-target lub wbudowanej pętli drawtext
bridge/bridge_server.luaWykrywanie frameworka, gracze, gotówka i bank, imiona postaci oraz AddItem / HasItem / RemoveItem / RegisterUsableItem przez fmLib

Inny zasób powiadomień: zmień Bridge.Notify w obu plikach.

Inny zasób targetu: trzy funkcje Add…Interaction i ich odpowiedniki Remove… w bridge_client.lua to jedyne miejsca, w których dotyka się targetów.

Inny framework: blok wykrywania na górze każdego pliku oraz funkcje pieniędzy, gracza i imienia to wszystko, co trzeba. Przedmioty nie zależą od frameworka — przechodzą przez fmLib.

Konta pieniężne. Magazyny są płatne z cash lub bank (wybiera kupujący); zakupy na laptopie i handel używają bank. Na ESX cash to pieniądze gracza, a bank to konto bankowe.