Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Mapping > [HL1] Général > Créer une mitrailleuse fixe > Lecture du tutoriel

Créer une mitrailleuse fixe

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteur : Seal Team 6
Note : 18 / 20 (4 votes)
Visualisations : 12 865

Plus d'informations Plus d'informations
Salut !

Vous avez souvent vu des mitrailleuses fixes dans des maps ? Une espèce de grosse arme qui fait très très mal, qui est fixée au sol et qui peut-être utilisée par tous les joueurs ?
Ca peut mettre de l'ambiance dans une map multijoueurs !
Vous aimeriez savoir comment faire ? Eh bien ce tuto est là pour vous ! On va voir de A à Z comment réaliser une mitrailleuse fixe !
Sommaire du tutoriel :
Icône du chapitre

Création

Rien de bien compliqué ici.
Nous allons tout simplement créer la mitrailleuse en simples blocs. Rien que des blocs pour l'instant, aucune entité.

Pour ma part, j'ai opté pour une Vickers .303, un modèle britannique, de calibre 7,7 mm, avec une chaîne de 250 balles et une vitesse de 500 tirs/min.
Enfin bon, voilà ce que ça peut donner :

Image utilisateur

Pour bien faire, google est votre ami.
Pensez tout de même à bien tenir compte de la hauteur. Il faut que le joueur puisse voir par dessus. ^^

Voilà, c'est tout. Maintenant, nous allons donner vie à cette mitrailleuse.

Func_tank

Bien bien bien. Maintenant la mitrailleuse prête, il faut qu'elle tire des balles, et qu'elle fasse beaucoup de bruit.

Pour commencer, il faut créer un bloc ORIGIN, comme pour tout objet rotatif.
Rotatif ? Pourquoi rotatif ?

C'est bien simple : il faut que le joueur puisse manipuler la mitrailleuse (la faire tourner, de droite à gauche, en haut, en bas) et non qu'elle reste statique.
Nous allons donc placer ce bloc au point de rotation, comme ceci :

Image utilisateur

Pensez bien que le centre de rotation est le CENTRE du bloc. Faites attention donc, sinon vous pourriez avoir des surprises.


Donc, maintenant, sélectionnez le bloc ORIGIN ainsi que votre mitrailleuse. Transformez le tout en entité func_tank.
Si votre mitrailleuse possède un pied comme la mienne, il ne faut évidement pas le sélectionner, sinon, il tournera avec l'arme. ;)


Comment configurer tout ça ? Phou, c'est qu'il y en a, des attributs.
Déjà, vous connaissez pas mal d'options, mais je vais vous mettre celles dont vous avez besoin :

Name : C'est le nom que vous donnez à votre mitrailleuse. Il est INDISPENSABLE. J'appelle le mien "vickers".

Ah, maintenant, quelque chose de très important aussi :

Image utilisateur

Qu'est-ce que c'est que tous ces machins ?
Vous voyez qu'ils se ressemblent à un détail près : yaw et pitch
Yaw : c'est ce qui se rapporte au niveau horizontal.
Pitch : c'est ce qui se rapporte au niveau vertical.

Ensuite, il y a rate, range et tolerance.
Rate : C'est la vitesse de déplacement de la mitrailleuse. Généralement, on met la même dans pitch et dans yaw. Pour cette valeur, je met 80, ce qui me parraît être une bonne vitesse.
Range : Il s'agit de l'angle d'ouverture de la mitrailleuse à partir de sa POSITION D'ORIGINE. Par exemple, dans yaw range (horizontal), il faut mettre une valeur en degrés dans laquelle va pouvoir se déplacer. Par exemple, vous voulez que votre mitrailleuse puise s'ouvrir dans un angle de 100°, il va falloir rentrer la valeur 50 (50 à droite et 50 à gauche). Pareil pour pitch range (vertical). Rentrez 45 pour qu'elle s'ouvre de 45° vers le haut et 45° vers le bas (= 90°).
Tolerance : Ca n'a pas vraiment d'importance, laissez comme c'est.

Barrel Length : C'est la distance (longueur) à laquelle vont sortir les balles à partir de votre bloc ORIGIN. Pour moi, il y a 58 unités WorldCraft depuis le centre du bloc ORIGIN jusqu'à l'endroit où je veux que les balles sortent. Je rentre donc la valeur 58.

Barrel Horizontal : C'est là aussi une distance. Il s'agit de la largeur entre le centre du bloc ORIGIN et l'endroit de sortie des balles.

Barrel Vertical : Encore une distance. C'est la hauteur entre le bloc ORIGIN (encore celui-là) et l'endroit de sortie des balles.

Pour ne pas vous casser la tête, vous n'avez qu'à aligner le centre du bloc ORIGIN par rapport à l'endroit de sortie des balles (dans les vues "side" et "front"). Comme ça, vous n'aurez qu'à mettre 0 dans Barrel Horizontal et dans Barrel Vertical.


Smoke Sprite & Flash Sprite : Vous pouvez sélectionner les sprites que produit la mitrailleuse (smoke pour fumée et flash pour lumière). Ils seront placés à l'endroit que vous avez défini plus haut.

