In evidenzaTutorial

types.xml spiegato: cosa fanno davvero nominal, min, restock, lifetime e tutti gli altri valori

di TimV · · 19 visualizzazioni · 0 risposte

TimVAutore della discussione

Membro dal · 1 messaggi

#1

Quasi duemila voci, tutte costruite allo stesso modo, e nemmeno una riga che spieghi cosa significano i numeri. Ecco, per ogni valore, cosa fa, in quale unità conta e cosa succede quando lo modifichi.

Tutti i numeri citati vengono dal types.xml vanilla ufficiale di Bohemia per Chernarus e le sue 1970 voci — contati, non stimati.

In breve

  • nominal — quanti esemplari l'economy vuole nel mondo contemporaneamente
  • min — quando la scorta scende a questo valore, viene riportata a nominal
  • restock — secondi di attesa prima del rifornimento
  • lifetime — secondi prima che un oggetto non toccato sparisca
  • quantmin / quantmax — riempimento alla comparsa, in percentuale (-1 = predefinito)
  • cost — priorità di comparsa, 100 di default, praticamente mai da toccare
  • flags — quali posizioni contano ai fini di nominal
  • category — gruppo merceologico
  • usage — in quali tipi di luogo compare
  • value — in quali zone di tier della mappa
  • tag — quale tipo di punto loot dentro un edificio

Se vuoi solo rendere un oggetto più o meno frequente, ne bastano tre: nominal, min e restock.

Dove si trova il file

mpmissions/dayzOffline.chernarusplus/db/types.xml

È la lista di magazzino della Central Economy: quanti esemplari di un oggetto possono esistere e quanto a lungo restano a terra. Non decide su quale scaffale finisce qualcosa — quali edifici hanno quali punti loot sta in mapgroupproto.xml, e quale zona ha quale tier appartiene alla mappa.

Ecco come si presenta una voce

XML
<type name="AK101">
    <nominal>4</nominal>
    <lifetime>28800</lifetime>
    <restock>3600</restock>
    <min>2</min>
    <quantmin>30</quantmin>
    <quantmax>80</quantmax>
    <cost>100</cost>
    <flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="0" deloot="0"/>
    <category name="weapons"/>
    <usage name="Military"/>
    <value name="Tier3"/>
    <value name="Tier4"/>
</type>

L'ordine è quello di Bohemia: nominal, lifetime, restock, min, quantmin, quantmax, cost, flags, category, tag, usage, value. Rispettalo e i confronti fra due versioni del tuo file restano leggibili.


I valori uno per uno

name

Il class name dell'oggetto, esattamente come lo conosce il gioco.

Quindi AK101, non «AK-101». Se ci metti un nome che non esiste, l'oggetto non compare mai — la voce non fa nulla.

nominal — la quantità obiettivo

Quanti esemplari l'economy vuole avere nel mondo nello stesso momento.

È un tetto, non una garanzia. Che la quantità venga raggiunta dipende da quanti punti loot compatibili ci sono — vedi usage e value.

nominal = 0 significa che l'economy non genera mai quest'oggetto da sola.

Nel file vanilla

873 delle 1970 voci sono a nominal = 0: varianti di colore che nascono solo quando un giocatore le vernicia, carne che si ottiene macellando, e oggetti che arrivano esclusivamente tramite event.

min — la soglia di rifornimento

Quando la quantità in gioco scende a questo valore, l'economy risale fino a nominal.

Per questo min sta sempre sotto nominal. La distanza fra i due detta il ritmo: nominal 4 / min 2 lascia oscillare la scorta fra due e quattro e rifornisce a ondate, nominal 4 / min 3 la tiene più stretta e fa scattare il rifornimento più spesso.

Perché alcune voci vanilla hanno min maggiore di nominal

Succede 172 volte — e tutte e 172 hanno nominal = 0. Non è un errore, semplicemente non ha effetto: senza quantità obiettivo non c'è rifornimento che una soglia possa far scattare.

restock — l'attesa prima del rifornimento

I secondi che passano prima che vengano piazzati nuovi esemplari.

