Tutorial drone ULB © Pumpkin
Le but du tutorial est de montrer comment un soldat quelconque peut, au beau milieu d'une mission, grimper dans un hélico vide et utiser le drone hélico AH-6X. Le drone fonctionne trés bien si le joueur est seul (et donc pilote) sauf qu'il ne peut pas ordonner de tir. Pour cela, il faut impérativement un tireur, mais si le joueur est tireur, qui pilote ?
Deux solutions sont présentées :
- la solution "apache", avec une IA qui va se joindre à l'équipe du joueur
- la solution "cobra", en solo, grâce à une astuce qui consiste à créer un tireur invisible
placement dans l'éditeur
1) la solution "apache"
- le module ULB nommé (ici son nom sera "modULB")
- le drone AH-6X (le "this setcaptive true" dans l'init. n'est pas indispensable, juste un ajout car c'était contraignant pour les tests que le drone se fasse descendre)
- synchronisez le module et le drone
- une cible sur laquelle s'exercer (ici un T-72)
- un déclencheur qui scrute si le joueur monte en tant que pilote dans le AH-64D
- l'hélico AH-64D nommé "apache" (le nommer est impératif pour pouvoir le référencer)
- une unité IA (pareillement, il faut le nommer impérativement pour le référencer par la suite)
- Activation = répétition (sinon l'ULB plus accessible dés que le joueur descendra du AH-64D)
- Condition =
driver apache == playerAttendre que le joueur monte dans le AH-64D en tant que pilote
- Sur activation =
[ULBtireur] jointsilent (group player)Ceci n'est là que pour adjoindre un équipier au joueur, le temps de la démonstration. Ce n'est pas obligatoire et peut être remplacé par tout autre "technique" permettant d'ajoindre un équipier (waypoint, autre déclencheur préalable,...)
modULB synchronizeObjectsAdd [apache]Synchronise l'hélico nommé "apache" avec le module, nommé "modULB", afin de lui permettre de reconnaitre l' "apache" comme "terminal" du drone.
nul = [modULB] execVM "ca\modules_e\uav_heli\data\scripts\uav.sqf"Lancer la gestion du drone grâce au module "modULB". Le script "ca\modules_e\uav_heli\data\scripts\uav.sqf" est le script que lance le module "modULB" au début de la mission.Pour information, c'est au lancement de la mission que les unités sont synchronisées (drone avec module, hélico avec module). Malheureusement, synchroniser un hélico vide ne donne jamais accés au drone, probablement parce que le module ULB ne trouve aucun membre d'équipage. Autrement dis, un montage comme ci-dessous ne marche jamais !
1) la solution "cobra"
- un déclencheur qui scrute si le joueur monte en tant que pilote dans le AH-1Z
- l'hélico AH-1Z nommé "cobra" (le nommer est impératif pour pouvoir le référencer)
- Activation = répétition (sinon l'ULB plus accessible dés que le joueur descendra du AH-1Z)
- Condition =
driver cobra == playerAttendre que le joueur monte dans le AH-1Z en tant que pilote
- Sur activation =
ULBgrp = creategroup WESTCrée un groupe ouest (BLUFOR), sans lequel il est impossible de créer un unité (voir dans la commande suivante), référencé par la variable "ULBgrp" (nom sans importance)
ULBgunner = ULBgrp createunit ["InvisibleManW_EP1",[0,0,0],[],0,"none"]Crée un "homme invisible", référencer par la variable "ULBgunner" (nom sans importance)
ULBgunner assignasgunner cobraAssigner le rôle de tireur à "homme invisible" dans l'hélico nommé "cobra"
ULBgunner moveingunner cobraForcer l'"homme invisible" au poste de tireur dans le "cobra"
modULB synchronizeObjectsAdd [cobra]Synchronise l'hélico nommé "cobra" avec le module, nommé "modULB", afin de lui permettre de reconnaitre le "cobra" comme "terminal" du drone.
nul = [modULB] execVM "ca\modules_e\uav_heli\data\scripts\uav.sqf"Lancer la gestion du drone grâce au module "modULB". Le script "ca\modules_e\uav_heli\data\scripts\uav.sqf" est le script que lance le module "modULB" au début de la mission.
- Sur désactivation =
deleteVehicle (gunner cobra)Petite précaution indispensable : détruite l'"homme invisible" lorsque le joueur descend de l'hélico (sinon, bonjour les clones à chaque fois que le joueur montera dans l'hélico !!)
fin ?
That all, happy tax payers ! Je n'ai pas pu essayer en MP, mais moyennant de petites modifications, je pense que c'est aisément transposable en MP, vu que je suis resté volontairement "full éditeur".
Bonne édition !