image_by Needpix.com

Age of HTML

Liste des balises utilisables

les balises HTML

Lorsque vous souhaitez mettre en forme du texte dans un script pour Age of Conan, l'utilisation de balises HTML est nécessaire.

qu'est-ce qu'une « balise » ?

Rien de mieux qu'une portion de code pour bien comprendre !

afi_html_tags_sample.html

_10
<div style="text-align:center;background-color:blue;">
_10
<font color="white">My first HTML script !</font>
_10
<img src="https://imgeucdn.gamespress.com/cdn/files/Funcom/2020/11/29154750-479c6616-dafa-4f2b-b283-d0bd34ffade1/ageofconan_unchained_logo_png_jpgcopy.jpg?w=240&mode=max&otf=y&quality=90&format=jpg&bgcolor=black&ex=2024-04-01+03%3A00%3A00&sky=6e8ca1f2b2ba253b5749fd59cb9c7513192396daa6d7ed959712a2c06070fc44" />
_10
</div>

On distingue trois types de balises :

  1. Les balises d'ouverture : Elles commencent une portion de code, comme à la ligne 1 et 2. Elles délimitent le début d'un élément et contiennent souvent du texte ou d'autres balises.
  2. Les balises de fermeture : Elles terminent une portion de code, comme à la ligne 2 et 4. Elles marquent la fin d'un élément et doivent être placées dans l'ordre inverse des balises d'ouverture.
  3. Les balises auto-fermantes : Elles n'ont pas de contenu interne, comme à la ligne 3. Elles sont utilisées pour insérer des éléments qui ne nécessitent pas de contenu supplémentaire, comme les images.

En copiant le bout de script et en le collant dans un fichier *html puis en glissant le fichier dans votre navigateur préféré vous obtiendrez l'affichage qui suit :

My first HTML script !

Dans cet exemple, le fichier possède l'extension de fichier *.html, cette extension n'est pas utilisable pour les scripts dans Age of Conan! Nous utiliserons donc des fichiers dont l'extension est *.txt pour tous les exemples suivants.

Les balises HTML peuvent être accompagnées d'« attributs », qui contrôlent le comportement de la balise ou de ses éléments enfants. Certains attributs sont universels et peuvent être utilisés avec n'importe quelle balise, tandis que d'autres sont spécifiques à certaines balises.

quelles sont les balises autorisées dans Age of Conan ?

L'HTML dans Age of Conan est assez basique. Nous allons le répertorier et le comprendre.

la balise <a>

Elle est utilisée pour créer des liens cliquables permettant d'ouvrir une fenêtre ou d'exécuter une action.

les attributs autorisés sont :

  • href : qui aura pour valeur :
    • Une fenêtre avec la valeur text:// LE_TEXTE_OU_LA_FENETRE_ICI.
    • Une commande avec la valeur chatcmd:///L_EMOTE_ICI (à noter qu’il y a 3 /, 2 pour chatcmd:// et 1 pour l’emote). Les commandes fonctionnent uniquement dans une fenêtre.
  • style : sert à changer l'apparence visuelle d'un élément HTML en lui appliquant des règles de style comme la couleur, etc. directement dans la balise. Cela permet de personnaliser l'apparence de chaque élément individuellement.

exemple de balise <a> ouvrant une fenêtre :

afi_tag_a_open_window_sample.txt

_10
<a href="text://Hello world !">example of a link opening a window containing text</a>

exemple de balise <a> pour une emote :

afi_tag_a_to_do_emote.txt

_10
<a href="text://<a href='chatcmd:///hi'>a link with an emote</a>">example of a link opening a window containing an emote</a>

On peut noter que dans le dernièr exemple, le premier attribut href encapsule sa valeur par des " (guillement), le second attribut href, qui lui fait partie de la valeur du premier encapsule sa valeur dans ' (apostrophe). c'est normal est obligatoire ! Si on utilisait le même caractère d'encapsulation pour les deux attributs, le moteur de script comprendrait que le premier guillemet du second attribut href est le guillemet fermant du premier attribut href.

Il existe néanmoins une solution, utiliser le caractère d'échapement qui est \ avant le premier guillement du second attribut href.

