Cartes ASSAULT = Assaut..

Dans ce type de partie, il y a deux camps : les attaquants et les défenseurs. L'architecture du niveau doit équilibrer ces deux actions en offrant des ressources différentes mais qui permettent un combat égal. Il peut n'y avoir qu'un seul objectif : le sanctuaire des défenseurs, mais généralement, on place plusieurs objectifs qui doivent être successivements pris par les attaquants. Le jeu est plus long et plus intéressant. A chaque étape, les positions de résurrection des joueurs sont déplacées pour éviter des trajets ennuyeux.

L'item caractéristique est le "FortStandard" qui matérialise un point stratégique. Il se trouve dans le catalogue , à la rubrique "Actor/Pawn/StationaryPawn". on en place un par objectif.

Dans l'éditeur, il a l'aspect d'un drapeau :

 

En cliquant avec le bouton droit dessus, on fait apparaître un menu flottant dans lequel on choisit "FortStandard Propriétés". Il donne accès à la fenêtre de propriétés dans laquelle un certain nombre de paramètres peuvent être définis.

 

 

 

bFinalFort :

Si vrai, sa destruction termine le niveau, même si les autres objectifs n'ont pas été atteints. Si aucun n'a cette propriété, tous doivent être détruits, peu importe dans quel ordre, pour que la partie soit conclue.

bFlashing :

Si vrai, un éclair se produira sur l'écran lorsqu'il sera endommagé.

bForceRadius :

Oblige les robots à aller sur l'objectif plutôt qu'à se cantonner dans des positions défensives.

bSayDestroyed :

Si vrai, un message annonçant la destruction de l'objectif est affiché.

bSelfDisplayed :

Si vrai, l'item sera visible par lui-même.

bTriggerOnly :

Si vrai, l'objectif sera atteint par simple contact et son pas par sa destruction. Ajuster alors correctement le rayon de collision.

ChargeDist :

Si bForceRadius est vrai, les robots tendront à rejoindre l'objectif à partir de cette distance.

DamageEvent :

Evènement déclenché lorsqu'un certain niveau de dégâts a été infligé au FortStandard. Il peut y avoir jusqu'à huit évènements distincts.

DamageEventThreshold :

Quantité de dégâts nécessaires pour activer l'évènement défini dans le champ précédent. il peut y avoir huit valeurs distinctes correspondant à huit évènements.

DefensePriority :

Définit l'ordre dans lequel les robots doivent défendre les objectifs. La valeur la plus basse=1 correspond au dernier point à défendre. Les robots défendent donc l'objectif qui a la plus haute priorité parmi les objectifs restants.

DefenseTime :

Temps limite en mn imparti aux joueurs pour déterminer le vainqueur. La valeur doit être la même pour tous les FortStandards.

DestroyedMessage :

Message à afficher lorsque l'objectif est détruit. Il apparaît sur l'écran à côté du nom de cet objectif.

EndCamTag :

"Tag" de la caméra à utiliser pour le panoramique de fin qui s'affiche sur tous les écrans des joueurs.

FallBackFort :

"Tag" du fort où les défenseurs doivent ensuite se replier. S'il est différent de celui normalement désigné dans l'ordre de priorité, cet ordre sera ignoré par les robots au profit de cette nouvelle directive.

FortName :

Nom de l'objectif affiché avant sa destruction.

NearestPathNodeTag :

"Tag" du point de navigation "Pathnode" le plus près de l'objectif. Ceci permet aux robots d'atteindre l'objectif.

Pawn/Health :

Niveau de dégâts que le fort peut encaisser..

Events/Event :

On peut mettre dans ce champ l'étiquette "Tag" d'un acteur qu'on voudra actionner lorsque le fort est détruit, par exemple l'ouverture d'une porte .

Nota Bene : Le FortStandard n'est actif que lorsque le jeu est défini en tant qu'assaut dans les propriétés du niveau. Si on le teste en SP ou DM à partir de l'éditeur, cet item ne donne rien.

Les consignes du jeu :

Elles sont affichées sur un écran, et décrivent les objectifs spécifiques à chaque carte. il faut ajouter dans la carte un item "Actors/info/AssaultInfo".