Rotate Sound : Son à jouer quand la mitrailleuse tourne. Entre nous, ce n'est pas très important sauf si vous êtes maniaque...

Damage Per Bullet : C'est le nombre de dégâts à infliger à celui qui se prendra une balle. :diable:

Bullet accuracy : C'est la précision de la mitrailleuse :
Perfect Shot : Précision parfaite.
Small cone : Les balles seront tirées dans un petit cône (= bonne précision).
Medium cone : Les balles seront tirées dans un cône moyen (= précision moyenne).
Large cone : Les balles seront tirées dans un large cône (= mauvaise précision).
Large cone : Les balles seront tirées dans un très large cône (= très mauvaise précision).

Bullets : Type de balles tirées.

Ne pas oublier de cocher le flag controlable pour que le joueur puisse s'en servir.
Il ne reste plus qu'à diriger le radar vers là où la mitrailleuse va tirer (il faut se baser sur le vue "top").

C'est fini pour la configuration.

Image utilisateur
Ouiiiiin... Ma mitrailleuse, elle est toute tordue ! Pourquoi qu'elle est pas dans le bon sens ?


Hola, du calme, il ne faut pas brûler les étapes. Ceci dit, c'est bien de remarquer cela. C'est une particularité des func_tank : il faut toujours les orienter un quart de tour plus à droite que la position que vous souhaitez.
Pour y remédier, il suffit de faire une rotation de 90° vers la droite à votre mitrailleuse. Voilà ce que vous obtenez sous Hammer :

Image utilisateur

Comme ça, votre mitrailleuse aura l'orientation que vous souhaitez.

C'est fini pour le func_tank ! Fastoche, non ? :D

Func_tankcontrols

Func_tankcontrols ? C'est pas encore fini ?


Eh non, un func_tank ne suffit pas à faire une mitrailleuse utilisable par le joueur. D'ailleurs, vous pouvez compiler, vous verrez qu'elle refusera catégoriquement de marcher.

Nous allons donc rajouter une entité-bloc nommée func_tankcontrols. C'est en fait une zone dans laquelle le joueur pourra contrôler la mitrailleuse. Et comme dans toute zone, nous allons appliquer la texture AAATRIGGER à cette entité.

Image utilisateur

Vous pouvez voir que le func_tankcontrols se place lui aussi à un quart de tour vers la droite


Maintenant, transformez ce bloc en func_tankcontrols.
Surprise : il n'y a qu'un attribut.

Tank entity name : Il suffit simplement d'indiquer le nom de l'entité func_tank (pour moi, c'est "vickers").

Eh bien maintenant, votre mitrailleuse devrait marcher à la perfection. Essayez voir.
Alors ?

Beuh, c'est nul, ça fait même pas de bruit. Comment on fait ?


C'est ce que nous allons voir dans la prochaine et dernière partie.
En attendant, réjouissez-vous à l'idée que votre mitrailleuse marche ! ;)

Ajouts

Comme vous avez remarqué, il n'y a pas moyen de faire jouer un son au func_tank.
Nous allons donc procéder autrement en créant un multi_manager.

Créez donc ce multi_manager avec un nom, par exemple multi_vickers.
Dans l'attribut Target du func_tank, mettez le nom de ce multi_manager.
Ensuite, créez votre entité ambient_generic et choisissez le son que vous voulez mettre.

Vous n'avez plus qu'à ajouter l'appel de ce son avec le multi_manager, en SmartEdit.

Vous pouvez aussi ajouter d'autres entités comme un env_shake pour faire un léger tremblement lors des tirs.


Récapitulons en image :

Image utilisateur

Le func_tank appelle donc le multi_manager qui appelle l'ambient_generic et l'env_shake (avec un délai de 0 secondes).

Le multi_manager n'est utile que si vous voulez déclencher plusieurs entités. Si vous ne voulez ajouter qu'un son, pas la peine de passer par ce multi_manager, activez-le simplement depuis le func_tank.


Et voila, votre mitrailleuse flambant neuve, avec les sons, la lumière et tout et tout.

Q.C.M.

Quelle texture doit être appliquée sur le bloc qui sert de point de rotation de la mitrailleuse ? o_O
De quelle entité est faite la mitrailleuse en elle-même ? o_O
Quelle entité permet de contrôler la mitrailleuse ? o_O
Que faut-il faire pour mettre du son lorsque la mitrailleuse tire ? o_O

Statistiques de réponses au QCM


Ca y est, c'est fini, votre mitrailleuse doit marcher à merveille.
Un petit exemple de ce que ça peut donner :

Image utilisateur

Pas mal, hein ?
Ca peut faire bien dans une map multi, question de mettre de l'ambiance.

Et voila, vous savez tout ! :D

++ et à bientôt pour de nouvelles aventures
Retour en haut Retour en haut


Créé : le 11/12/2005 à 15:08:53
Modifié : le 22/08/2008 à 16:07:26
Avancement : 0%
Licence : Copie non autorisée

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 381 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.1342s (0.1232s)