![]() |
![]() |
![]() |
||||||
|
||||||||
|
LES MODS: FAIRE UN PREDATOR QUI SAUTE PLUS HAUT Dans ce tutorial, je vais vous montrer comment faire un mod très simple dans ce jeu: nous allons faire sauter le Predator plus haut qu'auparavant, comme dans les films. Concernant le mod en lui-même, vous n'aurez ni besoin de connaissance du noyau, ni de comprendre le fichier source exposé. 1) Préparer le terrain Quelques fois, quand vous voulez faire un mod, vous pouvez trouver 2 situations:
2) Comment commencer ? En fait, j'étais tellement intéressé par le gameplay, que je n'ai jamais remarqué une telle chose !!! Donc j'ai lancé le jeu, sélectionné l'Alien et joué avec. "Yes! C'est bien ça !". Je suis ainsi retourné dans le code et l'ai un peu étudié. J'ai regardé au-dessus: if(playerStatusPtr->Mvt_InputRequests.Flags.Rqst_Jump)Donc dans ce cas, le joueur "fait une requête pour sauter", c-à-d l'Alien. Ensuite, j'ai regardé à: if ((playerStatusPtr->ShapeState == PMph_Crouching) && (DotProduct(&viewDir,&dynPtr->GravityDirection)<-32768))Ici, nous parlons de se mettre accroupi ("crouching" en anglais), de la direction de la vue ("view direction") et de la vitesse de saut ("jump speed"). Résumons: quand nous sommes l'Alien, si nous nous accroupissons, donc en regardant vers une certaine direction et en faisant un saut, et bien le saut lui-même est multiplié par 3 ? J'ai relancé le jeu, et réalisé que si vous regardez au-dessus de vous en tant qu'Alien, puis vous accroupissez et sautez, vous faites simplement un extra saut dans cette direction ! L'idée était née: je sais comment tester l'espèce du joueur, comment savoir s'il est accroupi et je peux modifier la vitesse du saut: je vais essayer de faire un Predator qui saute plus haut, comme dans AvP2 !!! Note: ceci est intégré directement dans AvP 2, donc désormais également dans AvP GE ;). 3) Comment procéder ? Voici la partie intéressante du code: /* l'alien peu sauter dans la direction qu'il fixe voit */// Ceci concerne l'Alien { VECTORCH viewDir;} // NOUVEAU CODE POUR LE PREDATOR ICI else // Ca concernait le Predator & le Marine, maintenant, seulement le Marine { dynPtr->LinImpulse.vx -= MUL_FIXED(dynPtr->GravityDirection.vx,jumpSpeed);} Maintenant pour le code du Predator, vous devez ajouter: // Si le Predator s'accroupit (pas besoin de regarder au-dessus comme l'Alien)Voici l'exemple typique d'un simple mod: seulement 7 lignes pour ajouter une nouvelle fonctionnalité au Predator !!! Sûr, cela peut être amélioré (ex.: en ajoutant un nouveau son pour le saut, ...), mais c'est assez facile pour vous laisser vous amuser avec le moteur 3D ... Maintenant, répétez après moi: "AvP GE est cool !!!" |
|||||||