Créez, copiez, importez, exportez, modifiez et supprimez les profils de combat que jouent vos bots, sur la page Profils de combat, avec le profil par défaut, Idle, les profils fournis par les paquets et les profils qui en étendent un autre.
Un profil de combat dit au module de combat comment un bot joue : le rôle que tient le personnage, la distance à laquelle il combat, les sorts qu'il préfère, les monstres qu'il frappe en premier, ce qu'il fait quand sa vie baisse. Chaque bot joue un profil, choisi dans son onglet Combat (Le module de combat), et un même profil peut servir à autant de bots que vous voulez.
Vous n'avez pas besoin de profil pour commencer. Le profil par défaut s'adapte tout seul à n'importe quel personnage, et un profil n'a besoin que des réglages que vous voulez changer. Quelques lignes, comme un rôle, une portée et des éléments, font déjà un profil qui s'adapte à n'importe quel personnage de ce genre ; tout le reste sert à le rendre vraiment vôtre.
D'où viennent les profils
| Profil | Ce que c'est | Pouvez-vous le modifier ? |
|---|---|---|
| Le profil par défaut | Chaque réglage à sa valeur par défaut. Il n'est pas dans la liste : un bot le joue quand son Profil est vide. | Non : c'est ce sur quoi chaque réglage se rabat. |
| Idle, Intégré | Prend part au combat et passe chaque tour au bout de 5 secondes. Toutes les parties désactivées, une règle. | Non. Copiez-le pour changer le délai ou réactiver des parties. |
| Les vôtres | Les profils que vous avez créés, copiés ou importés. Chacun est un fichier du dossier des données d'Asterobot. | Oui. |
| Celui d'un paquet, Paquet | Fourni par un paquet que vous avez installé, nommé d'après lui, comme @some-author:fighters/fire-cra. |
Non. Copiez-le pour le modifier. |
@asterobot:base, le paquet officiel d'Asterobot, en fournit 24 prêts à jouer : voir Les profils prêts à jouer de base.
La page Profils de combat
Ouvrez Profils de combat dans le menu d'Asteroboard. La page liste tous les profils : Idle en premier, puis les vôtres par nom, puis ceux de vos paquets.
| Colonne | Ce qu'elle montre |
|---|---|
| Nom | Le nom du profil, celui qu'affiche la liste Profil d'un bot. |
| Source | Les vôtres, Intégré ou Paquet. |
| État | Prêt, Injouable quand il a une erreur, ou combien d'avertissements il a. Survolez-le pour les lire. |
Le filtre au-dessus du tableau retrouve un profil par son nom. Chaque ligne a un menu :
| Élément | Ce qu'il fait |
|---|---|
| Modifier | Ouvre votre profil dans l'éditeur. Voir pour Idle et ceux des paquets, qui s'ouvrent en lecture seule. |
| Copier | Enregistre une copie sous un nom à vous, puis l'ouvre dans l'éditeur. |
| Exporter | Télécharge le profil sous forme de fichier .json. |
| Supprimer | Supprime un de vos profils, après confirmation. Idle et ceux des paquets ne peuvent pas être supprimés. |
La page se met à jour toute seule quand un profil est enregistré, importé ou supprimé, et quand un paquet est installé ou retiré.
Créer un profil
- Cliquez sur Nouveau profil.
- Tapez un Nom, puis cliquez sur Créer.
L'éditeur s'ouvre sur le nouveau profil. Chaque réglage commence à sa valeur par défaut : il joue donc comme un bot sans profil tant que vous ne changez rien.
Un nom est aussi le nom de fichier du profil : il ne peut pas être vide, commencer par @, ni contenir de / ou de caractère qu'un nom de fichier ne peut pas contenir. La fenêtre affiche alors fightprofiles: a profile's name can't be empty, start with @, or hold / or a character a file name can't. Un nom qu'un autre profil porte déjà donne fightprofiles: a profile already has this name.
Copier un profil
Copier, dans le menu d'une ligne ou dans l'éditeur, ouvre une fenêtre où le nom est déjà rempli avec celui de l'original suivi de copie. Changez-le si vous voulez, puis cliquez sur Copier. La copie est à vous, avec tous les réglages qu'avait l'original.
Copier est la façon de modifier Idle ou le profil d'un paquet : la copie est un de vos profils, que vous pouvez modifier. Pour continuer de suivre le profil d'un paquet au fil de ses mises à jour tout en changeant quelques réglages, étendez-le plutôt (voir Étendre un autre profil).
Partager des profils
Exporter télécharge le profil tel qu'il est enregistré, dans un fichier qui porte le nom du profil, comme fire-cra.json. Les caractères autres que les lettres, les chiffres, ., - et _ deviennent - dans le nom du fichier.
Pour utiliser un profil que quelqu'un a partagé :
- Cliquez sur Importer.
- Choisissez le fichier sous Fichier du profil, ou collez le JSON sous JSON du profil. Choisir un fichier remplit le texte : ce que vous voyez est ce qui sera importé.
- Cliquez sur Importer.
Le profil rejoint les vôtres sous le nom qu'il porte. Quand vous avez déjà un profil de ce nom, la fenêtre demande « Vous avez déjà un profil nommé ... Le remplacer par celui-ci ? », et Le remplacer écrase le vôtre. Un texte qui n'est pas du JSON donne « Ce n'est pas du JSON valide : » avec la raison, et un JSON qui n'est pas un objet donne « Un profil est un objet JSON. » Un profil qu'Asterobot ne peut pas accepter est refusé avec la raison, comme lors d'une sauvegarde.
Un profil désigne les sorts, les monstres et les états par leurs identifiants dans le jeu, les mêmes pour tous ceux qui jouent la même version du jeu : un profil partagé joue donc de la même façon sur un autre Asterobot.
Supprimer un profil
Supprimer demande d'abord : « ... sera supprimé définitivement. Les bots qui l'utilisent joueront le profil par défaut. » Les bots réglés dessus gardent son nom et jouent le profil par défaut jusqu'à ce que vous leur en donniez un autre.
L'éditeur
L'éditeur montre le profil deux fois : le formulaire à gauche, section par section, et son JSON à droite. Les deux sont en direct. Un changement dans le formulaire apparaît aussitôt dans le JSON, et le JSON que vous tapez remplit le formulaire dès qu'il se lit comme un profil.
Les sections sont Général, Archétype, Jeu, Sorts, Ouverture, Monstres, Règles et Poids. Réglages du profil décrit chaque champ, et Règles et conditions les règles.
- Vide veut dire par défaut. Un champ laissé vide affiche Défaut, ou Hérité : avec la valeur que lui donne le profil étendu. Le bouton de réinitialisation à côté d'un champ que vous avez rempli le vide de nouveau.
- Choisir des sorts. Les sorts se choisissent dans Choisir un sort : choisissez une classe pour lister ses sorts, chacun à côté de sa variante, avec leur coût en PA, leur portée et leur icône, suivis des sorts des invocations que ces sorts amènent et des sorts que toutes les classes peuvent apprendre. Tapez pour les filtrer, ou pour chercher par son nom n'importe quel autre sort du jeu.
- Choisir des monstres, des races et des états. Tapez quelques lettres du nom, dans la langue du jeu, et choisissez-le dans la liste. Les monstres et les états affichent leur icône.
- Sauvegarder. Sauvegarder reste grisé tant que rien n'a changé. Quitter la page avec des changements non sauvegardés demande d'abord « Quitter sans enregistrer vos modifications ? ».
- Renommer. Changer le Nom dans Général puis sauvegarder renomme le profil : chaque bot qui le joue, et chacun de vos profils qui l'étend, suit le nouveau nom.
- Ce que le formulaire ne montre pas. Certains réglages ne s'écrivent que dans le JSON, comme un sort d'ouverture visant une cible ou un combattant visé par son identifiant dans une règle. Le formulaire les montre tels qu'ils sont écrits et les garde. Les réglages qu'il ne connaît pas, écrits pour un Asterobot plus récent, sont gardés aussi.
Les noms et les icônes viennent des données du jeu de la version pour laquelle votre Asterobot est fait, ou de la plus récente que vous avez extraite quand ce n'est pas celle-là, dans la langue dans laquelle vous utilisez Asteroboard. Les icônes apparaissent une fois les données de cette version extraites avec elles : après une mise à jour d'Asterobot, extrayez-la de nouveau sur la page Gestionnaire de jeux (Extraire les données du jeu).
Erreurs et avertissements
Quand vous sauvegardez, Asterobot vérifie le profil. Une valeur qu'il ne peut pas utiliser bloque la sauvegarde, et l'éditeur affiche la raison avec le champ concerné, comme :
fight: malformed profile: spells[0].use: "sometimes" is not one of prefer, normal, avoid, never
Le champ est écrit à la façon du JSON : spells[0] est la première entrée de Sorts. Corrigez-le dans le formulaire ou le JSON, puis sauvegardez de nouveau.
D'autres choses n'empêchent pas le profil de jouer, et s'affichent comme avertissements au-dessus du formulaire, sous À savoir :
| Avertissement | Ce qu'il veut dire |
|---|---|
spell 12345: not in the game data, ignored |
Un identifiant que la version du jeu la plus récente que vous avez installée n'a pas. Pareil pour monster, monster race et state. |
rules[0].when.self.something: no such subject: never holds |
Une condition que cet Asterobot ne connaît pas. Elle n'est jamais remplie. |
weights.something: no such scoring term: ignored |
Un poids au nom inconnu. |
version: 2 is newer than this module's 1: what it adds is ignored |
Un profil écrit pour un Asterobot plus récent. |
extends: no profile has this name: its own fields play over the default profile |
Le profil qu'il étend n'existe plus. |
name: "...", but its file is "....json": it plays as "..." |
Un fichier renommé à la main : c'est le nom du fichier qui l'emporte. |
Un profil qui ne peut pas jouer du tout, comme un fichier qui n'est pas du JSON ou un profil dont le profil étendu en étend lui-même un autre, affiche Injouable en l'état avec la raison. Un bot réglé dessus joue le profil par défaut.
Étendre un autre profil
Étend, dans Général, fait partir un profil d'un autre : il reprend tous les réglages de ce profil, et ne change que ceux qu'il définit lui-même. C'est la façon de suivre le profil d'un paquet, ou un des vôtres, en gardant quelques changements par-dessus :
| Ce que le profil définit | Ce qu'il joue |
|---|---|
| Un réglage comme Rôle ou Risque | Sa propre valeur, à la place de celle du profil étendu. |
| Un objet, comme Parties | Champ par champ : les champs qu'il définit remplacent ceux du profil étendu, les autres restent. |
| Sorts et Monstres | Les entrées du profil étendu, puis les siennes. Une entrée pour un sort ou un monstre que le profil étendu a déjà remplace cette entrée. |
| Règles | Les règles du profil étendu, puis les siennes. |
| Poids | Les poids du profil étendu, les siens les remplaçant par nom. |
L'éditeur montre les valeurs héritées en grisé dans chaque champ, et les entrées héritées d'une liste repliées au-dessus d'elle (« ... entrées héritées »).
Quand le profil étendu change, par exemple parce que son paquet a été mis à jour, chaque profil qui l'étend suit. Quand il n'existe plus, le profil joue ses propres réglages par-dessus le profil par défaut et le signale dans un avertissement. Vous pouvez étendre Idle, un de vos profils ou celui d'un paquet, mais sur un seul niveau : étendre un profil qui en étend un autre est refusé avec extends: "..." extends another profile, and one level is all.
Les profils des paquets
Un paquet peut fournir des profils de combat en plus de son script. Une fois le paquet installé, ses profils apparaissent sur la page avec la source Paquet, nommés <paquet>/<nom>, et n'importe quel bot peut les jouer, qu'il joue ce paquet ou non.
| Question | Réponse |
|---|---|
| Quelle version joue ? | La version du paquet la plus récente installée, pour chaque bot. Pour garder un profil tel quel, quoi que fassent les mises à jour du paquet, copiez-le dans vos propres profils avec Copier. |
| Que se passe-t-il quand le paquet est mis à jour ? | Ses profils sont mis à jour avec lui, et les profils qui les étendent suivent. |
| Et quand il est retiré ? | Les bots réglés sur un de ses profils jouent le profil par défaut, et leur console dit pourquoi. |
Les auteurs de paquets trouveront comment fournir des profils dans Fournir des profils de combat.
Les profils prêts à jouer de base
@asterobot:base, le paquet officiel d'Asterobot, fournit 24 profils prêts à jouer. Installez-le et ils sont sur la page et dans la liste Profil de chaque bot. Aucun ne nomme de sort, donc chacun joue n'importe quelle classe à n'importe quel niveau, avec les sorts et l'arme du personnage. Ce qu'un profil ne règle pas suit le profil par défaut : un profil dont le but n'est pas un rôle laisse le rôle à la classe, donc un Féca soutient toujours et un Eniripsa soigne toujours. Voir montre ce que chacun règle.
| Profil | Comment il combat |
|---|---|
@asterobot:base/careful |
Prudent : ne finit jamais un tour là où les ennemis peuvent le blesser gravement, et se cache dès que sa vie est basse |
@asterobot:base/all-in |
Tout pour l'attaque : inflige le plus de dégâts possible et ignore le danger, mort comprise |
@asterobot:base/melee-charge |
Se place près, fonce sur l'ennemi le plus proche et frappe au contact |
@asterobot:base/ranged-kite |
Se place loin, frappe à distance, puis sort de la portée des ennemis |
@asterobot:base/ranged-hide |
Se place loin, frappe à distance, puis finit son tour hors de la vue des ennemis |
@asterobot:base/hold-position |
Ne bouge que pour atteindre un lancer, pour garder taclés les ennemis à côté de lui |
@asterobot:base/finish-the-weakest |
Achève d'abord l'ennemi qui a le moins de vie |
@asterobot:base/kill-the-most-dangerous |
Tue d'abord l'ennemi qui peut le blesser le plus là où il se tient |
@asterobot:base/healer |
Soigneur : soigne d'abord l'allié le plus faible, puis lui-même, et frappe quand personne n'a besoin de soin |
@asterobot:base/bodyguard |
Garde du corps : protège ses alliés, boucliers et boosts pour le plus faible, et se place pour les abriter |
@asterobot:base/support |
Affaiblit les ennemis et booste ses alliés avant de frapper |
@asterobot:base/tank |
Passe devant, encaisse les coups pour l'équipe et tacle les ennemis au contact |
@asterobot:base/crowd-control |
Contrôle : pousse les ennemis, leur retire PA et PM et leur donne des états avant de les frapper |
@asterobot:base/summoner |
Invocateur : invoque dès qu'il peut et reste derrière ses invocations, hors de la vue des ennemis |
@asterobot:base/trapper |
Poseur de pièges : pose pièges et glyphes là où les ennemis vont passer, puis reste hors de leur portée |
@asterobot:base/earth-strength |
Préfère ses sorts de terre, pour un personnage force |
@asterobot:base/fire-intelligence |
Préfère ses sorts de feu, pour un personnage intelligence |
@asterobot:base/water-chance |
Préfère ses sorts d'eau, pour un personnage chance |
@asterobot:base/air-agility |
Préfère ses sorts d'air, pour un personnage agilité |
@asterobot:base/weapon-fighter |
Frappe avec son arme dès qu'il peut, au contact |
@asterobot:base/spells-only |
Ne frappe jamais avec l'arme ni à mains nues : ses PA vont à ses sorts |
@asterobot:base/team-player |
Joueur d'équipe : ne blesse jamais un allié avec ses zones, et soigne et booste ses alliés dès que ça aide |
@asterobot:base/carried |
Un bas niveau dans un groupe fort : se place loin, reste hors de danger et de vue, et ne frappe que sans risque |
@asterobot:base/boss-fight |
Pour les boss et les donjons : prudent, tue d'abord l'ennemi le plus dangereux et garde le groupe à l'abri |
Pour en changer un, copiez-le dans vos propres profils, ou faites un profil qui l'étend et ne règle que ce qui diffère, pour qu'il continue de suivre les mises à jour de base (Étendre un autre profil). Leurs noms ne changent pas d'une version de base à l'autre, donc un bot réglé sur l'un d'eux le garde.
Les fichiers des profils
Vos profils sont des fichiers du dossier fightprofiles du dossier des données d'Asterobot (Fichiers et dossiers), un fichier <nom>.json chacun, dans le même JSON que celui que montre l'éditeur.
Asterobot lit le fichier d'un profil chaque fois qu'il s'en sert : vous pouvez donc aussi les modifier à la main. Un changement joue dès le combat suivant, et apparaît sur la page la prochaine fois qu'elle se charge. Un fichier qui n'est pas un profil lisible est listé avec son erreur. Copier un fichier .json dans le dossier revient à l'importer.
Ensuite, Réglages du profil décrit chaque réglage d'un profil.