par l'enfer, j'ai rien compris à l'encapsulation !

Rien de mieux qu'un exemple pour bien comprendre 👼.

afi_tag_a_wellbad_encapsulation.txt

_10
<a href="text://- Text with good encapsulation : <font face='chat'>abc</font><br>- Text with escaped encapsulation : <font face=\"chat\">abc</font><br>- Text with bad encapsulation : <font face="chat">abc</font>">example of a link opening a window containing well/bad encapsulation</a>

Décryptage du script
  1. - Text with good encapsulation : <font face='chat'>abc</font>, affichera « abc ».
  2. - Text with escaped encapsulation : <font face=\"chat\">abc</font>, affichera « abc » bien que la valeur de l'attribut href englobant soit encaspulée par des guillemets.
  3. - Text with bad encapsulation : <font face="chat">abc</font>, la valeur de l'attribut face étant simplement encaspulée par des guillements, le moteur de script considère que la balise <font> n'est rien d'autre que du texte et n'affiche pas la suite du scripts.

En jeu, on obtiendra :


_10
- Text with good encapsulation : abc
_10
- Text with escaped encapsulation : abc
_10
- Text with bad encapsulation : <font face=

La balise <br>

La balise <br> en HTML est utilisée pour insérer un saut de ligne, ce qui signifie que le texte ou le contenu qui suit sera affiché sur une nouvelle ligne. C'est comme appuyer sur la touche « Entrée » dans un traitement de texte. La balise <br> ne nécessite pas de balise de fermeture et est auto-fermante.

Petite précision concernant l'aspect auto-fermant de la balise : vous rencontrerez probablement cette balise sous la forme <br />, qui est sa forme moderne. Ce n'est pas une erreur, et dans les deux cas, elle fonctionnera comme prévu dans un script. Toutefois, il est préférable d'utiliser la forme <br> car elle économise deux caractères à chaque utilisation de cette balise dans un script.

exemple de balise <br> :

afi_tag_br_sample.txt

_10
Hello<br>world !

la balise <div>

La balise <div> en HTML est comme une boîte qui vous permet d'organiser votre contenu. Vous pouvez penser à <div> comme à un conteneur qui regroupe d'autres éléments HTML ensemble. Dans le contexte des scripts pour Age of Conan il n’est pas possible de lui donner une bordure visible ou encore un fond coloré, tout juste gérer l’alignement du texte contenu à l’aide de l’attribut :

  • align : qui peut avoir pour valeur right, center ou left. Cette dernière étant la valeur par défaut.
  • style : sert à changer l'apparence visuelle d'un élément HTML en lui appliquant des règles de style comme la couleur, etc. directement dans la balise. Cela permet de personnaliser l'apparence de chaque élément individuellement.

Pour le HTML moderne, <div> est sûrement l'une des plus utilisées pour structurer une page. En revanche, elle offre trés peu d'avantages, voir aucun, pour un script AoC. Donc personne ne vous en voudra, si vous ne l'utilisez pas 😉.

la balise <font>

Elle est utilisée pour changer la police, la taille et la couleur du texte à l'intérieur de cette balise.

ses attributs sont :

exemple de balise <font> avec les différentes police de caractère :

afi_tag_font_sample.txt

_10
<a href="text://<font face=chat>Hello world, I use the font 'chat'</font><br><font face=small>Hello world, I use the font 'small'</font><br><font face=normal>Hello world, I use the font 'normal'</font><br><font face=normal_italic>Hello world, I use the font normal_italic</font><br><font face=normal_bold>Hello world, I use the font 'normal_bold'</font><br><font face=huge>Hello world, I use the font 'huge'</font><br><font face=large>Hello world, I use the font 'large'</font><br><font face=large_sc>Hello world, I use the font 'large_sc'</font><br><font face=large_bold>Hello world, I use the font 'large_bold'</font><br><font face=scaled>Hello world, I use the font 'scaled'</font><br><font face=3d_text_small>Hello world, I use the font '3d_text_small'</font><br><font face=3d_text_arial>Hello world, I use the font '3d_text_arial'</font><br><font face=3d_text>Hello world, I use the font '3d_text'</font><br><font face=3d_text_bold>Hello world, I use the font '3d_text_bold'</font><br><font face=3d_text_hyb>Hello world, I use the font '3d_text_hyb'</font><br><font face=hyboriansmall>Hello world, I use the font 'hyboriansmall'</font><br><font face=hyborianlarge>Hello world, I use the font 'hyborianlarge'</font><br><font face=headline>Hello world, I use the font 'headline'</font><br><font face=combat_feedback>Hello world, I use the font 'combat_feedback'</font>">A demonstration of different fonts</a>

