Prérequis :
Vous devez être capable de créer et d'activer des scripts avant ce tutoriel, je ne vais pas vous apprendre à faire des scripts et je partirai du principe que vous êtes capables de :
- Créer un script .sqs et .sqf
- Appeler un script dans votre mission via un déclencheur et/ou un script
Si vous ne le savez pas encore, je vous invite à lire ce petit tuto.
Bien il est temps de commencer.
- Préambule
Vous avec probablement déjà écrit un script, par exemple un briefing et vous vous êtes surement aperçus que vos accents n'apparaissaient pas.
C'est normal : en effet de base des fichiers sqs ou sqf sont encodés en "ANSII" qui utilise 256 caractères
[Vous devez être inscrit et connecté pour voir cette image]la table ASCII comprenant ces caractères.
Vous pouvez voir que les accents ne sont pas là, ni les caractères étrangers tels que l'alphabet chinois, grec, russe, etc...
C'est pourquoi un autre système de codage est apparu : l'UTF-8.
Nous allons devoir encoder nos fichiers en UTF-8 pour avoir des accents.
Travaillons avec un exempleImaginons que nous voulons montrer un message au joueur avec un script (en sqf, je vous expliquerai pourquoi après).
Dans un script on utilise la commande : hint "message".
Ce qui donnera ici
- Code:
-
hint "un message avec des accents : voilà c'était des accents.";
N'oubliez pas le point-virgule nécessaire aux scripts sqf.
Et oui je sais, ce message est débile, mais il a le mérite d'avoir des accents
Lorsque nous utilisons ce message nous obtenons ceci en jeu :
[Vous devez être inscrit et connecté pour voir cette image]Vous pouvez voir que les accents n'apparaissent pas.
Il est temps de s'attaquer à la conversion !
Au boulotPour coder un message en UTF-8 nous avons besoin d'autre chose que le bloc-note de Windows.
J'utilise Notepad++ qui est très pratique (léger, facile d'utilisation, pas mal de fonctionnalités, et surtout gratuit).
On le télécharge ici.
Je ne vous montre pas comment l'installer, c'est très simple
Ensuite, chargez notre fichier sqf avec notre logiciel, vous devriez obtenir ceci :
[Vous devez être inscrit et connecté pour voir cette image]Cliquez sur l'onglet "Encodage", puis sur "convertir en UTF-8" si vous avez déjà écrit le code ou sur "Encoder en UTF-8" si vous n'avez rien écrit.
Vous devriez voir ceci
[Vous devez être inscrit et connecté pour voir cette image]Et voilà, nous obtenons ceci en jeu maintenant
[Vous devez être inscrit et connecté pour voir cette image]Mission accomplie
AnnexesPremière chose :
Je vous ai dit au début de créer un script sqf et non sqs.
C'est pour une raison simple : le sqs ne supporte pas l'encodage UTF-8, j'ai déjà essayé et le script ne fonctionne tout simplement pas.
Donc si vous voulez avoir des accents, alors travaillez avec des scripts sqf et non sqs.
Deuxième chose :
Euuuuuuuuuh, bah je crois que j'ai tout dit
Si vous avez des questions, surtout n'hésitez pas, j'y répondrai
(je suis si gentil)