FunkcjeWłasny serwerDla twórcówTrilogy Hub vs MTAFAQDocs Lua Pobierz launcher
  1. Dokumentacja
  2. Zasoby i meta.xml

Przewodnik

Zasoby i meta.xml

Wszystko o pliku meta.xml: skrypty serwera, klienta i wspólne, pliki dla graczy, eksporty i kolejność pobierania.

Pełny przykład

<meta>
    <info author="Ty" name="Mój tryb" version="1.0" type="gamemode" />

    <script src="server.lua" type="server" />
    <script src="client.lua" type="client" />
    <script src="wspolne.lua" type="shared" />
    <script src="tajne.lua" type="client" cache="false" />

    <file src="logo.png" />
    <file src="muzyka.mp3" download="false" />

    <download_priority_group>10</download_priority_group>
    <export function="dajNagrode" type="server" />
</meta>

info

Opis zasobu. Atrybut type to script (domyślnie) albo gamemode. Tryby gry startują na końcu, gdy inne zasoby są już gotowe.

script

AtrybutZnaczenie
srcścieżka do pliku .lua w folderze zasobu
type="server"skrypt działa tylko na serwerze i nigdy go nie opuszcza
type="client"skrypt jest wysyłany do gracza i działa w jego grze
type="shared"ten sam plik działa po obu stronach
cache="false"skrypt klienta nie jest zapisywany na dysku gracza, tylko pobierany przy każdym wejściu

Skrypty wspólne przydają się na stałe dane i funkcje pomocnicze, np. tabelę cen albo listę pojazdów. Po każdej stronie działają niezależnie: zmiana zmiennej na serwerze nie zmienia jej u gracza.

file

Plik wysyłany do gracza: obraz, dźwięk, czcionka, dane. Gracz pobiera go przy wejściu, a przy następnym wejściu tylko wtedy, gdy plik się zmienił.

Z download="false" plik nie jest pobierany przy starcie. Skrypt klienta ściąga go sam, kiedy go potrzebuje, przez downloadFile("muzyka.mp3"), a wynik dostaje w zdarzeniu onClientFileDownloadComplete.

download_priority_group

Kolejność pobierania przy wejściu gracza. Większa liczba jest pobierana wcześniej, domyślnie 0, ujemne na końcu. Przydaje się, gdy ekran logowania ma się pojawić, zanim dojdą ciężkie pliki innych zasobów.

export

Udostępnia funkcję innym zasobom. Wywołujesz ją przez exports:

-- meta.xml zasobu "nagrody": <export function="dajNagrode" type="server" />
function dajNagrode(gracz, kwota)
    givePlayerMoney(gracz, kwota)
    return true
end

Limity i konsola

Jeden plik może mieć do 64 MB, cały zasób do 256 MB. Wszystko, co zasób utworzy (pojazdy, obiekty, okna, timery), znika po jego zatrzymaniu.

KomendaCo robi
start <zasób>uruchamia zasób
stop <zasób>zatrzymuje zasób i usuwa wszystko, co utworzył
restart <zasób>zatrzymuje i uruchamia ponownie, także u graczy