La tempête

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

La tempête est essentiellement un grand murcylindrique qui commence grand et se rétrécit lentement au fur et à mesure que la partie va de l'avant. Les joueurs subiront des dégâts lorsqu'ils sont en dehors de la frontière du mur — cela les oblige à se rapprocher et à se rapprocher l'un de l'autre et aide à terminer les matchs dans un délai raisonnable.

The Storm Example

Structure

En raison de la limite de taille des parties, il n'est pas possible de faire du tempête un grand cylindre. Au lieu de cela, le tempête consiste en plusieurs parties rectangulaires fines placées autour de l'边 de la barrière, ce qui donne l'impression d'être linéaire. Ces parties réagissent dynamiquement en fonction de la proximité des joueurs, se divise ou se combine avec les parties voisines pour maintenir une apparence linéaire. Ce comportement est géré par :

  • ServerScriptService/Core/ShrinkingBarrier
  • ReplicatedStorage/Core/ShrinkingBarrierVisualization

Personnalisation de la tempête

Dans ReplicatedFirst/Configurations/MainConfiguration, les variables suivantes peuvent être ajustées pour personnaliser la tempête :

Décalage de carte

Le centre par défaut de la tempête est le centre de la carte, mais vous pouvez modifier la valeur map_offset pour forcer les joueurs à un autre point à mesure que la frontière de la tempête se rétrécit.


map_size = 2450 * 4,
map_offset = Vector3.new(4900, 0, 4900),

Options de tempête

En dessous, la table storm contient des valeurs de configuration qui déterminent comment le tempête se comporte pendant les matchs, telles que son rayon, sa minuterie et la mesure dans laquelle elle se rétrécit.


storm = {
radius = 6000,
time_before_start = 120,
debug_time_scale = 1,
number_of_stages = 10,
-- étape 0 (afficher le cercle de départ sans transition)
{ transition_length = 0,
wait_length = 150,
damage = 1,
move_scale = 0,
shrinkage_factor = 0 },
변수Description
radiusRayon de départ de la tempête.
time_before_startTemps avant que la tempête appienne d'abord.
debug_time_scaleredimensionnerde temps de débogage, utile pour peaufiner les étapes. Modifiez-le en quelque chose de plus élevé que 1 pour exécuter les étapes de la tempête plus rapidement.
number_of_stagesNombre de stades que la tempête a.
( tables de niveau )Série de tables (une pour chaque étape définie par le nombre_of_stages) contenant ces variables :

    :-transition_length— Temps en secondes pour que la tempête se transite de son étape précédente à cette étape.

      :-wait_length— Temps en secondes pour la tempête de attendre avant de passer à l'étape suivante.

        :-damage— Les dégâts par seconde que les joueurs subiront lorsqu'ils seront en dehors de la barrière de tempête pendant cette étape.

          :-move_scale— Multiplicateur qui permet au centre de tempête de se déplacer plus lors de la transition vers cette étape. Une valeur de 0 signifie que le centre de tempête ne se déplacera que de sorte que toute la tempête dans cette étape restera dans les limites de la tempête précédente.

            :-shrinkage_factor— Un tiers du rayon précédent qui est soustrait au rayon. Par exemple, le rayon à la fin de l'étape 2 est 1000 etshrinkage_factorpour le stade 3 est 0.25, donc le rayon à la fin du stade 3 sera 750 (1000-(0.25*1000)).