X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Edition des missions

    J'ouvre ce topic pour discuter exclusivement des techniques d'édition et mettre en commun les méthode sympa qu'on aurait trouvé pour déclencher des actions, scripter des trucs etc etc.


    * CREATION D'UNE PATROUILLE :

    1) poser une unité ou un groupe sur la map
    2) indiquer un premier waypoint SE DEPLACER à l'unité à proximité de sa position de départ, c'est ce point qui constituera le départ de la patrouille. Définir pour ce point si besoin le comportement de l'unité (j'utilise "conscient" pour les unités qui savent que les ennemis sont là, sinon je met "sur". Quand la patrouille approche d'une zone de combat avérée, je met "combat")
    Si vous voulez faire une patrouille qui marche tranquillement sans alerte, vous pouvez aussi mettre "limité" dans la vitesse de déplacement)
    3) Ensuite, placer plusieurs waypoint SE DEPLACER de façon à faire "tourner" la patrouille selon un parcours de votre choix.
    4) Si vous souhaitez que la patrouille se montre plus déterminée à certain endroits (ex un village) vous pouvez placer dessus un waypoint RECHERCHER ET DETRUIRE : le groupe fouillera alors le village dans un périmètre défini pour y trouver des ennemis avant de rependre sa route.
    5) Une fois que vous avez défini votre parcours, placer un dernier waypoint REITERER juste à coté du premier waypoint SE DEPLACER. Ainsi, quand la patrouille arrivera à ce point, elle reprendra son action depuis le début.

    Remarques :
    - Si vous utilisez une patrouille motorisée, les hommes montent dans les véhicules pour les longs trajets entre deux waypoints. Par contre, ils ne descendent pas tout seuls pour fouiller une zone... les boulets,; donc il faut indiquer un waypoint DECHARGER à l'entrée du villagé cité plus haut puis indiquier le waypoint RECHERHER ET DETRUIRE
    - Inutile de placer trop de waypoints pour "guider" les unités. Par défaut, les soldats suivent la route principale même si celle-ci est sinueuse. Ils marquent une courte pause à chaque waypoint, donc si vous en placez trop, la patrouille sera "cahotique"
    - Si vous voulez ajouter une part d'aléatoire dans la patrouille, vous pouvez modifier la taille des waypoints (rayon de placement et rayon d'achèvement : je n'ai pas encore très bien compris comment ça marche, faut que je teste) afin de rendre plus incertain la position des soldats et vous pouvez aussi ajouter une pause de durée aléatoire à certain waypoint (en utilisant les durées min, moy et max pour encadrer la pause en question)

  • #2
    *APPARITION ALEATOIRE DES ADVERSAIRES :

    J'ai trouvé deux techniques différentes pour varier aléatoirement la présence des adversaires.

    1) jouer sur la probabilité de présence des unités (c'est une des reglettes quand on double clique sur une unité) Je ne m'en suis servi qu'une seule fois, mais en résumé, la rglette est à 100% de proba par défaut, et si on diminue sa valeur, il se peut que l'unité ne soit pas présente dans la mission. Avantage : vous pouvez assigner des taches à cette unité à partir de son point de départ, inconvénient, si elle n'apaprait pas vous avez moins d'ennemis sur la map.

    2) exemple : CREER DES BARRAGES ROUTIERS

    Ma technique préférée : utiliser des marqueurs pour placer aléatoirement des unités ennemies. Je vais détailler avec le principe des barrages routiers que j'ai mis en place pour ma dernière mission.
    Je veux placer 5 barrages routiers de façon plus ou moins aléatoire sur la map. Voici comment j'ai fait :
    - En mode "groupement" Créer 5 groupes d'unités ennemies qu'on place côte à côte dans un endroit dégagé de la map (ce ne sera pas leur position de déploiment donc on peut les mettre n'importe où là ou ça gène pas, même dans l'eau)
    - En mode "marqueur" Placer 10 marqueurs appellés barrage_1 à barrage_10 sur les noeuds routiers ou sur les axes principaux à des endroits choisis (on peut en mettre plus si on veut hein) Rappelez vous de leur position car ils disparaissent quand on change de mode.
    - En mode "groupement" tirer une ligne entre le chef de chaque groupe et un chaque marqueur. Un trait bleu clair de liasion va alors relier votre groupe au marqueur. Vous pouvez panacher, mais si vous faites de façon systématique, vous aurez alors 10 traits bleu partant de chaque groupe vers chaque marqueur, ce qui vous fait en tout 50 traits de liaison. Je vous conseille cependant de ne pas relier tous les groupes à tous les marqueurs car il existe une proba non négligeable pour que tous les groupes se placent sur le même marqueur. Un bon ratio probabilistique consistera à relier chaque groupe à seulement 4 marqueurs en n'ayant que deux groupes possibles pour chaque marqueur environ.

    Ainsi, lors du lancement, les barrages se placent aléatoirement sur les marqueurs qu'on leur a attribué. On peut donc rejouer la mission plein de fois sans forcément tomber sur l'ennemi au même endroit.

    LIMITATION : On ne peut pas assigner de waypoints à ces unités, car ça rend inutile leur affectation aléatoire. En effet, elles vont se déplacer vers le waypoint qui, lui, aura une position fixe, et donc elles seront toujours à la même place après quelques minutes de mission. Il faudrait que je trouve le moyen de rendre un waypoint "relatif" à la position de l'unité, mais c'est pas gagné. Cette technique doit donc surtout être utilisée pour les groupes fixes.
    Par contre, pour réaliser une attaque par encerclement c'est parfait comme détaillé ci-dessous:

    3) exemple : ATTAQUE ENNEMIE ALEATOIRE
    Voici comment faire venir une menace aléatoire vers votre point d'insertion
    - Placez vos marines à un endroit de la map (point d'insertion PI)
    - Placez 3 ou 4 groupes ennemis un peu au-dessus du PI n'importe où
    - Placez au minimum 3 marqueurs par groupe d'ennemi de façon à ce que l'ensemble des marqueurs encercle le PI à des distances variables (comme ça l'ennemi mettra plus ou moins de temps à arriver)
    - Reliez chaque groupe ennemi à 3 ou 4 marqueurs comme indiqué plus haut
    - Sélectionnez ensuite chaque chef d'équipe de chaque groupe et donnez lui un waypoint RECHERCHER ET DETRUIRE dirigé vers la position du PI (on peut éventuellement temporiser aléatoirement ce waypoint en mettant des durées min, moy et max)

    Ainsi, au démarrage de la mission, votre PI sera attaqué par des groupes russes qui arriveront de positions variables avec des délais variables selon la temporisation et/ou la distance qui les sépare de vous. Donc à chaque fois qu'on rejoue la mission, les ennemis arriveront par une autre route.

    Remarque : une fois que je maitriserai les déclencheurs, j'essayerai d'utiliser cette technique pour attaquer des zones lorsque les marines entreront dedans, ça servira à faire venir des renforts.

    Commentaire


    • #3
      Ah. Bah avec la mission (que je termine ce matin) je peux te dire que je suis devenu un boss sur l'éditeur (peut être pas en fait). Il y a plein de tutos sur le net mais j'ai remarqué qu'à chaque fois il manque des petits détails et qu'on doit chercher ailleurs ou tâtonner soi même. Je ferai peut être un tuto plus complet sur plein de chose pour faire une mission intéressante et sympa.

      Commentaire


      • #4
        il faudra qu'on mette en commun les techniques et qu'on se passe les missions en mode éditeur pour avoir des exemples.
        Moi je ne maitrise pas grand chose, pour le moment j'en suis au tâtonnements...
        Par exemple, la syncrho ça marche comment ? j'ai vu qu'on pouvait relier un groupe à un objet en mode syncrho, mais rien n'indique l'effet obtenu.

        Commentaire


        • #5
          * LES TYPE DE RESPAWN :

          Pour gérer les respawn et permettre l'utilisation de la touche T (teamswitch = possibilité de passer d'une unité commandé par l'IA à une autre simplement en appuyant sur T sans pour autant que l'unité soit morte) il faut faire la manipulation suivante :
          - Aller dans MesDocumens/Arma2/MPMissions
          - Ouvrir le dossier ayant le nom de la mission que vous etes en train d'éditer
          - Dans ce dossier, créer un fichier avec le bloc note dans lequel vous écrirez :
          respawn=SIDE;
          respawndelay=1;
          - Sauvegarder le fichier blocnote sous le nom "description.ext"

          Si vous voulez restreindre le respawn aux seules unités du groupes de combat du joueur, mettez le code GROUP à la place du code SIDE
          La fonction respawndelay vous permet d'imposer une attente avant de prendre le contrôle d'une IA.

          Commentaire


          • #6
            Pour compléter le post de Raph :

            Il y a d'autres types de respawn :

            "0" ou "none".........Aucune réapparition
            "1" ou "Bird"......... Réapparition en mouette
            "2" ou "Instant"......Réapparition à l'endroit où le soldat est mort
            "3" ou "Base".........Réapparition dans la zone située par un marqueur **
            "4" ou "Group"........Réapparition dans une IA de votre groupe
            "5" ou "Side"......... Réapparition dans une IA de votre camp

            ** Pour le respawn de type BASE, vous devez ajouter des marqueurs qui auront un nom bien précis selon le camp, à l'endroit où vous voulez que les joueurs réaparaissent.

            Noms précis du marqueur..........Camp
            respawn_west........................Camp Blufor
            respawn_east.........................Camp Opfor
            respawn_guerrila.....................Camp Indépendant
            respawn_civilian......................Camp Civil

            N.B. Le teamswitch ne fonctionne pas en multi ou est difficile à mettre en place quand il y a plusieurs joueurs humains (problème de serveur et client).
            Dernière modification par DoubleSquall, 26-06-2012, 14h00.

            Commentaire


            • #7
              Ah bon ? je croyais que ça fonctionnais. En tout cas, ça marche au moins pour l'hôte. Après faut tester. Lors de notre premier test de ma mission village_people, Elanion avait réussi à switcher sans soucis SAUF qu'à un moment, son switch avait causé la mort du soldat de départ. En fouinant j'ai cru comprendre qu'il faut impérativement, pour pouvori switcher, que le soldat d'accueil soit visible par le soldat de départ. Ainsi les deux soldats sont gérés par le pc du joueur qui switche., En effet, quand un soldat est hors de votre vue et que vous n'êtes pas l'hote, votre pc ne gère plus ses "infos" votre pc ne reçoit l'existence de ce soldat de la part du pc hote que lorsque le soldat en question revient dans votre champ de détection.

              A tester en masse les gars.

              Commentaire


              • #8
                Le briefing - partie 1

                Dans votre dossier de mission qui se trouve (sous seven) dans C: \Users\nom d'utilisateur\Documents\ArmA 2\MPMissions (pour une mission multi à la base) :

                1. Créez un fichier texte que vous nommerez briefing

                2. Dans ce fichier :
                // placer les objectifs en sens inverse

                T2 = player createSimpleTask["nom de l'objectif 2"];
                T2 setSimpleTaskDescription["Description de l'objectif 2", "Titre Objectif 2", "Label du marqueur Objectif 2 sur la carte"];
                T2 setSimpleTaskDestination (getMarkerPos "objectif2");

                T1 = player createSimpleTask["nom de l'objectif 1"];
                T1 setSimpleTaskDescription["Description de l'objectif 1. Les changements de lignes se font automatiquement ou avec <br/> (<br/><br/> pour passez une ligne). Vous pouvez aussi ajouter des marqueurs additionnels permettant une indication de position avec <marker name='nom que vous avez donné au marqueur'>texte</marker>. Vous pouvez aussi ajouté des images au format paa<img image='imgs\image1.paa' width='110' align='float'><img image='imgs\image2.paa' width='110' align='center'>", "Titre Objectif 1", "Label du marqueur Objectif 1 sur la carte"];
                T1 setSimpleTaskDestination (getMarkerPos "objectif1");
                player setCurrentTask T1;

                // placer les entrées en sens inverse

                player createDiaryRecord["Diary", ["dans ces guillemets vous mettez ce que vous voulez","à compléter"]];

                player createDiaryRecord["Diary", ["Soutien","à compléter"]];

                player createDiaryRecord["Diary", ["Exécution","à compléter"]];

                player createDiaryRecord["Diary", ["Mission","à compléter"]];

                player createDiaryRecord["Diary", ["Situation","à compléter"]];

                player createDiaryRecord["Diary", ["Briefing","les changements de lignes se font automatiquement ou avec <br/> Vous pouvez ajouter des marqueurs additionnels <marker name='marqueur_obj_1'>texte</marker> et des images <img image='imgs\image.paa' width='512' align='left'>"]];

                if(true) exitWith{};
                3. Sauvegardez en .sqf

                4. Créez ensuite un fichier texte que vous nommerez init

                5. Dans ce fichier :
                execVM "briefing.sqf";
                6. Sauvegardez en .sqf
                Dernière modification par DoubleSquall, 25-06-2012, 12h27.

                Commentaire


                • #9
                  Positionner une unité à un endroit précis de la carte
                  (sommet de colline, intérieur de bâtiment, toit, mirador, etc...)


                  {A} Chercher sur la carte les coordonnées du point où doit être placée l'unité
                  (1) Créer un Déclencheur (Radio Alpha / Répétition - afin de le faire à volonté) (a)
                  (2) Dans SurActivation : hint format["%1",getPosATL Personnage];
                  (3) Lancer le jeu et avec un personnage, aller à l'endroit précis désiré (bâtiment, mirador, etc).
                  (4) Une fois à la position voulue (dans les escaliers, au bord d'une fenêtre, etc), taper 0+0+1 pour activer le Déclencheur, ce qui fournira des coordonnées GPS du style [4.8521,5.6785,0.0005145].
                  (5) Noter les coordonnées et recommencer à une autre position si désiré ; et ainsi de suite. (b)
                  {B} Positionner l'unité aux coordonnées trouvées
                  (6) Dans l'Éditeur, prendre un soldat et mettre dans le champ Initialisation :
                  this setpos [4.8521,5.6785,0.0005145];
                  (7) Lancer le jeu : le soldat sera exactement à la position spécifiée dans le bâtiment.
                  (8) Pour l'orientation, utiliser this setdir Dégrés°; (Dégrés° est le chiffre noté sur le GPS). (c)



                  PS :
                  Spoiler:
                  (a) : Pour ma part, j'ai fixé les axes a et b à 5000 chacun ; ainsi j'inclue toute la zone que je vise.
                  (b) : J'utilise Fraps ; je fais une capture écran, puis avec Alt+Tab, je modifie ainsi les coordonnées dans le champ Initialisation.
                  (c) : je n'ai pas encore utilisé cette fonction.

                  Commentaire

                  Chargement...
                  X