Zum Inhalt springen

Anpassung

Alles, was du anpassen sollst, befindet sich in vier offenen Ordnern: config/, locales/, bridge/ und items/. Der restliche Lua-Code ist escrowed.


DateiWas sie bestimmtOffen?
config/config.luaSprache, Interaktionssystem, Benachrichtigungen, Lieferungen, Offline-Mining, NPC-Händler und dessen BlipJa
config/warehouses.luaDie drei Lagerhallen: Preis, Rig-Plätze, Bild, Spawnpunkt, Ablageort für Pakete; Ausgang und Blips eigener HallenJa
config/shop.luaJedes Bauteil im Laptop-Shop: Preis, Watt, Hashrate, KategorieJa
config/cryptos.luaDie Coins: Name, Basispreis, Volatilität, Schwierigkeit, Farbe, IconJa
config/webhook.luaDie beiden Discord-Webhooks. Wird ausschließlich auf dem Server geladenJa
locales/*.luaAlle Texte, im Spiel und auf dem LaptopJa
bridge/bridge_client.luaBenachrichtigungen, Hilfetexte, Callbacks und der Wrapper für ox_target / qb-target / drawtextJa
bridge/bridge_server.luaSpieler, Geld, Namen und Items über fmLibJa
items/Item-Definitionen für ox, qb und ESX sowie die Item-IconsJa
html/Der Händler-Shop und der Laptop-Bildschirm sowie die Lagerhallen-Bilder in html/img/Ja, nicht escrowed
mic_crypto_props/Die gestreamten Modelle und die 3D-Vorschauen auf dem LaptopNur Assets

OptionWas sie tutStandard
Config.LocaleWelche Datei in locales/ verwendet wird'en'
Config.Interactionox_target, qb-target oder drawtext (ein Taste E drücken-Hinweis)'ox_target'
Config.CustomLaptopNotificacionstrue: Shop- und Trade-Meldungen erscheinen als Toast auf dem Laptop. false: normale Benachrichtigungen des Frameworkstrue
Config.ReceiveProductsDirectlyToInventorytrue: am Laptop gekaufte Teile landen direkt im Inventar. false: ein Paket wird in der Lagerhalle zum Aufheben abgelegtfalse
Config.OfflineMiningOb Rigs weiter minen, während der Besitzer offline isttrue
Config.OfflineRateGeschwindigkeit des Offline-Minings. 1.0 ist volle Geschwindigkeit, 0.5 die Hälfte1.0

Der Optionsname CustomLaptopNotificacions ist in der Datei so geschrieben — behalte die Schreibweise bei.

OptionWas sie tutStandard
Config.NPC.modelPed-Modell des Händlerss_m_y_ammucity_01
Config.NPC.coordsStandort des Händlers samt AusrichtungAm Hafen
Config.NPC.scenarioWas der Händler tutWORLD_HUMAN_CLIPBOARD
Config.NPC.interactDistanceErforderliche Nähe2.5
Config.Blip.enableHändler auf der Karte anzeigentrue
Config.Blip.sprite / color / scaleAussehen des Blips478 / 5 / 0.8
Config.Blip.nameName des BlipsCrypto Warehouse Shop

LagerhalleidPreisRig-Plätze (rigSlots)
Kleinwarehouse_small50.0008
Mittelwarehouse_medium150.00021
Großwarehouse_large350.00037

Jede Lagerhalle besitzt diese Felder:

FeldWas es tut
idInterner Name. Behalte die drei IDs exakt so bei
name, descriptionShop-Texte aus der Sprachdatei
priceKosten, bezahlt bar oder per Bank nach Wahl des Käufers
rigSlotsDie im Shop angezeigte Zahl
imageBild im Shop aus html/img/
security, powerIm Shop angezeigte Beschriftungen
viewCoordsWohin View den Käufer vor dem Kauf zur Besichtigung teleportiert
insideCoordsWo du nach dem Eintreten ankommst; hier ist auch der Ausgang
packageCoordsWo das Lieferpaket landet

Über der Liste:

OptionWas sie tutStandard
Config.ExitCoordsWo jeder herauskommt, egal in welcher Lagerhalle er warNeben dem Händler
Config.WarehouseBlipsSprite, Farbe und Skalierung des Blips für eigene Lagerhallen478, grün, 0.7

Config.Shop.Categories definiert die vier Reiter des Laptop-Shops (GPUs, PSUs, Lüfter, Racks). Config.Shop.Items ist die Teileliste. Laptop-Einkäufe werden immer vom Bankkonto bezahlt.

FeldWas es tut
idDer Item-Name. Muss zu einem Item im Inventar und einem Modell in mic_crypto_props passen
categorygpus, psus, fans oder racks
label, descriptionShop-Texte aus der Sprachdatei
pricePreis
imageName der Icon-Datei
wattsFür GPUs und Lüfter: Stromverbrauch. Für PSUs: gelieferte Leistung
hashrateNur GPUs: GH/s pro Karte
temperature, coolingHitze pro GPU und Kühlung pro Lüfter, genutzt für die Balancing-Tabelle oben in der Datei. In dieser Version im Spiel nicht aktiv — geprüft wird die Leistung

Standardpreise:

BauteilPreisBauteilPreis
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

Der Kommentarblock oben in config/shop.lua rechnet vor, welche Netzteile und Lüfter jede GPU-Stufe für ein volles Rig benötigt. Lies ihn, bevor du watts anpasst — so bleiben alle Stufen zuverlässig baubar.

Wie die Stromleistung geprüft wird. Wird eine GPU oder ein Lüfter eingebaut, muss der Gesamtverbrauch des Rigs (alle GPUs und Lüfter) zusammen mit dem neuen Bauteil innerhalb der Gesamtkapazität der Netzteile liegen. Reicht der Strom nicht aus, wird der Einbau mit dem Hinweis Nicht genug Strom abgelehnt.


Vier Coins werden mitgeliefert. Du kannst Einträge beliebig ergänzen oder entfernen; ein neuer Coin wird beim nächsten Serverstart zur Markttabelle hinzugefügt.

CoinNameBasispreisrangedifficulty
MWXMerryweather Crypto850,50101.0
FLKFleeca Token45,2050.5
PEGPegassi Coin12.500,00255.0
LIFELifeInvader Chain120,75150.8
FeldWas es tut
labelIm Laptop angezeigter Name aus der Sprachdatei
shortTicker-Symbol
basePricePreis, um den der Coin schwankt
rangeMaximale Schwankungsbreite in Prozent nach oben/unten
difficultyJe höher, desto langsamer das Mining
color, iconFarbe und Font-Awesome-Icon auf dem Laptop

Wie sich der Markt bewegt. Alle 15 Minuten erhält jeder Coin einen neuen Kurs: Sein basePrice verschiebt sich um einen Zufallswert innerhalb von range Prozent nach oben oder unten. Der Kurs wird gespeichert und übersteht Neustarts.

Wie Mining vergütet wird. Besitzer verteilen die Hashrate ihrer Lagerhalle über Schieberegler am Laptop auf die Coins. Jede Minute bringt jeder Coin zugewiesene GH/s × 0,01 ÷ difficulty ein. Eine Badger-Karte (0,10 GH/s) auf MWX erzeugt 0,001 MWX pro Minute. Nicht zugewiesene Hashrate schürft nichts.

Trading. Der Kauf eines Coins bucht das Geld vom Bankkonto des Spielers am Laptop ab; ein Verkauf zahlt es auf dessen Bankkonto ein. Die Guthaben gehören der Lagerhalle, sodass jeder eingeladene Mitbenutzer damit handeln kann.


OptionWas protokolliert wird
Config.WebhookBuyJeder Krypto-Kauf an der Börse
Config.WebhookSellJeder Krypto-Verkauf an der Börse

Jede Nachricht enthält den Charakternamen, seine license-, steam- und discord-Identifikatoren (Discord als Erwähnung), den Coin, die Menge und den Gesamtbetrag. Lasse eine URL leer, um das entsprechende Logging abzuschalten. Die Nachrichtentexte liegen in der Sprachdatei (webhook_buy, webhook_sell).

Diese Datei wird ausschließlich serverseitig geladen, sodass URLs niemals an Spieler übermittelt werden.


Elf Sprachen werden in locales/ mitgeliefert: en, es, fr, de, it, pt, nl, ar, ja, ko, ru. Trage den Code in Config.Locale ein.

Um eine Sprache hinzuzufügen, kopiere locales/en.lua in eine neue Datei mit deinem Sprachcode, ändere die Zeile Locales['en'] passend ab, übersetze die rechte Seite jeder Zeile und stelle Config.Locale darauf ein. Der Laptop und der Händler-Shop lesen dieselbe Datei.

Ein fehlender Textschlüssel wird als Translation [xx][key] does not exist angezeigt — es gibt keinen automatischen Fallback auf Englisch, behalte daher alle Schlüssel aus en.lua bei.

Einige Hinweise sind im escrow-geschützten Code auf Englisch hinterlegt (die Hilfetexte Press E to place Rig / install GPU und die Beschriftung Collect Package) und stammen nicht aus der Sprachdatei.


bridge/ ist offen, damit du das Skript an die Systeme deines Servers anpassen kannst.

DateiWas sie abdeckt
bridge/bridge_client.luaFramework-Erkennung, Bridge.Notify, Bridge.ShowHelpNotification, Callbacks und alle Interaktionen: Entity-, Zonen- und Modell-Targets für ox_target, qb-target oder die Drawtext-Schleife
bridge/bridge_server.luaFramework-Erkennung, Spieler, Bargeld und Bank, Charakternamen sowie AddItem / HasItem / RemoveItem / RegisterUsableItem über fmLib

Ein anderes Benachrichtigungssystem: passe Bridge.Notify in beiden Dateien an.

Ein anderes Target-System: die drei Add…Interaction-Funktionen und ihre Remove…-Gegenstücke in bridge_client.lua sind die einzigen Stellen, an denen Targets verwendet werden.

Ein anderes Framework: der Erkennungsblock oben in jeder Datei sowie die Geld-, Spieler- und Namensfunktionen sind alles, was nötig ist. Items hängen nicht vom Framework ab — sie laufen über fmLib.

Geldkonten. Lagerhallen werden mit cash oder bank bezahlt (Wahl des Käufers); Laptop-Käufe und Börsentransaktionen nutzen bank. Bei ESX entspricht cash dem Bargeld des Spielers und bank dem Bankkonto.