la balise <img>

La balise <img> est utilisée pour afficher des images dans un script.

son attribut est :

  • src : Ce champ contient le nom de l’image.
    • Le protocole ne peut être que rdb://, ce qui signifie qu’il n’est pas possible d’utiliser un protocole internet tel que http://, ou encore ftp://, ni même un protocole local de type file://. En d'autres termes, l’image doit provenir obligatoirement du jeu. De plus, cette balise fonctionne uniquement dans les fenêtres.

exemple de balise IMG :

afi_img_sample.txt

_10
<a href="text://- An image that we only see the second time we open the script :<br><img src=rdb://12325><br>- An image that appears as soon as the script is first opened :<br><img src=rdb://15599>">A demonstration of the <IMG> tag</a><img src=rdb://15599>

Le bug des images à la première ouverture d'un script

On a tous à un moment ou un autre ouvert un script proposé par un joueur qui aura recommandé d'ouvrir le script deux fois pour voir les images qu'il contient. Il existe une technique pour éviter ce problème !

Pour afficher une image dès l'ouverture de la fenêtre, il faut la placer à côté du lien d'ouverture de la fenêtre dans le chat. Cela permet d'appeler l'image dès le début pour la rendre visible dans la fenêtre. Cependant, si l'on change de zone avec la fenêtre contenant l'image ouverte, il faudra alors la recharger 😢.

Cette méthode a un inconvénient : il faut utiliser deux fois la balise <img> pour une même image, ce qui peut alourdir le script et risquer de ne pas pouvoir l'afficher dans certains chats.

Mais pourquoi cette technique fonctionne ???

Je n'ai pas de certitude, mais étant donné qu'il faut ouvrir un script deux fois, il faut d'abord que le jeu charge l'image dans un cache temporaire, ce qui est fait par l'ouverture du script la première fois, pour l'afficher lors de la seconde ouverture.

Le débogage proposé fait cela automatiquement puisque l'image est d'abord chargée dans le chat, puis affichée lors de la première ouverture du script. En revanche, le cache semble temporaire puisque l'image n'est plus visible après un changement d'instance ou autre téléportations.

obtenir la liste des images du jeu

Pour trouver savoir se trouvent les images et leurs noms, c’est assez simple, le protocole rdb:// l'indique lui-même. Il faut regarder dans les fichiers portant l’extension *.rdb. Malheureusement, ces fichiers ne sont pas ouvrables à moins d’utiliser un logiciel de type RDB Extractor.

la balise <u>

Souligne une portion de texte.

exemple de balise <u> :

afi_underline_sample.txt

_10
<a href="text://A portion of text underlined :<br><u>- An underlined text!</u>">A demonstration of the underline tag</a>

les cas de la mise en gras et de l’italique

Aucune balise autorisée dans AoC ne permet de mettre une portion de texte en gras ou en italique… Cela est implémenté directement sous forme de police de caractères qui est déjà en gras et/ou en italique.

Maintenant que l'on en a appris un peu plus sur les balises HTML, il est temps de passer à la suite :

💬 partagez votre expérience !

Bienvenue dans la section commentaires dédiée à Age of Conan ! Nous sommes impatients d'entendre vos réflexions, stratégies et expériences sur ce monde épique. Que vous ayez des conseils à partager, des questions à poser ou des histoires à raconter, nous sommes là pour vous écouter. Les terres d'Hyboria regorgent de mystères et de défis, et nous sommes convaincus que votre contribution enrichira notre communauté de joueurs. N'hésitez pas à laisser votre empreinte dans les sables du temps en partageant vos pensées ci-dessous. Ensemble, nous écrivons l'histoire de Conan ! 🎺🎺

Buy Me A Coffee