Przejdź do głównej zawartości

Personalizacja

Wszystko, co możesz zmienić, znajduje się w config.lua i locales/. Reszta zasobu jest objęta escrow, poza ekranami aplikacji.


PlikZa co odpowiadaOtwarty do edycji
config.luaFramework, pieniądze, szansa porażki, policja, wpis w App Store, narkotyki, poziomy, strefyTak
locales/*.luaPowiadomienia w telefonie, jeden plik na językTak
locales/locales.luaTabela tłumaczeń, którą wypełniają pliki językoweTak
ui/img/Obrazki aplikacji: po jednym na narkotyk, logo ekranu głównego i ikona aplikacji (icon.png)Tak
ui/index.html, ui/styles.css, ui/script.jsEkrany aplikacji, układ i etykiety przycisków—
player_data.jsonSprzedaże, poziom i premia każdego dilera. Zapisywany przez zasóbTak
client/, server/LogikaEscrow

Nie ma osobnego folderu bridge: framework wybiera się opcją Config.Framework opisaną niżej.


OpcjaCo robiDomyślnie
Config.Framework"ESX" lub "QB", wielkimi literami. Na QBox użyj "QB" — QBox uruchamia zasoby QBCore przez swoją warstwę kompatybilności"ESX"
Config.esxResourceNameNazwa zasobu ESX, jeśli twoja różni się od standardowej"es_extended"
Config.qbResourceNameNazwa zasobu QBCore, jeśli twoja różni się od standardowej. Na QBox zostaw "qb-core""qb-core"
Config.BlackMoneyPłać czarną gotówką zamiast czystejtrue
Config.MoneyAsItemPłać jako przedmiot w ekwipunku zamiast na kontotrue
Config.MoneyItemPrzedmiot wypłacany, gdy MoneyAsItem jest włączone, a BlackMoney wyłączone"money"

Co gracz faktycznie otrzymuje:

ESXQBCore / QBox
Czarna gotówka, jako przedmiotPrzedmiot black_moneyPrzedmiot blackmoney
Czarna gotówka, jako kontoKonto black_moneyPrzedmiot blackmoney
Czysta gotówka, jako przedmiotPrzedmiot z Config.MoneyItemPrzedmiot z Config.MoneyItem
Czysta gotówka, jako kontoGotówkaGotówka

OpcjaCo robiDomyślnie
Config.FailureSzansa, od 0 do 100, że kupiec odeśle gracza po zapukaniu. Narkotyki zostają przy graczu55
Config.DealTimeoutLiczba sekund na dotarcie do drzwi, zanim oferta wygaśnie300
Config.MinimumPoliceLiczba funkcjonariuszy online, zanim ktokolwiek kupi. 0 wyłącza sprawdzanie1

Sprzedawana ilość jest losowana między minAmount a maxAmount danego narkotyku w chwili, gdy gracz stuknie SELL; drzwi są losowane spośród stref danego narkotyku.


OpcjaCo robiDomyślnie
Config.PoliceJobsPrace liczone jako policja, a zarazem te, które otrzymują alertypolice, sheriff
Config.PoliceAlertChanceSzansa, od 0 do 100, że udana sprzedaż zostanie zgłoszona20
Config.PoliceNotifyAppNameTytuł alertu na lb-phone funkcjonariusza"Police Dispatch"
Config.PoliceBlipSpriteZnacznik umieszczany w miejscu sprzedaży161
Config.PoliceBlipColorJego kolor38
Config.PoliceBlipScaleJego rozmiar1.0
Config.PoliceBlipDurationLiczba sekund, zanim znacznik zniknie120
Config.PriceMultipliersProgi cen według liczby funkcjonariuszy online, każdy z minPolice, maxPolice i multiplierZobacz niżej

Dostarczone progi: 1–2 funkcjonariuszy ×1.0, 3–4 ×1.2, 5–6 ×1.4, 7–9 ×1.6, 10 lub więcej ×2.0. Przy liczbie funkcjonariuszy, której nie obejmuje żaden próg, ceny zostają na ×1.0.

Jak liczona jest cena. Premia za poziom i premia policyjna są dodawane, a nie mnożone: diler poziomu 5 (×1.5) sprzedający przy sześciu funkcjonariuszach online (×1.4) dostaje 1 + 0.5 + 0.4 = ×1.9 ceny bazowej.

Alert dostaje każdy funkcjonariusz z pracą z PoliceJobs; nie ma sprawdzania, czy jest na służbie.


OpcjaCo robiDomyślnie
Config.BlockedAppJobsPrace, które nie mogą zobaczyć ani zainstalować aplikacji. Sprawdzane przy wczytaniu gracza i przy każdej zmianie jego pracypolice, sheriff, ambulance, mechanic

OpcjaCo robiDomyślnie
Config.nameNazwa aplikacji w telefonie"Drug Dealer"
Config.descriptionLinijka pod nią w App Store"Deal dope, dodge the cops"
Config.defaultApptrue instaluje ją od razu na każdym telefonie; false oznacza, że pobiera się ją z App Storefalse
Config.sizeRozmiar pokazywany w sklepie, w KB25400
Config.priceIle kosztuje instalacja0

Ikoną aplikacji jest ui/img/icon.png. Aby ją zmienić, podmień ten plik.


Config.drugs to lista; każdy wpis to jeden przycisk w aplikacji.

PoleCo robi
itemPrzedmiot z ekwipunku, który jest sprzedawany
labelNazwa pokazywana w aplikacji i w powiadomieniach
priceCena za sztukę, przed premiami
minAmount, maxAmountZakres, z którego losowana jest ilość w każdej transakcji
zonesW których strefach z Config.NPCLocations może znajdować się kupiec
imageNazwa pliku w ui/img/
minLevelPoziom dilera potrzebny do sprzedaży

Aby dodać narkotyk, dodaj wpis, wrzuć jego obrazek do ui/img/ i upewnij się, że przedmiot istnieje w twoim ekwipunku. Obrazki, które już tam są i których używa dostarczona lista: baggy_weed.png, baggy_cocaine.png, lsd.png, baggy_meth.png, mushroom.png, opium.png, crack.png, drug_heroin.png, xtc_baggy.png, oxy.png, drug_lean.png, drug_hash.png.


Config.levels wylicza rangi po kolei. Każda ma numer level, name, salesRequired (łączna liczba transakcji, a nie sztuk) i bonusMultiplier.

PoziomNazwaSprzedażePremia
1Newbie0×1.0
2Rookie25×1.1
3Hustler75×1.2
4Dealer150×1.35
5Trader300×1.5
6Boss600×1.75
7Kingpin1200×2.0
8Overlord2000×2.25
9Tycoon3500×2.5
10Legend5000×3.0

Zachowaj rosnącą kolejność salesRequired; poziom jest wyliczany przez przejście listy w dół.

OpcjaCo robiDomyślnie
Config.dataFilePlik w folderze zasobu, w którym zapisywane są postępy każdego dilera"player_data.json"

Postępy są przechowywane dla każdej postaci osobno: według identyfikatora ESX lub citizen ID z QBCore.


Config.NPCLocations jest ponumerowane; te numery są tym, do czego odwołuje się pole zones narkotyku. Każda strefa ma:

PoleCo robi
pedsModele pedów, losowo wybierany jeden z nich otwiera drzwi
locationsPozycje drzwi (x, y, z i heading)
StrefaObszarDostarczone drzwi
1Grove1
2Molo i plaża10
3Domy Vinewood10
4Sandy Shores8
5Paleto Bay9

Strefy i drzwi możesz dodawać swobodnie. Jedna rzecz, o której warto wiedzieć: nazwa strefy w alercie policyjnym pochodzi z samego zasobu i zna tylko strefy od 1 do 5; każda dodana przez ciebie strefa jest zgłaszana jako “Unknown Zone”.


W locales/ dostarczonych jest dziewięć: en, es, fr, de, it, pt, pl, ru i tr. Ustaw Config.Locale na jeden z nich.

Aby dodać nowy:

  1. Skopiuj locales/en.lua do nowego pliku, na przykład locales/nl.lua.
  2. Zmień kod na początku na nl i przetłumacz tekst.
  3. Dodaj locales/nl.lua do listy shared_scripts w fxmanifest.lua, obok pozostałych i powyżej config.lua.
  4. Ustaw Config.Locale = "nl", a następnie wykonaj refresh i zrestartuj zasób.

Tłumaczenia w locales obejmują powiadomienia w telefonie. Własne przyciski aplikacji — DRUGS, PROFILE, SELL, CANCEL oraz ekran profilu — są zapisane w ui/script.js i ui/index.html.