1800 sono 30 minuti, 3600 un'ora. Uno 0 non significa «subito», ma «al prossimo giro dell'economy»: il server lavora a cicli, non secondo per secondo.

restock è la leva che fa sembrare il loot più raro senza ridurre la quantità totale: una base militare ripulita resta vuota per un po'.

lifetime — quanto a lungo qualcosa resta a terra

I secondi prima che un oggetto non toccato sparisca.

Qualsiasi interazione di un giocatore azzera il timer. Un lifetime molto corto abbassa indirettamente la quantità in gioco, perché gli oggetti spariscono prima che qualcuno li trovi.

Valori consueti e cosa significa 0
  • 14400 (4 ore) — 1079 voci
  • 28800 (8 ore) — 415 voci
  • 1800 (30 minuti) — 220 voci
  • 3888000 (45 giorni) — tende, barili, bauli, torrette: la persistenza del base building

lifetime = 0 compare 66 volte, sempre su oggetti statici del mondo come container e relitti (Land_…, StaticObj_…). Sul loot normale uno 0 è un errore di configurazione.

quantmin e quantmax — quanto pieno compare

Il livello di riempimento in percentuale, per tutto ciò che ha un contenuto: munizioni, acqua, carburante, scatolette.

Alla comparsa il server estrae un valore fra i due. -1 significa «non applicabile» e l'oggetto arriva con il suo valore predefinito.

Esempio con AK101, quantmin 30 e quantmax 80: l'arma compare con un caricatore pieno fra il 30 e l'80 per cento.

Come sappiamo che sono percentuali

In tutto il file vanilla non c'è un solo valore sopra 100. Sono quindi davvero percentuali e non pezzi.

cost — la priorità di comparsa

Un peso che decide quale oggetto ottiene un punto loot libero quando più oggetti sono idonei. Predefinito: 100.

Il consiglio onesto: lascialo stare. Su 1970 voci Bohemia si discosta da 100 esattamente una volta — Mag_SVD_10Rnd sta a 1000. Per la frequenza usa nominal, min e restock.

flags — cosa viene contato

Questi sei interruttori decidono quali posizioni contano ai fini di nominal.

È qui che la messa a punto del loot va storta più spesso.

  • count_in_map — ciò che sta in giro per il mondo (vanilla: attivo su 1902 di 1970)
  • count_in_cargo — ciò che sta dentro veicoli e contenitori (attivo 47 volte)
  • count_in_hoarder — ciò che sta in tende, barili e casse sotterrate (attivo 31 volte)
  • count_in_player — ciò che i giocatori portano addosso (attivo 55 volte)
  • crafted — l'oggetto nasce dai giocatori, non dall'economy (attivo 313 volte)
  • deloot — l'oggetto arriva da event dinamici invece che dagli edifici (attivo 47 volte)

Se un interruttore è a 0, in quel posto l'oggetto è invisibile all'economy.

Perché il server genera anche con i campi pieni

Perché in vanilla count_in_hoarder è a 0 quasi ovunque: quello che sta in tenda semplicemente non conta. Se vuoi che le cose rare restino rare devi toccare questi interruttori — con l'effetto collaterale che la merce accumulata frena poi il rifornimento per tutti.

crafted e nominal = 0 vanno insieme: tutte le 313 voci con crafted="1" hanno anche nominal = 0.

Oggetti deloot tipici: AK74, FAMAS, M79 e GasMask — il classico ritrovamento al relitto dell'elicottero.

category — il gruppo merceologico

Una fra otto: weapons, clothes, tools, food, containers, explosives, books, lootdispatch.

Il caso particolare lootdispatch

174 voci vanilla, in sostanza pezzi di veicolo come le portiere. Metterci mano senza motivo fa sparire i pezzi delle auto. 348 voci non hanno alcuna categoria — infetti e oggetti statici non ne hanno bisogno.

usage — in quali luoghi compare

I tipi di luogo in cui l'oggetto può comparire. Sono ammessi più valori e funzionano come un «oppure».

Chernarus ne conosce diciassette: Military, Police, Medic, Firefighter, Industrial, Farm, Coast, Town, Village, Hunting, Office, School, Prison, Lunapark, SeasonalEvent, ContaminatedArea e Historical.

Senza usage un oggetto non compare da nessuna parte nel normale ciclo del loot — ed è esattamente giusto così per oggetti craftati e da event.

Altre mappe, altri valori

Livonia e Sakhal hanno Special e Underground, ma non Historical. Quali valori conosce la tua mappa non sta nel types.xml ma in cfglimitsdefinition.xml, nella cartella della missione. Ciò che manca lì è invalido su quella mappa.

value — la zona di tier della mappa

Quanto nell'entroterra può comparire l'oggetto.

Il Tier 1 è la costa dove partono i personaggi nuovi; i tier più alti stanno più all'interno e sono più militari. Senza value l'oggetto non è ammesso in nessuna zona — lo stesso effetto di un usage mancante.

Quali tier esistono per mappa
  • Chernarus: da Tier1 a Tier4 più Unique
  • Sakhal: da Tier1 a Tier4 più Unique
  • Livonia: solo da Tier1 a Tier3 più Unique

Un Tier4 in un file della Livonia lì è semplicemente invalido.

tag — il posto dentro l'edificio

floor, shelves o ground restringono il tipo di punto loot usato.

Solo 281 delle 1970 voci vanilla lo usano; senza indicazione valgono tutti i punti. Un tag restringe, non allarga mai.


Cosa va storto di solito

Alzi il numero e non succede niente. nominal è solo un tetto. Se la mappa non ha abbastanza punti loot con usage e value giusti, l'obiettivo non si raggiunge mai. Un nominal 500 su un oggetto puramente Military non dà più di quanto reggano le postazioni militari.

Cambi tutto insieme. Se tocchi nominal, min, restock e lifetime contemporaneamente, dopo non saprai quale ha agito. Un valore per volta, poi riavvio e osservazione.

Ti aspetti un effetto immediato. L'economy non ripulisce né genera vicino ai giocatori — LootSpawnAvoidance e CleanupAvoidance in globals.xml sono a 100 — e lavora a cicli. Dopo un riavvio ci vuole un po' prima che le modifiche si vedano.

Non controlli il tuo file. Basta un > mancante e il server parte senza economy. Il risultato non è un po' più di loot, è nessun loot.


Gli strumenti giusti

Entrambi gratuiti e senza registrazione:

  • Editor di types — apre il tuo file nel browser, mostra icona e nome di ogni oggetto, spiega ogni valore proprio dove lo modifichi e gestisce la modifica di massa per gruppi di filtri.
  • Validatore XML — trova gli errori di sintassi con il numero di riga prima del tuo server.

Domande su singoli valori sono benvenute come risposta in questa discussione — così la risposta resta a disposizione di tutti.

· modificato

Scrivi una risposta

Accedi per rispondere.

Il tuo server è pronto. I giocatori lo trovano?

Inseriscilo gratis su DZPage: PC, PlayStation e Xbox, con conteggio giocatori live, voti, commenti e una pagina server tutta tua. Nessun posto premium, nessun pagamento, nessuna attesa.

3936 visitatori in 30 giorni · gratis, senza posti premium · finora solo 13 server

Bloccato con la configurazione del server?

Chiedi nel Discord di DZPage: rispondono gestori di server e lo sviluppatore. I nuovi strumenti vengono annunciati lì per primi.

10% di sconto

Noleggia il tuo server DayZ

Con il nostro link partner ottieni il 10% di sconto su tutti gli ordini su GPORTAL — server per PC, PlayStation e Xbox.

Ottieni il 10% di sconto

Partner pubblicitario · Link partner: tu risparmi il 10%, noi riceviamo una commissione.

Questo strumento è gratis — e resta gratis

Nessun account, nessun paywall, nessun limite. Se ti ha fatto risparmiare tempo, 5 € una tantum tengono acceso il server e ti tolgono la pubblicità.

Sostieni DZPage