8.1. fejezet: Az első modod (Hello World)
Kezdőlap | Az első modod | Következő: Egyéni tárgy létrehozása >>
Összefoglalás: Ez az útmutató végigvezet az első DayZ mod létrehozásán az abszolút nulláról. Telepíted az eszközöket, beállítod a munkaterületet, három fájlt írsz, PBO-t csomagolsz, betöltöd a modot a DayZ-ben, és ellenőrzöd a működését a szkript log olvasásával. Nincs szükség korábbi DayZ modding tapasztalatra.
Tartalomjegyzék
- Előfeltételek
- 1. lépés: A DayZ Tools telepítése
- 2. lépés: A P: meghajtó beállítása (Workdrive)
- 3. lépés: A mod könyvtárstruktúra létrehozása
- 4. lépés: A mod.cpp megírása
- 5. lépés: A config.cpp megírása
- 6. lépés: Az első szkript megírása
- 7. lépés: PBO csomagolás az Addon Builderrel
- 8. lépés: A mod betöltése a DayZ-ben
- 9. lépés: Ellenőrzés a szkript logban
- 10. lépés: Gyakori problémák megoldása
- Teljes fájl referencia
- Következő lépések
Előfeltételek
Mielőtt elkezded, győződj meg róla, hogy rendelkezel a következőkkel:
- Telepített Steam és bejelentkezve
- Telepített DayZ játék (kiskereskedelmi verzió a Steamből)
- Egy szövegszerkesztő (VS Code, Notepad++ vagy akár Jegyzettömb)
- Körülbelül 15 GB szabad lemezterület a DayZ Tools számára
Ennyi az egész. Ehhez az útmutatóhoz nem szükséges programozási tapasztalat -- minden kódsor el van magyarázva.
1. lépés: A DayZ Tools telepítése
A DayZ Tools egy ingyenes alkalmazás a Steamen, amely mindent tartalmaz, amire szükséged van a modok építéséhez: a Workbench szkriptszerkesztőt, az Addon Buildert PBO csomagoláshoz, a Terrain Buildert és az Object Buildert.
Hogyan telepítsük
- Nyisd meg a Steamet
- Menj a Könyvtárba
- A felső legördülő szűrőben változtasd a Játékok-at Eszközök-re
- Keress rá a DayZ Tools-ra
- Kattints a Telepítés-re
- Várd meg, amíg a letöltés befejeződik (körülbelül 12-15 GB)
A telepítés után a DayZ Tools a Steam könyvtáradban az Eszközök alatt található. Az alapértelmezett telepítési útvonal:
C:\Program Files (x86)\Steam\steamapps\common\DayZ Tools\Mi kerül telepítésre
| Eszköz | Cél |
|---|---|
| Addon Builder | A mod fájljaidat .pbo archívumokba csomagolja |
| Workbench | Szkriptszerkesztő szintaxiskiemeléssel |
| Object Builder | 3D modell megjelenítő és szerkesztő .p3d fájlokhoz |
| Terrain Builder | Térkép/terep szerkesztő |
| TexView2 | Textúra megjelenítő/konverter (.paa, .edds) |
Ehhez az útmutatóhoz csak az Addon Builder-re van szükséged. A többiek később lesznek hasznosak.
2. lépés: A P: meghajtó beállítása (Workdrive)
A DayZ modding egy virtuális meghajtóbetűjelet használ, a P:-t, mint közös munkaterületet. Minden mod és játékadat P:-vel kezdődő útvonalakra hivatkozik, ami konzisztens útvonalakat biztosít különböző gépeken.
A P: meghajtó létrehozása
- Nyisd meg a DayZ Tools-t a Steamből
- A DayZ Tools főablakában kattints a P: Drive Management-re (vagy keress egy "Mount P drive" / "Setup P drive" feliratú gombot)
- Kattints a Create/Mount P: Drive-ra
- Válassz helyet a P: meghajtó adatainak (az alapértelmezett megfelelő, vagy válassz egy meghajtót elegendő hellyel)
- Várd meg, amíg a folyamat befejeződik
A működés ellenőrzése
Nyisd meg a Fájlkezelőt és navigálj a P:\-re. Egy könyvtárat kell látnod, amely DayZ játékadatokat tartalmaz. Ha a P: meghajtó létezik és böngészni tudod, készen állsz a folytatásra.
Alternatíva: Kézi P: meghajtó
Ha a DayZ Tools GUI nem működik, a P: meghajtót manuálisan is létrehozhatod a Windows parancssorból (Rendszergazdaként futtatva):
subst P: "C:\DayZWorkdrive"Cseréld ki a C:\DayZWorkdrive-ot bármely mappára. Ez egy ideiglenes meghajtó-leképezést hoz létre, amely az újraindításig tart. Állandó leképezéshez használd a net use-t vagy a DayZ Tools GUI-t.
Mi van, ha nem akarom használni a P: meghajtót?
Fejleszthetsz a P: meghajtó nélkül is, ha a mod mappádat közvetlenül a DayZ játékkönyvtárba helyezed és -filePatching módot használsz. Azonban a P: meghajtó a szabványos munkafolyamat, és minden hivatalos dokumentáció feltételezi. Határozottan javasoljuk a beállítását.
3. lépés: A mod könyvtárstruktúra létrehozása
Minden DayZ mod egy adott mappastruktúrát követ. Hozd létre a következő könyvtárakat és fájlokat a P: meghajtódon (vagy a DayZ játékkönyvtáradban, ha nem használsz P:-t):
P:\MyFirstMod\
mod.cpp
Scripts\
config.cpp
5_Mission\
MyFirstMod\
MissionHello.cMappák létrehozása
- Nyisd meg a Fájlkezelőt
- Navigálj a
P:\-re - Hozz létre egy új mappát
MyFirstModnéven - A
MyFirstMod-on belül hozz létre egyScriptsmappát - A
Scripts-en belül hozz létre egy5_Missionmappát - Az
5_Mission-on belül hozz létre egyMyFirstModmappát
A struktúra megértése
| Útvonal | Cél |
|---|---|
MyFirstMod/ | A mod gyökérkönyvtára |
mod.cpp | Metaadatok (név, szerző) a DayZ launcherben megjelenítve |
Scripts/config.cpp | Megmondja a motornak, mitől függ a mod és hol vannak a szkriptek |
Scripts/5_Mission/ | A misszió szkriptréteg (UI, indítási hookok) |
Scripts/5_Mission/MyFirstMod/ | Almappa a mod misszió szkriptjeihez |
Scripts/5_Mission/MyFirstMod/MissionHello.c | A tényleges szkriptfájlod |
Pontosan 3 fájlra van szükséged. Hozzuk létre őket egyenként.
4. lépés: A mod.cpp megírása
Hozd létre a P:\MyFirstMod\mod.cpp fájlt a szövegszerkesztődben és illeszd be ezt a tartalmat:
name = "My First Mod";
author = "YourName";
version = "1.0";
overview = "My very first DayZ mod. Prints Hello World to the script log.";Mit csinál minden sor
name-- A DayZ launcher modlistájában megjelenő név. A játékosok ezt látják a modok kiválasztásakor.author-- A neved vagy a csapat neve.version-- Bármilyen verzió szöveg. A motor nem értelmezi.overview-- A mod részleteinél megjelenő leírás.
Mentsd el a fájlt. Ez a mod személyi igazolványa.
5. lépés: A config.cpp megírása
Hozd létre a P:\MyFirstMod\Scripts\config.cpp fájlt és illeszd be ezt a tartalmat:
class CfgPatches
{
class MyFirstMod_Scripts
{
units[] = {};
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] =
{
"DZ_Data"
};
};
};
class CfgMods
{
class MyFirstMod
{
dir = "MyFirstMod";
name = "My First Mod";
author = "YourName";
type = "mod";
dependencies[] = { "Mission" };
class defs
{
class missionScriptModule
{
value = "";
files[] = { "MyFirstMod/Scripts/5_Mission" };
};
};
};
};Mit csinál minden szekció
A CfgPatches deklarálja a mododat a DayZ motornak:
class MyFirstMod_Scripts-- Egyedi azonosító a mod szkriptcsomagjához. Nem ütközhet más modokkal.units[] = {}; weapons[] = {};-- A mod által hozzáadott entitások és fegyverek listája. Egyelőre üres.requiredVersion = 0.1;-- Minimális játékverzió. Mindig0.1.requiredAddons[] = { "DZ_Data" };-- Függőségek. ADZ_Dataaz alapjáték adatai. Ez biztosítja, hogy a mod az alapjáték után töltődik be.
A CfgMods megmondja a motornak, hol vannak a szkriptek:
dir = "MyFirstMod";-- A mod gyökérkönyvtára.type = "mod";-- Ez egy kliens+szerver mod (szemben a"servermod"-dal, ami csak szerverre vonatkozik).dependencies[] = { "Mission" };-- A kódod a Mission szkriptmodulba kapcsolódik.class missionScriptModule-- Megmondja a motornak, hogy fordítsa le az összes.cfájlt aMyFirstMod/Scripts/5_Mission/mappában.
Miért csak 5_Mission? Mert a Hello World szkriptünk a misszió indítási eseményébe kapcsolódik, ami a misszió rétegben él. A legtöbb egyszerű mod itt kezdődik.
6. lépés: Az első szkript megírása
Hozd létre a P:\MyFirstMod\Scripts\5_Mission\MyFirstMod\MissionHello.c fájlt és illeszd be ezt a tartalmat:
modded class MissionServer
{
override void OnInit()
{
super.OnInit();
Print("[MyFirstMod] Hello World! The SERVER mission has started.");
}
};
modded class MissionGameplay
{
override void OnInit()
{
super.OnInit();
Print("[MyFirstMod] Hello World! The CLIENT mission has started.");
}
};Soronkénti magyarázat
modded class MissionServerA modded kulcsszó a DayZ modding szíve. Azt mondja: "Vedd a meglévő MissionServer osztályt a vanília játékból és add hozzá a módosításaimat." Nem hozol létre új osztályt -- a meglévőt bővíted.
override void OnInit()Az OnInit() metódust a motor hívja meg, amikor egy misszió elindul. Az override megmondja a fordítónak, hogy ez a metódus már létezik a szülőosztályban, és mi a saját verziónkra cseréljük.
super.OnInit();Ez a sor kritikus. A super.OnInit() meghívja az eredeti vanília implementációt. Ha kihagyod, a vanília misszió inicializációs kódja soha nem fut le, és a játék elromlik. Mindig hívd meg a super-t először.
Print("[MyFirstMod] Hello World! The SERVER mission has started.");A Print() üzenetet ír a DayZ szkript logfájlba. A [MyFirstMod] előtag megkönnyíti az üzeneteid megtalálását a logban.
modded class MissionGameplayA MissionGameplay a MissionServer kliens oldali megfelelője. Amikor egy játékos csatlakozik egy szerverhez, a MissionGameplay.OnInit() az ő gépén fut le. Mindkét osztály modolásával az üzeneted mind a szerver, mind a kliens logban megjelenik.
A .c fájlokról
A DayZ szkriptek .c fájlkiterjesztést használnak. Bár C-nek tűnnek, ez az Enforce Script, a DayZ saját szkriptnyelve. Vannak benne osztályok, öröklés, tömbök és mapek, de nem C, C++ vagy C#. Az IDE-d szintaxishibákat mutathat -- ez normális és várt viselkedés.
7. lépés: PBO csomagolás az Addon Builderrel
A DayZ modokat .pbo archív fájlokból tölti be (hasonlóak a .zip-hez, de a motor által értett formátumban). A Scripts mappádat PBO-ba kell csomagolnod.
Az Addon Builder használata (GUI)
Nyisd meg a DayZ Tools-t a Steamből
Kattints az Addon Builder-re az indításhoz
Állítsd a Source directory-t erre:
P:\MyFirstMod\Scripts\Állítsd az Output/Destination directory-t egy új mappára:
P:\@MyFirstMod\Addons\Hozd létre a
@MyFirstMod\Addons\mappát először, ha nem létezik.Az Addon Builder Options-ban:
- Állítsd a Prefix-et erre:
MyFirstMod\Scripts - A többi beállítást hagyd alapértelmezetten
- Állítsd a Prefix-et erre:
Kattints a Pack-ra
Ha sikeres, egy fájlt fogsz látni itt:
P:\@MyFirstMod\Addons\Scripts.pboA végleges modstruktúra beállítása
Most másold a mod.cpp fájlt az Addons mappa mellé:
P:\@MyFirstMod\
mod.cpp <-- Másolat a P:\MyFirstMod\mod.cpp-ból
Addons\
Scripts.pbo <-- Az Addon Builder által létrehozvaA @ előtag a mappanéven a terjeszthető modok konvenciója. Jelzi a szerveradminisztrátoroknak és a launchernek, hogy ez egy modcsomag.
Alternatíva: Tesztelés csomagolás nélkül (File Patching)
Fejlesztés során teljesen kihagyhatod a PBO csomagolást file patching módban. Ez közvetlenül a forrásmappáidból tölti be a szkripteket:
DayZDiag_x64.exe -mod=P:\MyFirstMod -filePatchingA file patching gyorsabb az iterációhoz, mert szerkeszted a .c fájlt, újraindítod a játékot, és azonnal látod a változásokat. Nincs szükség csomagolási lépésre. Azonban a file patching csak a diagnosztikai végrehajtható fájllal (DayZDiag_x64.exe) működik, és nem alkalmas terjesztésre.
8. lépés: A mod betöltése a DayZ-ben
Kétféleképpen töltheted be a mododat: a launcheren keresztül vagy parancssori paraméterekkel.
A opció: DayZ Launcher
- Nyisd meg a DayZ Launchert a Steamből
- Menj a Mods fülre
- Kattints az Add local mod-ra (vagy "Add mod from local storage")
- Navigálj a
P:\@MyFirstMod\mappához - Engedélyezd a modot a jelölőnégyzet bejelölésével
- Kattints a Play-re (győződj meg róla, hogy helyi/offline szerverhez csatlakozol, vagy egyjátékos módot indítasz)
B opció: Parancssor (fejlesztéshez ajánlott)
Gyorsabb iterációhoz indítsd a DayZ-t közvetlenül parancssori paraméterekkel. Hozz létre egy parancsikont vagy batch fájlt:
A diagnosztikai végrehajtható fájl használata (file patching-gel, PBO nélkül):
"C:\Program Files (x86)\Steam\steamapps\common\DayZ\DayZDiag_x64.exe" -mod=P:\MyFirstMod -filePatching -server -config=serverDZ.cfg -port=2302A csomagolt PBO használata:
"C:\Program Files (x86)\Steam\steamapps\common\DayZ\DayZDiag_x64.exe" -mod=P:\@MyFirstMod -server -config=serverDZ.cfg -port=2302A -server jelző helyi listen szervert indít. A -filePatching jelző lehetővé teszi a szkriptek betöltését csomagolatlan mappákból.
Gyorsteszt: Offline mód
A leggyorsabb tesztelési mód a DayZ offline módban való indítása:
DayZDiag_x64.exe -mod=P:\MyFirstMod -filePatchingEzután a főmenüben kattints a Play-re és válaszd az Offline Mode-ot (vagy Community Offline-t). Ez helyi egyjátékos munkamenetet indít szerver nélkül.
9. lépés: Ellenőrzés a szkript logban
A DayZ moddal való indítás után a motor minden Print() kimenetet logfájlokba ír.
Logfájlok megtalálása
A DayZ a logokat a helyi AppData könyvtáradban tárolja:
C:\Users\<WindowsFelhasznaloNeved>\AppData\Local\DayZ\Gyors elérés:
- Nyomd meg a Win + R gombot a Futtatás párbeszédpanel megnyitásához
- Írd be:
%localappdata%\DayZés nyomd meg az Entert
Keresd a legfrissebb fájlt ilyen névvel:
script_<datum>_<ido>.logPéldául: script_2025-01-15_14-30-22.log
Mit keress
Nyisd meg a logfájlt a szövegszerkesztődben és keress rá a [MyFirstMod]-ra. Az alábbi üzenetek egyikét kellene látnod:
[MyFirstMod] Hello World! The SERVER mission has started.vagy (ha kliensként töltötted be):
[MyFirstMod] Hello World! The CLIENT mission has started.Ha látod az üzenetedet: gratulálunk. Az első DayZ modod működik. Sikeresen:
- Létrehoztál egy mod könyvtárstruktúrát
- Írtál egy konfigurációt, amelyet a motor olvas
- Bekapcsolódtál a vanília játékkódba
modded classsegítségével - Kimenetet nyomtattál a szkript logba
Mi van, ha hibákat látsz?
Ha a log SCRIPT (E):-vel kezdődő sorokat tartalmaz, valami elromlott. Olvasd el a következő szekciót.
10. lépés: Gyakori problémák megoldása
Probléma: Nincs log kimenet egyáltalán (a mod nem tűnik betöltöttnek)
Ellenőrizd az indítási paramétereket. A -mod= útvonalnak a helyes mappára kell mutatnia. Ha file patching-et használsz, ellenőrizd, hogy az útvonal közvetlenül a Scripts/config.cpp-t tartalmazó mappára mutat (nem a @ mappára).
Ellenőrizd, hogy a config.cpp a megfelelő szinten létezik. A Scripts/config.cpp-ben kell lennie a mod gyökerén belül. Ha rossz mappában van, a motor csendben figyelmen kívül hagyja a mododat.
Ellenőrizd a CfgPatches osztálynevet. Ha nincs CfgPatches blokk, vagy a szintaxisa hibás, az egész PBO kihagyásra kerül.
Nézd meg a fő DayZ logot (nem csak a szkript logot). Ellenőrizd:
C:\Users\<Neved>\AppData\Local\DayZ\DayZ_<datum>_<ido>.RPTKeress a mod nevére. Olyan üzeneteket láthatsz, mint "Addon MyFirstMod_Scripts requires addon DZ_Data which is not loaded."
Probléma: SCRIPT (E): Undefined variable vagy Undefined type
Ez azt jelenti, hogy a kódod olyan dologra hivatkozik, amit a motor nem ismer fel. Gyakori okok:
- Elgépelés az osztálynévben.
MisionServeraMissionServerhelyett (figyelj a dupla 's'-re). - Rossz szkriptréteg. Ha a
PlayerBase-re hivatkozol az5_Mission-ből, annak működnie kell. De ha véletlenül a3_Game-be helyezted a fájlodat és misszió típusokra hivatkozol, ezt a hibát kapod. - Hiányzó
super.OnInit()hívás. Kihagyása kaszkádos hibákat okozhat.
Probléma: SCRIPT (E): Member not found
A metódus, amelyet hívni próbálsz, nem létezik az osztályon. Ellenőrizd kétszer a metódusnevet, és győződj meg róla, hogy valódi vanília metódust írsz felül. Az OnInit létezik a MissionServer-en és a MissionGameplay-en -- de nem minden osztályon.
Probléma: A mod betöltődik, de a szkript soha nem fut le
- Fájlkiterjesztés: Győződj meg róla, hogy a szkriptfájlod
.c-re végződik (nem.c.txtvagy.cs). A Windows alapértelmezetten elrejtheti a kiterjesztéseket. - Szkript útvonal eltérés: A
files[]útvonalnak aconfig.cpp-ben meg kell egyeznie a tényleges könyvtáraddal. A"MyFirstMod/Scripts/5_Mission"azt jelenti, hogy a motor pontosan ezen az útvonalon keresi a mappát a mod gyökeréhez képest. - Osztálynév: A
modded class MissionServermegkülönbözteti a kis- és nagybetűket. Pontosan meg kell egyeznie a vanília osztálynévvel.
Probléma: PBO csomagolási hibák
- Győződj meg róla, hogy a
config.cppannak a gyökérszintjén van, amit csomagolsz (aScripts/mappa). - Ellenőrizd, hogy az Addon Builder-ben lévő prefix megegyezik a mod útvonaladdal.
- Győződj meg róla, hogy a Scripts mappában nincsenek nem-szöveges fájlok keverve (nincs
.exe,.dllvagy bináris fájl).
Probléma: A játék összeomlik indításkor
- Ellenőrizd a szintaxishibákat a
config.cpp-ben. Egy hiányzó pontosvessző, zárójel vagy idézőjel összeomlást okozhat a konfigurációs parserben. - Ellenőrizd, hogy a
requiredAddonsérvényes addon neveket sorol fel. Egy elgépelt addon név kemény hibát okoz. - Távolítsd el a mododat az indítási paraméterekből és erősítsd meg, hogy a játék nélküle elindul. Ezután add vissza a probléma izolálásához.
Teljes fájl referencia
Íme mindhárom fájl teljes formában, könnyű másoláshoz:
1. fájl: MyFirstMod/mod.cpp
name = "My First Mod";
author = "YourName";
version = "1.0";
overview = "My very first DayZ mod. Prints Hello World to the script log.";2. fájl: MyFirstMod/Scripts/config.cpp
class CfgPatches
{
class MyFirstMod_Scripts
{
units[] = {};
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] =
{
"DZ_Data"
};
};
};
class CfgMods
{
class MyFirstMod
{
dir = "MyFirstMod";
name = "My First Mod";
author = "YourName";
type = "mod";
dependencies[] = { "Mission" };
class defs
{
class missionScriptModule
{
value = "";
files[] = { "MyFirstMod/Scripts/5_Mission" };
};
};
};
};3. fájl: MyFirstMod/Scripts/5_Mission/MyFirstMod/MissionHello.c
modded class MissionServer
{
override void OnInit()
{
super.OnInit();
Print("[MyFirstMod] Hello World! The SERVER mission has started.");
}
};
modded class MissionGameplay
{
override void OnInit()
{
super.OnInit();
Print("[MyFirstMod] Hello World! The CLIENT mission has started.");
}
};Következő lépések
Most, hogy van egy működő modod, íme a természetes továbbfejlődési irányok:
- 8.2. fejezet: Egyéni tárgy létrehozása -- Definiálj egy új játékbeli tárgyat textúrákkal és spawnolással.
- Adj hozzá több szkriptréteget -- Hozz létre
3_Gameés4_Worldmappákat a konfiguráció, adatosztályok és entitás logika szervezéséhez. Lásd 2.1. fejezet: Az ötréteges szkript hierarchia. - Adj hozzá billentyűkiosztásokat -- Hozz létre egy
Inputs.xmlfájlt és regisztrálj egyéni billentyűműveleteket. - Hozz létre UI-t -- Építs játékbeli paneleket layout fájlok és
ScriptedWidgetEventHandlerhasználatával. Lásd 3. fejezet: GUI rendszer. - Használj keretrendszert -- Integrálj a Community Framework-kel (CF) vagy más keretrendszerrel haladó funkciókhoz, mint RPC, konfiguráció-kezelés és admin panelek.
Bevált gyakorlatok
- Mindig tesztelj
-filePatching-gel PBO-k építése előtt. Kiiktatja a csomagolás-másolás-újraindítás ciklust és az iterációs időt percekről másodpercekre csökkenti. - Kezdd az
5_Missionréteggel a leggyorsabb iterációhoz. A misszió hookok, mint azOnInit(), a legegyszerűbb módja annak bizonyítására, hogy a mod betöltődik és fut. Csak akkor adj hozzá3_Game-et és4_World-öt, amikor tényleg szükséged van rájuk. - Mindig hívd meg a
super-t először a felülírt metódusokban. Asuper.OnInit()kihagyása csendben elrontja a vanília viselkedést és minden más modot, ami ugyanebbe a metódusba kapcsolódik. - Használj egyedi előtagot a Print kimenetben (pl.
[MyFirstMod]). A szkript logok ezernyi sort tartalmaznak a vanília játékból és más modokból -- az előtag az egyetlen módja a kimenet gyors megtalálásának. - Tartsd a
config.cppszintaxisát egyszerűnek és érvényesnek. Egy hiányzó pontosvessző vagy zárójel a config.cpp-ben kemény összeomlást vagy csendes mod-kihagyást okoz egyértelmű hibaüzenet nélkül.
Elmélet vs. gyakorlat
| Fogalom | Elmélet | Valóság |
|---|---|---|
mod.cpp mezők | A version függőségi feloldáshoz használt | A motor teljesen figyelmen kívül hagyja a verzió szöveget -- tisztán kozmetikus a launchernek. |
CfgPatches requiredAddons | Felsorolja a függőségeket, hogy a mod a megfelelő sorrendben töltődjön be | Ha elgépeled az addon nevet, az egész PBO csendben kihagyásra kerül hiba nélkül a szkript logban. Ellenőrizd a .RPT fájlt. |
| File patching | Szerkeszd a .c fájlt és csatlakozz újra az azonnali változásokhoz | A config.cpp és az újonnan hozzáadott fájlok NEM tartoznak a file patching hatálya alá. Azokhoz továbbra is PBO újraépítés szükséges. |
| Offline mód tesztelés | Gyors módja a mod működésének ellenőrzésének | Néhány API (mint a GetGame().GetPlayer().GetIdentity()) NULL-t ad vissza offline módban, ami olyan összeomlásokat okoz, amelyek valódi szerveren nem fordulnak elő. |
Mit tanultál
Ebben az útmutatóban megtanultad:
- Hogyan telepítsd a DayZ Tools-t és állítsd be a P: meghajtó munkaterületet
- A három alapvető fájlt, amelyre minden modnak szüksége van:
mod.cpp,config.cppés legalább egy.cszkript - Hogyan bővíti a
modded classa vanília osztályokat anélkül, hogy lecserélné őket - Hogyan csomagolj PBO-t, tölts be modot és ellenőrizd a működését a szkript log olvasásával
Következő: 8.2. fejezet: Egyéni tárgy létrehozása
