Configuration des zones contaminées statiques

Information
Bonne nouvelle ce tutoriel est maintenant applicable sur les versions PC & consoles.

La configuration des zones contaminées se fait via un fichier dans le dossier de la mission, de sorte que tout propriétaire de serveur peut contaminer n’importe quelle partie de la map.

La création de zones statiques se fait au démarrage du serveur, les entités ne sont pas persistantes, donc d’un redémarrage du serveur à l’autre elles peuvent être supprimées ou ajoutées SANS EFFACEMENT REQUIS .

Le fichier doit contenir la liste complète de toutes les zones statiques à utiliser par la logique des zones contaminées. Les zones dynamiques sont générées via l’économie centrale et utilisent les valeurs par défaut du script (elles sont traitées comme des événements dynamiques).

Le nom du fichier est : cfgEffectArea.json

Dans le cas où l’on souhaite désactiver les zones d’effet, mettre un fichier vide dans le dossier Mission fera l’affaire → Vide signifiant avec un crochet ouvrant et fermant { }

Exemple de fichier vide pour désactiver les zones statique
				
					{
}
				
			

NOTE IMPORTANTE :

  1. JSON ne prend PAS en charge les commentaires, supprimez tous les commentaires de votre fichier avant de l’envoyer sur le serveur ou cela ne fonctionnera PAS.
  2. Toutes les valeurs numériques doivent être VALABLE Entiers ou Flotteurs ( 0150 n’est pas valide et dois être écrit 150 )

Ci dessous un exemple avec une zone contaminé et deux positions safe au cas ou le joueur qui respawn serait trop près de la zone contaminée.

Exemple d'une zone contaminé
				
					{
    "Areas": [
		{ 	"AreaName": "Ship-SW", 
			"Type": "ContaminatedArea_Static", 
			"TriggerType": "ContaminatedTrigger",
			"Data": { 
				"Pos": [ 13684, 0, 11073 ],
				"Radius": 100,
				"PosHeight": 22,
				"NegHeight": 10,
				"InnerRingCount": 1,
				"InnerPartDist": 50,
				"OuterRingToggle": 1, 
				"OuterPartDist": 50, 
				"OuterOffset": 0, 
				"VerticalLayers": 0,
				"VerticalOffset": 0,
				"ParticleName": "graphics/particles/contaminated_area_gas_bigass"
				},
			"PlayerData": {
				"AroundPartName": "graphics/particles/contaminated_area_gas_around",
				"TinyPartName": "graphics/particles/contaminated_area_gas_around_tiny",
				"PPERequesterType": "PPERequester_ContaminatedAreaTint"
			}
		}
    ],

	"SafePositions":[
		[434, 13624],
		[360, 10986],
		
	]
}

				
			
Les Variables et leurs valeurs

Nom pour aider à différencier les zones dans le fichier mais peut également être utilisé pour le débogage.
Vous pouvez mettre les noms que vous souhaitez mais ils doivent être unique dans le fichier.

Le nom de classe dérivé de EffectArea déterminant le type de zone à faire spawn.

Trigger type (typename sous forme de chaîne ), laissez vide si aucun déclencheur souhaité.

Position d’ancrage de l’élément principale.
3 valeurs sont précisé dans ces coordonnées, le x et y bien connu que vous pouvez trouver sur izurvive ou un mode offline, et l’élévation par rapport au sol.
Les 3 valeurs sont a définir dans cette ordre : X Élévation et  Y.

Si la coordonnée d’élévation est non nulle l’entité et la première couche de particules ne seront pas fixé au sol.

Le rayon d’action de votre Zone.

Hauteur du cylindre d’effet de la zone vers le haut à partir de la position au sol.

Hauteur du cylindre d’effet de la zone vers le bas à partir de la position au sol.

Le nombre d’anneaux que l’ utilisateur souhaite à l’ intérieur de la zone (ne pas inclure de zone extérieure à l’anneau principal défini par son radius)

Distance sur une ligne droite entre deux particules émettrices sur l’intérieur des anneaux.
Si la valeur est strictement supérieure au rayon, AUCUN anneaux ne sera généré.

Bascule si l’anneau extérieure est souhaité (si oui, ce sera un anneau supplémentaire aux anneaux intérieures)
Distance en ligne droite entre deux émetteurs de particules sur la plupart des anneaux extérieurs.

La distance avec le rayon de la zone (une valeur négative poussera l’anneau extérieur à l’extérieur du rayon)

La quantité de couches verticales que l’utilisateur souhaite définir (en plus du niveau du sol).

Décalage entre deux couches verticales.
Le nom de la particule avec laquelle on veut peupler la zone.

Le nom de la particule extérieur à faire apparaître autour du joueur lors du déclenchement.
Nécessite un déclencheur pour faire quoi que ce soit.

Le nom de la “minuscule” particule à apparaître autour du joueur lorsque celui ci est dans le déclencheur.
Nécessite un déclencheur pour faire quoi que ce soit.

Le nom de type de l’effet de post-traitement à appliquer sur la caméra du joueur à l’intérieur de la zone.

Calcul des particules

La formule utilisée pour déterminer la quantité d’émetteurs de particules dans une zone est la suivante :

2 PI / ACOS( 1 – ( x ^ 2 / 2 * y ^ 2 ) ) où ‘x’ est l’espacement entre les émetteurs et ‘y’ est le rayon d’un anneau donné

exemple avec x = 20 et y = 105

2 PI / ACOS( 1 – ( 20 ^ 2 / 2 * 105 ^ 2 ) ) = 2 PI / ACOS( 1 – ( 400 / 2 * 11025 ) ) = 2 PI / ACOS( 1 – ( 400 / 22050 ) ) = 2 PI / ACOS (1 – 0,01814059 ) = 2 PI / ACOS (0,98185941 ) = 2 PI / 0,190765318 = 32,93672756

Ces valeurs étant arrondies, vous aurez 32 émetteurs de particules sur cet anneau spécifique.

Lors de la configuration d’une zone, si vous voulez savoir à l’avance combien d’émetteurs vous aurez au total, passez chacun de vos réglages de bague dans cette formule, additionnez les résultats et ajoutez 1 (émetteur central) et multipliez par la quantité de couches verticales que vous ayez (au moins 1 au sol) et vous aurez votre nombre total d’émetteurs.

Pour les valeurs ‘y’ de la bague intérieure, prenez votre rayon de zone (100 par exemple) divisez par le nombre de bagues intérieures moins 1 (2 bagues intérieures = 100/3) votre premier anneau aura un rayon de 33 et le second aura un rayon de 66. Cela peut sembler une façon étrange de faire les choses, mais nous supposons qu’un anneau extérieur existe et ce serait votre 3 de la formule précédente.

NOTE IMPORTANTE : Nous vous déconseillons d’avoir plus de 100 émetteurs par zone, chaque émetteur de zone par DEFAUT est de 10 particules. Plus il y a de particules, plus les performances sont importantes. Lorsque vous utilisez des particules autres que celles par défaut, gardez à l’esprit que l’impact sur les performances provient du nombre de particules et non du nombre d’émetteurs.

Exemples visuels de configuration

Fig.1 Génération des anneaux et des émetteurs

Fig.2 Configuration de la hauteur de déclenchement

ajax-loader