[tuto] du texte dans vos maps

Ce forum regroupe tous les tutoriaux réalisés par des membres de Mapping-Area pour Half-Life 2.

Modérateurs: Co-Admin, Modérateur, Staff

[tuto] du texte dans vos maps

Messagede nicolas le 06 Déc 2007, 22:00

alors voilà, je viens de finir un petit tuto assez simple pour pouvoir avoir du texte dans nos maps/mods

! ! ! 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
Image

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 ;)
Image

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 ^^)
Image

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
Image

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
Dernière édition par nicolas le 07 Nov 2008, 23:32, édité 3 fois.
Avatar de l’utilisateur
nicolas
Créateur
 
Messages: 782
Inscription: 20 Nov 2007, 16:08
Localisation: Saint-Donat (Drôme)

Messagede Beach le 06 Déc 2007, 22:16

Géant ! J'avais jamais compris comment sa marchais :^^
Image
Avatar de l’utilisateur
Beach
VIP
VIP
 
Messages: 2774
Inscription: 14 Avr 2005, 19:08
Localisation: nancy

Messagede Kirumi le 06 Déc 2007, 22:18

Beach a écrit:Géant ! J'avais jamais compris comment sa marchais :^^


C'est une entité ultra basique pourtant XD
Et le symbole de changer de profil pour recommencer tout à zéro dans cette histoire ?
Avatar de l’utilisateur
Kirumi
NPC
 
Messages: 5160
Inscription: 02 Fév 2006, 00:39
Localisation: NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§

Messagede nicolas le 06 Déc 2007, 22:26

oué c'est clair lol ^^

mais bon je savais tout au fond de moi que quelqu'un aurait besoin de ça un jour ;)
je m'étais po trompé à ce que je vois 8-)
Avatar de l’utilisateur
nicolas
Créateur
 
Messages: 782
Inscription: 20 Nov 2007, 16:08
Localisation: Saint-Donat (Drôme)

Messagede corn-flex le 06 Déc 2007, 22:31

Merci pour le tuto, il est bien simpa :gg
Avatar de l’utilisateur
corn-flex
Idéaliste
 
Messages: 252
Inscription: 27 Aoû 2007, 16:19
Localisation: Le-Puy-en-Velay

Messagede nicolas le 06 Déc 2007, 22:36

bah de rien 8-)

il sera aussi sur le site du zéro quand il sera validé

si un admin juge que ce tuto est asez bien pour être mis en rubrique cours, qu'il n'hésite po :p
Avatar de l’utilisateur
nicolas
Créateur
 
Messages: 782
Inscription: 20 Nov 2007, 16:08
Localisation: Saint-Donat (Drôme)

Messagede Grippy le 06 Déc 2007, 22:37

Sympa comme tuto :gg

J'déplace dans la section cours ;)
"Fais moi voir ta gueule de guerrier !!" Sgt Hartmann
Avatar de l’utilisateur
Grippy
Co-Admin
Co-Admin
 
Messages: 1891
Inscription: 14 Jan 2005, 18:48
Localisation: France

Messagede Kirumi le 06 Déc 2007, 22:38

Ben , j'ai plus mes pouvoirs de modo (pour l'instant ?) mais je l'aurais mis volontier. Tu n'aurais même pas eu à te faire prier :]
Et le symbole de changer de profil pour recommencer tout à zéro dans cette histoire ?
Avatar de l’utilisateur
Kirumi
NPC
 
Messages: 5160
Inscription: 02 Fév 2006, 00:39
Localisation: NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§ NANCY§§

Messagede nicolas le 06 Déc 2007, 22:39

merci beaucoup les gars

je ferais d'autres tutos si je trouve le temps ;)
Avatar de l’utilisateur
nicolas
Créateur
 
Messages: 782
Inscription: 20 Nov 2007, 16:08
Localisation: Saint-Donat (Drôme)

Messagede Satyre le 06 Déc 2007, 22:48

Bon tuto, bravo !

je ferais d'autres tutos si je trouve le temps ;)

Ca me fait penser que j'ai un tuto toujours pas finit depuis pas mal de tps lol, faudrait que je trouve aussi le tps de le finir :D.
Avatar de l’utilisateur
Satyre
VIP
VIP
 
Messages: 1782
Inscription: 28 Aoû 2006, 18:52
Localisation: La ville rose

Messagede Klems le 07 Déc 2007, 18:29

Des lignes de commandes avec une syntaxe de commentaire (//)... Bien sur.
Bon tuto à part ça.
Avatar de l’utilisateur
Klems
VIP
VIP
 
Messages: 3144
Inscription: 02 Nov 2005, 13:43

Messagede tranxen51 le 07 Déc 2007, 19:23

Ouai franchement bon tuto :gg

Je savais pas que tu étais nico_schumi :^^
Particle editor : IN PROGRESS
Avatar de l’utilisateur
tranxen51
VIP
VIP
 
Messages: 1971
Inscription: 16 Avr 2007, 10:53
Localisation: Lescar

Messagede comatrix le 07 Déc 2007, 19:50

Klems a écrit:Des lignes de commandes avec une syntaxe de commentaire (//)... Bien sur.
Bon tuto à part ça.


J'allais le dire...bon je ne sais pas si c'est comme ça, mais les 2 slashes font de cela un commentaire et donc pas prises en comptes par le programme généralement, ou sous le moteur source est diffèrent? :eu
Justement les programmeurs s'en servent pour se rappeler l'exécution d'une ligne de commande, puisque au bout de 1000 ligne de commande on se rappelle plus la 254 par exemple. Je m'en sers souvent moi aussi :^^
Avatar de l’utilisateur
comatrix
VIP
VIP
 
Messages: 2837
Inscription: 22 Nov 2005, 15:09

Messagede nicolas le 07 Déc 2007, 21:20

tranxen51 a écrit:Je savais pas que tu étais nico_schumi :^^


hum oué, et ça change quoi en fait ? :D


pour ce qui est des lignes que vous appelez commentaires, je ne sais pas si c'est réelement nécessaire, je me suis basé sur un mod et je n'ais jamais testé si sans ces lignes, le message serait bon quand même

à essayer ;)
Avatar de l’utilisateur
nicolas
Créateur
 
Messages: 782
Inscription: 20 Nov 2007, 16:08
Localisation: Saint-Donat (Drôme)

Messagede belzaran le 07 Déc 2007, 22:23

Sympa comme tuto, merci !
Avatar de l’utilisateur
belzaran
Créateur
 
Messages: 745
Inscription: 20 Oct 2007, 12:49
Localisation: Paris

Suivante

Retourner vers Cours & astuces

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité