- Divertissement et passe-temps
- Jeux vidéo et consoles
- Jeux vidéo
- FPS CREATOR
- FPS Creator
- Mode d'emploi
▼
Scroll to page 2
of
104
Des possibilités infinies... Version 1.0 MANUEL © 2005 The Game Creators Ltd. Tous droits réservés. 1 Table des matières 1 Introduction ........................................................6 2 Configuration requise ..........................................7 3 Installation..........................................................8 4 4.1 4.2 4.3 4.4 Démarrage ..........................................................9 L'éditeur de niveaux .............................................9 Liste des commandes de l'éditeur ..........................12 Créer votre premier FPS .......................................13 Créer votre premier jeu d'arène .............................21 5 5.1 5.1.1 5.2 5.2.1 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7 5.3.8 5.3.9 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 Les bibliothèques ................................................24 Eléments préfabriqués ..........................................24 Créer vos propres éléments préfabriqués..............25 Segments ...........................................................26 Superposition des éléments ................................28 Entités................................................................31 Propriétés des entités ........................................33 Intelligence artificielle des entités ........................34 Entités : armes .................................................35 Entités : munitions ............................................37 Entités : ennemis ..............................................37 Entités générales...............................................39 Description des scripts FPI ..................................40 Fonctionnement des interrupteurs et des portes ....42 Explosions et débris d’entités ..............................42 Repères ..............................................................43 Repère de départ du joueur ................................43 Repère de checkpoint joueur...............................44 Repères d'éclairage............................................44 Repères de zone................................................46 Repère d'histoire ...............................................47 Repérage de plusieurs paliers..............................47 6 6.1 6.2 6.3 6.4 6.4.1 6.4.2 6.4.3 6.5 6.5.1 6.5.2 6.5.3 6.5.4 Autres informations pour l'édition des cartes ......48 Etats du curseur d'édition .....................................48 Indicateurs de l'éditeur .........................................49 Modes de masquage 3D ........................................49 Eléments spéciaux ...............................................50 Portiques ..........................................................50 Ascenseurs .......................................................51 Téléporteurs .....................................................51 Points de passage ................................................53 Création d'un point de passage ...........................53 Liaison de plusieurs points de passage .................54 Points de passage sur plusieurs paliers.................55 Liste des commandes des points de passage.........56 7 7.1 7.2 7.3 Test et aperçu des niveaux ..................................57 Tester un niveau ..................................................57 Profileur de niveau ...............................................59 Aperçu rapide d'un niveau.....................................61 8 8.1 8.2 8.3 8.4 8.5 Création d'un jeu exécutable ...............................62 Paramètres du projet............................................63 Paramètres de niveau...........................................64 Textures .............................................................68 Programmes exécutables des jeux d’arène ..............70 Paramètres de compilation ....................................71 2 9 9.1 9.2 9.3 Physique..............................................................73 Propriétés physiques ............................................73 Création de situations reposant sur... .....................73 Trucs et astuces sur la configuration des... ..............74 10 10.1 10.2 10.3 Jeux multijoueur de type « match à mort » ........75 Fonctionnement du mode multijoueur.....................75 Création d’un jeu multijoueur ................................75 Différences entre modes Arène et Un joueur ...........76 11 Conseils ...............................................................77 12 12.1 12.2 Interface .............................................................79 Les menus déroulants...........................................79 Barres d'outils .....................................................82 13 13.1 13.2 13.3 13.4 13.5 13.6 13.7 Guides de création...............................................84 Changer la résolution du jeu..................................84 Créer une nouvelle logique FPÏ ..............................84 Créer de nouveaux segments et entités ..................90 Créer vos propres armes.......................................90 Personnalisation des écrans du jeu.........................92 Description du dossier de fichiers ...........................93 Vue d'ensemble des fichiers et des formats .............94 14 Vente des jeux créés avec FPS Creator ................95 15 15.1 15.1.1 15.1.2 15.1.3 15.1.4 15.2 15.2.1 15.2.2 15.2.3 15.2.4 15.3 15.3.1 15.3.2 15.3.3 15.4 15.4.1 15.4.2 15.4.3 15.4.4 15.5 15.5.1 15.5.2 15.5.3 15.5.4 Autres outils de création de jeux .........................96 Développement de jeux........................................96 The 3D Gamemaker.............................................96 Dark Basic Classic ...............................................96 Dark Basic Professionnal.......................................97 Dark Game SDK ..................................................97 Modélisation en 3D ..............................................98 Canvas Pro .........................................................98 GameSpace ........................................................98 Character Shop ...................................................99 Action 3D ...........................................................99 Graphismes ........................................................100 Texture Maker.....................................................100 Ext Gen..............................................................100 ProMotion ...........................................................100 Création de mondes.............................................101 Cartography Shop 4.............................................101 Geoscape 3D ......................................................101 Sky Matter..........................................................102 Gile[s] ...............................................................102 Collections de graphismes et de sons .....................102 Dark Matter 1, 2 et 3 ...........................................102 Tree Magic G2.....................................................103 Plant Life ............................................................103 Sound MATTER....................................................104 3 Crédits FPS Creator a été conçu et développé avec passion pendant quatre ans par les personnes suivantes : Programmeur principal Programmeur Chef de projet Graphiste principal Graphiste Animation Graphisme des icones Musique Site Internet Voix Effets armes Sons environnements Manuel Testeurs RP Ventes Lee Bamber Mike Johnson Richard Vanner Simon Benge Michael Palm Simon Benge, Chris Bamber Peter Jovanovic Willem Cramer Richard Davey Lee Bamber Sarah Nielsen avec l'aimable autorisation de Chris Blundell Rick Harrison Mark Sheeky Richard Vanner Lee Bamber Colin Pritchard Andrew Vanbeck, Dave Milton, David Johnson, David Tattersall, Frederic Cordier, Ian Mold, Jake Jensen, Jason Dean, Jess Telford, Robert Knight, Ron Erickson, Malcolm Bamber, Alec Moody, David Smith, David Tattersall, Chris Blundell, Christian Mueller, Peter Coleman, Chris Breaux, Evan Floyd, Stephen Jolly, Eric Tomassetti, Brentt Moore et Timothy Ruswick. Don Lewis de Foxbank PR Yolande Barbe & Simone Jenkinson de Connect International FPS Creator a été développé avec Dark Basic Professional. Contact Assistance Visitez notre site Internet pour connaître les nouveautés concernant FPS et les add-ons, obtenir des conseils et bien plus encore : www.fpscreator.com Rejoignez notre communauté ! Découvrez les créations d'autres utilisateurs avec FPS Creator enregistrant et en participant au forum en ligne de FPS Creator : http://forum.thegamecreators.com/ 4 en vous FPS Creator utilise le moteur physique ODE Licence BSD d’ODE (LICENSE-BSD.TXT) ODE (Open Dynamics Engine) Copyright (c) 2001-2004, Russell L. Smith. Tous droits réservés. La redistribution et l'utilisation sous des formes source et binaire, avec ou sans modifications, sont autorisées dans les conditions suivantes : La redistribution du code source doit contenir le copyright ci-dessus, cette liste des conditions et les réserves suivantes. La redistribution sous forme binaire doit reproduire le copyright ci-dessus, cette liste de conditions et les réserves suivantes dans la documentation et/ou autres éléments fournis avec la distribution. Ni le nom du détenteur du copyright de l’ODE ni celui de ses contributeurs ne peuvent être utilisés pour crédibiliser ou promouvoir des produits dérivés de ce logiciel sans autorisation préalable sous forme écrite. CE LOGICIEL EST MIS A DISPOSITION « TEL QUEL » PAR LES DETENTEURS DU COPYRIGHT ET LES CONTRIBUTEURS, QUI N’OCTROIENT AUCUNE GARANTIE EXPRESSE OU IMPLICITE, EN CE COMPRIS, SANS QUE CETTE ENUMERATION NE SOIT LIMITATIVE, TOUTE GARANTIE IMPLICITE DE QUALITE MARCHANDE ET D’APTITUDE A SERVIR A UN BUT DONNE. EN AUCUN CAS, LES DETENTEURS DU COPYRIGHT ET LES CONTRIBUTEURS NE SERONT RESPONSABLES DE TOUT DOMMAGE DIRECT, INDIRECT, ACCESSOIRE, PARTICULIER, EXEMPLAIRE OU INDIRECT (Y COMPRIS, SANS QUE CETTE ENUMERATION NE SOIT LIMITATIVE, LE COUT DE REMPLACEMENT DE PRODUITS OU DE SERVICES, LA PERTE DE JOUISSANCE, DE DONNEES, DE BENEFICES OU D’EXPLOITATION), QUELLE QU’EN SOIT LA CAUSE ET QUEL QUE SOIT LE FONDEMENT D’UN RECOURS EVENTUEL : MOTIFS DE CONTRAT, DE RESPONSABILITE STRICTE OU DE RESPONSABILITE CIVILE DELICTUELLE (Y COMPRIS LA NEGLIGENCE OU TOUT AUTRE MOTIF) LIES D’UNE FAÇON QUELCONQUE A L’UTILISATION DE CE LOGICIEL, ET CELA MEME SI LES DETENTEURS DU COPYRIGHT OU LES CONTRIBUTEURS ONT ETE INFORMES DE L’EVENTUALITE D’UN TEL DOMMAGE. Pour plus d'informations, rendez-vous sur le : http://www.ode.org/ 5 1 Introduction L'idée de FPS Creator (FPSC) remonte à l'année 2001 : il a fallu plus de quatre ans pour achever ce projet. La création d'un outil pouvant créer les jeux à votre place n'était pas une mince affaire, il fallait résoudre toutes sortes de problèmes complexes pour obtenir une rapidité suffisante et satisfaire l'utilisateur. Le résultat de ce dur labeur est cette première version de FPS Creator. Il est temps pour nous partager notre création avec vous, nos fidèles utilisateurs. Maintenant, montrez-nous ce que vous pouvez en faire ! Ce sont vos créations qui nous diront comment ce produit doit évoluer à l'avenir. Depuis toujours, notre objectif est de concevoir des outils d'édition faciles à utiliser avec une qualité de résultat optimale. FPSC fera le plus gros du travail pour vous, mais vous devez néanmoins comprendre comment un jeu doit être conçu. Pour vous en assurer, lisez ce manuel et suivez nos conseils : le résultat n'en sera que meilleur ! Il a fallu des années, mais ça valait le coup. Je suis fier de développer des logiciels qui permettent aux utilisateurs d'obtenir des résultats en une fraction du temps qu'il leur faudrait normalement. Avec FPS Creator, j'ai conçu un outil qui vous permet de créer des FPS en quelques minutes au lieu de quelques mois. Sa flexibilité vous permettra de découvrir toute sa puissance pendant des années ! Programmé à 100% en Dark Basic Professional, il fait partie de notre noyau technologique et profitera de l'évolution de nos autres solutions de développement. Je dois vous avouer que, malgré ses innombrables atouts technologiques, la meilleure fonction de FPS Creator reste le plaisir que vous aurez à créer vos propres jeux... des tonnes et des tonnes de jeux ! Lee Bamber Programmeur principal et fondateur de The Game Creators Ltd Merci d'avoir acheté FPS Creator. Toute l'équipe de The Game Creators n'a qu'un seul objectif : offrir des outils de création de jeux intéressants à ses clients. Nous adorons notre travail dans cette industrie, notamment la création de jeux. Nous avons constaté que c'est une expérience très enrichissante et nous espérons que vous pourrez laisser libre cours à votre créativité et à vos idées avec cet outil nouveau et passionnant. Avec des produits comme Dark Basic et The 3D Gamemaker, nous avons déjà ouvert les portes de la création de jeux à un grand nombre d'utilisateurs. Aujourd'hui, FPS Creator vous offre encore plus de flexibilité avec des résultats de niveau professionnel. Nous avons hâte de découvrir vos créations ! Rick Vanner Directeur commercial, The Game Creators Ltd 6 2 Configuration Requise IMPORTANT : DirectX version 9.0c ou plus doit être installé avant l'installation de FPS Creator. Si vous n'avez pas la dernière version de ce programme, il est librement disponible à l'adresse : www.microsoft.com/directx Configuration conseillée Window XP édition familiale / XP Pro Pentium 4, 2.66 Ghz (ou équivalent) 1 Go de RAM Lecteur de CD-ROM 1.4 Go d'espace sur le disque dur (+ espace pour les jeux créés) DirectX 9.0c Carte son compatible DirectX 9.0 Souris et clavier compatibles DirectX 9.0 Carte graphique compatible DirectX 9.0 (accélération 3D matérielle) avec au moins 128 Mo de mémoire Configuration minimale Window XP Home / XP Pro Pentium 3, 1 Ghz (ou équivalent) 256 Mo de RAM Lecteur de CD-ROM 1.4 Go d'espace sur le disque dur (+ espace pour les jeux créés) DirectX 9.0c+ Carte son compatible DirectX 9.0 Souris et clavier compatibles DirectX 9.0 Carte graphique compatible DirectX 9.0 (accélération 3D matérielle) avec au moins 64 Mo de mémoire. * Sur les configurations aux performances inférieures, les niveaux seront de taille plus réduite et les jeux plus lents 7 3 Installation L'installation de FPS Creator est très simple. Si vous avez acheté la version CDROM, passez à l'étape suivante. Si vous avez acheté FPS Creator en ligne, vous allez recevoir un email avec des informations détaillées pour le téléchargement de FPS Creator. Nous avons créé un gestionnaire de téléchargement spécial pour simplifier au maximum l'opération. Si vous avez des problèmes de connexion, vous pourrez toujours reprendre le téléchargement du fichier ultérieurement. Une fois le fichier transféré, vous devez décompacter les fichiers dans leur propre répertoire. Si vous avez acheté la version Early Adopter, assurez-vous d'avoir sauvegardé toutes vos données de jeu, puis désinstallez la version EA avant d'installer la version 1. • • Exécutez le programme setup.exe Vous devrez saisir votre nom et le numéro de série de votre programme. Ce numéro est imprimé sur un autocollant sur la boîte de jeu. Une fois l'installation terminée, vous trouverez FPS Creator dans le menu Démarrer/Tous les programmes, dans le groupe "The Game Creators". 8 4 Démarrage 4.1 L'éditeur de niveaux Nous savons que vous aurez hâte de passer tout de suite à l'action pour créer un jeu. Nous avons tout fait pour que cette opération soit la plus simple possible, mais vous devez néanmoins savoir certaines choses avant de vous précipiter. Le meilleur moyen d'avancer est de suivre les étapes d'initiation de ce manuel. Elles vous présenteront en détail les nombreuses fonctions de FPS Creator. Lorsque vous lancez FPS Creator pour la première fois, vous verrez cet écran : Menus déroulants Outils Fenêtre d'édition Biblioth èque Curseur d'édition 3D Barre d'état Onglets Barre d'outils Les icones de cette barre permettent d'accéder rapidement à toutes les fonctions importantes du logiciel. Les menus déroulants Les divers menus déroulants permettent d'accéder aux autres options. Bibliothèque Cette fenêtre contient des onglets pour les blocs de construction utilisés pour créer vos jeux. C'est là que vous choisirez les différents segments, les éléments préfabriqués (préfabs) qui composeront les niveaux et les entités qui apparaîtront dans le jeu. Onglets de la bibliothèque La bibliothèque est divisée en quatre sections : Préfabs, Segments, Entités et Repères. Cliquez sur un onglet pour choisir les éléments de la bibliothèque que vous souhaitez visualiser. Fenêtre d'édition principale Dans cette zone, vous pouvez voir le niveau en cours d'édition en vue aérienne. Pour faciliter votre création, FPS Creator utilise un système de grille pour la construction d'univers en 3 dimensions. Chaque case de la grille est un cube de 100x100x100. Vous verrez plus tard que vous pouvez choisir certains blocs de segments qui seront reliés ensemble pour former un niveau. Si vous êtes dans le mode arène, cette grille est rouge, pour distinguer les différents modes d'édition. 9 Le curseur d'édition 3D Lorsque vous appliquez des couleurs à un niveau, le curseur 3D indique où elles seront appliquées. Déplacez votre souris sur la grille 3D : remarquez un cercle noir autour du curseur : c'est la "zone de rendu", qui peut être réduite ou agrandie. Elle vous permet de voir l'apparence qu'aura votre niveau dans le jeu final. Comme il s'agit d'une vue aérienne, vous voyez beaucoup plus que ce que vous verriez normalement en jouant. Nous utilisons cette "zone de rendu" pour une raison très simple : les calculs d'affichage pour le niveau entier seraient très lourds pour la plupart des cartes graphiques et l'édition en serait considérablement ralentie. La zone de rendu vous permet de voir les environs de la zone en cours d'édition, le reste étant dessiné sommairement, comme un plan. Sur cet écran, vous pouvez voir que la partie supérieure gauche de la carte est affichée sous forme de plan : Barre d'état La barre d'état, en bas de la fenêtre d'édition, indique le mode d'édition actif, la position du curseur dans le niveau et l'état des touches de verrouillage (MAJ, DEFIL et VERR. NUM) du clavier. La taille du niveau de jeu peut être la suivante : Description Taille Axe Hauteur Largeur Longueur 20 40 40 Y X Z Numérotation des cases 0-19 0-39 0-39 Touches de déplacement "+" et "-" Flèche gauche et droite Flèche haut et bas La barre d'état vous indique également la position du curseur 3D: Dans notre exemple, le curseur est au palier 5, à 6 cases du coin gauche de la grille et à 8 cases du haut de la grille. Pour comprendre ce qu'est un "palier", imaginez un immeuble et des appartements : le rez-de-chaussée serait le palier 0, le premier étage le palier 1, etc. L'éditeur vous offre une vue aérienne d'un palier et affiche le palier (étage) que vous être en train d'éditer en masquant par défaut les autres. IMPORTANT : par défaut, l'édition commence au palier 5. Nous avons choisi cette option car vous voudrez certainement étendre votre niveau vers le bas. Si vous commencez au palier 0, vous n'aurez plus de marge de manœuvre. Vous pouvez bien sûr commencer au palier 0 : appuyez sur la touche "–" pour descendre au palier désiré et commencez à partir de là. 10 Lorsque vous lancez FPS Creator pour la première fois, le programme est configuré pour vous permettre de créer un nouveau jeu à un joueur. Vous devez choisir dès le début le type de jeu que vous allez créer : jeu FPS à un joueur ou jeu d’arène multijoueur de type « match à mort ». A ce stade, il est encore possible de changer de type de jeu afin de déterminer le mode qui convient. Pour de plus amples informations sur les jeux d’arène, reportez-vous au paragraphe relatif aux jeux multijoueur. 11 4.2 Liste des commandes de l'éditeur DEPLACEMENT CARTE/Affichage + Monter d'un palier Descendre d'un palier Maj+Molette Monter et descendre les paliers souris W Zoom ? Zoom avant (carte) ; Zoom arrière (carte) Molette Zoom avant/arrière (carte) souris # Augmenter la zone de rendu ‘ Réduire la zone de rendu Ctrl+Molette Augmenter/Réduire la zone de souris rendu COMMANDES GENERALES BGS Peindre BDS Effacer Monter et descendre les Molette souris paliers R Rotation 90° de la sélection Ctrl+R Rotation 10° de la sélection Maj+R Rotation 1° de la sélection Annuler Ctrl+Z TAB Masquer vue 3D (3 modes) Déplacement curseur 3D Flèches Maj+Flèches Ctrl+Flèches F1 EDITION DE SEGMENTS Edition de segments Choisir un segment sur la carte Peindre murs & sols en mode intérieur Peindre murs & sols en mode extérieur Ne peindre que les murs Ne peindre que les sols P K Q X M F Y BGS Entrée Maj+Entrée Edition de points de passage Z Espace Page Haut/Bas Voir/Masquer les points de passage Flèches EDITION PRESSE-PAPIERS Déplacer la zone sélectionnée Ctrl+C Ctrl+P EDITION D'ENTITES Edition d'entités Mode grille (3 modes) Entité statique (rouge) ou dynamique (vert) Choisir et peindre entité BDS Edition presse-papiers E BGS N B Déplacement curseur de 10 unités Déplacement vers l'extrémité de la grille Touche d'aide rapide Edition des propriétés Placer l'entité au-dessus de l'entité la plus haute Placer l'entité au-dessus des entités inférieures Déplacer l'entité vers le haut ou le bas (axe Y) Déplacer l'entité relativement à la caméra PROPRIETES DES ENTITES Déplacez la souris pour faire pivoter la zone Quitter l'édition des BGS propriétés BDS Copier la zone Coller dans le presse-papiers [ ] REPÈRES Augmenter la portée lumineuse Réduire la portée lumineuse 12 4.3 Créer votre premier FPS Créons maintenant notre premier jeu en suivant les étapes ci-dessous. Si vous faites une erreur, vous pouvez cliquer sur l'icone ou l'option de menu Annuler (ou appuyer sur les touches Ctrl+Z) pour annuler la dernière action, ce qui vous évite de tout recommencer. Toutes les cartes de cette initiation ont été installées avec FPS Creator. Si vous ne comprenez pas un chapitre, chargez simplement la carte correspondante : "FPSCreator/Files/Mapbank/Tutorials/Getting_Started01.fpm" 1. Pour commencer, nous avons besoin d'un élément de construction. Dans la fenêtre de la bibliothèque, cliquez sur l'icone "ajouter nouveau préfab", sélectionnez la "petite salle de contrôle" et cliquez sur OK. 2. La souris prend la forme de l'élément préfabriqué. Déplacez-la : vous verrez l'image de l'élément la suivre sur l'écran. L'élément préfabriqué est constitué de segments et d'entités et mesure plus d'un palier de hauteur. 13 3. Placez l'élément au bas de l'écran, comme ceci : 4. Cliquez maintenant sur le bouton gauche pour placer l'élément dans le niveau : "FPSCreator/Files/Mapbank/Tutorials/Getting_Started01.fpm" Dans la pièce que vous venez de créer, remarquez la couleur de la porte. Dans l'éditeur, elle apparaît en vert car elle n'a pas encore été ouverte dans le mur de la pièce. Cette opération n'est effectuée que lorsque le jeu est testé ou compilé. 14 5. L'élément sélectionné est toujours actif. Placez maintenant la souris au-dessus de la pièce que vous venez de créer. Alignez bien les deux pièces et cliquez sur le bouton gauche pour en placer un nouvel exemplaire : "FPSCreator/Files/Mapbank/Tutorials/Getting_Started02.fpm" 6. Notre jeu contient désormais un niveau composé de deux pièces contiguës. Définissons maintenant le point de départ du joueur lorsque le jeu est lancé pour la première fois. 7. Cliquez sur l'onglet Repères en bas de la fenêtre de la bibliothèque, puis sur la flèche verte "Départ joueur" : 15 8. Placez le point de départ du joueur dans la première pièce, en bas de l'écran. Pour faire pivoter l'angle de la position de départ, utilisez la touche "R". Cliquez sur le bouton gauche de la souris lorsque le point de départ vous convient. "FPSCreator/Files/Mapbank/Tutorials/Getting_Started03.fpm" 9. Nous allons maintenant tester notre niveau. Dans la barre d'outils, cliquez sur l'icone "Tester le jeu" : La compilation du jeu sera alors effectuée en fonction de vos choix. Une fois le jeu compilé, vous verrez une fenêtre de ce type : 10. Cliquez sur OK pour lancer le jeu. Selon l'emplacement du point de départ du joueur (avec ou sans rotation), vous verrez une vue de ce type : 16 11. Utilisez les touches Z/Q/S/D pour avancer, tourner à gauche, à droite et reculer. Utilisez la souris pour regarder autour de vous. L'élément préfabriqué que nous avons utilisé disposait d'une porte. Avancez vers la porte : elle s'ouvre automatiquement : 12. Avancez dans la pièce suivante. Vous pouvez même franchir la seconde porte et voir l'extérieur des deux pièces que vous avez créées : Bien sûr, en créant vos propres niveaux, vous ferez en sorte qu'un joueur ne se retrouve pas dans un espace vide s'il sort d'une pièce... sauf si c'est le but recherché ! Maintenant, ajoutons un peu d'action ! 13. Cliquez sur l'onglet Entités en bas de la fenêtre de la bibliothèque. 14. Cliquez ensuite sur l'icone "ajouter nouvelle entité" : 17 15. La fenêtre du navigateur s'agrandira pour recouvrir la carte. Les utilisateurs de Windows ne seront pas dépaysés... Les catégories d'entités sont affichées à gauche, la fenêtre de droite affiche une vue réduite des éléments de la catégorie sélectionnée. Naviguez dans la liste des catégories de gauche pour voir le contenu du répertoire "Bibliothèque d'entités/science-fiction/objets" : Les éléments de la catégorie "science-fiction" sont affichés dans la fenêtre du navigateur L'arborescence de navigation permet de trouver facilement le répertoire Bibliothèque d'entités/science-fiction/objets 16. Choisissez le "Tavor" et cliquez sur OK (ou double-cliquez directement sur son image). 17. Placez cette arme dans la première pièce, comme ceci : 18. Nous allons maintenant ajouter des munitions pour notre arme. Cliquez à nouveau sur l'icone "Ajouter nouvelle entité" les "Munitions_Tavor" dans la même catégorie. 18 et sélectionnez cette fois 19. Placez quelques recharges de munitions près de l'arme : trois devraient suffire. "FPSCreator/Files/Mapbank/Tutorials/Getting_Started04.fpm" 20. Maintenant, il est temps d'ajouter un ennemi ! Cliquez sur "Ajouter nouvelle entité" et naviguez vers le répertoire "Bibliothèque d'entités/sciencefiction/personnages". Dans la liste, choisissez "ColonelX (Fusil)". 21. Vous allez ajouter un ennemi sur votre carte. Placez le Colonel X armé d'un fusil dans la pièce du haut (utilisez la touche R pour le faire pivoter afin qu'il soit face à la porte que le joueur empruntera, au sud). "FPSCreator/Files/Mapbank/Tutorials/Getting_Started05.fpm" 22. Tout comme la porte, le personnage ennemi est déjà programmé avec un script d'IA. Il a reçu l'ordre de vous abattre à vue ! Voyons si vous êtes en forme pour le combat... Cliquez sur le bouton "Tester le jeu" pour le recompiler, puis jouez (la touche "R" permet de recharger votre arme). 23. Avez-vous tué votre ennemi ? Si oui, vous avez dû voir ceci : 19 24. Le Tavor est équipé d'une lunette. Si vous aviez utilisé le bouton droit de la souris dans le jeu, vous auriez visé l'ennemi de cette manière : 25. Sympa, non ? En quelques instants, vous avez créé un mini-niveau de jeu, choisi une arme et un méchant à attaquer. Et le tout sans la moindre ligne de programmation ! 26. Et maintenant, encore mieux ! Cliquez sur l'option "Compiler le jeu" du menu Fichier. Lorsque la fenêtre s'affiche, cliquez sur l'onglet "Paramètres de compilation", puis sur "Créer programme exécutable". FPS Creator va maintenant créer une version exécutable de votre jeu. Vous pourrez ainsi le transmettre à vos amis, qui pourront y jouer et apprécier votre création ! 27. Une fois le jeu compilé, ouvrez l'Explorateur de Windows et localisez le répertoire dans lequel le jeu a été sauvegardé (par défaut, C:\Program Files\The Game Creators\FPS Creator\My Games\mygame\mygame.exe). Double-cliquez sur le fichier .EXE pour charger le jeu et le lancer avec son propre menu. 20 4.4 Création de votre premier jeu d’arène Divers aspects différencient un jeu d’arène d’un jeu à un joueur classique. Il est notamment conçu pour être utilisé en ligne contre d’autres joueurs. A défaut d’histoire, le jeu est basé sur la rapidité, la réapparition des armes et munitions ainsi que la réussite d’objectifs simples de type « match à mort ». Suivez la procédure ci-dessous pour créer votre premier jeu d’arène multijoueur (prévoyez un ou deux amis à affronter) ! Si un pare-feu est installé sur votre système, autorisez le jeu à échanger des données avec votre PC, sinon les données du jeu seront bloquées. 1. Sélectionnez l’option NOUVEAU JEU D’ARENE dans le menu FICHIER. 2. Sélectionnez AJOUTER NOUVEAU PREFAB et choisissez une pièce. 3. Pour créer le premier niveau de votre jeu d’arène, placez une pièce d’environ 8x8 segments. 4. Sélectionnez l’onglet ENTITES, puis l’option AJOUTER NOUVELLE ENTITE. 5. Choisissez un personnage et cliquez sur OK. 6. Placez le personnage dans le niveau. 7. Revenez à l’option AJOUTER NOUVELLE ENTITE et sélectionnez un deuxième personnage. 8. Placez ce nouveau personnage dans le niveau. 9. Sélectionnez l’option AJOUTER NOUVELLE ENTITE et choisissez une arme. 10. Placez deux exemplaires de l’arme dans le niveau. 11. Cliquez sur l’option COMPILER LE JEU du menu FICHIER. 12. Cliquez sur l’onglet ARENE et entrez le chiffre 5 dans le champ Premier à atteindre X frags. 13. Cliquez sur l’onglet de compilation et sélectionnez le bouton CREER PROGRAMME EXECUTABLE. 14. Pour consulter le répertoire MyGames, utilisez l’Explorateur de Windows. 15. Pour jouer, ouvrez le répertoire TestArena et lancez le programme exécutable. 21 Partie multijoueur 1. Pour démarrer le jeu d’arène, lancez le programme exécutable. 2. Votre nom de joueur vous est alors demandé. 3. Le joueur possédant l’ordinateur le plus rapide doit cliquer sur le bouton HOTE. 4. Les joueurs souhaitant rejoindre la partie doivent cliquer sur le bouton REJOINDRE. 5. A l’exception de l’hôte, les joueurs doivent également sélectionner une partie dans la liste proposée. Entrez le numéro de la partie que vous souhaitez rejoindre et appuyez sur la touche Entrée. 6. L’écran de sélection des personnages apparaît. L’hôte est le premier à choisir son personnage, suivi de tous les autres joueurs (selon leur ordre d’arrivée). 22 7. Une fois chargé, le jeu démarre. 8. Le premier joueur qui parvient à atteindre les objectifs définis lors de la création du jeu (Compiler le jeu – Paramètres de jeu d’arène) l’emporte. Vous pouvez à tout moment appuyer sur la touche Echap pour quitter une partie multijoueur. Si le joueur hôte quitte la partie, tous les autres joueurs sont renvoyés au menu principal du jeu. Cette introduction vous a présenté certaines fonctions basiques de l'éditeur. Vous en avez encore bien d'autres à découvrir et nous allons aborder plus en détail les diverses bibliothèques dans le chapitre suivant. 23 5. Les bibliothèques Les bibliothèques sont au centre de la création de vos jeux. Elles contiennent quatre types d'objets différents : des éléments préfabriqués (ou préfabs), des segments, des entités et des repères. 5.1 Eléments préfabriqués Les éléments préfabriqués (ou préfabs) sont construits avec des segments de construction plus petits. Ils vous évitent d'avoir à reconstruire à chaque fois une géométrie similaire pour vos jeux. Par exemple, si vous avez créé une pièce intéressante avec plusieurs segments, vous pouvez la sauvegarder en tant qu'élément préfabriqué (voir le chapitre 5.1.1). Dans cette version de FPS Creator, nous avons inclus des éléments préfabriqués pour vous aider à démarrer. Nous espérons aussi que les utilisateurs échangeront leurs créations par le biais de notre site Internet ! Cliquez sur l'icone "Ajouter nouveau préfab" pour activer ce navigateur : Une fois l'élément choisi, il sera "attaché" au curseur de la souris. Vous pouvez maintenant placer cet élément dans le niveau du jeu. Lorsque vous placez un élément préfabriqué, voici les points importants : • • • • • • • • Le premier palier (inférieur) de l'élément est placé en haut à gauche de la case de la grille sur laquelle le curseur 3D est pointé. La plupart des éléments préfabriqués sont plus hauts que les segments et peuvent dépasser en hauteur un palier : attention à ne pas modifier des zones plus élevées dans le niveau. La touche "R" permet de faire pivoter l'élément à 90 degrés. Le bouton droit de la souris supprime toutes les cases couvertes par l'élément préfabriqué Pour faire disparaître l'élément du curseur de la souris, appuyez sur la touche "Suppr". Appuyez sur la touche "P" pour passer à l'édition de segments, "N" pour l'édition d'entités. En cas d'erreur, vous pouvez annuler avec les touches Ctrl+Z. Les éléments préfabriqués ne peuvent pas contenir d'entités autonomes, mais peuvent inclure des portes et des fenêtres (qui contiennent indirectement des entités définies). 24 5.1.1 Créer vos propres éléments préfabriqués Vous pouvez créer vos propres éléments préfabriqués avec l'éditeur de cartes. Suivez ces étapes pour vous assurer que vos éléments seront correctement fabriqués. 1. Cliquez sur l'option Nouveau du menu Fichier pour éditer une nouvelle carte : vous devez commencer à partir de rien pour créer des éléments préfabriqués. 2. Choisissez les segments que vous souhaitez utiliser et placez-les en haut à gauche de la carte. Vous pouvez utiliser n'importe quelle combinaison de segments (portes, couloirs, portes et fenêtres). Vous ne devez PAS utiliser les entités de la bibliothèque d'entités pour construire vos éléments préfabriqués. 3. Vos éléments préfabriqués peuvent contenir plusieurs paliers. Nous vous conseillons de ne pas dépasser 5 paliers. Au-delà, il devient difficile de placer une structure aussi haute en gardant la perspective aérienne. 4. Une fois les segments peints, placez le curseur 3D sur le palier le plus bas, dans le coin supérieur gauche. 5. Appuyez sur la touche "E" et sélectionnez tous les segments compris dans votre élément préfabriqué. Vous pouvez utiliser les touches + et – pour monter et descendre d'un niveau. 6. Lorsque vous avez entouré l'élément complet, appuyez sur les touches CTRL+C pour copier la sélection dans le presse-papiers. 7. Appuyez ensuite sur les touches CTRL+J pour ouvrir la fenêtre "Sauvegarder préfab". Choisissez l'emplacement de sauvegarde et saisissez le nom de l'élément, sans oublier le suffixe ".FPP" pour le nom du fichier. 8. Vous verrez ensuite un écran sur lequel vous pouvez voir l'élément préfabriqué et vous pourrez zoomer avec les touches Z,Q,S et D. 9. Lorsque vous avez terminé, cliquez sur le bouton gauche de la souris pour capturer l'image de l'élément préfabriqué. Cette image sera ensuite utilisée dans le navigateur. 10. Cliquez ensuite sur l'icone "Ajouter nouveau préfab", vous verrez maintenant l'élément préfabriqué que vous venez de créer dans le répertoire choisi pour sa sauvegarde. 25 5.2 Segments Les segments sont les matériaux bruts qui vous permettent de construire les niveaux de vos jeux dans FPS Creator. Il en existe différentes formes et tailles et vous devez bien comprendre leur fonctionnement pour construire vos niveaux. Dessin à l'aide de segments Commençons par une pièce basique. Pour ce type de segments, leur nom indique comment ils seront utilisés pour le dessin des murs (intérieurs et extérieurs), du sol et du plafond. Si vous choisissez le segment "Salle de contrôle pleine" dans la bibliothèque (voir : Segment Library/Scifi/Rooms) et que vous dessinez une petite pièce de 4x4 avec ce segment, vous obtiendrez ceci : "FPSCreator/Files/Mapbank/Tutorials/Segments01.fpm" Vous remarquerez que l'éditeur construit et réunit les murs automatiquement pour vous. L'édition des pièces n'en est que plus facile. Le segment crée aussi le sol à votre place. Ajoutons des cases latérales à droite et à gauche de la pièce : "FPSCreator/Files/Mapbank/Tutorials/Segments02.fpm" Là encore, les murs sont calculés automatiquement. Et le plafond ? Par défaut, les segments ne dessinent pas les plafonds, car ceux-ci font partie du palier supérieur à celui que nous éditons. En fait, le segment a dessiné un plafond : celui de la pièce située au-dessous du palier que nous sommes en train de créer. Appuyez sur la touche "+" pour monter au palier supérieur. Maintenant, placez le même segment au-dessus de chaque case que vous voyez dessous, comme ceci : Séquence montrant le segment dessiné directement au-dessus du palier inférieur "FPSCreator/Files/Mapbank/Tutorials/Segments03.fpm" 26 Vous devriez avoir recouvert toutes les cases et la pièce inférieure ne devrait plus être visible. Vous l'avez ainsi dotée d'un plafond en créant une autre pièce audessus, mais vous pouvez aussi simplement le dessiner, comme nous allons maintenant vous l'expliquer. Ne dessiner que le sol et le plafond Appuyez sur la touche "F" pour ne dessiner que les sols. Ensuite, cliquez avec le bouton DROIT de la souris sur chaque case du sol que vous souhaitez supprimer à ce palier : Séquence montrant le sol en train d'être supprimé à ce niveau "FPSCreator/Files/Mapbank/Tutorials/Segments04.fpm" Remarquez que vous pouvez voir les murs plus hauts, qui montent maintenant sur deux paliers. Appuyez sur la touche "+" pour monter encore d'un palier. Cliquez avec le bouton GAUCHE sur chaque case pour ajouter un plafond au-dessus des deux paliers inférieurs, comme ceci : Séquence montrant un sol & un plafond ajoutés à ce palier "FPSCreator/Files/Mapbank/Tutorials/Segments05.fpm" 27 Ne dessiner que les murs Nous allons maintenant dessiner des murs. Appuyez deux fois sur la touche ")"(parenthèse fermante) pour revenir au palier 5. Appuyez sur la touche ","(virgule). Vous avez activé le mode permettant de peindre les murs : Remarquez que le curseur comporte une flèche. Elle vous indique où le mur sera placé si vous cliquez sur le bouton gauche de la souris. Vous pouvez faire pivoter la flèche de 90 degrés avec la touche "R". Essayez de créer un mur comme dans les figures ci-dessous. Une fois le palier 5 terminé, appuyez sur la touche "+" pour remonter au palier 6 et recommencer l'opération : Séquence montrant le dessin de murs. D'abord au palier 5, puis au palier 6 "FPSCreator/Files/Mapbank/Tutorials/Segments06.fpm" ASTUCE : souvent, vous aurez besoin de modifier une pièce existante en travaillant avec les segments. Pour sélectionner rapidement un type de segments, appuyez sur la touche "K". Ce mode vous permet ensuite de cliquer simplement sur la case contenant le segment qui vous intéresse pour dessiner ensuite avec. 5.2.1 Superposition des éléments Trois types de segments sont classés comme segments de base. Il s'agit des pièces, des sols et des couloirs. Ces segments sont vos éléments de départ, sur lesquels vous pouvez superposer d'autres segments comme des fenêtres, des portes, des échelles, etc. Ajout de segments d'escalier Nous allons ajouter un escalier au palier que nous sommes en train de créer dans ce chapitre. Vérifiez bien que vous visualisez le palier 5 du niveau. Cliquez sur l'icone "Ajouter nouveau segment" et cliquez sur ce chemin d'accès dans l'explorateur : "Segment Library/Scifi/Platforms" Choisissez le segment "Escalier métallique". Le curseur 3D affichera une flèche et un petit O (pour Overlay, "superposition"). 28 Placez le curseur à l'endroit indiqué ci-dessous et cliquez sur le bouton gauche de la souris pour placer l'escalier au palier 5. Notre pièce contient maintenant un escalier. Remontez au palier 6 (touche +) et appuyez sur la touche "K" pour activer le mode "Choisir", puis cliquez sur une case contenant le segment "Salle de contrôle pleine". Appuyez sur la touche "F" pour ne dessiner que les sols, puis placez le sol comme ci-dessous : "FPSCreator/Files/Mapbank/Tutorials/Segments07.fpm" Dessin intérieur et extérieur L'éditeur de niveau vous aide en calculant automatiquement le style à utiliser pour la création des murs. En l'état actuel, voici à quoi ressemble notre niveau, à l'intérieur et à l'extérieur : Vue intérieure du niveau : remarquez le dessin des murs. Vue extérieure du niveau : les murs extérieurs sont différents de l'intérieur. Passons maintenant à l'extérieur. Choisissez un nouveau segment, cette fois-ci "Segment Library/Scifi/Platforms/Métal". Ce segment est un simple SOL (sans murs). 29 Vérifiez que vous êtes bien au palier 5 et commencez à dessiner avec le segment Métal autour des murs extérieurs du niveau, comme ceci : "FPSCreator/Files/Mapbank/Tutorials/Segments08.fpm" Lorsque vous déplacez la zone de rendu pour voir le plan, vous constatez que les cases sont de différentes couleurs : Les cases plus claires correspondent aux segments extérieurs, les plus foncées représentent les segments internes. Vous pouvez passer en mode de dessin externe avec le segment "Salle de contrôle pleine". L'éditeur pourra ainsi déterminer comment vous voulez définir la structure du mur. Sur l'écran ci-dessous, tous les segments métalliques ont été remplacés par des segments intérieurs, mais dessinés en mode de dessin externe: 30 "FPSCreator/Files/Mapbank/Tutorials/Segments09.fpm" Vous pouvez voir que les murs intérieurs d'origine ne sont pas modifiés lorsque les segments extérieurs sont dessinés. Bien sûr, vous pourriez avoir rempli toute la zone de segments intérieurs pour dessiner ensuite les murs... il y a plusieurs manières de le faire ! Remarque : vous ne pouvez pas mélanger différentes parties d'un segment avec d'autres segments. Si vous voulez créer ce genre d'éléments, utilisez l'éditeur de segments pour en construire de nouveaux. Vous pouvez télécharger cet outil sur le site Internet officiel de FPS Creator, disponible dès la sortie de la version 1 de FPS Creator. 5.3 Entités Les entités donnent de la vie à votre jeu. Tout objet mobile ou réagissant aux actions du joueur est considéré comme une entité : portes coulissantes, robots ennemis agressifs, munitions récupérables, armes, bonus de santé, etc. Dynamique ou statique ? Les entités sont passionnantes quand il s'agit d'insuffler de la vie dans votre jeu. Mais elles ont un inconvénient : leur utilisation demande plus de calculs au moteur de jeu, car les entités doivent être vérifiées à chaque boucle de programme dans le jeu. Il est donc important que vous compreniez quels sont les différents types d'entités afin d'en tirer le meilleur parti possible. Une entité peut être dynamique ou statique. Une entité dynamique peut bouger et réagir à des événements dans le jeu. Une arme en est une, par exemple. Le moteur de jeu vérifiera si le joueur s'est approché d'elle. Si c'est le cas, l'arme sera récupérée par le joueur et disparaîtra du décor. Une entité statique reste toujours immobile et ne réagit pas aux actions du joueur. En règle générale, les entités statiques servent à placer du mobilier dans les niveaux de votre jeu. Attention, si vous réalisez un niveau en mode un joueur et que vous le transposez en mode multijoueur, tous les objets dynamiques passent obligatoirement en mode statique. Toutes les entités fournies avec FPS Creator ont été définies comme étant dynamiques ou statiques. Nous avons choisi le meilleur état pour chaque entité, mais vous pouvez facilement le modifier, comme nous allons vous l'expliquer. 31 Pour choisir une entité, cliquez sur l'onglet "Entités" en bas de la fenêtre de la bibliothèque, puis sur l'icone "Ajouter nouvelle entité". Une fois l'entité sélectionnée et attachée au curseur, vous pouvez la copier plusieurs fois dans le niveau en appuyant sur le bouton gauche de la souris. L'écran ci-dessous montre l'entité appelée "générateur". Elle vient d'être choisie dans la bibliothèque et a remplacé le curseur de la souris. Le cercle rouge sous l'entité indique que celle-ci est statique. Appuyez sur la touche "Y" pour changer son état en entité dynamique : le cercle sera alors de couleur verte. Entité statique Elle ne bouge pas pendant le jeu et ne peut ni être animée ni détruite. L'avantage, c'est que celle-ci ne demande pas beaucoup de ressources. Entité dynamique Elle bouge et est affectée par le système de physique. Vous pouvez donc pousser cette entité, la ramasser ou même la détruire. Empilement d'entités L'empilement d'entités permet de créer des niveaux intéressants. Si vous appuyez sur la touche "Entrée", le positionnement Y des entités (hauteur) sera "forcé" vers le sol. Dans la plupart des cas, une entité sera déjà placée sur le sol lorsque vous la sélectionnerez. Il est possible de déplacer l'entité dans toutes les directions, le fait de forcer l'objet à trouver le sol est donc très pratique. Parfois, d'autres entités feront obstacle à l'objet pour qu'il touche le sol. Cela vous permet d'empiler des objets comme ci-dessous : Placez d'abord quelques fûts directement sur le sol. Appuyez sur ENTREE lorsque vous êtes au-dessus des fûts. Le nouveau fût sera alors placé au-dessus des autres. Répétez l'opération pour empiler un troisième niveau de fûts. "FPSCreator/Files/Mapbank/Tutorials/Entities_Stacked.fpm" 32 L'empilement de fûts aura cette apparence dans le jeu : Dans le fichier de démo, nous avons empilé plusieurs fûts configurés pour exploser dès le premier impact de tir, plusieurs fûts statiques non explosifs et non déplaçables ainsi que plusieurs fûts nécessitant un certain nombre de tirs avant d’exploser. Ceci traduit la souplesse des modes statique et dynamique ainsi que les ajustements que vous pouvez effectuer en modifiant les propriétés des fûts. A ne pas oublier lorsque vous utilisez des entités : • • • • • • Le bouton gauche de la souris permet de coller une entité. Le bouton droit de la souris supprime l'entité sélectionnée (comme la touche Suppr). Cliquez sur une entité déjà placée dans le niveau pour l'attacher au curseur de la souris. La touche R fait pivoter l'entité de 90 degrés dans le sens des aiguilles d'une montre, Maj+R de 1 degré pour un positionnement plus précis, CTRL+R de 10 degrés. Les touches Maj+Entrée forceront l'entité à se placer vers le bas jusqu'à ce qu'elle rencontre une autre entité ou le sol. Cette fonction est très utile pour empiler des objets sur des étagères. En empilant les objets les uns sur les autres, vous pouvez avoir l’impression qu’ils disparaissent, car la caméra se trouve alors sous l’objet que vous venez de placer. Pour voir où l’objet est positionné, vous devez accéder au palier supérieur. 5.3.1 Propriétés des entités Toutes les entités ont des propriétés. Les propriétés sont les informations qui contrôlent les diverses tâches des entités. Par exemple, une porte aura de nombreuses propriétés : de sa vitesse d'ouverture et de fermeture au son qu'elle émettra lorsqu'elle est utilisée. Vous pouvez modifier le son de l'ouverture et de la fermeture des portes en éditant les propriétés Son0 et Son1 de l'entité. Le Son0 est le son d'ouverture, Son1 le son de fermeture. Les entités ennemies ont une foule de propriétés. En les modifiant, vous personnaliserez complètement votre jeu, qui sera unique et différent des paramètres par défaut. "FPSCreator/Files/Mapbank/Tutorials/Entity_Properties.fpm" 1. Un personnage est placé au centre du niveau. Vérifiez que vous êtes bien en mode Entité et appuyez sur la touche "N". 33 2. Cliquez sur le personnage avec le bouton droit. La fenêtre 3D zoome pour un examen plus détaillé de l'entité et ses propriétés sont affichées dans la colonne de gauche : 3. Cherchez la propriété "Santé" et changez la valeur de 100 à 5. L'entité sera ainsi plus facile à tuer. 4. Changez la propriété "Vitesse" de 100 à 200. L'entité courra deux fois plus vite qu'avant. 5. Cliquez sur "Appliquer modif." pour accepter les changements. 6. Cliquez sur "Tester le jeu" pour voir comment les attaques ennemies ont été modifiées. Commandes de zoom Lorsque vous cliquez sur une entité avec le bouton droit, vous pouvez utiliser certaines commandes pour visualiser et éditer les entités : BDS + déplacement souris Molette souris Flèches Gauche et Droite Flèches Haut et Bas Page Haut/Bas 1&2 3&4 5&6 Entrée Vous pouvez tourner autour de l'entité en maintenant le bouton droit de la souris enfoncée et en la déplaçant. Si votre souris est équipée d'une molette, elle permet de faire un zoom avant ou arrière sur l'entité. Déplace l'entité vers la gauche ou la droite par rapport à la caméra. Eloigne ou rapproche l'entité de la caméra. Déplace l'entité sur l'axe Y (haut ou bas). Rotation de l'entité autour de l'axe Z. Rotation de l'entité autour de l'axe Y. Rotation de l'entité autour de l'axe X. Force l'objet à "trouver le sol". Les objets conçus pour orner les murs trouvent le mur le plus proche (ils doivent en être suffisamment proches pour que cela fonctionne). 5.3.2 Intelligence artificielle des entités Toutes les entités sont contrôlées par des scripts d'intelligence artificielle (IA). Un script est un programme qui indique à l'entité ce qu'elle doit faire. Vous n'avez pas besoin de maîtriser le fonctionnement des scripts pour utiliser FPS Creator. Il vous suffit de changer le script utilisé par l'entité et son comportement changera dans le jeu ! Si vous aimez programmer, vous aurez envie d'écrire vos propres scripts pour créer des ennemis. Consultez les guides de création à la fin de ce manuel pour plus de détails sur la structure du langage des scripts et ses commandes. 34 Les propriétés des entités vous permettent de personnaliser à votre gré vos jeux. Nous avons inclus des armes, des munitions, des personnages et d'autres entités dont les propriétés, si elles sont modifiées, changent complètement leur comportement. Vous pouvez prendre n'importe quelle entité et la modifier pour donner à votre jeu une touche personnelle. Imagines des super-grenades que vous pouvez tirer à la vitesse d'un missile et qui rebondissent trois fois avant d'exploser : une arme idéale pour surprendre l'ennemi caché dans un coin ! Vous trouverez ci-dessous une liste de tous les types d'entités avec toutes les propriétés possibles, ainsi qu'une description expliquant comment elles affectent les entités. Dans certains cas, vous constaterez que certaines entités ne partagent pas les mêmes propriétés. Par exemple, vous ne trouverez pas de propriété "Jet vertical" dans les propriétés de la mitrailleuse, mais vous la trouverez dans celles des grenades. 5.3.3 Entités : armes Les armes sont en possession du joueur au début ou récupérées en cours de jeu. Veillez à bien équilibrer votre jeu afin que les joueurs ne manquent pas d'armes (trop difficile) mais ne soient pas non plus suréquipés (trop facile). Certaines propriétés répertoriées ci-dessous ne s’appliquent pas à toutes les armes. Par exemple, les propriétés suivantes s’appliquent aux projectiles, mais pas aux armes de tir : durée de vie, vitesse de lancer, verticale de lancer, rebonds et explosion à l’impact. Général Nom Tavor Mode statique Non Nom de l'entité dans le jeu, souvent utilisé pour la référencer lors d'un déclenchement ou de l'activation du comportement de l'entité. Etat indiquant si l'entité est dynamique dans le jeu ou fait partie de la structure géométrique du niveau. Scripts IA Initialisation Appear1.fpi Principal Destruction Weapon1.fpi Disappear.fpi Dégâts Précision 5 10 Quantité de recharge 1 Répétition tir 0 Durée de vie 5000 Vitesse de jet 1 Jet vertical Quantité de rebonds 0 0 Explosion à l'impact Non Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite, c'est-à-dire lorsque sa santé est à zéro. Quantité de dégâts infligés par l'arme, 0 = aucun dégât. Définit la précision de l'arme (de 0 = précision mortelle à 100 = précision très médiocre). Définit le nombre de balles dans un chargeur de munitions (si applicable), d'une seule (1) à 120 pour un chargeur de mitrailleuse. Définit le nombre d'itérations supplémentaires pour chaque tir. Une valeur de 2 fera jaillir 3 jets de dégâts pour un seul tir. Définit le nombre de cycles (si applicable) de survie du projectile avant son explosion. Plus sa durée de vie est longue, plus un projectile peut aller loin (idéal pour les armes de sniper). Définit la vitesse du projectile (si applicable), une faible valeur indiquant une vitesse lente, et inversement. Définit l'angle de lancement initial du projectile (si applicable). Définit le nombre de rebonds du projectile (si applicable) avant son explosion. Une valeur nulle indique que le projectile n'explose pas à cause des rebonds. Définit si le projectile (si applicable) explosera au contact d'une surface solide, "Non" indique qu'il n'explosera pas au contact. Réapparitions Réapparition Oui Si ce paramètre est activé, l'entité réapparaît immédiatement. 35 immédiate Maxi à tout moment 1 Réapparitions maxi Réapparition après délai ? Réapparition si mort ? Délai 15 Nombre de réapparitions 1 Délai aléatoire 0 Qté aléatoire 0 Vitesse 0 Vitesse aléatoire Angle Angle aléatoire 0 Durée réapparition Oui Oui 3000 90 0 0 Dans le cas contraire, elle attend d'être activée. Définit si l'entité réapparaîtra après avoir été détruite. Une valeur nulle indique que non, une valeur positive détermine le nombre d'entités de ce type pouvant réapparaître à un moment donné du jeu. Définit le nombre maximum de réapparitions de l'entité. Une fois cette valeur atteinte, aucune autre entité ne réapparaîtra. Si Oui, de nouvelles entités de ce type réapparaîtront une fois le délai écoulé. Si Non, il n'y aura aucun délai. Si Oui, la réapparition aura lieu après la destruction de l'entité. Définit le délai de réapparition de l'entité après sa destruction. Plus la valeur est élevée, plus ce délai sera long (0 = réapparition instantanée). Une unité représente un cycle logique. Il y a 30 cycles logiques par seconde pour les entités proches du joueur, beaucoup moins pour celles qui sont plus éloignées. Définit le nombre d'entités qui réapparaîtront au lieu de l'événement. Utile pour faire apparaître plusieurs chargeurs de munitions ou un nid d'ennemis en une seule opération. Ajoute une durée aléatoire comprise entre zéro et la valeur définie au paramètre de délai. Ajoute une quantité aléatoire comprise entre zéro et la valeur définie au nombre d'entités réapparues. Définit la vitesse à laquelle l'entité se déplace une fois réapparue. Ajoute une vitesse aléatoire comprise entre zéro et la valeur définie à la vitesse initiale de l'entité. Définit l'angle d'élévation de l'entité lorsqu'elle réapparaît. Ajoute une valeur aléatoire comprise entre zéro et la valeur définie à l'angle d'élévation initial de l'entité. Définit en secondes le temps pendant lequel l'entité apparaît. La valeur zéro signifie que l'entité ne disparaît pas. Visuels en option Texture Texture alternative Transparence 1 Réduire texture -1 Texture principale utilisée par l'entité. Deuxième texture, cachée jusqu'à ce qu'un script FPI indique à l'entité de changer de texture. Une valeur de 0 indique que l'entité ne sera pas transparente., une valeur de 1 qu'elle le sera. Une valeur de 0 indique que la texture de l'entité n'est pas affectée et utilisera les paramètres par défaut du jeu. Une valeur de –1 indique que la texture sera réduite sur l'entité pour l'affichage d'un maximum de détails visuels aux dépends de l'utilisation de la mémoire de votre ordinateur. Propriétés physiques Lois de la physique activées OUI Toujours active ? Non Poids 5000 Frottement physique 5000 Dégâts physiques Rotation si lancer 100 OUI Indique si les lois de la physique doivent ou non s’appliquer à l’entité. Utile pour les entités dynamiques qui ne se déplacent pas, lorsque vous souhaitez accélérer le jeu dans certaines zones. Lorsque le paramètre OUI est sélectionné, l’entité est toujours active, quelle que soit la distance du joueur. Utile lorsque vous voulez que les personnages aient toujours l’air intelligents, quelle que soit leur position par rapport au joueur. A utiliser cependant avec modération. Cette valeur détermine le poids et le comportement de l’entité dans le jeu. Une entité lourde sera difficile à pousser, impossible à ramasser et lente à déplacer sur une pente. Une entité légère rebondira délicatement, sera facile à ramasser et répondra à tous les effets qui l’entourent, aussi subtiles soient-ils. Cette valeur détermine la nature de la surface de l’entité. Une valeur faible désigne une entité lisse qui glisse facilement sur tout type de surface, tandis qu’une valeur élevée désigne une entité rigide qui résistera si elle est traînée ou poussée à terre. Détermine la quantité de dégâts infligée au joueur ou à une autre entité frappée par cette entité. Lorsque cette option est activée, l’objet pivote au moment où le joueur le ramasse pour le lancer. Le réalisme est ainsi accru 36 Explosive ? NON Dégâts explosifs 100 lorsque vous lancez des bouteilles et des boîtes. Ceci dit, pour d’autres objets, comme les caisses et les objets de forme carrée, il peut être préférable de ne pas les faire pivoter si le jeu nécessite de les empiler. Lorsque cette option est définie sur OUI, l’entité explose au moment où sa force devient nulle. Définit l’étendue et la quantité de dégâts infligés par cette entité lorsqu’elle explose. Munitions Quantité 1 Définit le nombre de chargeurs dans l'entité. A ne pas confondre avec les balles qu'un chargeur peut contenir. Les chargeurs de complément sont utilisables par l'arme que vous choisissez. 5.3.4 Entités : munitions Une arme ne sert à rien si elle n'a pas de munitions ! Placez les munitions dans des zones cachées et stratégiques de votre jeu pour le rendre plus intéressant. Ainsi, les joueurs ne se contenteront pas d'avancer en tirant sans courir de risques. Toutefois, ne dissimulez pas toutes les munitions : votre jeu doit être équilibré avec des munitions bien visibles et d'autres qui seront une récompense pour le joueur qui sera assez malin pour les découvrir. A partir de maintenant, les propriétés de réapparition et de physique ne seront pas décrites intégralement. Si nécessaire, vous pouvez vous reporter au tableau général ci-dessus. Général Nom Mode statique Munitions_fusil d'assaut Non Nom de l'entité dans le jeu. Etat indiquant si l'entité est dynamique dans le jeu ou fait partie de la structure géométrique du niveau. Scripts IA Début Appear1.fpi Principal Destruction Ammo1.fpi Disappear.fpi Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite. Réapparitions (voir propriétés des armes) Visuels en option Texture Texture alternative Transparence 1 Réduire texture -1 Ammo_D2.tga Effet Texture principale utilisée par l'entité. Deuxième texture, cachée jusqu'à ce qu'un script FPI indique à l'entité de changer de texture. Une valeur de 0 indique que l'entité ne sera pas transparente, une valeur de 1 qu'elle le sera. Une valeur de 0 indique que la texture de l'entité n'est pas affectée et utilisera les paramètres par défaut du jeu. Une valeur de –1 indique que la texture sera réduite sur l'entité pour l'affichage d'un maximum de détails visuels aux dépends de l'utilisation de la mémoire de votre ordinateur. Sélectionne un fichier de shader .FX Physique (voir propriétés des armes) Munitions Pour arme Scifi\fusil d'assaut Quantité 1 Indique à quelle arme appartiennent les munitions (par défaut celle qui correspond au chargeur), mais vous pouvez y affecter n'importe quelle arme du jeu. Définit le nombre de chargeurs contenus dans l'entité. 5.3.5 Entités : ennemis Nous vous conseillons d'introduire progressivement les ennemis dans votre jeu, les joueurs n'aiment pas se faire tuer en quelques secondes dès le début du jeu. Ils n'ont pas non plus envie de marcher des heures pour trouver un adversaire. 37 Vous pouvez modifier de nombreuses propriétés pour que vos ennemis soient uniques et différents. Vous pouvez aussi créer vos propres scripts pour ajouter une touche personnelle à vos jeux. Voici par exemple les propriétés de l'ennemi Conker : Général Nom Mode statique Conker (grenade) Non Nom de l'entité dans le jeu. Etat indiquant si l'entité est dynamique dans le jeu ou fait partie de la structure géométrique du niveau. Début Appear1.fpi Principal Destruction Ammo1.fpi Disappear.fpi Arme en main Scifi/glaive Peut prendre arme OUI Munitions récupérées Cadence de tir 1 Tir People/hunt-shoot... Angle de vue 50 Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite, c'està-dire que sa santé est à zéro. Définit le nom de l'arme en possession de l'ennemi, s'il en a une. S'il a une arme par défaut, vous pouvez en changer en spécifiant laquelle dans ce champ. Indique si le joueur peut prendre l'arme (s'il y en a) lorsque l'ennemi meurt, OUI indiquant que le joueur peut prendre l'arme. Définit le nombre de chargeurs récupérés par le joueur avec l'arme si elle est récupérée sur l'ennemi mort. Définit la vitesse à laquelle le joueur tire avec l'arme sur le joueur, de 0 (cadence constante) à 100 (rafales sporadiques et espacées). Spécifie le nom du fichier FPI utilisé lorsque l'entité effectue l'action UTILISER ARME dans le script FPI. Généralement déclenché quand l'ennemi voit le joueur et tire. Définit le champ de vue horizontal de l'entité lorsqu'elle doit détecter visuellement le joueur. Une valeur peu élevée réduit la vision, une valeur plus élevée l'élargit. Scripts IA 20 Réapparitions (voir propriétés des armes) Visuels en option Texture Texture alternative Transparence 0 Réduire texture 0 Conker_d2.tga Effet Texture principale utilisée par l'entité. Deuxième texture, cachée jusqu'à ce qu'un script FPI indique à l'entité de changer de texture. Une valeur de 0 indique que l'entité ne sera pas transparente, une valeur de 1 qu'elle le sera. Une valeur de 0 indique que la texture de l'entité n'est pas affectée et utilisera les paramètres par défaut du jeu. Une valeur de –1 indique que la texture sera réduite sur l'entité pour l'affichage d'un maximum de détails visuels aux dépends de l'utilisation de la mémoire de votre ordinateur. Sélectionne un fichier de shader .FX Physique (voir propriétés des armes) Statistiques Vies 1 Santé 100 Vitesse 100 Dégâts des chutes 100 Immobilité Non Objectif 0 Définit le nombre de vies de l'entité au début du jeu. Cette valeur peut aller de 1 à la quantité de vies désirée. Définit le niveau de santé initial de l'entité, qui est n'importe quelle valeur au-dessus de zéro. Si la valeur est 0, l'entité est invulnérable aux dégâts. Définit la vitesse générale de l'entité, qui peut être utilisée pour contrôler ses mouvements, son animation ou toute opération demandant un certain laps de temps. Définit la distance au-delà de laquelle les chutes blesseront l'entité ou le joueur. Une valeur de 0 indique que toutes les chutes feront mal, une valeur de 200 indique que le joueur peut sauter deux paliers avant d'être blessé. Si Non, l'entité est mobile, peut se déplacer et elle est affectée par les forces en présence. Si Oui, l'entité est immobile et inamovible. Définit le niveau d'objectif de l'entité. Une valeur de 0 indique que cette entité n'est pas un objectif, une valeur supérieure à 0 indique que si l'entité est détruite, 38 l'objectif numéroté est atteint. Si deux entités partagent le même numéro d'objectif, l'une des deux peut être utilisée pour que l'objectif soit atteint. Si deux entités ont des numéros d'objectifs différents, les deux entités doivent être détruites ou récupérées pour atteindre les objectifs du niveau. Son Banque de sons robotic Spécifie le fichier WAV qui peut accompagner cette entité. Le son est déclenché par certains scripts FPI. 5.3.6 Entités générales La plupart des entités utilisées pour créer vos niveaux sont classées comme "Entités générales". Vous pouvez modifier la texture ou le son d'une entité pour donner un style unique à vos jeux. Général Nom Mode statique Lampe-torche Non Nom de l'entité dans le jeu. Etat indiquant si l'entité est dynamique dans le jeu ou fait partie de la structure géométrique du niveau. Début Appear1.fpi Principal Destruction Default.fpi Disappear.fpi Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite, c'està-dire que sa santé est à zéro. Scripts IA IA automatisée Utiliser touche Retient le nom de l'entité que le joueur doit avoir récupéré pour pouvoir l'UTILISER, généralement pour une porte, afin de savoir quelle clé peut l'ouvrir. Retient le nom de l'entité devant être activée par le script FPI de cette entité, généralement pour un script de porte attendant que le joueur déclenche l'action UTILISER. Si utilisation Réapparitions (voir propriétés des armes) Visuels en option Texture Texture alternative Transparence Texturebank\scifi\ac... 0 Réduire texture 0 Effet Texture principale utilisée par l'entité. Deuxième texture, cachée jusqu'à ce qu'un script FPI indique à l'entité de changer de texture. Une valeur de 0 indique que l'entité ne sera pas transparente, une valeur de 1 qu'elle le sera. Une valeur de 0 indique que la texture de l'entité n'est pas affectée et utilisera les paramètres par défaut du jeu. Une valeur de –1 indique que la texture sera réduite sur l'entité pour l'affichage d'un maximum de détails visuels aux dépends de l'utilisation de la mémoire de votre ordinateur. Sélectionne un fichier de shader .FX Statistiques Force 0 Vitesse 100 Immobilité No Objectif 0 Définit la force initiale de l'entité, qui est n'importe quelle valeur au-dessus de zéro. Si la valeur est 0, l'entité est invulnérable aux dégâts. Définit la vitesse générale de l'entité, qui peut être utilisée pour contrôler ses mouvements, son animation ou toute opération demandant un certain laps de temps. Si Non, l'entité est mobile, peut se déplacer et elle est affectée par les forces en présence. Si Oui, l'entité est immobile et inamovible. Indique le niveau d'objectif de l'entité. 0 = l'entité n'est pas un objectif 1, 2, 3.. etc. = l'entité est un objectif Une seule entité avec le même Objectif doit être atteinte. Les entités de valeurs différentes doivent toutes être atteintes. 39 Physique (voir propriétés des armes) Son Son0 Spécifie le des scripts Spécifie le des scripts Son1 fichier WAV qui peut être déclenché par un FPI. fichier WAV qui peut être déclenché par un FPI. 5.3.7 Description des scripts FPI Les scripts FPI utilisés par les entités par défaut dans FPS Creator ont des tâches spécifiques. Le nom d'un fichier ne suffit pas vraiment à expliquer sa fonction. Le but de cette liste est de mieux vous les expliquer, à vous de décider s'ils sont adaptés ou non à votre entité. FPI principaux (utilisés par les entités personnages) passive.fpi follow.fpi coward.fpi cautious.fpi static.fpi pace.fpi Crouch.fpi Strafe.fpi Strafeforward.fpi Strafebackward.f pi Getinrange.fpi Reste sur place et examine les environ, sans agressivité. Va simplement vers un point de passage. Suit les points de passage les plus proches jusqu'à ce qu'on lui tire dessus, avant de fuir pendant quelque temps. Monte la garde sur place en examinant les environs, fuit si on lui tire dessus ou si le joueur approche trop près, puis appelle le script FPI de tir si le joueur est à portée de tir ou si le personnage n'a plus d'endroit où fuir. Monte la garde sur place en examinant les environs, puis appelle le script FPI de tir si le joueur est repéré. Suit les points de passage les plus proches jusqu'à ce qu'on lui tire dessus, puis appelle le script FPI de tir. Le personnage monte la garde jusqu’à ce qu’il repère le joueur, commence à tirer, puis se baisse pour se protéger d’une éventuelle riposte. Il resurgit au bout d’un certain temps (aléatoire) pour tenter de tirer une autre salve. Le personnage se déplace latéralement à gauche et à droite à intervalles aléatoires depuis la position de départ et tire sur le joueur si l’occasion se présente. Il se déplace également de façon automatique et aléatoire en cas de tirs du joueur pour lui rendre la tâche plus difficile. Même comportement que STRAFE.FPI, mais le personnage progresse de manière aléatoire vers votre position. Même comportement que STRAFE.FPI, mais le personnage s’éloigne de manière aléatoire du joueur. Généralement utilisé par les lanceurs de grenades, ce comportement permet au personnage de s’approcher pour lancer une grenade dans la direction du joueur et de s’en aller si le joueur est trop près. FPI de tir throw.fpi shoot.fpi cover.fpi snipe.fpi shootclose.fpi chase.fpi Lance un projectile vers le joueur en restant en position. Tire depuis sa position sur le joueur. S'accroupit à moitié et tire si le joueur est dans la ligne de mire. Se couche sur le ventre et tire sur le joueur. Tente d'approcher à moins de 100 unités du joueur en courant avant de tirer. Poursuit le joueur et tire sur le joueur dès qu'il est dans sa ligne de mire. FPI internes throwback.fpi fthrowfore.fpi throwleft.fpi throwright.fpi Script Script Script Script interne interne interne interne pour pour pour pour précipiter précipiter précipiter précipiter le le le le personnage personnage personnage personnage vers vers vers vers l'arrière. l'avant. la gauche. la droite. FPI de destruction Crumble.fpi Fadecorpse.fpi Flammable.fpi Leavecorpse.fpi Window.fpi Script de fin utilisé pour détruire une entité avec une animation d'effondrement. Script de fin pour faire disparaître lentement une unité. Script de fin pour déclencher une explosion de l'entité lorsqu'elle est détruite. Script de fin laissant l'entité dans le jeu sous forme de cadavre. Script de fin utilisé pour briser un panneau de verre à l'emplacement de l'entité (ex. : verre) 40 FPI généraux Ammo.fpi Ammoglow.fpi Appear1.fpi Appear2.fpi Autodoor.fpi Decal.fpi Decalfixed.fpi Decalflat.fpi Default.fpi Disappear1.fpi Disappear2.fpi Door1.fpi Doorkey.fpi Doorremote.fpi Dooruse.fpi Emission.fpi Healthuse.fpi Lift1.fpi Light1.fpi Pickup1.fpi Pickuphealth.fpi Plrhealzone.fpi Plrhurtzone.fpi Plrinzone.fpi Repeatsound.fpi Switch2.fpi Switch3.fpi Switch.fpi Transportifused.fpi Transporttoexit.fpi Weapon.fpi Weaponglow.fpi Zoneactivate.fpi Appearnofloorlogic.fpi Appearnogravity.fpi Appearspawn.fpi Controlspawn.fpi Follownorotate.fpi Script principal assigné aux objets qui doivent être récupérés et utilisés comme munitions. Identique au script ammo.fpi, mais avec un effet de lueur. Script d'initialisation utilisé pour faire apparaître instantanément l'entité. Script d'initialisation utilisé pour faire apparaître lentement l'entité. Script principal utilisé pour animer une porte lorsque le joueur ou l'entité s'en approche. Utilisé pour contrôler l'émission d'un décal à partir d'un repère d'entité invisible. Identique au script decal.fpi, mais le décal ne pivotera pas pour faire face au joueur. Identique au script decal.fpi, mais le décal est sur le sol et orienté vers le haut, face au plafond. Script vide utilisé quand rien ne doit être fait par l'entité. Script de fin utilisé pour détruire instantanément une unité. Script de fin utilisé pour détruire une entité en la faisant disparaître lentement. Script principal utilisé pour ouvrir et fermer une porte lorsque le joueur est à proximité. Script principal utilisé pour ouvrir une porte si le joueur a récupéré la bonne clé. Script principal utilisé pour ouvrir une porte activée à distance. Script principal utilisé pour ouvrir une porte si le joueur l'UTILISE. Script principal utilisé pour créer des décals en boucle à partir d'une position d'entité invisible. Script principal utilisé pour donner des points de santé au joueur si l'entité est UTILISEE. Script principal utilisé pour faire monter ou descendre automatiquement l'ascenseur quand le joueur est dessus. Script principal utilisé pour contrôler une lumière dynamique, allumée par défaut, éteinte si un interrupteur est activé. Script principal utilisé par les objets qui doivent être récupérés dans le jeu. Identique au script pickup1.fpi, mais le joueur reçoit en plus des points de santé. Script principal qui donne des points de santé au joueur dans la zone de soins. Script principal qui enlève des points de santé au joueur dans la zone de dégâts. Script principal qui active une entité animée si le joueur entre dans la zone. Script d'initialisation utilisé pour déclencher un son répété à partir d'une entité. Script principal qui active l'entité assignée si le joueur l'UTILISE (il doit être à proximité). Identique au script switch2.fpi, mais ce script est utilisé pour contrôler un interrupteur animé. Identique au script switch2.fpi, mais l'interrupteur peut être utilisé de plus loin. Script principal utilisé pour téléporter le joueur vers l'entité spécifiée dans le champ SI UTILISATION. Script principal utilisé pour téléporter le joueur vers un téléporteur de SORTIE uniquement. Script principal utilisé pour gérer une entité devant être récupérée et utilisée comme arme. Identique au script weapon.fpi, mais un décal de lueur est ajouté à l'entité. Script principal utilisé pour activer TOUTES les entités dans la zone lorsque le joueur est dans cette zone. A utiliser pour initialiser l’entité de sorte que le sol de la zone de déplacement ne contienne ni trous ni obstacles. Utile pour assurer un traitement plus rapide de l’IA des personnages. A utiliser pour initialiser l’entité de sorte qu’elle n’obéisse pas aux lois de la pesanteur et reste neutre par rapport à la force gravitationnelle. Convient aux plates-formes flottantes. Empêche l’entité de quitter le script d’apparition tant qu’elle n’a pas été activée. La fonction de réapparition de l’entité est alors activée. Active la réapparition de l’entité lorsque cette dernière est elle-même activée et désactive sa réapparition lorsqu’elle est elle-même désactivée. Permet à l’entité de suivre un point de passage en bloquant sa rotation pour l’empêcher de pivoter par rapport à la direction dans laquelle elle se 41 Musicinzone.fpi Plrinzoneactivateused.fpi Soundloopinzone.fpi Zoneanyactivate.fpi déplace. Utile pour les plates-formes flottantes. Exécute le fichier musical spécifié dans le champ SON0 à condition que le joueur se trouve dans la zone associée à cette entité. Semblable à PLRINZONE.FPI mais n’active que les entités portant le nom spécifié dans le champ SI UTILISATION de l’entité associée à ce script FPI. Semblable à SOUNDINZONE.FPI, mais diffuse le son en boucle au lieu de le passer une seule fois. Toute entité qui entre dans la zone associée à cette entité active celle désignée dans le champ SI UTILISATION et diffuse le son spécifié dans le champ SON0. 5.3.8 Fonctionnement des interrupteurs et des portes Toutes les portes utilisent un script FPI pour contrôler leur mode de fonctionnement. Certains scripts FPI sont simples, d'autres demandent quelques explications : FAUSSE CLE AUTO A DISTANCE La porte n'est qu'un élément du décor et ne peut pas être ouverte. Le joueur doit avoir une clé pour ouvrir la porte et effectuer l'action UTILISER pour ouvrir la porte. Le type de clé dépend du nom spécifié dans les propriétés d'entité de la porte dans le champ UTILISER CLE. Le nom par défaut est simplement "Clé" et toutes les clés ajoutées au jeu portent ce nom. Vous pouvez augmenter le nombre de clés et de portes correspondantes en leur donnant des noms différents dans la fenêtre de propriétés des entités, comme "Clé de bunker", "Clé de coffre", etc. La porte s'ouvrira automatiquement si le joueur ou une autre entité approche trop près de la porte. Vous pouvez utiliser deux scripts FPI pour ce type de porte : dans le script DOOR1.FPI, SEUL le joueur peut ouvrir la porte, mais elle s'ouvre automatiquement pour le joueur et tous les autres personnages. La porte est fermée et verrouillée tant qu'elle n'a pas été ouverte à distance par le biais d'un INTERRUPTEUR. Une fois la porte déverrouillée, elle fonctionnera comme une porte AUTOMATIQUE. Toutes les portes à distance portent le nom "Porte à distance" et tous les interrupteurs par défaut activent toute entité appelée "Porte à distance", sauf ceux qui commandent les éclairages (nommés "Lumière"). Dans le cas d'un interrupteur à distance pour une porte, le terme "activer" indique qu'elle est mise en action, l'action dans le cas d'une porte étant son ouverture. Comme nous vous l'avons expliqué, dans les cas "CLE" et "A DISTANCE", vous avez également besoin d'une entité secondaire pour compléter la logique d'action, comme expliqué ci-dessous : CLE INTERRUPTEUR INTERRUPTEUR LUMIERE Vous trouverez cette entité dans la catégorie des objets. Faites simplement glisser la clé dans votre niveau. Le joueur peut ensuite la trouver et la prendre (en s'en approchant), puis l'UTILISER pour ouvrir la porte, qui se déverrouille et s'ouvre. La touche "Entrée" est la commande par défaut pour utiliser un objet. Vous trouverez cette entité dans la catégorie MOBILIER MURAL et elle peut être ajoutée aux murs. Quand l'interrupteur est utilisé par le joueur, il activera toutes les entités du niveau appelées "Porte à distance". Vous pouvez le modifier dans le champ SI UTILISATION de l'entité. Cette entité est pratiquement identique à la précédente, mais elle active toute entité du niveau appelée "Lumière". Remarque : tous les noms d'entités peuvent être modifiés. 5.3.9 Explosions et débris d’entités Les entités peuvent être configurées pour exploser au moment de leur destruction, infligeant alors des dégâts aux entités et aux joueurs situés à leur portée. Des dégâts interviennent en présence d’une ligne de mire directe entre l’entité explosive et la cible. Cette fonction est activée lorsque le champ EXPLOSION est sélectionné dans les propriétés de l’entité dynamique de votre choix. Certaines entités peuvent produire des débris (fragments de l’objet). Généralement, par souci de réalisme, 3 à 5 fragments sont éjectés par l’entité détruite. Ces fragments ne jouent aucun rôle dans le jeu, mais peuvent gêner le joueur pendant quelques instants avant de disparaître. Aucune propriété ne permet de contrôler cette commande de débris. Vous pouvez simplement choisir d’utiliser une entité qui présente ou non cette caractéristique. 42 Pour vous amuser, vous pouvez configurer des objets de manière à les faire exploser près des ennemis. Le joueur peut ainsi éliminer ses ennemis en les faisant tirer sur des objets tels que des fûts explosifs. Utilisez des valeurs telles que la force d’un objet et la propriété de dégâts explosifs. 5.4 Repères Ce type d'objets permet de définir le point de départ du joueur ou les éclairages du niveau et de créer des zones qui déclenchent des actions en fonction des événements. Types de repères Représente l'endroit où le joueur apparaîtra au début du jeu. Utilisez la touche "R" pour le faire pivoter. Chaque niveau du jeu doit inclure un de ces repères. Si FPSC ne trouve pas ce repère, vous serez placé dans une position arbitraire. Placez ces repères dans les niveaux de votre jeu. Ils indiquent à quel endroit le joueur réapparaîtra s'il meurt. Vous devez récompenser les joueurs lorsqu'ils ont franchi un secteur difficile en leur offrant un nouveau "checkpoint". Le joueur doit simplement marcher sur la case où se trouve le checkpoint : le programme saura que c'est là que le joueur réapparaîtra s'il est tué. La direction de la flèche est également prise en compte pour définir ce que le joueur verra lors de sa réapparition. Ce repère marque une source de lumière qui sera créée dans le niveau du jeu. De nombreuses variables sont associées aux éclairages. Consultez ce manuel pour connaître les avantages et les inconvénients des paramètres des sources de lumière. Lorsque vous sélectionnez une source de lumière dans la bibliothèque, elle est entourée d'un cercle qui indique sa portée lumineuse. Vous pouvez modifier cette portée avec les touches "[" et "]". La portée lumineuse de la source d'éclairage sera élargie ou réduite, selon la touche utilisée. Des choix de couleurs basiques sont fournis dans la bibliothèque, vous pouvez donc modifier facilement la couleur de l'éclairage en éditant ses propriétés. Il s'agit d'une zone du niveau définie dans un but spécifique. Le type de zone basique est une zone de déclenchement. Celle-ci a été définie avec un script IA nommé "plrinzone.fpi". Le script IA vérifie si le joueur est entré dans la zone spécifiée et s'il y a une autre entité avec laquelle il peut agir (en allumant une lampe ou en ouvrant une porte secrète). FPSC est fourni avec des repères de zone prédéfinis : Soins, Dégâts et Victoire. Si le joueur entre dans la zone de soins, ses points de santé augmenteront. S'il entre dans la zone de victoire, il aura terminé le niveau. Ce repère de zone peut être utilisé pour déclencher des fichiers sonores. Quand le joueur entre dans une nouvelle pièce, vous pouvez déclencher par exemple un son inquiétant. S'il rencontre un personnage amical, ce dernier peut lui transmettre des informations parlées pour lui indiquer où il trouvera de meilleures armes et munitions. Partie du niveau. Lorsque le joueur entre dans la zone désignée, un élément audiovisuel se déclenche pour illustrer l’histoire du jeu. Il peut s’agir d’une séquence d’animation AVI, d’un bitmap affiché à l’écran et/ou d’un fichier de narration WAV/OGG. Ces zones ne se déclenchent qu’une seule fois, lorsque le joueur y entre pour la première fois. 5.4.1 Repère de départ du joueur Général Nom Arme en main Départ joueur Nom utilisé dans le jeu pour l'entité. Définit le nom de l'arme en possession du joueur (s'il en a une) au début du jeu. 43 Quantité de munitions 1 Spécifie la quantité de chargeurs en possession du joueur au début du jeu. Vies 3 Santé 500 Vitesse 100 Dégâts des chutes 100 Définit le nombre de vies de l'entité au début du jeu. Cette valeur peut aller de 1 à la quantité de vies désirée. Dans la plupart des jeux, le joueur dispose de 3 vies, mais avec des possibilités de récupération de vies supplémentaires dans les niveaux. Définit le niveau de santé initial de l'entité, qui est n'importe quelle valeur au-dessus de zéro. Si la valeur est 0, l'entité est invulnérable. Définit la vitesse générale de l'entité, qui peut être utilisée pour contrôler ses mouvements, son animation ou toute opération demandant un certain laps de temps. Attention, ne réglez pas cette valeur trop haut, sinon le système de physique risque de ne plus être stable. Définit la distance au-delà de laquelle les chutes blesseront l'entité ou le joueur. Une valeur de 0 indique que toutes les chutes feront mal, une valeur de 200 indique que le joueur peut sauter deux paliers avant d'être blessé. Statistiques Son Banque de sons joueur Spécifie le fichier WAV qui peut accompagner cette entité. Le son est déclenché par certains scripts FPI. Dans le cas des repères de départ du joueur et des personnages, ce champ spécifie le répertoire de fichiers sonores contenant un choix de sons applicables aux humains et aux robots. 5.4.2 Repère de checkpoint joueur Général Nom Checkpoint joueur Nom de l'entité dans le jeu. Son Son0 Spécifie le fichier WAV ou OGG qui peut accompagner cette entité. Dans ce cas, le son qui indique que le joueur a atteint un checkpoint dans le niveau. 5.4.3 Repères d'éclairage Par défaut, il n'y a aucun éclairage dans un niveau de FPSC, vous devez donc les ajouter. Pour faciliter votre apprentissage, nous avons ajouté des éclairages d'ambiance par défaut lorsque aucune source de lumière n'a été définie par l'utilisateur pour éclairer la scène. Cette lumière ambiante est très lumineuse pour que le joueur puisse tout voir clairement, mais n'offre aucune possibilité d'ambiance ou d'ombres. Vous pouvez ajouter deux types de lumières dans un niveau : statiques ou dynamiques. Les éclairages statiques calculent le niveau d'éclairage du niveau et sont ensuite inclus dans vos textures pour le jeu final (ce procédé est appelé "light-mapping"). Cela veut dire que toutes les sources de lumière que vous avez créées sont permanentes et ne peuvent pas être modifiées en cours de jeu. Les éclairages dynamiques peuvent être modifiés en cours de jeu et utilisés pour ajouter des lampes pouvant être allumées ou éteintes, par exemple dans une pièce disposant d'un interrupteur. Les éclairages dynamiques ne projettent pas d'ombres sur les objets lors du calcul du light-mapping. Tous les éclairages ajoutés sont statiques par défaut, car c'est le paramètre le moins gourmand des deux et qu'il favorise les performances du jeu. Les éclairages dynamiques demandent plus de temps de calcul et un nombre trop important dans un secteur du jeu ralentira le programme. Le nombre d'éclairages dynamiques dans un niveau est aussi restreint, ce qui veut dire qu'il ne peut pas y avoir plus de 6 sources de lumière en même temps au même endroit. Pour donner l'impression qu'il y a plus de 6 sources de lumière, 44 les couleurs et la position des lampes sont mélangées pour obtenir le meilleur effet. Naturellement, cela risque d'engendrer des anomalies visuelles quand de nombreux éclairages dynamiques sont activés en même temps. Nous vous conseillons d'espacer suffisamment les sources de lumière et de ne jamais programmer plus de 6 lumières dynamiques dont la portée lumineuse se superpose. Sinon, vous risquez de constater que l'éclairage manque de réalisme lorsque vous évoluez dans la zone éclairée. Vous pouvez modifier la couleur et la portée lumineuse des éclairages, avec un certain nombre de choix par défaut dans la section REPERES de la bibliothèque. Il vous suffit de cliquer avec le bouton droit de la souris sur une source d'éclairage ajoutée et de modifier les champs dans le panneau des propriétés qui s'affiche. Vous pouvez aussi changer visuellement la portée lumineuse des éclairages avec les touches [ et ]. Interrupteurs lumineux Pour créer une pièce avec une source d'éclairage et un interrupteur, vous devez créer une pièce, puis une source de lumière dynamique. Pour ce faire, appuyez simplement sur la touche Y : la source de lumière n'est plus statique, mais devient dynamique. Placez ensuite un interrupteur (répertoire entités\mursl) sur n'importe quel mur. Testez ensuite le jeu, allez vers l'interrupteur et appuyez sur la touche ENTREE pour l'allumer et l'éteindre. Vous remarquerez que l'éclairage dynamique s'allume ou s'éteint, selon l'action effectuée. L'interrupteur a été automatiquement lié à la source de lumière grâce au nom des entités. Pour créer plus d'interrupteurs et de sources d'éclairage, vous devez modifier deux paramètres : le nom des sources de lumière dynamiques et le champ des propriétés de l'interrupteur qui spécifient quelle entité ils affectent. Des noms bien choisis vous permettront de repérer facilement les interrupteurs et les sources de lumière (par exemple Interrupteur couloir -> SI UTILISATION=Lumière couloir). “FPSCreator/Files/Mapbank/Tutorials/Dynamic and Static Lights.fpm” Le seul inconvénient à la présence de nombreuses sources de lumière est la quantité de mémoire utilisée par les textures pour enregistrer toutes les modifications de l'éclairage. Les éclairages statiques sont le meilleur moyen de mettre de l'ambiance dans vos niveaux. Nous vous conseillons de n'utiliser des éclairages dynamiques que s'ils sont essentiels pour le jeu. Voici les propriétés d'un repère lumineux : Général Nom Mode statique Lumière blanche Oui Nom utilisé dans le jeu pour l'entité. Définit si la source de lumière est statique ou dynamique Début Appear1.fpi Principal Destruction Light1.fpi Disappear.fpi Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite, c'està-dire que sa santé est à zéro. Les lumières peuvent être détruites de cette manière, et une source de lumière dynamique détruite n'affecte pas la scène. Scripts IA Lumière Portée lumineuse 500 Couleur lumière [ ] ffffff Définit la portée de la source de lumière. Une valeur de 0 indique qu'elle n'éclairera rien, une valeur de 200 qu'elle éclairera deux segments dans un rayon sphérique. Définit la couleur de la source de lumière dans un nuancier de couleurs, dans lequel vous pouvez choisir la couleur de la source lumineuse. La couleur est également indiquée en format héxadécimal. 45 5.4.4 Repères de zone Les repères de zone sont invisibles pour le joueur, mais sont un outil très pratique pour définir les événements de votre jeu, comme le son d'une alarme déclenchée lorsque le joueur entre dans une pièce. Vous pouvez facilement placer ces zones. En maintenant la touche Maj enfoncée, vous pouvez même les étendre sur de vastes zones, et même sur plusieurs paliers. Voici une liste des propriétés des repères de zone : Général Nom Zone de déclenchement Nom de l'entité dans le jeu. Initialisation Appear1.fpi Principal Destruction plrinzone.fpi Disappear.fpi Si utilisation Porte commandée à distance Le fichier FPI exécuté lorsque l'entité est créée dans le niveau du jeu. Le fichier FPI exécuté pendant la durée de vie de l'entité. Le fichier FPI exécuté lorsque l'entité est détruite, c'està-dire que sa santé est à zéro. Un repère détruit n'affecte plus le niveau. Nom de l'entité qui sera activée quand ce repère de zone est déclenché. AI Scripts Statistiques Objectif 0 Indique le niveau d'objectif de l'entité. 0 = l'entité n'est pas un objectif 1, 2, 3.. etc. = l'entité est un objectif Une seule entité avec le même Objectif doit être atteinte. Les entités de valeurs différentes doivent toutes être atteintes. Hello.wav Son déclenché quand le joueur entre dans la zone déclenchement. Son Son0 Les repères de zone disponibles dans la bibliothèque vous permettent d’activer différents fichiers fpi pendant le jeu. Ainsi, les fichiers plrhurtinzone.fpi, plrhealinzone.fpi et plrinzone.fpi sont respectivement activés par les repères de zone de chute, de soin et de victoire. 46 5.4.5 Repère d’histoire Ce repère vous offre les outils nécessaires à la création de scripts pour vos jeux à un joueur. Dès que le joueur entre dans une zone d’histoire, le jeu s’interrompt et le fichier vidéo ou d’image sélectionné lui est présenté. Cliquez sur la souris ou appuyez sur une touche du clavier pour fermer ce fichier et reprendre le jeu. Les propriétés d’une zone d’histoire comportent une section média. Média Audio Visuel storytrigger.ogg storyvideo.avi Son émis lorsque le joueur entre dans la zone d’histoire. Fichier vidéo ou d’image présenté au joueur dès qu’il entre dans la zone d’histoire. 5.4.6 Repérage de plusieurs paliers Vous pouvez créer une zone de repérage englobant au moins 2 paliers. Par exemple, ceci peut vous permettre de créer une vaste zone de chute dans une fosse profonde. Pour ce faire, suivez la procédure ci-dessous. 1. Sélectionnez et placez une zone. 2. Appuyez sur la touche Maj tout en maintenant le bouton gauche de la souris enfoncé sur l’icône du repère. 3. Maintenez le bouton gauche enfoncé et relâchez la touche Maj. 4. Maintenez le bouton gauche enfoncé et déplacez la souris. 5. Maintenez le bouton gauche enfoncé et appuyez sur les touches + et – pour naviguer d’un palier à un autre. 6. Une fois le redimensionnement de la zone terminé, relâchez le bouton gauche. 47 6 Autres informations pour l'édition des cartes 6.1 Etats du curseur d'édition L'éditeur 3D changera visuellement pour vous aider à identifier le mode d'édition qui est activé. Voici une liste complète : Bouton gauche de la souris Bouton droit de la souris Images du curseur 3D Peindre tous les segments Supprimer le segment Ne peindre que le sol d'un segment Supprimer sol F Ne peindre que les murs d'un segment Supprimer mur A La touche "R" permet de faire pivoter la flèche Choisir un segment entier sur la carte n/a K Peindre un segment superposé sur un autre segment complet Supprimer superposition La touche "R" permet de faire pivoter la superposition Peindre un segment en superposition selon la direction de la flèche. Supprimer segment La touche "R" permet de faire pivoter la superposition Raccourci clavier Q 48 6.2 Indicateurs de l'éditeur Si vos niveaux deviennent de plus en plus complexes, vous aurez du mal à vous souvenir où vous avez placé tous ses éléments. L'éditeur vous fournit des indices visuels pour vous aider à localiser les entités que vous avez placées dans le niveau. Si un segment contient une entité ou plus, un point rouge s'affiche au centre (en mode d'affichage "plan"), par exemple : Les points rouges indiquent la présence d'une entité ou plus dans le segment, les points orange indiquent un repère de checkpoint joueur. 6.3 Modes de masquage 3D Pour voir l'intérieur des couloirs, appuyez sur la touche TAB. Tous les paliers supérieurs à celui que vous éditez seront masqués, tout comme la moitié supérieure de ce palier, pour vous permettre de voir l'intérieur du couloir. Vous pouvez ainsi placer plus facilement des entités et des repères. La touche TAB peut avoir trois états différents : Etat 1 : voir le palier en cours d'édition et les 5 paliers supérieurs et inférieurs Il vous permet de vérifier l'alignement du niveau actuel avec les niveaux inférieurs ou supérieurs. L'éditeur doit calculer l'affichage de 11 paliers, vous n'activerez donc cette fonction que pour voir la disposition générale de vos niveaux avant de revenir à la vue du niveau en cours d'édition. Etat 2 : ne voir que le palier en cours d'édition N'affiche que le palier en cours d'édition. Cet état du curseur est le plus rapide pour le calcul de l'affichage par l'éditeur. Etat 3 : voir et masquer le palier en cours d'édition Vous aurez parfois besoin de placer des entités dans un couloir. Les couloirs étant calculés avec leur propre plafond, ce mode vous permettra de masquer le plafond pour mieux voir à quel endroit vous placerez vos entités. 49 6.4 Eléments spéciaux Les éléments fournis avec FPS Creator comprennent certaines entités uniques et des superpositions de segments. Nous allons maintenant les aborder en détail. 6.4.1 Portiques Vous trouverez les portiques dans la section "plates-formes" de la bibliothèque des segments. Vous pouvez ainsi créer des passerelles dans vos jeux, comme cidessous : Les portiques se superposent à des segments solides comme les pièces. Il existe plusieurs formes de portiques pour vous permettre de créer des passerelles complexes : Croisement en T Angle Croisement Fin Droit En les mélangeant et en utilisant la touche R pour les faire pivoter, vous pouvez créer des structures complexes : 50 6.4.2 Ascenseurs Les ascenseurs sont composés de trois éléments : une base (bas), un puits d'ascenseur et une plate-forme supérieure (haut). Lorsque vous créez un ascenseur, vous devez placer au moins une plate-forme inférieure et supérieure. La hauteur de l'ascenseur dépend du nombre de puits d'ascenseur que vous avez placés entre sa base et son sommet. Base de l'ascenseur Section de puits Sommet de l'ascenseur Voici un exemple d'ascenseur construit dans un niveau : La plate-forme sur laquelle le joueur monte ou descend est située dans le segment dont le nom comporte le mot "plate-forme". Deux segments sont contenus dans cette plate-forme, le premier à la base et le second au sommet. Vous remarquerez également que les ennemis ne peuvent pas utiliser les ascenseurs ou vous suivre à l'intérieur. Lorsque vous construisez un ascenseur, vous devez utiliser des portes d'entrée et de sortie. Pour voir un exemple d'ascenseur, ouvrez cette carte de démonstration : "FPSCreator/Files/Mapbank/Tutorials/Lift_example01.fpm" 6.4.3 Téléporteurs Vous pouvez aussi rendre votre jeu plus complexe grâce à l'utilisation de téléporteurs. Il existe deux types de téléporteurs : Téléporteur d'ENTREE Téléporteur de SORTIE 51 Placez simplement le téléporteur d'ENTREE à l'endroit où vous voulez que le joueur soit téléporté. Le moteur de jeu replacera ensuite le joueur à l'emplacement du téléporteur de SORTIE. En renommant les segments de téléporteurs d'ENTREE et de SORTIE, vous pouvez créer des téléporteurs multiples dans un niveau. 52 6.5 Points de passage Les personnages ennemis peuvent se déplacer de nombreuses manières. FPS Creator vous laisse toute liberté pour décider quel sera le comportement des ennemis. L'un des moyens de programmer leurs déplacements consiste à établir des points de passage. Les points de passage sont des routes définies que l'ennemi suivra. Ils sont faciles à créer et un ennemi utilisant la bonne routine IA les trouvera et les suivra automatiquement. Examinons maintenant les icones et les touches utilisées pour l'édition des points de passage. 6.5.1 Création d'un point de passage Si vous cliquez sur cet icone, un "nœud" sera créé au centre de l'écran. Il est placé au niveau du sol du niveau que vous êtes en train d'éditer. Ce nœud est en forme d'étoile et ressemble à ceci : Pour ajouter un autre point : placez la souris sur le point que vous voulez ajouter. Cliquez sur le bouton gauche de la souris en maintenant la touche Maj enfoncée. Un nouveau point est créé en haut à droite de celui qui existe déjà, comme cidessous : Vous pouvez déplacer un point de passage en cliquant sur le nœud, en maintenant le bouton gauche enfoncé et en déplaçant la souris vers le point désiré : Vous pouvez créer des routes complexes en ajoutant d'autres points de passage et en les plaçant judicieusement, comme ceci : 53 Vous pouvez créer plusieurs chemins de passage. Cliquez sur l'icone "Créer nouveau point de passage" et créez une nouvelle route. Celle-ci sera d'une couleur différente pour vous aider à mieux la distinguer : 6.5.2 Liaison de plusieurs points de passage Vous pouvez aussi relier des points de passage entre eux pour créer des routes multiples pour les ennemis. Sur cet écran, vous pouvez voir un dortoir avec 6 routes différentes que suivront les gardes : "FPSCreator/Files/Mapbank/Tutorials/Waypoint01.fpm" 54 La liaison de deux chemins est très facile. Créez simplement deux chemins ou plus, puis faites glisser un des points de passage d'un chemin sur un autre point de passage appartenant à un autre itinéraire. Commencez avec deux routes ou plus. Cliquez sur le bouton gauche et faites glisser l'un des points de passage. Alignez le point de passage avec celui d'une autre route et relâchez le bouton de la souris. Ils sont maintenant reliés. Cliquez sur le point de passage relié et faites-le glisser : les deux routes seront modifiées en conséquence. 6.5.3 Points de passage sur plusieurs paliers Il est possible de placer des points de passage sur plusieurs paliers de vos niveaux. Cette séquence vous montre comment procéder : Vue du palier 5 avec une route se terminant au pied d'un escalier. Cliquez sur le point de fin et appuyez sur la touche + pour monter au palier 6. Les points de passage du palier inférieur sont maintenant affichés en rouge. Ajoutez d'autres points de passage au palier 6. Appuyez sur la touche Tab pour voir le palier inférieur. "FPSCreator/Files/Mapbank/Tutorials/Waypoint02.fpm" 55 6.5.4 Liste des commandes des points de passage Créer un nouveau point de passage Mode édition des points de passage Ajouter un nouveau point Supprimer un point Déplacer un point de passage Relier des points de passage Supprimer une liaison Afficher/Masquer les points de passage Cliquez sur cet icone Touche A ou cliquez sur cet icone Maj + clic gauche en pointant sur le point Maj + clic droit en pointant sur le point Clic gauche et déplacement du point Clic gauche et déplacement du point sur l'autre point Clic droit sur le point relié Barre espace pour afficher ou masquer les points de passage. Utilisez cette fonction quand vous éditez des segments ou des entités, pour ne pas être gêné par les points de passage. 56 7 Test et aperçu des niveaux Le travail de l'éditeur est de vous fournir une représentation visuelle des niveaux de votre jeu. Vous ne pourrez voir son aspect final que lorsque vous activez l'option "Tester le niveau" ou "Compiler jeu". Lorsque vous éditez, vous ne travaillez que sur l'un des niveaux de votre jeu. Vous pouvez à tout moment tester votre niveau en cliquant sur l'un des deux icones de la barre d'outils. 7.1 Tester un niveau Si vous cliquez sur cet icone, FPSC crée votre niveau avec les segments et les entités qu'il contient. Le temps nécessaire pour construire le niveau dépend de sa complexité. Une fois l'opération terminée, vous verrez cette fenêtre. Cliquez sur le bouton OK pour tester le jeu. Vous pourrez alors tester le niveau construit du point de vue du joueur. Commandes de jeu : appuyez sur Q/Z/S/D pour vous déplacer, utilisez la barre espace pour sauter, appuyez sur C pour ramper, maintenez la touche Maj enfoncée pour courir, appuyez sur Entrée pour utiliser des objets comme les portes, appuyez sur A et E pour jeter un coup d'œil furtif dans les coins (sans être vu par vos ennemis). Utilisez les touches numérotées 1 à 9 du clavier principal pour sélectionner les armes. Appuyez sur la touche R pour recharger une arme et sur le bouton gauche de la souris pour tirer. Certaines armes sont équipées d’une lunette accessible via le bouton droit de la souris. Lorsque vous avez terminé, appuyez sur la touche Echap pour revenir à l'éditeur. Les paramètres du jeu testé sont indiqués dans la fenêtre des Préférences : 57 Ces paramètres concernent les éclairages et les ombres, les effets "pixel shader", la qualité des textures, l'optimisation et le débogage. Eclairages et ombres Eclairage dynamique : désactivez cette option si vous voulez voir votre niveau sans les éclairages dynamiques. Paramètres de "Lightmapping" Vous pouvez donner un aspect visuel plus soigné à votre jeu en utilisant les ombres. FPSC utilise un système bien connu, le "lightmapping", pour créer des ombres réalistes. Le lightmapping ajoute des détails supplémentaires à la géométrie de votre niveau et doit être calculé lorsque le jeu est compilé. Vous avez le choix entre trois options : Pas de Lightmapping, Lightmapping rapide et Lightmapping complet. Pour plus d'informations sur ces options, consultez le chapitre suivant. Effets Vous pouvez voir votre niveau avec ou sans "pixel shader" (si des segments ou des entités utilisent cet effet). Pour tirer le meilleur parti des pixel shader, vous devez disposer d’une carte graphique rapide, à défaut de quoi le nombre d’images/seconde sera réduit. Si votre carte 3D prend en charge les pixel shader et de sommets 2.0, vous obtiendrez des performances accrues : Pas de pixel shader Effets maximum Les effets pris en charge sont l’application de cubes sur les fenêtres, l’application de reliefs sur le personnage d’Aiko et l’application d’éclairages sur les textures des murs (les murs sont tous bien éclairés). L’intégration des shader est une première étape que nous comptons compléter avec davantage d’effets lors des prochains développements de FPS Creator. Notez également que ces effets ne conviennent qu’aux graphismes de science-fiction. Les graphismes de la Seconde Guerre mondiale n’intègrent pas ce type de textures. Textures Définit la qualité des textures. Plus cette valeur est élevée, plus les textures seront détaillées. Optimisation Cette fonction vous permet d'ajouter automatiquement un sol. Le style du sol sera celui du sol placé dans le coin supérieur gauche du palier 0. Debug Vous pouvez voir des informations sur toutes les entités que vous rencontrerez pendant le test du jeu. Vous pouvez aussi visualiser certaines informations, comme le champ de vision d'un ennemi. 58 7.2 Profileur de niveau Quand vous testez un niveau, vous pouvez ouvrir le profileur de niveau pour optimiser vos créations. Appuyez sur la touche TAB en mode Test du jeu pour afficher le profileur sur l'écran : Les informations suivantes sont affichées dans la partie supérieure : POLYGONES DANS LA SCENE: 10,905 IMAGES/SECONDE : 22 GLOBAL :0 ECLAIRAGE : 0(0) JOUEUR1 ENTITES :73(0) ARME :51 DIVERS :0 DEBUG : 792 RESTE : 0 SYNC : 72 POSITION X:3272 Y:1151 Z:-257 COL:0 SECTEUR : 5/42 TOTAL POLYS : 10905 TOTAL DIPS : 57 POLYS LOCAUX :4388 DIPS LOCAUX :23 Nombre de polygones devant être dessinés par la carte 3D à ce stade dans le niveau. C'est là que vous pouvez optimiser votre jeu en réduisant cette valeur au maximum. Nombre d'images par seconde affichées. Cette valeur doit être la plus proche possible de 30. Quantité de ressource utilisée par le jeu. Cette option permet de déterminer les performances de votre CPU. Quantité de ressource nécessaire pour calculer les éclairages dynamiques de la scène, qui dépend du nombre d'entités dynamiques dans la zone locale. Quantité de ressource nécessaire au jeu pour gérer le contrôle du joueur. Quantité de ressource nécessaire au jeu pour gérer le comportement des entités (IA, collisions et logique). Quantité de ressource nécessaire au jeu pour gérer l'armement du joueur et la détection des dégâts. Quantité de ressource nécessaire au jeu pour gérer les divers éléments du jeu. Quantité de ressource nécessaire au jeu pour le test et le débug. Cette valeur sera nulle lorsque le programme exécutable final sera lancé. Quantité de ressource nécessaire au jeu entre le débogage et l'affichage de l'écran. Quantité de ressource nécessaire au jeu pour afficher la vue du joueur sur l'écran. Position du joueur dans l'espace 3D. Secteur dans lequel se trouve le joueur. Le niveau est divisé en secteurs invisibles et rectangulaires. Le second chiffre indique le nombre total de secteurs dans le niveau. Nombre total de polygones affichés sur cette image. Le second chiffre indique le nombre de DIPS (DrawPrim Calls) ou groupes de polygones envoyés vers la carte. Une valeur faible indique que le niveau est moins lourd à calculer pour votre carte. Nombre de polygones affichés dans le secteur où se trouve le joueur. Le second chiffre indique le nombre de DIPS (DrawPrim Calls) ou groupes de polygones envoyés vers la carte pour ce secteur 59 SON DIFFUSE :0 X:3276 Y:1150 Z:-262 POLYS COLLISIONS :608 Commandes { } I = X U T uniquement. Dernier son diffusé dans le niveau, la première valeur représentant la puissance du son, les trois suivantes sa position dans l'espace 3D. Nombre total de polygones testés sur cette image, y compris les tests de collision pour le joueur et toutes les entités en mouvement. au clavier du profileur Voir portails Masquer portails Supersanté Pas d'entités Pas d'éclairages Synchro la + rapide Synchro à 30 im/sec Restaurer toutes les valeurs ? Le premier graphique indique la quantité de mémoire totale utilisée par les ressources du jeu une fois qu'elles ont été chargées en mémoire. Les crêtes indiquent quand la mémoire a été la plus utilisée. Les chiffres qui peuvent être affichés sont listés ci-dessous pour votre information. La plupart d'entre eux utilisent très peu de mémoire, vous n'en verrez donc que quelques-uns dans le graphique : 030 060 070 075 080 120 130 140 150 160 170 180 200 203 210 220 230 240 273 275 280 290 300 302 304 306 310 311 312 313 314 318 320 Chargement des données pour tous les scripts IA... Initialisation de la liste des décals... Initialisation objets aériens Initialisation liste d'armement... Initialisation système d'armement... Suppression des ressources joueur... Vidage de la mémoire vidéo... Suppression des éléments existants... Chargement données points de passage... Chargement de la banque de segments... Chargement de la banque d'entités... Chargement des données des éléments... Chargement des données de la carte... Clonage d'objets palier 5 tranche 3... Application CSG, éclairage et entités... Ajout de tous les objets à l'univers... Ajout des entités statiques... Construction des portails... Sauvegarde des fichiers d'effets... Sauvegarde et optimisation de l'univers... Chargement des trous de projectiles... Création des scorch buffers pour l'univers... Création des éléments des entités... Création des instances des entités... Création des accessoires des entités... Chargement des sons des entités... Attribution des entités au jeu... Association des éléments à l'IA... Activation de l'arme de départ... Chargement des armes actives... Chargement des décals actifs... Initialisation du joueur... Initialisation des entités... 60 La quantité de mémoire totale utilisée par le niveau du jeu est indiquée sous le graphique, dans notre exemple 78,936 octets. Le graphique du bas est celui du profileur. Lorsque vous vous déplacez dans le niveau, la ligne jaune et les crêtes cyan et rouge sont modifiées en temps réel. La ligne jaune correspond au nombre de polygones utilisés dans le niveau. Les lignes cyan indiquent le temps nécessaire pour le calcul des collisions dans le monde en 3D, les lignes rouges correspondent au nombre d'images par seconde. Le nombre de polygones utilisés dans l'image est représenté par une ligne jaune, avec un maximum de 50.000 polygones pouvant être affichés sur le graphique (50K). Le nombre de POLYGONES PAR BLOC IM/SEC est une mesure de l'efficacité de la scène lorsque vous la visualisez, c'est le calcul du nombre de polygones actuellement affichés, puis divisé par le nombre d'images/seconde. Plus cette valeur est faible, plus l'affichage de la scène sera rapide. Lors de la création d'un jeu, vous devez vous assurer que le nombre d'images par seconde est le plus élevé possible. Les joueurs seront déçus s'ils évoluent dans un monde affiché avec 30 images/seconde et qu'en entrant dans une grande pièce, ce chiffre tombe soudain à 10 images/seconde (le jeu deviendra alors pratiquement injouable). La liberté de création ne doit pas vous faire oublier que vos jeux doivent être agréables à jouer et plaisants pour les joueurs. 7.3 Aperçu rapide d'un niveau Si vous voulez simplement vérifier la géométrie d'un niveau, cliquez sur l'icone Aperçu rapide d'un niveau. Cette opération n'ajoutera pas les entités et ignorera les calculs de lightmapping pour permettre une visualisation beaucoup plus rapide du niveau. En mode Aperçu, la détection des collisions est limitée. Cela peut poser un problème pour naviguer dans le niveau. Pour le contourner, la position de départ de l'aperçu est basée sur le point central de l'éditeur. En d'autres termes, si vous visualisez le centre d'une pièce au palier 8 de votre jeu et que vous cliquez sur l'icone d'aperçu rapide, la caméra commencera à ce point. Vous pouvez également appuyer sur X pour "flotter" et ainsi atteindre les parties les plus hautes du jeu. 61 8 Création d'un jeu exécutable FPS Creator comporte une fonction "Compiler jeu" très puissante qui enregistrera vos cartes pour créer un fichier de jeu exécutable. Vous pourrez ainsi faire profiter vos amis ou votre famille de vos jeux. Il est important de comprendre que le système de compilation ne construit pas le jeu à partir du niveau que vous êtes en train de visualiser dans l'éditeur. Il crée un jeu composé d'un ou plusieurs niveaux enregistrés sur votre disque dur. L'option de compilation du jeu est accessible dans le menu Fichier : Si vous cliquez sur l'option Compiler jeu, vous verrez la fenêtre suivante. Elle est divisée en quatre onglets : Paramètres du projet, Paramètres de niveau, Textures et Paramètres de compilation. 62 8.1 Paramètres du projet C'est ici que vous définissez trois éléments essentiels du jeu. Nom du fichier de projet Ce fichier contient les informations sur le jeu qui sera compilé. Son nom par défaut est "mygame.fpg". Vous pouvez créer un nouveau projet en cliquant sur le bouton "Nouveau" ou sélectionner un fichier déjà édité en cliquant sur le bouton de navigation "...". Toutes les modifications effectuées pour la compilation du jeu seront enregistrées dans le fichier sélectionné. Touches de commande Les jeux créés avec FPS pouvant être très rapides, nous vous conseillons de conserver les commandes que nous avons intégrées par défaut (la plupart des joueurs y étant habitués). Vous pouvez bien sûr les modifier si vous le souhaitez dans cet onglet. Cliquez sur la fenêtre des commandes pour sélectionner la commande associée à une action, puis appuyez sur la nouvelle touche que vous souhaitez utiliser pour cette action. Emplacements d'armes Le joueur peut avoir en sa possession jusqu'à 9 armes pendant le jeu. Cette liste indique le choix de l'utilisateur pour la sélection des armes. Cliquez dans la fenêtre de droite pour ouvrir le menu déroulant des armes disponibles. Choisissez une arme : elle sera affectée à cet emplacement. Remarque importante : l'arme doit être placée dans le niveau pour que le joueur puisse la récupérer dans le jeu. Cette liste ne donne pas d'armes au joueur, elle indique simplement comment une arme sera accessible une fois qu'elle a été récupérée. Les emplacements correspondent aux touches 1 à 9. Cliquez sur cette liste pour choisir une arme à un emplacement. 63 8.2 Paramètres de niveau Vous pouvez inclure un menu principal dans votre jeu, ainsi que plusieurs niveaux. Vous pouvez contrôler et modifier ces aspects du jeu dans cet onglet de la fenêtre de compilation. Ecrans du jeu La partie supérieure de la fenêtre liste les éléments qui s'appliquent aux écrans des menus du jeu. Vous pouvez les laisser tels quels ou les modifier pour y apporter votre touche personnelle. Les écrans sont tous contrôlés par des fichiers de script FPI. Ecran de titre L'écran de titre est "titlepage.fpi" par défaut. Vous pouvez EDITER ce fichier fpi en cliquant sur le bouton EDITER à côté du nom de fichier. La fenêtre suivante s'affiche alors : 64 L'utilisation de l'assistant est très simple. Si vous voulez effectuer des modifications, cliquez dans la fenêtre de droite et modifiez le paramètre de votre choix. La première propriété de la section "Général" est l'image de fond qui sera utilisée pour l'écran de titre. Pour la modifier, cliquez sur le nom du fichier et remplacez-le par une autre image stockée sur votre disque dur. Important : vous devez vous assurer que tous les éléments supplémentaires utilisés par votre jeu sont bien enregistrés dans le répertoire de FPS Creator correspondant. Les formats d'images reconnus sont Jpeg (jpg), Targa (tga) et dds (astuce : pour visualiser tous les types d'image, vous pouvez utiliser Irfanview, un utilitaire très performant que vous pouvez télécharger librement à l'adresse Internet suivante : www.irfanview.com). Les propriétés que vous pouvez modifier pour l'écran de titre sont les suivantes : Image de fond (décor) Fichier de musique Pointeur de la souris utilisé pour la sélection Image en-tête du menu et positions X, Y Image Nouvelle partie et positions X, Y Image Quitter et positions X, Y L'image de fond qui sera affichée au lancement du jeu pour la page de titre. Fichier de musique qui sera lu quand la page de titre du jeu est affichée (format pcm wav 8 bits ). Image du pointeur pour la sélection dans les menus (pointer.dds par défaut). Image utilisée pour afficher le "MENU DU JEU" sur la page de titre. Vous pouvez bien sûr la modifier pour lui donner le nom de votre jeu, par exemple "ZONE MORTELLE" ! Les coordonnées X et Y indiquent la position sur l'écran de l'image. Image affichée pour le bouton "NOUVELLE PARTIE". Image affichée pour l'option de menu "QUITTER LE JEU", aux coordonnées X,Y choisies. Utilisateurs confirmés : il s'agit en fait d'un éditeur permettant de modifier le fichier titlepage.fpi. Si vous le souhaitez, vous pouvez utiliser le bloc-notes pour éditer le fichier fpi et créer une page de titre plus complexe ! Script global Le script global contrôle le fonctionnement du menu de pause et les divers visuels qui composent l'ATH (affichage tête haute). Le bouton Aperçu permet de visualiser les modifications effectuées. Général Ces options concernent le décor, la musique et le pointeur utilisés dans le jeu. Musique Pointeur La musique qui sera jouée dans le niveau du jeu. L'image du pointeur qui sera utilisée dans le menu de pause. Configuration du niveau Ciel Brouillard activé Brouillard rouge Brouillard vert Brouillard bleu Le ciel en 3D (fichier .x) utilisé dans le jeu. FPS Creator est fourni avec un choix de ciels différents. Si la valeur est 0, aucun effet de brouillard ne sera affiché. Si la valeur est 1, le brouillard sera activé dans le jeu. La couleur du brouillard est définie avec les trois valeurs suivantes. Composante rouge de l'effet de brouillard. Si cette valeur est élevée, la composante rouge du brouillard sera prédominante (minimum 0, maximum 255 pour un brouillard entièrement rouge). Composante verte de l'effet de brouillard. Composante bleue de l'effet de brouillard. Si vous voulez un brouillard blanc, les valeurs des composantes rouge, verte et bleue doivent être de 255. 65 Niveau ambiant Rouge ambiant Vert ambiant Bleu ambiant Intensité de la lumière ambiante dans le jeu. Une valeur faible crée des niveaux sombres qui ne sont éclairés que par les sources de lumière que vous avez ajoutées à la scène. Une valeur élevée éclaire plus fortement le niveau. Composante rouge de la lumière ambiante. Une forte composante rouge crée un effet de rougeoiement dans le niveau, l'idéal si votre jeu se déroule sur Mars ! Composante verte de la lumière ambiante. Composante bleue de la lumière ambiante. Ecrans Image de fondu Image dégâts visuels Image zoom par défaut Cette image est utilisée à la fin du niveau pour effectuer un fondu-enchaîné entre la vue du niveau et cette image (un écran noir par défaut). Vous pouvez choisir un fondu-enchaîné vers une autre couleur ou une image félicitant le joueur. Si le joueur est touché par l'ennemi, cette image clignote rapidement sur l'écran de jeu. Si vous créez une arme équipée d'une lunette (clic droit), cette image sera utilisée si aucune autre n'a été configurée. Panneaux de statut Image Vies, positions X et Y Image indiquant le nombre de vies dont dispose le joueur, ainsi que la position X et Y de l'image sur l'écran, par exemple : Vies (numérique), positions X et Y Style de la police de caractères utilisée pour l'affichage des chiffres et la position X et Y de l'image sur l'écran. Image représentant la santé du joueur, par exemple : Image Santé, positions X et Y Santé (numérique), positions X et Y Image Munitions, positions X et Y Munitions (numérique), positions X et Y Style de texte utilisé pour indiquer la valeur de la santé du joueur. Image de l'arme utilisée pour tirer les munitions. Si une arme ne dispose pas d'image propre, l'arme par défaut est affichée. Style de la police de caractères utilisée pour indiquer le nombre de munitions dans le chargeur et le nombre total de munitions en possession du joueur. Eléments des menus Image En-tête, positions X et Y Bouton Quitter, positions X et Y Bouton Continuer, positions X et Y Texte d'en-tête utilisé sur l'écran de pause (si le joueur appuie sur la touche Echap). Texte utilisé pour QUITTER le jeu sur l'écran de pause. Texte utilisé pour CONTINUER le jeu sur l'écran de pause. Fin de partie Décor Musique Image En-tête, positions X et Y Délai de retour Image affichée quand le joueur a perdu toutes ses vies. Fichier WAV de fin de partie joué lorsque cet écran apparaît. Image de texte affichée sur l'écran de fin de partie. Délai au bout duquel le programme revient à la page de titre du jeu. Fin de jeu Décor Musique Image En-tête, positions X et Y Délai de retour Ecran affiché pour indiquer au joueur qu'il a terminé le jeu. Musique triomphale qui sera jouée quand le joueur terminera le jeu. Image pouvant être affichée sur l'écran, par exemple : "TU AS TERMINE LE JEU, BRAVO !" Délai au bout duquel le programme revient à la page de titre du jeu. 66 Liste des niveaux La partie inférieure de cet onglet contient des outils pour définir l'ordre des niveaux dans votre jeu. Un jeu peut contenir jusqu'à 50 niveaux différents. Cliquez sur Insérer un niveau et choisissez un niveau sauvegardé sur votre disque dur. Le niveau sélectionné apparaîtra alors dans la colonne centrale et sera affecté à un numéro de niveau (dans la colonne de gauche) et à un fichier fpi pour la page de chargement (dans la colonne de droite). Voici un exemple d'un jeu comprenant 5 niveaux : Les options "Ajouter un niveau", "Insérer un niveau" et "Supprimer un niveau" vous permettent d'organiser les niveaux comme vous le souhaitez. Vous pouvez même utiliser plusieurs fois le même niveau ! FPS Creator vérifiera que toutes les armes et statistiques sont recopiées dans chaque niveau quand le joueur progresse dans le jeu. Par conséquent, si vous récupérez une arme au niveau 1, elle restera dans votre arsenal pour tous les niveaux suivants. Le bouton "Editer écran de chargement" vous permet d'éditer les paramètres utilisés dans le fichier fpi de l'écran de chargement. Vous pouvez ainsi personnaliser le décor, la musique, l'affichage et le style de la barre de chargement. 67 8.3 Textures L'onglet Textures définit les éclairages et les détails visuels de votre jeu. Paramètres Lightmap Vous avez le choix parmi 3 options : Pas de Lightmaps Il est préférable d'activer cette option si vous voulez compiler rapidement votre jeu pour le tester. Vous supprimez ainsi tous les calculs de lightmapping pendant la compilation du jeu, qui est alors beaucoup plus rapide. Lightmaps adoucis Cette option permet à FPS Creator d'être plus rapide. Ces lightmaps sont très réalistes et affectent de nombreuses zones de votre jeu. Elle n'a qu'un inconvénient : les ombres ne sont pas calculées pour les entités, mais uniquement pour les murs. Lightmaps ombres pleines Cette option permet de créer des niveaux très réalistes. De nombreux calculs doivent être effectués, la compilation sera donc plus lente. Il est préférable de n'activer cette option que lorsque vous avec totalement terminé votre jeu, vous pouvez ainsi laisser FPS Creator effectuer ces calculs. Pour les jeux complexes et de grande taille, l'opération peut prendre plusieurs heures (selon les performances de votre machine). Il est donc conseillé de l'utiliser à bon escient ou de laisser votre ordinateur faire les calculs pendant la nuit. 68 Qualité des textures Tous les éléments que vous voyez dans votre jeu FPS sont associés à une texture décrivant son apparence. Pour une porte, par exemple, la texture a cette apparence : Toutes les textures de FPS Creator sont des graphismes de 512 x 512 pixels, c'est la meilleure qualité d'affichage possible. FPS Creator vous permet de choisir l'une de ces qualités d'affichage : • • • Faible (128x128) Moyenne (256x256) Elevée (512x512) Les options Faible, Moyenne et Elevée vous permettent de définir la qualité des textures dans le jeu final. Nous les avons incluses pour une raison très simple : certains niveaux très complexes utilisant de nombreuses textures peuvent saturer la mémoire de certaines cartes graphiques. Chaque entité d'un jeu peut aussi être paramétrée avec ses propriétés individuelles pour ignorer ces paramètres globaux. Cette propriété est activée par l'option "Réduire texture". Vous pouvez par exemple définir une qualité de texture moyenne pour l'ensemble du jeu, mais choisir une meilleure qualité pour les panneaux que doit lire le joueur. 69 8.4 Programmes exécutables des jeux d’arène Si vous créez un jeu d’arène multijoueur, vous aurez accès à l’onglet suivant : Objectifs du jeu d’arène) Premier à terminer le jeu d’arène Si le niveau comprend une zone de victoire ou autres objectifs, le premier joueur qui atteint tous les objectifs l’emporte. Premier à atteindre X frags Le premier joueur qui atteint ou dépasse le nombre de frags défini l’emporte. Nombre maximum de frags en X secondes Le joueur totalisant le nombre maximum de frags à la fin du temps imparti l’emporte. Paramètres du jeu d’arène Eliminations du premier coup Lorsque cette case est cochée, tout tir réussi élimine instantanément la cible (quelle que soit l’arme utilisée). Ceci est également valable lorsqu’une arme à lunette est utilisée, même si cette case n’est pas cochée. Nombre maximum de joueurs Choisissez une valeur comprise entre 2 et 8 pour limiter le nombre de joueurs autorisés à rejoindre la partie. Vous pouvez effectuer un choix parmi huit joueurs, mais n’en autoriser que quatre à la fois. Plus le nombre de joueurs autorisés est élevé, plus le serveur est sollicité et plus les risques de lenteurs sont importants. Réapparition lors des jeux d’arène Position de réapparition aléatoire Cochez cette case pour permettre au joueur de réapparaître à n’importe quelle position de réapparition de personnages (et pas seulement à la sienne). 70 8.5 Paramètres de compilation Une fois les paramètres des onglets précédents définis, la compilation du jeu peut commencer. L'onglet des Paramètres de compilation est divisé en trois zones : Exécutable, Visuel et Etat de la compilation : Exécutable Le "Répertoire du jeu exécutable" vous indique dans quel répertoire le jeu compilé sera enregistré (FPSCREATOR\My Games\ par défaut). Le nom du fichier peut être modifié dans le champ "Nom du jeu exécutable". Visuel Vous pouvez aussi sélectionner certaines options visuelles "finales" avant de lancer la compilation du jeu. La première concerne les effets Full shader. Si votre jeu n'utilise aucun effet de Shader, nous vous conseillons d'activer l'option "Pas d'effets de Shader". Si certains éléments de votre jeu utilisent les effets de Shader ou de Vertex, activez l'option "Effets Full Shader". Eclairages dynamiques Cette option permet à votre jeu testé ou au programme exécutable final de gérer les éclairages dynamiques. Il s'agit des éclairages que vous avez créés dans chaque niveau en mode "dynamique" (et non "statique"). Le but principal de cette option est de désactiver tous les éclairages dynamiques pour améliorer les performances de votre jeu. Vous constaterez que vous n'avez pas toujours besoin des éclairages dynamiques pour obtenir un bon résultat. Considérez cette option comme une possibilité d'améliorer les performances du programme lorsque vous voulez savoir si un trop grand nombre d'éclairages risque de ralentir le jeu. Sol automatique Utilisez cette option si vous voulez placer votre niveau en extérieur et qu'un horizon est alors nécessaire. La zone d'édition effective dans le niveau est de 40x40 cases, ce qui veut dire que le paysage sera tronqué si le joueur arrive au bord de la carte. En ajoutant un sol automatique, vous pouvez créer une impression de sol infini pour un meilleur aspect visuel, mais il est impossible de se déplacer sur ce "faux" sol. Celui-ci sera construit an palier 0, point le plus bas de votre environnement lors de l'édition. Par défaut, ce sol sera composé de 71 cases grises. Pour utiliser un autre type de sol (lunaire, herbe ou roche), placez simplement un segment unique au palier 0, dans le coin supérieur gauche (faites défiler la vue vers le haut et la gauche, puis utilisez la touche "-" pour vous déplacer vers le point le plus bas de votre environnement). L'aspect visuel de ce sol automatique n'est pas idéal s'il est observé d'un point situé en hauteur, car l'horizon est coupé à une certaine distance. Nous vous conseillons donc de concevoir vos niveaux de manière stratégique pour que les vues du monde extérieur soient les plus réalistes possibles. Cette option est là pour vous aider à obtenir ce résultat. Etat de la compilation Vous êtes enfin prêt à compiler votre jeu : cliquez sur "Créer programme exécutable" pour lancer l'opération. Une barre vous indiquera la progression de la compilation. Une fois le jeu compilé, vous reviendrez à l'éditeur. Utilisez l'explorateur de Windows pour ouvrir le répertoire dans lequel le jeu a été sauvegardé et lancez le programme .exe. 72 9 Physique 9.1 Propriétés physiques Vous avez la possibilité d’appliquer les lois réelles de la physique à votre jeu à un joueur (les jeux d’arène multijoueur ne prennent pas en charge les propriétés physiques) : les caisses tombent de manière réaliste, les bouteilles se brisent, les grandes structures s’écroulent, un objet peut en renverser un autre, etc. Vous pouvez modifier cette caractéristique en fonction des exigences de votre niveau de jeu. Chaque entité dispose d’un certain nombre de propriétés qui déterminent avec exactitude ses interactions dans l’univers du jeu (poids, frottement, caractère explosif, etc.). 9.2 Création de situations reposant sur les lois de la physique Les lois de la physique étant automatiquement activées par défaut, il ne vous reste pas grand-chose à faire pour les appliquer à votre niveau. Sélectionnez une entité et elle répondra instantanément de manière réaliste. Toutefois, pour insister sur les différents effets que vous pouvez placer dans vos jeux afin d’impressionner les joueurs, vous pouvez avoir recours à différents scénarios de base. • Les caisses tombent – Sélectionnez une caisse dans la bibliothèque d’entités et placez-la sur le sol. Tout en la maintenant sélectionnée, appuyez sur RETOUR pour trouver le haut de la caisse que vous venez de placer. Cliquez ensuite sur le bouton gauche de la souris pour placer une caisse par-dessus la première. Recommencez jusqu’à ce que trois caisses soient empilées. Cliquez ensuite sur TESTER LE JEU et localisez la pile que vous avez formée. Courez jusqu’à elle et sautez au moment où vous l’atteignez. Notez que le joueur renverse alors les caisses. • L’escalier est haut – Sélectionnez un cylindre dans la bibliothèque d’entités et placez-le en haut d’un escalier préalablement créé. Cliquez sur TESTER LE JEU et courez jusqu’au cylindre pour le pousser en bas de l’escalier. Notez qu’en tombant, il rebondit dans le décor. • Stand de tir – Créez une pièce en plaçant une longue table à son extrémité, puis sélectionnez une bouteille dans la bibliothèque d’entités. Placez-la sur la longue table. Cliquez sur la bouteille avec le bouton droit de la souris et modifiez ses propriétés de telle sorte que la bouteille n’ait que 4 points de force. Cliquez ensuite sur la bouteille avec le bouton gauche pour la ramasser, puis placez des copies de celle qui vient d’être modifiée sur la table pour disposer de cibles de tir. Cliquez avec le bouton droit pour valider le placement des bouteilles. Dans l’onglet Repères, sélectionnez un repère Départ joueur, cliquez dessus avec le bouton droit pour modifier ses propriétés, puis sélectionnez un pistolet dans le champ ARME EN MAIN. Cliquez sur TESTER LE JEU et tirez sur les bouteilles pour les voir exploser. Vous pouvez encore modifier la scène à partir de l’éditeur en entrant zéro dans le champ EXPLOSION. Les bouteilles se brisent alors sans exploser. Placez-vous à bonne distance des bouteilles lorsqu’elles doivent exploser. 73 9.3 Trucs et astuces sur la configuration des propriétés physiques • • • En général, il est préférable de conserver les paramètres de poids et de frottement par défaut, car ils ont été définis manuellement pour reproduire le comportement réel de l’entité. Toute modification peut altérer ce comportement. En cas de désactivation des propriétés physiques d’une entité, celle-ci cesse de réagir à l’univers de jeu et va même jusqu’à ignorer la pesanteur et les autres entités. Néanmoins, elle se déplace si son IA utilise les déplacements par points de passage ou autres actions de déplacement. Utile pour obtenir des entités plus rapides. N’intégrez pas trop d’entités dotées de propriétés physiques dans une même pièce et tâchez de les utiliser intelligemment pour enrichir l’histoire et le jeu. L’ajout d’une centaine de bouteilles sur une étagère qui ne joue aucun rôle déterminant dans le jeu ne fera que ralentir les performances ainsi que les zones entourant les bouteilles. N’oubliez pas que dans le moteur de jeu, chaque objet doté de propriétés physiques doit interagir avec tous les autres objets du niveau. Plus vous en utilisez, plus le jeu est lent. 74 10 Jeux multijoueur de type « match à mort » 10.1. Fonctionnement du mode multijoueur Vous pouvez créer des jeux multijoueur de type « match à mort » et y jouer en ligne avec vos amis. A quelques détails près, la méthode de création de ces jeux est identique à celle des niveaux à un joueur. Il vous suffit de sélectionner le mode multijoueur et de sauvegarder normalement le programme exécutable. DirectPlay, utilisé pour contrôler les échanges multijoueur, utilise le modèle serveur-client de la communication réseau. Vous pouvez exécuter vos jeux d’arène sur un réseau local ou sur Internet via le protocole UDP. Le joueur hôte (serveur) doit disposer d’une adresse IP valide et non d’une adresse IP de réseau interne (lorsque votre ordinateur partage une connexion Internet). Les autres joueurs ne sont pas tenus de connaître leur adresse IP : il leur suffit de disposer du même programme exécutable que l’hôte et de connaître le nom du joueur qui accueille la session. 10.2. Création d’un jeu multijoueur Rejoindre et quitter le mode Arène Pour créer un niveau de jeu d’arène multijoueur, vous devez être en mode Arène. Vous pouvez accéder à ce mode de deux façons : • Sélectionnez l’option NOUVEAU JEU D’ARENE du menu FICHIER. • Sélectionnez l’option PREFERENCES du menu FICHIER et cochez la case Multijoueur. Quelle que soit la méthode utilisée, l’éditeur passe en mode Arène et certaines zones de la bibliothèque et des panneaux de propriétés deviennent inaccessibles. Pendant la conception de votre jeu, vous pouvez basculer entre le mode Arène et le mode Un joueur, mais certaines fonctions actives en mode Un joueur ne sont pas disponibles en mode Arène, ni lorsqu’elles sont intégrées à un programme exécutable de jeu d’arène. Hormis les différences mentionnées au paragraphe suivant, l’édition des niveaux est identique dans les deux modes. Lorsque vous êtes prêt à créer le programme exécutable de votre jeu d’arène pour le partager et jouer en ligne, suivez la procédure ci-dessous. • • • Sélectionnez l’option COMPILER LE JEU du menu FICHIER. L’option COMPILER LE JEU se trouve toujours dans le mode d’édition que vous utilisez. Ainsi, si vous avez utilisé un fichier de projet à un joueur, le fichier du projet de niveau d’arène par défaut se trouve désormais dans l’onglet Paramètres. Lorsque vous créez un nouveau jeu d’arène, un fichier de projet de jeu d’arène par défaut est créé pour vous. Faites vos choix de création de la même façon qu’en mode Un joueur, puis cliquez sur l’onglet Arène disponible dès que vous accédez au mode Arène. 75 • • • Sélectionnez les objectifs, paramètres et options de réapparition de votre choix. Dans le dernier onglet, entrez le nom du programme exécutable de votre jeu d’arène. Puis cliquez sur le bouton CREER PROGRAMME EXECUTABLE pour créer votre jeu. Vous pouvez désormais partager votre jeu avec vos amis en y jouant en ligne. Une fois la création terminée, et après être revenu à l’éditeur, quittez le logiciel d’édition et ouvrez le répertoire MyGames. Vous trouverez le programme exécutable de votre nouveau jeu d’arène dans un répertoire distinct. Vous pouvez zipper tout le répertoire et renommer le fichier zip en indiquant la date et l’heure de création du programme exécutable. En fonction de la taille du fichier et de votre connexion Internet, vous pouvez envoyer votre nouveau fichier zip à vos amis de différentes façons. Voici quelques suggestions : • • • • • • Utilisez MSN Messenger pour envoyer le fichier à tous les amis que vous souhaitez affronter. Si la taille du fichier est inférieure à 20 Mo, vous pouvez transmettre le fichier à vos amis par e-mail. Si vous avez accès à un site FTP, vous pouvez y télécharger le fichier et fournir le lien à vos amis. Vous pouvez copier le fichier zip sur un CD-ROM ou autre support inscriptible de taille suffisante et remettre ce CD aux personnes auxquelles vous souhaitez vous mesurer. Certains fournisseurs d’e-mail en ligne proposent également un espace partagé où vous pouvez placer le fichier destiné à vos amis. Grâce au développement des logiciels d’échange de fichiers P2P, vous pouvez créer sur votre ordinateur un répertoire où stocker vos jeux d’arène et auquel vos amis peuvent accéder pour se procurer le jeu. 10.3. Différences entre modes Arène et Un joueur Il existe des différences notables entre un niveau de jeu à un joueur et un niveau de jeu d’arène. La plus évidente est l’absence d’entités dotées de propriétés physiques et d’entités dynamiques non essentielles au jeu en mode Arène. Pour éviter toute confusion, ces restrictions sont automatiquement placées dans l’éditeur lorsque vous êtes en mode Arène. Celles-ci sont dues aux délais d’attente inhérents aux parties multijoueur. Les données de jeu doivent être échangées plusieurs fois par seconde entre tous les PC participant au jeu, c’est pourquoi il est déterminant de conserver le moins de données possible. Voici la liste des restrictions : • • Absence d’entités dotées de propriétés physiques Absence d’entités dynamiques, à l’exception des armes, des munitions et de la santé • Toutes les entités dynamiques non essentielles au jeu deviennent statiques • Absence de projectiles (lance-roquettes, grenades) Un seul niveau par programme exécutable de jeu d’arène 76 11. Conseils Voici quelques points importants à prendre en compte pour créer des niveaux intéressants : Conseils éditeur de niveau • Ne créez pas de zones ouvertes immenses ou de pièces trop grandes, car le programme devra afficher un grand nombre de polygones, ce qui risque de ralentir votre jeu par endroits. • La progression du joueur dans le niveau doit être linéaire : pensez à lui fournir des indices sur ce qu'il doit faire ensuite. La manière la plus simple est de créer une succession de pièces et de couloirs qui l'emmèneront du début à la fin du niveau. • Placez des couloirs ou des virages étroits pour séparer vos pièces, ce qui évitera au moteur de jeu d'avoir à calculer l'affichage de grandes portions du décor (il n'affichera pas ce qui est caché par un angle). Vous améliorerez ainsi les performances de vos jeux. • Ne placez pas trop d'entités dynamiques dans une zone confinée (trop grande concentration de personnages, d'objets ou d'armes). Les entités dynamiques sont calculées individuellement et plus il y en a, plus le moteur de jeu devra effectuer de calculs, ce qui ralentira votre jeu. • Si possible, utilisez des entités statiques dans les pièces et autres zones du jeu. Les entités statiques sont ajoutées à la géométrie finale de la scène et sont calculées ensemble, l'affichage sera donc plus rapide et les performances du jeu meilleures. • Parfois, certains segments ne fonctionnent pas bien ensemble, comme les cases d'herbe et les couloirs. Certains couloirs sont très larges et il arrive que des cases d'herbe débordent sur le couloir, ce qui entraîne un scintillement des polygones (ou « Z-clashing ») lorsqu'ils tentent d'occuper le même espace. La solution consiste à ne pas placer de cases d'herbe près des couloirs et à concevoir votre niveau de manière à ce qu'il soit impossible de sortir à l'extérieur et de voir le couloir bordant l'herbe. Conseils de level design • Fournissez au joueur suffisamment d'armes et de munitions pour vaincre tous les ennemis d'un niveau et paramétrez un buffer pour permettre aux joueurs moins confirmés de terminer le niveau. • Fermez toujours les zones et les pièces pour que le moteur de jeu ne calcule QUE ce qu'il doit absolument afficher. Les pièces doivent comporter un plafond et toutes les zones ouvertes doivent être créées avec soin pour que la vue soit bloquée dans chaque direction. Deux bâtiments de chaque côté de la carte et séparés par une surface herbeuse demandent beaucoup de calculs qui ralentiront le jeu. • Utilisez des couloirs : ils sont déjà fermés et limitent ainsi le nombre de polygones affichés au minimum. Lorsque vous reliez les couloirs aux pièces, n'oubliez pas d'utiliser un segment de fin pour que le couloir soit connecté harmonieusement à la pièce. Assurez-vous que la pièce dispose d'un mur face au couloir et ouvrez ce mur avec la porte de votre choix. Conseils de jeu • N'oubliez pas que les ennemis peuvent lâcher des armes lorsqu'ils meurent, que le joueur peut ensuite récupérer. C'est un bon moyen de forcer le joueur à se donner du mal pour être mieux armé ! • Créez des niveaux de difficulté progressive et introduisez les nouveaux éléments du jeu un par un, le joueur apprendra ainsi à une vitesse satisfaisante. Si vous lui balancez tout d'un coup, vous risquez de le décourager et il abandonnera ! 77 • • Ne placez pas plus de 3 ou 4 personnages complexes dans une pièce et ne les laissez pas s'éloigner trop loin de leur point d'origine. Les personnages complexes demandent beaucoup de temps de calcul et ralentiront votre jeu si vous en utilisez trop. Les personnages plus simples demandent moins de polygones et utilisent des routines moins complexes, vous pouvez ainsi en ajouter plusieurs dans un même endroit. N'oubliez pas que vous pouvez placer de nombreux ennemis, mais vous devez les espacer suffisamment et les séparer pour que le joueur les rencontre progressivement et pas d'un seul coup. Conseils multijoueur • • • • • • • • Un bon jeu d’arène multijoueur repose sur la notion de rapidité de jeu ainsi que l’absence d’histoire ou d’énigmes à résoudre. Les arènes doivent être compactes, non linéaires, faciles à parcourir et idéalement pas plus de 30 secondes ne doivent être nécessaires pour rejoindre n’importe quelle position. Avant de créer et distribuer un programme exécutable de jeu d’arène, n’oubliez pas que tous les ordinateurs n’ont pas les mêmes spécifications. Créez des arènes utilisant le moins de graphismes possible et veillez à utiliser le limitateur de joueurs maximum pour ne pas faire perdre de temps à vos utilisateurs. Un bon jeu d’arène doit être équilibré. Lorsque vous déterminez la santé de départ de vos joueurs, la puissance des armes, les choix d’armes, la répartition des bonus de santé et de munitions, veillez à ce que le joueur ne meure pas trop vite ou ne vive pas éternellement. Cela nécessite des tests approfondis face à des joueurs en ligne. Choisissez des graphismes utilisant peu de polygones pour accélérer l’action du jeu et utilisez intelligemment les couloirs en L pour masquer les vastes étendues de décors. Une arène trop complexe ralentira l’action et gâchera la partie. Limitez les entités non essentielles lors de la conception de votre jeu d’arène. Elles peuvent d’abord vous sembler intéressantes, mais il est préférable de dédier la puissance qu’elles nécessitent à la vitesse du jeu. Lorsque vous participez à un jeu d’arène avec vos amis, choisissez l’ordinateur le plus rapide comme hôte. L’hôte fait office de serveur et prend en charge toute la logique du jeu proprement dit. Le programme exécutable du jeu d’arène utilise un service de listing central situé sur le site www.fpscreator.com pour stocker tous les hôtes et leurs adresses IP. Les autres joueurs peuvent ainsi faire défiler les jeux disponibles et de les rejoindre en choisissant un nom plutôt qu’une adresse IP complexe. Si vous tentez de rejoindre une partie mais n’avez pas accès à la liste des noms, c’est que vous n’utilisez pas le bon programme exécutable (chacun possède un code unique) ou que le serveur central est hors service. En mode Arène (par opposition au mode Un joueur), certains éléments ne sont pas disponibles, comme les champs relatifs à la physique, les entités dynamiques non essentielles, certaines armes, etc. D’autre part, l’ajout d’entités non essentielles est limité aux entités statiques. Ces mesures permettent d’assurer la rapidité de votre jeu en ligne. 78 12 Interface 12.1 Les menus déroulants Dossier Nouvelle arène... Nouveau... Ouvrir... Enregistrer... Enregistrer sous... Compiler jeu... Préférences... 1,2,3,4 Quitter Efface le contenu de la fenêtre de l'éditeur et ouvre le mode construction d'arène. Efface le contenu de la fenêtre de l'éditeur pour vous permettre de créer un autre niveau. Ouvre le navigateur pour vous permettre d'ouvrir un projet de jeu sauvegardé. Les fichiers de projets portent l'extension ".fpm". Le projet en cours est sauvegardé avec cette option. S'il n'a pas déjà été nommé, la fenêtre "Enregistrer sous..." s'affiche. Ouvre le navigateur pour vous permettre de choisir le répertoire et le nom qui sera donné au projet. Si vous choisissez un nom de fichier qui existe déjà, le programme vous demandera si vous voulez écraser le fichier existant. Ouvre la fenêtre de compilation du jeu. Utilisez cette option pour compiler le jeu et le transformer en programme exécutable (.exe). Une fenêtre s'affiche pour choisir vos préférences lors de l'édition d'un niveau et de son test dans l'éditeur. Les 4 derniers projets qui ont été ouverts ou sauvegardés par FPS Creator. Cliquez sur l'un de ces projets pour le charger dans l'éditeur. Ferme FPS Creator. Edition Annuler Rétablir Couper Copier Effacer Annuler la dernière action effectuée dans la fenêtre de l'éditeur. Rétablir la dernière opération annulée. Couper la zone sélectionnée dans la fenêtre de l'éditeur. Copier la zone sélectionnée dans la fenêtre de l'éditeur. Effacer la zone sélectionnée dans la fenêtre de l'éditeur. 79 Segments Peindre tous les segments Ne peindre que les murs Ne peindre que les sols Choisir segment dans la grille Mode dessin externe Mode dessin interne Le curseur 3D est paramétré pour que la totalité du segment sélectionné (mur et sols) soit placée sur une case de la grille. Le curseur 3D est paramétré pour ne dessiner que les murs du segment sélectionné. Le mur est dessiné dans la direction indiquée par la flèche sur le curseur 3D. Utilisez la touche "R" pour faire pivoter la flèche. Le curseur 3D ne dessinera que les sols du segment sélectionné. Active le mode "CHOISIR" du curseur. Vous devez ensuite choisir une case de la grille contenant le segment que vous voulez utiliser. Une fois le segment sélectionné, vous pouvez dessiner avec. Active le mode de dessin externe de l'éditeur. Active le mode de dessin interne de l'éditeur. Modifier Mode Segment Mode Entité Edition presse-papiers Zoom avant Zoom arrière Monter d'un palier Descendre d'un palier Voir tout le niveau Active l'édition des segments dans l'éditeur. Active l'édition des entités dans l'éditeur. Active l'édition presse-papiers dans l'éditeur. Zoom avant dans la fenêtre en 3D de l'éditeur. Zoom arrière dans la fenêtre en 3D de l'éditeur. Monter d'un palier dans la fenêtre de l'éditeur. Descendre d'un palier dans la fenêtre de l'éditeur. Affiche une vue réduite du niveau. Cliquez simplement sur la zone que vous voulez éditer pour zoomer dessus. Affichage Outils Barre d'état Les barres d'outils peuvent être activées ou désactivées. Lorsque le sous-menu s'affiche, cliquez simplement sur les éléments de la barre d'outils pour les masquer ou les afficher. Active ou désactive la barre de statut affichée en bas de l'écran. 80 Aide Au sujet FPSC… Crédits... de Ouvre un lien vers le site Internet de FPS Creator : www.fpscreator.com Liste des personnes ayant participé au développement de FPS Creator. 81 12.2 Barres d'outils Barre d'outils standard Nouveau Efface le contenu de la fenêtre de l'éditeur. Ouvrir Couper Ouvre le navigateur pour vous permettre d'ouvrir un projet sauvegardé. Le projet actuel est sauvegardé avec cette option. Si le projet n'a pas été déjà nommé, la fenêtre "Enregistrer sous..." s'affiche. Coupe la zone sélectionnée dans la fenêtre de l'éditeur. Copier Copie la zone sélectionnée dans la fenêtre de l'éditeur. Effacer Efface la zone sélectionnée dans la fenêtre de l'éditeur. Enregistrer Annuler Annule la dernière action d'édition de segment. Rétablir Rétablit la dernière action annulée. Affichage Zoom avant Permet de zoomer pour une vue rapprochée de la carte. Zoom arrière Permet de zoomer pour une vue moins détaillée. Augmenter zone de rendu Réduire zone de rendu Augmente la taille de la zone de rendu dans la fenêtre de l'éditeur. Activer paliers Remonter d'un palier Baisser d'un palier Niveau entier Vue rapprochée Réduit la taille de la zone de rendu dans la fenêtre de l'éditeur (utile pour les PC lents qui ont du mal à afficher de nombreux polygones). Cette option est très utile pour l'édition de cartes complexes et la visualisation de niveaux multiples. Active la vue d'un seul ou plusieurs paliers. Il y a 3 modes : le palier actuel avec les 5 paliers inférieurs et supérieurs, uniquement le palier en cours d'édition, ou la moitié du palier en cours d'édition. Monter d'un palier dans la fenêtre de l'éditeur. Descendre d'un palier dans la fenêtre de l'éditeur. Zoom arrière pour voir toute la carte. Cliquez sur un point de la carte pour voir cette zone. Zoom avant au centre de la fenêtre de l'éditeur pour voir ce qui est au milieu de l'écran. Maintenez le bouton droit enfoncé et déplacez la molette pour déplacer la vue, sur le bouton gauche pour quitter ce mode. Segments Mode entité Active l'édition des entités dans l'éditeur. Mode segment Active l'édition des segments dans l'éditeur. Intérieur Choisir un segment intérieur (mode édition). Extérieur Choisir un segment extérieur (mode édition). Murs Si vous cliquez sur cet icone, seuls les murs des segments seront dessinés. Si vous cliquez sur cet icone, seuls les sols des segments seront dessinés (idéal pour ajouter un plafond au-dessus d'une pièce sans modifier les autres murs). Permet de choisir un type de segment dans la fenêtre principale de l'éditeur. Il peut être ensuite dessiné n'importe où sur la carte. Permet à l'utilisateur de sélectionner une zone dans la fenêtre principale de l'éditeur. Elle peut ensuite être effacée, copiée, déplacée, etc. Sol Choix du segment Choix de la zone Dessin Dessiner segment : ligne Dessiner segment : rectangle Dessiner segment : ellipse Outil de dessin libre. Il peut être utilisé pour dessiner des pièces et des couloirs de n'importe quelle forme et taille. Dessine un segment de forme carrée ou rectangulaire. Permet de construire rapidement des pièces. Dessine une pièce circulaire. 82 Spray Peint le segment sélectionné sur la carte. Augmenter taille du spray Réduire taille du spray Les segments sont dessinés sur une plus large zone. Les segments sont dessinés dans une zone plus réduite. Points de passage Nouveau point de passage Sélectionner point de passage Ajoute un nouveau point de passage sur la carte et active l'édition des points de passage. Active l'édition des points de passage. Vous aurez besoin de cette option lorsque vous aurez placé des segments ou des entités et que vous voudrez modifier les points de passage qui existent déjà. Test du jeu/niveau Test du niveau Aperçu rapide d'un niveau Test du niveau actuel avec les paramètres choisis dans la fenêtre des Préférences. Test du niveau actuel avec les collisions basiques. Le lightmapping ou l'IA des entités seront ignorés. C'est une manière plus rapide de tester la conception du niveau. 83 13 Guide de expérimentés création pour utilisateurs 13.1 Changer la résolution du jeu Les jeux créés avec FPS Creator fonctionnent en 1024x768 en couleurs vraies (32 bits). Vous pouvez changer cette résolution en éditant le fichier setup.ini du jeu. Ce fichier est lu à chaque lancement du jeu, les utilisateurs confirmés peuvent inclure un fichier de pré-chargement (par exemple un petit programme .exe permettant à l'utilisateur de modifier lui-même la résolution du jeu, etc.). 13.2 Créer une nouvelle logique FPI Vous pouvez créer vos propres scripts IA avec le langage de script FPI. Les fichiers FPI contrôlent tous les éléments de FPS Creator, de la page de titre à la manière dont vos personnages traquent le joueur. Vous pouvez utiliser des fichiers FPI dans certains endroits de l'interface, comme dans les champs d'IA, les propriétés des entités ou les descriptions des écrans dans les options de compilation. FPS Creator ne dispose pas d'un outil intégré pour créer ces fichiers FPI, mais il s'agit de simples fichiers texte. Vous pouvez donc créer ou modifier des fichiers FPI avec votre traitement de texte ou le bloc-notes de Windows. Création d'un fichier FPI simple 1. Ouvrez l'explorateur de Windows et ouvrez le répertoire FPS Creator\Files\scriptbank 2. Créez un nouveau répertoire appelé Mes Scripts\ 3. Dans ce répertoire, cliquez sur le bouton droit et sélectionnez Nouveau -> Document texte 4. Renommez le fichier créé en mylogic.fpi 5. Double-cliquez sur ce fichier et ouvrez-le avec le bloc-notes 6. Saisissez les lignes de texte suivantes : desc = Loop Sound When FPI Used :state=0:state=1,loopsound=audiobank\atmos\alarmhum.wav 7. Remarquez les deux points (: ) au début de la ligne et après la première expression 8. STATE=0 est une condition qui signifie "si l'état de la variable est 0" 9. SOUND="fichier" est la première action qui indique au jeu de lire un fichier sonore 10. STATE=1 est la seconde action qui fait passer l'état de la variable à 1 11. Les deux points suivants (: ) séparent les conditions des actions 12. La virgule (, ) sépare les conditions et les actions individuelles 13. Il n'y a qu'une variable par fichier FPI, dont le nom est STATE 14. LOOPSOUND indique au jeu de joueur en boucle le fichier WAV. Utilisation d'un fichier FPI 1. Lancez FPS Creator. 2. Dessinez un sol sur la carte et ajoutez-y une entité dynamique 3. Cliquez avec le bouton droit sur l'entité et cliquez sur le bouton du navigateur à droite du champ AI Scripts/Main (il contrôle la logique principale pour cette entité) 4. Localisez et sélectionnez le fichier mylogic.fpi que vous avez créé précédemment. 5. Cliquez sur Appliquer changements, puis sur TEST DU JEU 6. Lorsque le jeu commence, le fichier WAV sera joué comme indiqué dans le fichier 84 Fonctionnement des fichiers FPI Les fichiers FPI sont scannés au début du jeu et convertis en code. Ces scripts FPI sont ensuite liés aux entités qui les utilisent et tant que celles-ci existent dans le jeu, ils exécutent la logique qu'ils contiennent. Toutes les actions ou les pensées de votre entité sont définies dans ces scripts. Ils contrôlent tout, y compris l'apparition et la disparition des objets, l'ouverture des portes, la récupération des objets et des armes, la destruction des objets, les mouvements des personnages et tout ce qui se déplace dans la logique du jeu. Langage FPI Voici une ligne d'événement typique. Vous pouvez inclure de nombreuses actions/conditions : :condition[,condition][,condition]:action[,action][,action] Ceci est un commentaire : ; commentaire de mon script Ceci est une condition : Conditionword=conditionvalue1 [conditionvalue2] Ceci est une action : Actionword=actionvalue Liste des conditions Voici les termes définissant les conditions, qui effectueront une action si elles sont toutes vraies : NEVER ALWAYS STATE=X RANDOM=X HEALTH=X HEALTHLESS=X QUANTITY=X SPEED=X ASSOCIATED=X PLRDISTWITHIN=X PLRDISTFURTHER=X PLRALIVE=X PLRHIGHER=X PLRELEVWITHIN=X PLRELEVFURTHER=X ANYWITHIN=X ANYFURTHER=X PLRCANBESEEN PLRCANNOTBESEEN PLRHASKEY=X PLRUSINGACTION=X SHOTDAMAGE=X IFWEAPON=X ACTIVATED=X PLRWITHINZONE ENTITYWITHINZONE PLRINGUNSIGHT=X NEARACTIVATABLE=X NEWWEAPONCANBESEEN=X NOISEHEARD=X RAYCAST=X Y n'est jamais vrai est toujours vrai est vrai si la valeur dans le script FPI est égale à X est vrai si une valeur aléatoire entre 0 et X est égale à 1 est vrai si la santé est égale à X est vrai si la santé est inférieure à X est vrai si la quantité est égale à X est vrai si la vitesse est égale à X est vrai si l'entité a été associée au joueur (ascenseur) est vrai si le joueur est à moins de X unités est vrai si le joueur est à plus de X unités est vrai si le joueur est vivant et que X = 1 est vrai si le joueur est X unités plus haut que l'entité est vrai si le joueur est visible à moins de X degrés verticaux est vrai si le joueur n'est pas visible à X degrés verticaux est vrai si une autre entité se déplace à moins de X quarts de cases est vrai si une autre entité se déplace à plus de X quarts de cases est vrai si le joueur est visible est vrai si le joueur n'est pas visible est vrai si le joueur a appuyé sur la touche ayant la valeur X est vrai si le joueur effectue l'action UTILISER est vrai si les dégâts subis excèdent la valeur X est vrai si l'arme utilisée par l'entité est prête et que X = 1 est vrai si la valeur d'activation de l'entité est égale à X est vrai si le joueur est dans la zone de déclenchement est vrai si une entité est dans la zone de déclenchement est vrai si une entité a le joueur dans sa ligne de mire est vrai si l'entité est proche d'être activée est vrai si l'entité peut voir une meilleure arme est vrai si l'entité entend un son dans la scène est vrai si le rayon touche quelque chose devant de X à Y unités 85 RAYCASTUP=X RAYCASTBACK=X FRAMEATEND=X FRAMEATSTART=X FRAMEWITHIN=X Y FRAMEBEYOND=X Y ANIMATIONOVER=X ALPHAFADEEQUAL=X REACHTARGET=X LOSETARGET=X HEADANGLEGREATER=X HEADANGLELESS=X WAYPOINTSTATE=X IFMARKER=X IFPLRTRAIL=X HUDSELECTIONMADE=X TIMERGREATER=X ESCAPEKEYPRESSED=X PLRHEALTHLESS=X PLRHEALTHGREATER=X ANYWITHIN=X ANYFURTHER=X CANTAKE ANYWITHINZONE NORAYCASTUP=X Y HUDEDITDONE=X HUDHAVENAME est vrai si le rayon touche quelque chose au-dessus de X à Y unités est vrai si le rayon touche quelque chose derrière de X à Y unités est vrai si l'animation X est à la fin est vrai si l'animation X est au début est vrai si l'animation X est à l'image Y est vrai si l'animation X est au-delà de l'image Y est vrai si l'animation X est terminée est vrai si la valeur alpha est égale à X est vrai si l'entité a atteint sa cible est vrai si l'entité est bloquée après X tentatives est vrai si l'angle de la tête est supérieur à X est vrai si l'angle de la tête est inférieur à X est vrai si la valeur de l'état du point de passage est égale à X L'état 0 indique que l'entité n'a pas encore commencé à suivre les points de passage L'état 1 indique que l'entité cherche le point de passage le plus proche comme point de départ L'état 2 indique que l'entité suit une ligne de points de passage vers son repère de point de passage L'état 3 indique que l'entité a atteint le repère de point de passage et doit décider ce qu'elle doit faire L'état 4 indique que l'entité a atteint le repère de point de passage et se divise dans plus d'une direction L'état 5 indique que l'entité a atteint la fin des points de passage et qu'une décision doit être prise L'état 999 indique que l'entité ignorera les points de passage est vrai si un repère a été placé par une entité dans la scène est vrai s'il y a une trace laissée par le joueur existant est vrai si l'utilisateur a cliqué sur le bouton X de l'ATH est vrai si le timer FPI interne dépasse X en millisecondes est vrai si la touche Echap a été enfoncée est vrai si la santé du joueur descend sous X est vrai si la santé du joueur est plus élevée que X est vrai si une entité est plus proche que X est vrai si une entité est plus loin que X est vrai si une entité peut être récupérée par le joueur est vrai si une entité est dans cette zone est vrai si aucune collision n'est possible entre X et Y est vrai si l'objet de l'ATH X est utilisé est vrai si aucun nom de joueur n 'a été saisi Liste des actions NONE DESTROY SUSPEND RUNFPIDEFAULT=X RUNFPI=X STATE=X MOVEUP=X MOVEFORE=X MOVEBACK=X FREEZE=X ROTATEY=X ROTATEIY=X ROTATETOPLR RESETHEAD ROTATEHEAD=X ROTATEHEADRANDOM=X FORCEBACK=X FORCEFORE=X FORCELEFT=X FORCERIGHT=X Pas d'action Destruction de l'entité Désactive définitivement l'entité en la laissant visible Lance un script FPI par défaut par la valeur X (0-initialisation,1principal,2-fin) Lance un autre script FPI de nom X (ex : appear1fpi) Définit la valeur de la variable interne State comme étant X Déplace l'entité vers le haut de X unités Déplace l'entité vers l'avant de X unités Déplace l'entité vers l'arrière de X unités Stoppe le déplacement de l'entité Définit l'angle de l'entité autour de l'axe Y comme étant X degrés Fait pivoter l'entité autour de l'axe Y par incréments de X degrés Fait pivoter l'entité pour qu'elle soit face au joueur Redéfinit l'angle de la tête si l'entité en a une Fait pivoter la tête de l'entité de X degrés Fait pivoter aléatoirement la tête de l'unité de X degrés Applique une force à l'entité vers l'arrière selon un facteur de X Applique une force à l'entité vers l'avant selon un facteur de X Applique une force à l'entité vers la gauche selon un facteur de X Applique une force à l'entité vers la droite selon un facteur de X 86 FORCEBOUNCE=X SPINRATE=X FLOATRATE=X SETFRAME=X INCFRAME=X DECFRAME=X ANIMATE=X Applique une force à l'entité pour la forcer à rebondir en arrière de X Fait tourner l'entité autour de l'axe Y à la vitesse X Fait flotter l'entité dans les airs à la vitesse X Définit l'image de départ X de l'animation Incrémente l'animation X d'une image Décrémente l'animation X d'une image Lance automatiquement l'animation X En fonction des personnages fournis, il y a plusieurs types d'animations pouvant être exécutées : 0 = apparition 1 = inactivité 2 = déplacer lent 3 = pas latéral à gauche 4 = pas latéral à droite 5 = déplacer rapide 6 = rechargement de l'arme (ou jeter) 10....... = Grimper 11 = impact avant 12 = rebond avant 13 = se relève vers l'avant 14 = impact arrière 15 = rebond arrière 16 = se relève vers l'arrière 17 = impact à gauche 18 = rebond à gauche 20 = impact à droite 21 = rebond à droite 31 = inactivité accroupi 32 = déplacer lent accroupi (identique) 33 = pas latéral à gauche accroupi (identique) 34 = pas latéral à droite accroupi (identique) 35 = déplacer rapide accroupi (identique) 36 = rechargement arme accroupi (ou jeter) 37 = bouton poussé accroupi 38 = inclinaison à gauche accroupi 39 = inclinaison à droite accroupi 40........= Inactif 41 = Inactif déplacer 50 = Apparition arme 51 = Arme inactif 52....... = Arme déplacer lent 53....... = Arme 54....... = Arme latéral droite 55....... = Arme déplacer rapide 56....... = Recharger arme (ou jeter) 57....... = Arme NOUVEAU grimper 61 = Arme impact devant 62 = Arme sauter devant 63 = Arme debout devant 64 = Arme impact derrière 65 = Arme sauter derrière 66 = Arme debout derrière 67 = Arme impact gauche 68 = Arme sauter gauche 70 = Arme impact droite 71 = Arme sauter droite 81 = Arme accroupi inactif 82 = Arme accroupi déplacer lent (identique) 83 = Arme accroupi latéral gauche (identique) 84 = Arme accroupi latéral droite (identique) 85 = Arme accroupi déplacer rapide (identique) 86 = Arme accroupi recharger arme(ou jeter) 90 = Arme inactif 91 = Arme inactif déplacer PLRASS=X PLRNOASS=X PLRMOVEUP=X PLRMOVEDOWN=X PLRMOVEEAST=X PLRMOVEWEST=X PLRMOVENORTH=X Associe cette entité au joueur (ascenseur) Désassocie cette entité du joueur Déplace le joueur vers le haut de X unités Déplace le joueur vers le bas de X unités Déplace le joueur vers l'est de X unités Déplace le joueur vers l'ouest de X unités Déplace le joueur vers le nord de X unités 87 PLRMOVESOUTH=X PLRMOVETO=X PLRMOVEIFUSED=X ACTIVATEIFUSED=X ACTIVATEIFUSEDNEAR=X ACTIVATETARGET=X ACTIVATE=X ACTIVATEALLINZONE=X PLRADDHEALTH=X SETTARGET ROTATETOTARGET LOOKATTARGET MOVETOTARGET COLLECTTARGET CHOOSESTRAFE STRAFE PIVOTRANDOM=X LOOKATPLR=X SOUND=X 3DSOUND=X LOOPSOUND=X ALTTEXTURE=X SETALPHAFADE=X INCALPHAFADE=X DECALPHAFADE=X RUNDECAL=X WAYPOINTSTART WAYPOINTSTOP WAYPOINTREVERSE WAYPOINTNEXT WAYPOINTPREV WAYPOINTRANDOM DROPMARKER NEXTMARKER RESETMARKERS FOLLOWPLR PLRTAKE PLRDROP SHOOTPLR USEWEAPON RELOADWEAPON COLOFF COLON ACTIVATE=X AMBIENCE=X AMBIENCERED=X AMBIENCEGREEN=X AMBIENCEBLUE=X FOG=X FOGRED=X FOGGREEN=X FOGBLUE=X SKY=X SKYSCROLL=X BACKDROP=X MUSIC=X MUSICVOLUME=X Déplace le joueur vers le sud de X unités Déplace le joueur vers un nouvel endroit décrit par le nom de l'entité X Si le joueur effectue l'action UTILISER, déplace le joueur comme ci-dessus Active l'entité décrite dans la propriété SI UTILISATION Active l'entité décrite dans SI UTILISATION et à proximité Active l'entité précédemment marquée comme cible par X Active cette entité en utilisant la valeur X Active toutes les entités dans la zone de déclenchement X Ajoute X points à la santé du joueur Définit la cible interne pour une entité, suit les conditions de type ‘target’ Fait pivoter l'entité face à la cible Fait pivoter la tête de l'entité face à la cible Déplacement vers la cible Si la cible est récupérable, récupère la cible si elle est proche Choisit aléatoirement une direction de mouvement latéral (c'est à dire : gauche/droite/avant) Effectue le mouvement latéral précédent pour éviter les tirs du joueur Pivote aléatoirement de X degrés pour faire face à une autre direction Regarde directement le joueur même s'il n'est pas visible Joue un son spécifié par le nom de fichier X. Utilisez $0 pour spécifier la banque de sons Joue un son 3D spécifié par le nom de fichier X. Utilisez $0 pour spécifier la banque de sons Joue en boucle un son 3D spécifié par le nom de fichier X Définit la texture utilisée basée sur X étant 0 ou 1 Définit la valeur alpha X qui provoque la transparence de l'entité Incrémente le fondu alpha, X étant la destination Décrémente le fondu alpha, X étant la destination Crée un décal à partir de l'entité, X étant un mode spécifique de 1à6 Ordonne à l'entité de trouver le point de passage le plus proche Ordonne à l'entité de ne plus suivre les points de passage Inverse la route de l'entité pour la diriger dans la direction opposée Ordonne à l'entité de trouver le point de passage suivant Ordonne à l'entité de trouver le point de passage précédent Ordonne à l'entité de choisir un point de passage et une direction aléatoire Place un repère vers lequel l'entité pourra revenir plus tard Ordonne à l'entité de se rendre au dernier repère placé Réinitialise tous les repères placés par cette entité Suit la trace du joueur s'il y en a une Utilisé pour ajouter une entité à l'inventaire des joueurs et d'acquérir ses avantages Utilisé pour poser un objet qui est dans l'inventaire du joueur Lance le script de tir interne spécifié dans les propriétés du personnage Tir avec n'importe quelle arme par une entité en direction de la cible Recharge l'arme avec le stock d'entités de munitions infinies Désactive toutes les collisions du joueur avec cette entité Active toutes les collisions du joueur avec cette entité Définit la valeur X d'activation de l'entité Définit le niveau de lumière ambiante X dans la scène Définit la composante rouge X de la lumière ambiante Définit la composante verte X de la lumière ambiante Définit la composante bleue X de la lumière ambiante Définit le mode de brouillard dans la scène quand X = 1 Définit la composante rouge X du brouillard Définit la composante verte X du brouillard Définit la composante bleue X du brouillard Définit le ciel spécifié par le nom de fichier X Définit la texture du ciel spécifiée par le nom de fichier X Charge et colle l'écran de décor avec le nom de fichier X Charge et joue le son WAV spécifié par le nom de fichier X Définit le volume de la musique, de 0 à 100 88 LIGHTON=X LIGHTOFF=X LIGHTRED=X LIGHTGREEN=X LIGHTBLUE=X LIGHTRANGE=X HUDRESET=X HUDX=X HUDY=X HUDZ=X HUDSIZEX=X HUDSIZEY=X HUDSIZEZ=X HUDRED=X HUDGREEN=X HUDBLUE=X HUDIMAGE=X HUDFONT=X HUDSIZE=X HUDTEXT=X HUDTYPE=X HUDHIDE=X HUDSHOW=X HUDUNSHOW=X HUDNAME=X HUDANIM=X HUDMAKE=X NEWGAME=X LOADGAME=X SAVEGAME=X CONTINUEGAME=X QUITGAME=X PAUSEGAME=X RESUMEGAME=X TIMERSTART FLOORLOGIC=X INCSTATE=X RUNFORE ADVFRAME=X SHAPEDECAL=X TRIGGERFORCE=X SOUNDSCALE=X HUDIMAGEFINE=X HUDFADEOUT HOSTGAME JOINGAME REPEATGAME NOGRAVITY ACTIVEALLINZONE SPAWNON SPAWNOFF VIDEO Lumière allumée Lumière éteinte Lumière rouge Lumière verte Lumière bleue Portée lumineuse Réinitialise le système de création de l'ATH Définit la position X (pourcentage) de l'objet ATH Définit la position Y (pourcentage) de l'objet ATH Définit la position Z (pourcentage) de l'objet ATH Définit la taille X de l'objet ATH Définit la taille Y de l'objet ATH Définit la taille Z de l'objet ATH Définit la composante rouge de l'objet ATH Définit la composante verte de l'objet ATH Définit la composante bleue de l'objet ATH Définit le nom du fichier image de l'objet ATH Définit le nom de la police de l'objet ATH Définit la taille de la police de l'objet ATH Définit le texte qui sera utilisé s'il n'y a pas d'image pour l'objet ATH Définit le type d'ATH (1-Vies,2-Santé,3-Arme) Définit X pour le nom de l'objet ATH à masquer Définit X pour le nom de l'objet ATH à afficher Définit X pour le nom de l'objet ATH à ne plus masquer Définit le nom de l'objet ATH que vous créez Définit le nom de fichier X pour la séquence d'animation (sauf #.TGA) Quand tous les objets ATH sont définis, utilisez cette action pour la création finale de l'ATH Déclenche le lancement d'une nouvelle partie (généralement sur la page de titre) Déclenche le chargement d'une partie sauvegardée Déclenche la sauvegarde de la partie en cours Continue l'action du jeu pour passer à la page suivante Déclenche le retour à la page de titre dans le jeu Déclenche la pause du jeu et ouvre généralement le menu du jeu Déclenche la reprise du jeu après avoir été mis en pause Réinitialise le timer du script FPI à 0 pour mettre en place le timing si X est égal à un, l’entité ne quitte jamais sa position Y incrémente la variable d’état de X fait avancer l’entité en courant avance l’animation de X % remplace le mode de décal par X pour l’entité applique une force à l’entité selon une magnitude de X remplace l’échelle sonore 3D par le pourcentage X charge l’image de l’ATH en qualité supérieure l’élément de l’ATH s’efface de l’écran permet d’accueillir une partie multijoueur permet de rejoindre une partie multijoueur permet de recommencer une partie multijoueur désactive la pesanteur chez l’entité dotée de propriétés physiques active tout dans la zone de l’entité active la capacité de réapparition de l’entité désactive la capacité de réapparition des entités lance un fichier d’animation en mode plein écran (une seule fois) 89 13.3 Création de nouveaux segments et entités Peu après la sortie de la version 1 de FPS Creator, nous mettrons à votre disposition des outils qui vous permettront de créer vos propres segments et entités via le site Web du produit. Pour de plus amples informations sur la création de vos propres segments, consultez le site www.fpscreator.com. 13.4 Créer vos propres armes Vous pouvez créer vos propres armes pour les utiliser dans FPS Creator si vous disposez déjà des éléments au format de fichier X, des textures au format TGA et des sons au format PCM WAV. Vous aurez besoin des éléments suivants : 1. Modèle de l'arme qui sera affichée sur l'écran principal du jeu en perspective FPS. 2. Modèle qui sera utilisé lorsque l'arme est récupérée. 3. Modèle de l'arme utilisé quand un personnage ennemi en fait usage. 4. Textures pour tous ces éléments. 5. Image du viseur de l'arme (s'il y en a une). 6. Image de l'image ATH utilisée en combinaison avec l'affichage du nombre de munitions. 7. Effets sonores pour le tir, le rechargement, le tir à vide et le zoom de l'arme (format PCM WAV). 8. Image de la lunette si l'arme en est équipée pour zoomer sur la cible visée. Voici les étapes à suivre pour ajouter vos propres armes. 1. Il est beaucoup plus simple de copier, de renommer et de modifier une arme qui existe déjà au lieu d'en créer une depuis le départ. 2. Ouvrez le répertoire FPS Creator\Files\gamecore\guns\modernday\commando 3. Copiez l'intégralité du répertoire et son contenu dans un nouveau répertoire, par exemple FPS Creator\Files\gamecore\guns\Mes armes\. 4. Vérifiez que votre nouveau répertoire est situé dans le répertoire gamecore\guns. 5. Renommez votre nouveau répertoire en gamecore\guns\Mes nouvelles armes\Gros calibre\. 6. Copiez tous vos modèles, textures, sons et images dans ce répertoire en utilisant les mêmes noms que les fichiers existants (leur nom indique clairement leur contenu). 7. Le modèle HUD.X est celui que vous verrez sur l'écran. Le modèle VWEAP.X est celui que vous verrez lorsque le personnage ennemi tiendra l'arme en main. 8. Le fichier GUNSPEC.TXT vous permet de configurer l'arme selon vos désirs et de contrôler tous ses paramètres, de la portée à la précision, en passant par les images d'animations utilisées pour l'affichage de l'arme sur l'ATH. Là encore, les noms des champs indiquent clairement leur fonction, mais vous n'aurez pas besoin de modifier de nombreux noms de fichiers si vous avez simplement écrasé les fichiers portant le même nom. 90 9. Les champs Muzzleflash, Brass et Smoke indiquent le type d'effet utilisé. Ces valeurs d'index font référence aux modèles des répertoires respectifs dans gamecore\. 10. Le champ Fireloop est utilisé pour les armes de type mitrailleuse pour lesquelles le fichier sonore WAV doit être joué en boucle pour plus de cohérence lors du tir. La valeur fait référence à la position de la boucle dans la séquence sonore. 11. Les champs HORIZ, VERT et FORWARD contrôlent la position du flash sortant du canon lors du tir. 12. Les valeurs ALIGN contrôlent la position de l'arme par rapport à la caméra. 13. Le champ KEYFRAMES indique où se trouve chacune des animations de l'arme dans les données du modèle d'animation. 14. Les valeurs SFRAME indiquent quand les sons doivent être déclenchés, le premier paramètre indiquant le numéro de keyframe qui déclenche le son, le second l'index du son qui doit être joué. 91 13.5 Personnalisation des écrans du jeu Dans une certaine mesure, vous pouvez créer vos propres pages de titre, écrans de jeu et barres de statut dans FPS Creator en utilisant les assistants FPI de l'éditeur. Toutefois, vous pouvez aller plus loin et personnaliser entièrement tous les aspects de chaque page en éditant directement les fichiers FPI. Tout comme les propriétés des entités acceptent n'importe quel fichier FPI dans le répertoire scriptbank\, l'onglet des paramètres de niveau de la fenêtre COMPILER JEU vous permet de spécifier le nom des fichiers FPI situés dans le répertoire gamebank\. Suivez les étapes suivantes pour personnaliser vos écrans FPI. 1. Ouvrez le répertoire FPS Creator\Files\languagebank\english\gamebank\templateoriginal\ 2. Copiez le fichier titlepage.fpi dans un nouveau répertoire nommé gamebank\Mes écrans\ 3. Renommez le fichier FPI en custompage.fpi 4. Double-cliquez sur ce fichier FPI et choisissez le bloc-notes pour l'éditer. 5. Lisez le chapitre consacré aux scripts FPI plus haut dans ce manuel, vous remarquerez que le langage est identique et vous pourrez voir comment la page de titre est chargée et construite. 6. Modifiez le fichier FPI en ajoutant cette ligne : :STATE=2,RANDOM=10:SOUND=audiobank\misc\ping.wav 7. Enregistrez ces modifications dans le fichier custompage.fpi et quittez le bloc-notes. 8. Lancez FPSCreator.exe et cliquez sur l'option COMPILER JEU du menu FICHIER. 9. Cliquez sur l'onglet Paramètres de niveau et au lieu de cliquer sur le bouton EDITER comme vous le feriez normalement pour utiliser l'assistant FPI, cliquez directement sur le nom du fichier, ce qui vous permet de choisir votre fichier FPI. Dans ce cas, ouvrez le répertoire Mes écrans\ et sélectionnez le fichier custompage.fpi. 10. Ouvrez ensuite le dernier onglet de cette fenêtre et cliquez sur CREER PROGRAMME EXECUTABLE. 11. Localisez le programme exécutable dans le répertoire MyGames et lancezle pour voir le nouvel écran personnalisé de votre jeu. 92 13.6 Description du répertoire de fichiers Audiobank Editors Effectbank Entitybank Languagebank\english\Gamebank Gamecore Levelbank Mapbank Meshbank Prefabs Scriptbank Segments Skybank Texturebank Contient tous les fichiers PCM WAV utilisés dans le jeu, en dehors de sons utilisés pour les armes. Utilisez des fichiers au format PCM WAV 8 bits. Contient tous les fichiers utilisés pour fournir à l'éditeur de niveaux les éléments et ressources nécessaires pour l'affichage de l'interface utilisateur. Contient tous les fichiers d'effets utilisés pour décrire les shaders dont le jeu peut avoir besoin (des shaders ne nécessitant aucun matériel spécifique jusqu'aux shaders nécessitant un matériel plus performant supportant Pixel et Vertex Shader 2.0 et plus). Contient tous les fichiers FPE utilisés pour décrire une entité. Les fichiers sont des fichiers texte normaux faciles à modifier. Les fichiers BIN sont créés à partir des fichiers FPE, il s'agit de versions binaires des données de l'entité, qui doivent être supprimés si le fichier FPE est modifié. Ce répertoire contient aussi tous les éléments dont l'entité peut avoir besoin. Contient tous les fichiers FPG qui décrivent les projets de jeux créés et la disposition des différents écrans créés avec l'assistant FPI dans l'onglet Paramètres de niveau de la fenêtre COMPILER JEU. Contient tous les fichiers qui font partir du moteur du jeu et donnent aux niveaux l'aspect et l'ambiance d'un jeu fini. Tout est là : images ATH, décals, objets aériens, effets visuels, images d'écrans et décors. Contient toutes les données utilisées par les programmes exécutables finaux pour charger les niveaux beaucoup plus rapidement que via les fichiers FPM (fichiers des niveaux du jeu). Ce répertoire contient les fichiers temporaires qui seront ajoutés à la fin au programme exécutable pour le jeu final. Contient tous les fichiers FPM qui sont utilisés pour décrire la disposition d'un seul niveau. Il contient également un répertoire temporaire pour les derniers projets en cours qui ont été édités avec l'éditeur de niveaux. Contient tous les fichiers X utilisés pour décrire la géométrie 3D, des entités et segments statiques. Tous les fichiers de géométrie 3D ne sont pas dans ce répertoire, les armes et certaines entités étant enregistrées localement. Contient tous les fichiers FPP qui décrivent une combinaison préfabriquée de segments, qui peuvent être considérés comme une forme simplifiée du format de la carte d'un niveau. Contient tous les fichiers FPI décrivant l'intelligence artificielle utilisée par toutes les entités dans le jeu. Contient tous les fichiers FPS décrivant les segments utilisés dans la partie "édition de niveau" de l'interface. Comme pour les entités, les fichiers BIN enregistrés dans ce répertoire sont une forme binaire des fichiers FPS. Contient tous les ciels que l'utilisateur peut sélectionner pour les inclure dans ses jeux. Les ciels sont décrits par une combinaison de 6 textures et d'un mesh. Contient toutes les textures TGA/DDS dont le jeu a besoin pour appliquer les couleurs et les détails sur les entités et les segments du niveau. 93 13.7 Vue d'ensemble des fichiers et des formats Voici une liste détaillant tous les formats de fichiers que vous pouvez rencontrer lorsque vous utilisez FPS Creator : X TGA DDS DBO DBU WAV BMP JPG TXT BIN DAT FX ZIP EXE FPG FPM FPMB FPMO FPOL FPI FPID FPP FPS FPE ENT ELE EFF LGT WAY Format Microsoft Model Fichier de texture Targa Fichier de texture de surface DirectDraw Fichier de modèle d'objet DarkBasic Fichier DarkBasic Universe Fichier sonore PCM WAVE Fichier image Bitmap Fichier image Bitmap (compactée) Fichier texte Fichier binaire (données compactées) Fichier binaire (données compactées) Fichier d'effet (shaders) Fichier Zip compacté Fichier exécutable Fichier de projet de jeu FPSC Fichier de carte FPSC Fichier de buffer de carte FPSC Fichier Overlay carte FPSC Fichier de liste d'overlays FPSC Fichier de script IA FPSC Fichier de données assistant IA FPSC Fichier de préfab FPSC Fichier de segment FPSC Fichier d'entité FPSC Fichier de données compactées FPSC (entité) Fichier de données compactées FPSC (élément) Fichier de données compactées FPSC (effets) Fichier de données compactées FPSC (éclairages) Fichier de données compactées FPSC (point de passage) 94 14 Vente des jeux créés avec FPS Creator Selon les termes de la licence d'utilisation (le Contrat de Licence Utilisateur Final ou CLUF), vous ne pouvez pas vendre les jeux créés avec FPS Creator v. 1.0. Vous devez accepter la license ODE physics. Vous la trouverez dans le répertoire suivant : Files\Licence\License-bsd.txt De plus la mention légale suivante doit être clairement visible sur la documentation qui va avec votre création : Ce jeu a été créé à l'aide de FPS Creator. Copyright 2005. The Game Creators Ltd. Tous droits réservés. www.fpscreator.com 95 15 Autres outils de création de jeux L'équipe de The Game Creators a pour objectif de fournir aux amateurs et aux professionnels des outils de création de jeux abordables. Si vous avez apprécié FPS Creator, vous aimerez peut-être l'un des nombreux produits que nous proposons. 15.1 Développement de jeux 15.1.1 The 3D Gamemaker Ce produit destiné au marché des enfants vous permet de créer des jeux d'un simple clic de souris, sans aucune connaissance en programmation ou en graphisme. Avec plus de 12 milliards d'options de jeu, The 3D Gamemaker introduit un concept totalement nouveau dans le monde des jeux et permet de divertir toute la famille. C'est un produit idéal pour les jeunes utilisateurs de PC qui veulent faire leurs premiers pas dans le monde de la création de jeux. www.the3dgamemaker.com 15.1.2 Dark Basic Classic DarkBASIC vous permet de créer vos propres jeux, démos, diaporamas et même des applications professionnelles, grâce au langage de programmation BASIC facile à comprendre. Même si vous n'avez jamais programmé, il vous suffit de suivre les didacticiels très complets pour obtenir des résultats en quelques minutes ! Maîtrisez la puissance de DirectX et créez des objets en 3D avec quelques simples commandes. DarkBASIC est un produit idéal pour vous lancer dans la programmation. Il est facile à apprendre et permet d'obtenir des résultats impressionnants. Utilisé par des milliers d'utilisateurs dans le monde entier et enseigné dans de nombreuses écoles et universités. www.darkbasic.com 96 15.1.3 Dark Basic Professional DarkBASIC Professional est le programme de développement de jeux le plus avancé, construit autour du langage BASIC actuellement disponible. Aucun autre programme ne permet d'intégrer aussi facilement les nombreuses fonctions et effets spéciaux que vous voyez dans les jeux d'aujourd'hui et c'est le seul à profiter de la technologie DirectX 9 de Microsoft. DarkBASIC Professional a été utilisé pour créer FPS Creator : c'est un parfait exemple de ce que vous pouvez obtenir avec ce programme. Il existe aussi de nombreuses extensions qui font de ce produit un outil de programmation encore plus flexible et puissant. www.darkbasicpro.com 15.1.4 Dark Game SDK Vous pouvez maintenant profiter pleinement du moteur de jeu de DarkBASIC Professional dans un environnement en C++ avec le logiciel Dark Game SDK. Une foule de nouvelles possibilités sont accessibles grâce aux fonctions du langage C++ et à la puissance de Dark Game SDK : la flexibilité du moteur de DarkBASIC Professional et le développement en C++ avec la même facilité d'utilisation offerte par DarkBASIC Professional. Le programme Dark Game SDK intègre toutes les commandes de DarkBASIC Professional dans une bibliothèque très facile à utiliser et dans un format compatible avec Microsoft Visual Studio 6 et Microsoft Visual Studio .NET 2003. http://darkgamesdk.thegamecreators.com/ 97 15.2 Modélisation en 3D 15.2.1 3D Canvas Pro 3D Canvas est un outil de modélisation et d'animation en 3D et en temps réel qui offre une approche intuitive de la modélisation en 3D. Des modèles complexes peuvent être construits à partir de simples primitives en 3D ou créés avec les outils de construction de 3D Canvas. Les outils de modélisation permettent de déformer, sculpter et peindre les objets en 3D. C'est un outil idéal pour créer des éléments qui seront ensuite intégrés à vos jeux. http://3dcanvas.thegamecreators.com/ 15.2.2 gameSpace gameSpace est le seul programme de graphismes en 3D sophistiqué avec un environnement spécialement conçu pour les développeurs de jeux. Il contient absolument tout ce dont vous avez besoin pour créer des personnages, des objets, des mondes, des armes et bien plus encore ! Ce produit offre d'énormes possibilités : modélisation, textures, rendu, animation, squelettes, peaux, cinématiques inverses... et sa puissance permet d'importer et d'exporter vos créations dans pratiquement tous les formats de jeux. http://gamespace.thegamecreators.com/ 98 15.2.3 Character Shop L'animation des personnages est incontestablement l'étape la plus difficile dans le développement de la plupart des jeux. Il est fréquent de voir des démos dont l'environnement est magnifique, mais peuplé de créatures bizarres ou ne comportant que quelques animations grossières. Comment les développeurs indépendants peuvent-ils créer ces animations ? Les outils dédiés sont chers et complexes et il faut de nombreuses heures de travail pour obtenir un résultat de qualité. Mais avec Character Shop, la donne a changé ! Character Shop est la solution permettant de surmonter ces difficultés. Le programme contient plus de 80 animations de qualité professionnelle pouvant être appliquées à n'importe quel mesh humanoïde dont l'échelle est calculée pour correspondre au squelette. Tout le travail d'animation vous est ainsi épargné : il a déjà été fait par des professionnels. Il vous suffit d'appliquer le squelette à vos modèles et de sauvegarder le résultat final. Le calcul des vertex est très simple, avec de puissants outils de sélection permettant d'atteindre le moindre recoin. Utilisez l'option de "fixation automatique" et visualisez les déformations du mesh en temps réel, puis ajoutez les touches finales aux vertex. http://charactershop.thegamecreators.com/ 15.2.4 Action 3D Dans le domaine du développement de jeux, la vitesse est un élément essentiel. L'un des meilleurs moyens d'optimiser la vitesse de vos jeux est de réduire le nombre de polygones utilisés dans vos modèles 3D. Toutefois, cette réduction des polygones défigure complètement le modèle ou nécessite des logiciels qui coûtent une fortune. Action3D Reducer est un puissant outil de réduction des polygones qui modifie le niveau de détails en temps réel et permet d'importer et d'exporter des fichiers d'objets .3DS et .X. http://www.thegamecreators.com/?f=action3d 99 15.3 Graphismes 15.3.1 Texture Maker Texture Maker est un générateur et un outil de création de textures. Le programme contient tout ce dont vous avez besoin pour créer des textures fluides utilisables par les programmes de rendu en 3D et de développement de jeux. Il permet de créer des textures à partir de rien, de supprimer les défauts d'images existantes, de prendre des textures dans des photos avec correction de la perspective, de créer des surfaces à partir de structures d'exemple et de combiner les textures existantes et les "height maps" avec un éclairage réaliste. http://texturemaker.thegamecreators.com/ 15.3.2 Ex Gen Explosions et effets spéciaux. Ils sont beaux à voir, mais la création d'effets animés pour les jeux n'est pas aussi facile qu'il n'y paraît. ExGen est conçu pour vous offrir tous les effets spéciaux nécessaires à vos jeux vidéo. Grâce à son interface intuitive, le système puissant de ExGen vous permet de créer un vaste choix d'effets qui peuvent ensuite être exportés sous forme d'images ou de fichiers d'animation AVI pour être intégrés à vos jeux. Vous pouvez tout créer : objets texturés avec une animation d'explosion ou un dégagement de fumée, éclairages changeants, rayons laser, etc. http://exgen.thegamecreators.com/ 15.3.3 ProMotion Pro Motion est un programme de coloration de pixels qui reprend toutes les fonctions essentielles qui ont fait de Deluxe Paint (sur Amiga) un programme aussi puissant, avec une interface Windows facile d'utilisation et simplifiée. C'est un programme idéal pour les graphistes travaillant sur des formats réduits comme les jeux pour téléphones mobiles, les PDA, les consoles portables (Gameboy Advance), les formats Macromedia Flash ou tout autre application pour laquelle des outils précis et puissants sont nécessaires. En plus des dizaines d'outils et de fonctions, ce logiciel permet aussi de gérer les graphismes et les palettes de couleur pour la Gameboy Color et la Gameboy Advance graphics. http://www.thegamecreators.com/?f=promotion 100 15.4 Création de mondes 15.4.1 Cartography Shop 4 Cartography Shop est un programme de modélisation permettant de créer une architecture et de calculer les éclairages. C'est un outil idéal pour les environnements des jeux, les présentations en 3D et autres applications commerciales. Cartography Shop a été conçu pour être facile à utiliser sans pour autant limiter sa puissance. Aucun autre programme de modélisation n'automatise certaines opérations comme le "UV mapping" et le calcul des éclairages, tout en permettant d'accéder facilement à tous les éléments d'une scène. C'est un outil qui s'adresse à la production de masse, avec un minimum de clic de souris pour obtenir la qualité dont vous avez besoin. http://cartographyshop.thegamecreators.com/ 15.4.2 Geoscape 3D C'est un outil essentiel pour ceux qui ont besoin de construire un environnement extérieur dans leurs jeux. Geoscape 3D allie la puissance d'un générateur de paysages virtuels en temps réel à la fluidité des textures qui donnent vie aux scènes de votre programme. Geoscape3D fait oublier la complexité de la création de beaux paysages. Avec une panoplie d'outils très complète permettant d'élever ou d'abaisser le terrain, il est aussi simple à utiliser qu'un programme de graphisme conventionnel pour créer des vallées, des rivières, des montagnes et autres paysages. Une fois le terrain terminé, Geoscape3D peut rapidement créer une texture réaliste appliquée avec précision sur le terrain. Cette texture peut être mise à jour quand le terrain est modifié. Les tâches qui demandaient autrefois des heures peuvent être maintenant achevées en quelques minutes. http://geoscape.thegamecreators.com/ 101 15.4.3 Sky Matter Vous avez planté le décor, tous vos objets sont en place, votre monde en 3D est fluide, mais le ciel a une apparence trop... simple. Voici SkyMATTER, une collection de textures en haute résolution de qualité professionnelle conçues spécialement pour le mapping du ciel et pour rendre vos jeux encore plus vivants. Chaque texture de ciel mesure 512 x 512 pixels au format BMP 24 bits : idéal pour pratiquement tous les moteurs de jeu. Vous n'êtes pas limité au ciel, les textures fournies peuvent aussi être appliquées sur des cubes et des sphères. http://skymatter.thegamecreators.com/ 15.4.4 gile[s] gile[s] est un programme de lightmapping capable de calculer rapidement et efficacement des lightmaps en haute résolution. gile[s] comprend un éditeur très facile d'utilisation qui vous permet de placer des modèles et des éclairages sans problèmes. Contrairement à la plupart des programmes de lightmapping, gile[s] gère les modèles d'une complexité arbitraire sans altérer la fluidité des groupes. Avec gile[s], vous pouvez même dessiner directement sur les lightmaps et mélanger l'éclairage des vertex et les lightmaps selon vos désirs. gile[s] illumine vos mondes virtuels. http://giles.thegamecreators.com/ 15.5 Collections de graphismes et de sons 15.5.1 Dark Matter 1,2 et 3 DarkMATTER 1, 2 et 3 sont des collections complètes d'objets en 3D entièrement animés et de qualité professionnelle, qui permettent de donner à vos projets et vos jeux cet aspect visuel digne des plus grands. Les novices et les utilisateurs confirmés seront comblés par DarkMATTER, qui leur épargnera beaucoup d'heures de travail et d'efforts. http://darkmatter.thegamecreators.com/ 102 15.5.2 Tree Magic G2 TreeMagik G2 est un programme complet permettant de créer des "mesh végétaux" très détaillés avec un minimum de polygones, l'idéal pour les développeurs de jeux, les créateurs de paysages ou tous ceux qui ont besoin d'arbres luxuriants et vivants pour agrémenter leurs décors. Les éléments sont optimisés au maximum et permettent une création détaillée avec le moins de polygones possibles. L'éditeur a été spécialement conçu pour une utilisation facile, qu'il s'agisse d'un arbre complexe ou d'un élément plus simple. Quelques clics de souris suffiront dans tous les cas pour obtenir le résultat souhaité. TreeMagik G2 est fourni avec une foule d'éléments naturels, d'écorces, de branches et de feuilles. Des textures très réalistes permettent à quiconque de créer de superbes arbres en quelques secondes. Nous avons ajouté tellement d'éléments à cette version que vous pourriez facilement créer des milliers d'arbres uniques ! De plus, vous pouvez aussi importer vos propres éléments, ce qui élargit le champ des possibilités à l'infini. http://treemagik.thegamecreators.com/ 15.5.3 Plant Life L'équipe de développement de Treemagik vous propose maintenant ce nouveau produit très performant. Conçu pour réduire le nombre de polygones, Plant-Life offre aux développeurs de jeux une approche unique de la création de feuillages hyper-réalistes pour les intégrer à leurs créations. Sans altérer la qualité visuelle, PlantLife permet de créer des feuillages vivants et colorés avec un minimum de polygones. Notre principal objectif était de développer un outil facile à utiliser tout en maintenant le niveau de détails nécessaire pour créer des éléments d'une qualité visuelle proche de la photographie. Vous pouvez désormais inclure dans vos jeux des plantes uniques avec des possibilités illimitées. http://plantlife.thegamecreators.com/ 103 15.5.4 Sound MATTER SoundMATTER est une collection d'effets sonores de qualité supérieure et libres de droits pour vos jeux. Tout y est : armes, explosions, râles d'agonie d'un extraterrestre, cartes à jouer, dés qui roulent, épées qui s'entrechoquent et plus encore ! SoundMATTER utilise un logiciel audio programmé spécialement pour créer des effets sonores de qualité. Tous les sons sont 100 % originaux, échantillonnés à partir de sources sonores réelles ou synthétisés à partir d'échantillons originaux ou de formes d'ondes brutes. Le résultat final donne des effets sonores profonds, vibrants et créés spécialement pour les jeux. Nous proposons 9 collections différentes avec des réductions très intéressantes si vous en achetez plusieurs. Les collections proposées sont les suivantes : Arcade, Casino, FPS, Epée et magie, Bip-bip, Manettes, Bruits de pas, Pluie, vent et feu, Epée et magie II. http://soundmatter.thegamecreators.com/ 104