"NumObjShots" indique combien il y a d'objectifs successifs.

"ObjDest" contient le texte décrivant chaque objectif.

"ObjShots" contient le nom de la texture correspondante, obtenue à partir d'une image capturée dans le jeu.

Répartition des points de départ des joueurs :

L'appartenance à une équipe, attaquant ou défenseur, est définie dans les propriétés des "PlayerStart".

Le champ "TeamNumber" vaut 1 pour les attaquants et 0 pour les défenseurs.

L'option "bEnabled" activée permet de basculer vers une autre localisation de départ.

Par exemple, un premier groupe de points de départ se situe aux environs du premier objectif. Ils ont pour "Tag", disons, "sp1", et ce pour les deux camps. Le paramètre "bEnabled" sera vrai. Un second groupe "sp2" sera situé au voisinage du second objectif, avec le paramètre "bEnabled" faux cette fois, et ainsi de suite pour les objectifs suivants. Lorsque le premier objectif est détruit, il active par son "Event" un "dispatcher" qui agit via leur "Tag" sur les points de départ "sp1" et "sp2": ceux du groupe "sp1" sont alors désactivés et ceux de groupe "sp2" activés. Les joueurs ressuscitent alors sur ces nouvelles positions.

 

 

 

 

 

Points de défense :

Pour que les robots défenseurs se positionnent à des endroits névralgiques autres que ceux occupés par les objectifs, il faut y placer des points de défense. On les trouve dans le catalogue sous la rubrique "Actor/NavigationPoint/AmbushPoint/DefensePoint".

En cliquant dessus avec le BD, on a accès à la fenêtre de propriétés où il faut définir le champ "DefensePoint/FortTag" en lui donnant le même nom que celui du "Tag" du "FortStandard" correspondant.

"Priority" détermine dans quel ordre les différents points doivent être garnis.

 

 

 

Canons automatiques :

On peut soutenir les défenseurs par des "TeamCannons ou des "MinigunCannons" disponibles dans le catalogue "Actors/Pawns/StationaryPawns".

La valeur de "MyTeam" est à défaut =0, soit dans le camp des défenseurs.

Comportements des robots :

Si un robot ne parvient pas à atteindre l'objectif, il va se comporter comme dans une carte DM.

De façon générale, les attaquants chercheront plus à en découdre avec les défenseurs qu'à atteindre les objectifs. Ceci peut être corrigé avec le paramètre bForceRadius.

Quant aux défenseurs, à défaut de point de défense défini, ils se tiendront au voisinage de l'objectif valide.

Ils choisiront toujours la route la plus courte pour aller vers l'objectif. Pour modifier cette tendance, on peut placer un "AssaultRandomizer" disponible dans "Actors/NavigationPoints/AssaultRandomizer".
Celui-ci agit en fait comme un leurre en pénalisant la route sur laquelle il est placé. Il sera activé/désactivé par une gâchette. Il me semble qu'il est initialement inactif.. voir carte d'exemple

Il faut donner à "ToggleCost" une valeur positive qui quantifie cette "pénalité" et conduit les robots à chercher une autre route. Pour que la mesure soit efficace, il ne faut pas qu'il y ait un contournement trop facile à l'entour !

Dans le même esprit, les "BlockedPath" permettent de bloquer temporairement certaines voies qui ne sont libérées qu'au moment de passer à l'ojectif suivant.

Séquence video finale :

Il faut ajouter un item "SpectatorCam" disponible dans le catalogue sous la rubrique "Actor/KeyPoint/SpectatorCam", le placer et l'orienter dans la carte, et dans les propriétés de l'item définir le champ "Tag" avec le même nom que pour le paramètre "EndCamTag" du "FortStandard".

 

 

 

 

 

Détermination du type de carte :

Les cartes de type "assaut" sont définies dans leur titre : "AS-trucmuche.unr". Pour que la carte soit testable à partir de l'éditeur, il faut renseigner le champ "LevelInfo" à partir du menu général "View" ou par la touche F6 comme ci-dessous :