! ! ! ATTENTION, NE FONCTIONNE PAS SOUS COUNTER STRIKE SOURCE ! ! !
le voici
Affichage de texte
Vous voulez rajouter une signature à votre map, ou ajouter des textes pour un aspect esthétique dans les maps de votre mod ?
ce tuto est fait pour vous

voici 2 méthodes (une très simple, et une de difficulté moyenne) pour pouvoir y arriver rapidement
Les game_text
Alors dans cette première partie, nous allons voir comment bien règler un game_text
voici à quoi ressemble cette entité dans hammer

on peut poser cette entité absolument n'importe où dans la map, sauf en "hors-map" (sous peine d'avoir un leak
)maintenant passons aux règlages
name: le nom de l'entité, obligatoire pour pouvoir appelé celle ci
message text: le texte qui sera affiché à l'écran
X: position horizontale du texte par rapport à l'écran (-1 = centre ; 0 = à gauche ; 1 = à droite) le chiffre peut très bien être à virgule (ex: 0.25 / -0.69 ...)
Y: position verticale du texte par rapport à l'écran (-1 = centre ; 0 = en haut ; 1 = en bas) le chiffre peut très bien être à virgule (ex: 0.85 / -0.56 ...)
text effect: on va laisser fade in/out, ce qui permettra de choisir les temps d'affichage du texte
color1: couleur du texte
color2: pas encore compris :p
fade in time: temps que va mettre le texte à apparaître
fade out time: temps que va mettre le texte à disparaître
hold time: temps durant lequel le texte va rester visible
scan time: sert uniquement si on avait choisit scan out dans le ligne text effect
text channel: channel 1 fera l'affaire

master: pas nécessaire pour le moment
- flag -
all players: pour savoir si le message doit être vu par tous les joueurs ou non
maintenant, passons à un exemple
- name: game_text_1
- message text: js_build_puzzle_sex_nico_schumi => nico_schumi@hotmail.fr
- X: -1 (pour afficher le texte au centre)
- Y: -1 (pour afficher le texte au centre)
- color1: 0 255 0
- color2: 255 255 255
- fade in time: 1.5
- fade out time: 1.5
- hold time: 2
- scan time: 0.25 (par défaut)
- text channel: channel 1
- master: rien
voici le rendu in game


avantages de cette technique:
simplicité déconcertante (une seule entité simple à mettre)
inconcénients de cette technique:
une seule ligne maximum
pas assez de règlages possible
voilà, on a fini pour ce qui est du game_text :p
Les env_message
Alors vu que vous êtes des pofessionels, ont va passer aux choses un peu plus sérieuse maintenant
On va utiliser un env_message, ainsi qu'un fichier .txt qui sera joint à la map
Je vous préviens tout de suite, cette technique est beaucoup mieux, mais un peu plus délicate que la précédente

voilà à quoi ressemble un env_message dans hammer (très très original ^^)

voici les explications des différents règlages
name: le nom de l'entité, obligatoire pour pouvoir appeler celle ci
message text: le titre du message (on va revenir sur ça plus bas
)sound effect: si vous voulez ajouter un son en même temps que le texte
volume: le volume du son choisit
sound radius: distance d'entente du son
- flag -
play once: pour être affiché une seule et unique fois
all clients: si le message doit être vu par tout le monde ou pas
maintenant voici un exemple d'application de cette entité dans une map
- name: message_portail
- message text: PRO_SCHUMI_generator
- sound effect: rien
- volume: rien
- sound radius: rien
voici le rendu in game

alors là, vous allez me dire: mais c'est quoi ce bouzou bouzou ???, le mec met 3 mots dans message text, et in-game, il y a 2 lignes d'affichée ...
et oui, car avec un env_message, il faut ajouter un fichier .txt qui contient les textes en entier

passons donc à la 3ème partie pour apprendre à créer et règler ce fichier .txt
Le fichier .txt (joint au env_message)
bon alors voilà, la dernière partie de ce petit tuto

