Per tenere in ordine un server vanilla finora bisognava scegliere tra strumenti RCon esterni e una mod che ogni giocatore deve installare. C'è una terza strada: l'intero sistema di amministrazione sta dentro l'init.c della missione.
Nessuna mod, nessuna installazione lato client, nessuna mod server. I tuoi giocatori non installano nulla e non si accorgono di nulla — si collegano come sempre. Chi è amministratore lo decide lo SteamID64, non il nome del giocatore.
Testato su DayZ 1.29.163451, server dedicato Windows più client, Chernarus.
Cosa contiene
27 comandi in chat: teletrasporto con luoghi salvati, cura, modalità dio, generazione di oggetti, espulsione e ban, meteo e ora, gestione degli amministratori.
- Veicoli completi —
/vehicle sedanti mette davanti un'auto pronta: tutti i pezzi montati, i quattro fluidi pieni, batteria carica. - Armi complete —
/weapon m4a1posa l'arma completamente accessoriata a terra, caricatore inserito e due caricatori pieni di scorta accanto. - Punti di teletrasporto — 20 località di Chernarus sono incluse, i tuoi li crei in gioco con
/addloc. - Una lista di ban applicata già alla connessione, e un registro di ogni comando eseguito.
Quali pezzi vadano su quale veicolo non è scritto da nessuna parte nel codice. Al primo spawn lo script legge la configurazione del gioco e ne ricava un indice di tutti gli slot. Per questo funzionano anche veicoli e armi delle mod, senza che nessuno debba curare un elenco di parti.
Installazione
Copia init.c nella cartella della missione sostituendo il file esistente. Tutta la logica vanilla è già dentro, quindi non si perde niente.
DayZServer\mpmissions\dayzOffline.chernarusplus\init.cAvvia il server con una cartella di profilo (-profiles=). Al primo avvio il sistema vi crea i suoi quattro file: lista amministratori, lista ban, luoghi di teletrasporto e registro.
Come diventare amministratore
Il tuo SteamID64 è il numero di 17 cifre che inizia con 7656119 — lo trovi nell'URL del tuo profilo Steam. Mettine uno per riga in dayu_admins.txt:
// DAYU admin list
76561198000000001
76561198000000002Poi digita /reload in gioco; per questo non serve riavviare. Chi è già amministratore può aggiungerne altri con /addadmin <steamid>.
I comandi
Apri la chat e inizia il messaggio con /.
- Informazioni:
/help,/players,/pos - Giocatore:
/heal,/god,/kill - Teletrasporto:
/tp <x> <z>,/goto <luogo>,/locations,/addloc,/delloc,/tpto,/tphere - Generazione:
/vehicle <nome>,/weapon <nome>,/spawn <classe> [quantità] - Moderazione:
/kick,/ban,/unban,/bans - Server:
/say,/time,/weather,/admins,/addadmin,/deladmin,/reload
I nomi dei giocatori possono essere abbreviati, e uno SteamID va bene ovunque sia atteso un nome. Per /vehicle e /weapon basta un frammento: sedan ti dà il CivilianSedan, m4a1 l'M4A1.
I limiti del vanilla
Ci sono due cose che uno script di missione non può fare.
Il comando che digiti resta visibile in chat a tutti. Il motore distribuisce da sé i messaggi e nessuno script può impedirlo. Se vuoi evitarlo, usa la chat diretta — così lo leggono solo i giocatori vicini.
Un ban vero a livello di BattlEye non è possibile. La lista qui è propria del sistema e butta fuori il giocatore alla connessione; per i ban duri usa anche BattlEye.
Download
github.com/006mi4/dayz-vanilla-admin-menu
Lì trovi l'init.c e una guida dettagliata in inglese con tutti i comandi. Lo script è sotto licenza MIT; le parti vanilla del file appartengono a Bohemia Interactive.