Guida Completa al Modding di DayZ
Documentazione completa per il modding DayZ — 92 capitoli, da zero al mod pubblicato.
Indice Completo delle Pagine
Parte 1: Linguaggio Enforce Script (13 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 1.1 | Variabili e tipi | Tipi primitivi, dichiarazione di variabili, conversioni e valori predefiniti |
| 1.2 | Array, map e set | Collezioni di dati: array, map, set — iterazione, ricerca, ordinamento |
| 1.3 | Classi ed ereditarieta | Definizione di classi, ereditarieta, costruttori, polimorfismo |
| 1.4 | Classi modded | Sistema di modded class, override di metodi, chiamate super |
| 1.5 | Flusso di controllo | If/else, switch, cicli while/for, break, continue |
| 1.6 | Operazioni sulle stringhe | Manipolazione di stringhe, formattazione, ricerca, confronto |
| 1.7 | Matematica e vettori | Funzioni matematiche, vettori 3D, distanze, direzioni |
| 1.8 | Gestione della memoria | Conteggio dei riferimenti, ref, prevenzione leak, cicli di riferimento |
| 1.9 | Casting e riflessione | Conversione di tipi, Class.CastTo, verifica del tipo a runtime |
| 1.10 | Enum e preprocessore | Enumerazioni, #ifdef, #define, compilazione condizionale |
| 1.11 | Gestione degli errori | Pattern di gestione errori senza try/catch, guard clauses |
| 1.12 | Cosa NON esiste | 30+ trappole e limitazioni del linguaggio Enforce Script |
| 1.13 | Funzioni e metodi | Dichiarazione di funzioni, parametri, valori di ritorno, static, proto |
Parte 2: Struttura del mod (6 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 2.1 | Gerarchia a 5 livelli | I 5 livelli di script di DayZ e ordine di compilazione |
| 2.2 | config.cpp in dettaglio | Struttura completa del config.cpp, CfgPatches, CfgMods |
| 2.3 | mod.cpp e Workshop | File mod.cpp, pubblicazione su Steam Workshop |
| 2.4 | Il tuo primo mod | Mod minimo funzionante — file essenziali e struttura |
| 2.5 | Organizzazione dei file | Convenzioni di denominazione, struttura cartelle consigliata |
| 2.6 | Architettura server/client | Separazione del codice server e client, sicurezza |
Parte 3: Sistema GUI e layout (10 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 3.1 | Tipi di widget | Tutti i tipi di widget disponibili: testo, immagine, pulsante, ecc. |
| 3.2 | Formato file layout | Struttura dei file XML .layout per le interfacce |
| 3.3 | Dimensionamento e posizionamento | Sistema di coordinate, flag di dimensione, ancoraggio |
| 3.4 | Contenitori | Widget contenitore: WrapSpacer, GridSpacer, ScrollWidget |
| 3.5 | Creazione programmatica | Creare widget via codice, GetWidgetUnderCursor, SetHandler |
| 3.6 | Gestione degli eventi | Callback UI: OnClick, OnChange, OnMouseEnter |
| 3.7 | Stili, font e immagini | Font disponibili, stili, caricamento immagini |
| 3.8 | Dialoghi e finestre modali | Creazione di dialoghi, menu modali, conferma |
| 3.9 | Pattern UI reali | Pattern UI da COT, VPP, Expansion, Dabs Framework |
| 3.10 | Widget avanzati | MapWidget, RenderTargetWidget, widget specializzati |
Parte 4: Formati di file e strumenti (8 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 4.1 | Texture | Formati .paa, .edds, .tga — conversione e utilizzo |
| 4.2 | Modelli 3D | Formato .p3d, LOD, geometria, memory point |
| 4.3 | Materiali | File .rvmat, shader, proprieta di superficie |
| 4.4 | Audio | Formati .ogg e .wss, configurazione del suono |
| 4.5 | DayZ Tools | Flusso di lavoro con i DayZ Tools ufficiali |
| 4.6 | Impacchettamento PBO | Creazione ed estrazione di file PBO |
| 4.7 | Guida al Workbench | Utilizzo del Workbench per la modifica di script e asset |
| 4.8 | Modellazione di edifici | Modellazione di edifici con porte e scale |
Parte 5: File di configurazione (6 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 5.1 | stringtable.csv | Localizzazione con stringtable.csv per 13 lingue |
| 5.2 | inputs.xml | Configurazione tasti e keybinding personalizzati |
| 5.3 | credits.json | File dei crediti del mod |
| 5.4 | ImageSets | Formato ImageSet per icone e sprite |
| 5.5 | Configurazione server | File di configurazione del server DayZ |
| 5.6 | Configurazione spawn | Configurazione dell'equipaggiamento iniziale e punti di spawn |
Parte 6: Riferimento API del motore (23 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 6.1 | Sistema di entita | Gerarchia delle entita, EntityAI, ItemBase, Object |
| 6.2 | Sistema veicoli | API veicoli, motori, fluidi, simulazione fisica |
| 6.3 | Sistema meteo | Controllo del meteo, pioggia, nebbia, nuvolosita |
| 6.4 | Sistema telecamere | Telecamere personalizzate, posizione, rotazione, transizioni |
| 6.5 | Effetti di post-elaborazione | PPE: sfocatura, aberrazione cromatica, gradazione colore |
| 6.6 | Sistema di notifiche | Notifiche sullo schermo, messaggi ai giocatori |
| 6.7 | Timer e CallQueue | Timer, chiamate ritardate, ripetizione |
| 6.8 | File I/O e JSON | Lettura/scrittura di file, parsing JSON |
| 6.9 | Rete e RPC | Comunicazione di rete, RPC, sincronizzazione client-server |
| 6.10 | Economia centrale | Sistema di loot, categorie, flag, min/max |
| 6.11 | Hook delle missioni | Hook delle missioni, MissionBase, MissionServer |
| 6.12 | Sistema di azioni | Azioni del giocatore, ActionBase, bersagli, condizioni |
| 6.13 | Sistema di input | Cattura tasti, mapping, UAInput |
| 6.14 | Sistema giocatore | PlayerBase, inventario, vita, resistenza, statistiche |
| 6.15 | Sistema sonoro | Riproduzione audio, SoundOnVehicle, ambienti |
| 6.16 | Sistema di crafting | Ricette di crafting, ingredienti, risultati |
| 6.17 | Sistema di costruzione | Costruzione basi, pezzi, stati |
| 6.18 | Sistema di animazione | Animazione giocatore, command ID, callback |
| 6.19 | Query sul terreno | Raycast, posizione sul terreno, superfici |
| 6.20 | Effetti particellari | Sistema di particelle, emettitori, effetti visivi |
| 6.21 | Sistema zombie e IA | ZombieBase, IA degli infetti, comportamento |
| 6.22 | Admin e server | Gestione server, ban, kick, RCON |
| 6.23 | Sistemi del mondo | Ora del giorno, data, funzioni del mondo |
Parte 7: Pattern e buone pratiche (7 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 7.1 | Pattern Singleton | Istanze uniche, accesso globale, inizializzazione |
| 7.2 | Sistemi di moduli | Registrazione moduli, ciclo di vita, moduli CF |
| 7.3 | Comunicazione RPC | Pattern per RPC sicuri ed efficienti |
| 7.4 | Persistenza della configurazione | Salvataggio/caricamento configurazioni JSON, versionamento |
| 7.5 | Sistemi di permessi | Permessi gerarchici, wildcard, gruppi |
| 7.6 | Architettura ad eventi | Event bus, publish/subscribe, disaccoppiamento |
| 7.7 | Ottimizzazione delle prestazioni | Profilazione, cache, pooling, riduzione RPC |
Parte 8: Tutorial (13 capitoli)
| # | Capitolo | Descrizione |
|---|---|---|
| 8.1 | Il tuo primo mod (Hello World) | Passo per passo: crea e carica un mod |
| 8.2 | Creare un oggetto personalizzato | Crea un oggetto con modello, texture e config |
| 8.3 | Costruire un pannello admin | UI admin con teleport, spawn, gestione |
| 8.4 | Aggiungere comandi chat | Comandi personalizzati nella chat del gioco |
| 8.5 | Usare il template di mod | Come usare il template ufficiale di mod DayZ |
| 8.6 | Debug e test | Log, debug, strumenti diagnostici |
| 8.7 | Pubblicare sul Workshop | Pubblica il tuo mod su Steam Workshop |
| 8.8 | Costruire un HUD overlay | HUD overlay personalizzato sopra il gioco |
| 8.9 | Template di mod professionale | Template completo pronto per la produzione |
| 8.10 | Creare un mod veicolo | Veicolo personalizzato con fisica e config |
| 8.11 | Creare un mod abbigliamento | Abbigliamento personalizzato con texture e slot |
| 8.12 | Costruire un sistema di commercio | Sistema di commercio tra giocatori/NPC |
| 8.13 | Riferimento Diag Menu | Menu diagnostici per lo sviluppo |
Riferimento rapido
| Pagina | Descrizione |
|---|---|
| Cheatsheet | Riepilogo rapido della sintassi Enforce Script |
| Riferimento rapido API | Metodi API del motore piu utilizzati |
| Glossario | Definizioni dei termini usati nel modding DayZ |
| FAQ | Domande frequenti sul modding |
| Guida alla risoluzione dei problemi | 91 problemi comuni con soluzioni |
Crediti
| Sviluppatore | Progetti | Contributi principali |
|---|---|---|
| Jacob_Mango | Community Framework, COT | Sistema di moduli, RPC, permessi, ESP |
| InclementDab | Dabs Framework, DayZ Editor, Mod Template | MVC, ViewBinding, UI dell'editor |
| salutesh | DayZ Expansion | Mercato, gruppi, marcatori mappa, veicoli |
| Arkensor | DayZ Expansion | Economia centrale, versionamento impostazioni |
| DaOne | VPP Admin Tools | Gestione giocatori, webhook, ESP |
| GravityWolf | VPP Admin Tools | Permessi, gestione server |
| Brian Orr (DrkDevil) | Colorful UI | Temi di colore, pattern modded class UI |
| lothsun | Colorful UI | Sistemi di colore UI, miglioramenti visivi |
| Bohemia Interactive | DayZ Engine & Samples | Enforce Script, script vanilla, DayZ Tools |
| StarDZ Team | Questa wiki | Documentazione, traduzione e organizzazione |
Licenza
La documentazione e concessa in licenza sotto CC BY-SA 4.0. Gli esempi di codice sono concessi in licenza sotto MIT.