on va apprendre à bien règler le fichier .txt qui va venir se joindre au bsp
ce fichier va contenir l'ensemble des messages de la map
1°) la création
alors il suffit de créer un fichier .txt (avec bloc notes ça marche niquel
)on le nomme titles, et on le place dans un dossier nommé script qui est lui même placé dans le dossier hl2 pour half life 2, hl2mp pour hl2dm ...
voici donc le chemin complet en prenant pour exemple le jeu hl2dm:
C:\Program Files\Steam\SteamApps\le_compte\half-life 2 deathmatch\hl2mp\scripts\titles
une fois ce fichier créé, il va faloir y insérer un certain nombre de ligne de "commandes" pour qu'il soit bien reconnu par le jeu, les voici toutes, un simple copier coller suffira

//TITLES FOR HALF-LIFE 2
// Position command $position x y
// x & y are from 0 to 1 to be screen resolution independent
// -1 means center in each dimension
// Effect command $effect <effect number>
// effect 0 is fade in/fade out
// effect 1 is flickery credits
// effect 2 is write out (training room)
// Text color r g b command $color
// fadein time fadeout time / hold time
// $fadein (message fade in time - per character in effect 2)
// $fadeout (message fade out time)
// $holdtime (stay on the screen for this long)
2°) créer du texte
maintenant que la base du fichier .txt est fini, on va voir comment procéder pour y ajouter notre 1er texte
il faut tout simplemnt ajouter notre texte en dessous des lignes de "code" précédemment citées en italique et présenter ce texte ainsi:
le titre
{
le texte
}
pour que ce soit plus clair, voici ce qu'il fallait mettre pour voir s'afficher le même texte que dans le screen plus haut
PRO_SCHUMI_generateur
{
***NOUVEAU MESSAGE***
Portail ouvert, alimentation du générateur en cour ...
}
//***NOUVEAU MESSAGE***
PS: les couleurs ne sont là que pour illustrer le tuto
alors maintenant, un peu d'explication sur le pourquoi du comment écrire comme ça
a) le titre
le titre (ce que j'ai coloré en rose sur ce tuto) est un ou plusieurs mots de votre choix, le plus simple étant de mettre un titre en rapport avec le sujet du texte qui va être affiché
par exemple, j'ai mis en titre PRO_SCHUMI_generateur, pro_schumi c'est pour le nom de la map, et generator car dans le message on parle d'un générateur :p
b) le texte
on commence par ouvrir un crochet, ensuite on saute une ligne, et on écrit son message, on saute de nouveau une ligne, et on ferme le crochet
ps: lorsqu'on veut qu'il y ais un retour à la ligne, on le met où on veut, une simple pression sur le bouton entrée de votre clavier et c'est fait

le fichier .txt va contenir l'ensemble de tous les messages de votre map, pour ce faire, il vous suffit de chosir un titre différent à chaque fois, et de séparer chaque texte de 2 lignes
à chaque changement de paramètre d'un texte (si vous voulez un texte d'une autre couleur, ou qui s'affiche plus vite par exemple), il faudra remettre toutes les lignes de paramètrages du texte avant celui ci en changeant ce que vous voulez
tant que vous ne remettez pas les lignes de paramètrages, les caractéristiques des textes resterons identique
voici donc un exemple de ce que l'on doit avoir au complet dans notre fichier titles
- Code: Tout sélectionner
//TITLES FOR HALF-LIFE 2
// Position command $position x y
// x & y are from 0 to 1 to be screen resolution independent
// -1 means center in each dimension
// Effect command $effect <effect number>
// effect 0 is fade in/fade out
// effect 1 is flickery credits
// effect 2 is write out (training room)
// Text color r g b command $color
// fadein time fadeout time / hold time
// $fadein (message fade in time - per character in effect 2)
// $fadeout (message fade out time)
// $holdtime (stay on the screen for this long)
$position -1 -1
$effect 2
$color 200 180 160
$color2 255 240 220
$fadein 0.05
$holdtime 1
$fadeout 1
texte_n°1
{
bonjour à tous
}
$position 0.02 0.05
$effect 2
$color 200 140 40
$color2 255 220 64
$fadein 0.2
$holdtime 2
$fadeout 1
texte_n°2
{
merci d'avoir lu ce tuto
}
voilà, après ça, vous devriez savoir comment on affiche un message sur une map, si tel n'est pas le cas, bah c'est que mon tuto est raté, ou que vous ne comprenez pas assez bien le français :p :p
j'apporterais sûrement des compléments à ce tuto
merci de votre lecture et bon mapping

edit du 29 avril 2008
- suppression des lignes de commentaires inutiles
- ajout d'un exemple complet







.