Cette page n’est pas encore traduite : la version anglaise est affichée.
Écrire le cerveau d’un bot
Un cerveau est du code ordinaire qui répond à une seule question : que fait ce bot ensuite ? Il tourne où vous voulez — une fonction cloud, votre propre service, un client headless — et il parle à la salle par la même interface que le client d’un joueur humain. Cette page spécifie la prise sur laquelle il se branche : ce qu’un cerveau reçoit, ce qu’il peut renvoyer, et quand. Pour faire entrer un bot dans une salle, voir Bots.
Ce qui est arrêté, et ce sur quoi vous pouvez construire dès aujourd’hui
La plateforme ne fournit aucune IA de jeu. Pas d’arbres de comportement, pas de système d’utility AI, pas de cerveau de navigation. C’est la frontière : les décisions sont les vôtres, et le rôle du module est de rendre vos décisions impossibles à distinguer de celles d’un joueur.
Un cerveau n’est pas un hook. Un hook enveloppe une de nos étapes. Un cerveau n’est pas du tout une de nos étapes : il tourne hors de la salle, à son propre rythme, et peu importe à la plateforme de quel côté la connexion a été ouverte. C’est pourquoi un cerveau peut être une fonction cloud, un service que vous hébergez ou un client headless, et pourquoi aucune de ces options n’est plus native que les autres.
La prise, c’est la perception en entrée et les commandes en sortie, et les deux côtés sont ceux du joueur :
| Ce que c’est | |
|---|---|
| perception | exactement ce que recevrait un joueur à cette place (seat) — les mêmes deltas, à travers les mêmes règles de visibilité. Un bot ne peut pas plus tricher au wallhack qu’un joueur. |
| commandes | exactement ce qu’enverrait un joueur à cette place. Il n’existe aucun canal d’entrée privilégié. |
Un bot qui voit davantage — un mode debug, un mode d’entraînement — est un élargissement déclaré, pas un effet secondaire du fait d’être un bot.
Le tick de réflexion est déclaré, et ce n’est pas le tick de simulation. Les cerveaux sont à l’extérieur : ils réfléchissent à leur propre cadence.
Entre deux réflexions, la dernière commande tient
Un cerveau qui réfléchit lentement ne donne pas un bot immobile : il donne un bot qui continue de faire la dernière chose qu’il a décidée. Concevez le cerveau en conséquence.
La disparition des cerveaux a un comportement déclaré, sans valeur par défaut. Vous dites, par type de salle (room), ce qui se passe quand le cerveau cesse de répondre. « Cerveaux indisponibles » est un événement avec rétention : un abonné arrivé tard apprend la situation actuelle, et pas seulement les changements à venir.
Ce qu’un bot ne peut volontairement pas être
Ce sont des refus, pas des oublis.
- Un bot n’est pas un joueur, et il ne possède ni droits d’usage (entitlement), ni achats, ni entrées de classement. Un bot capable de les détenir serait un moyen d’en fabriquer.
- Le marqueur de bot existe toujours et la plateforme peut toujours l’observer. Le montrer ou non aux joueurs, c’est votre décision ; son existence, non.
- Le module ne garde aucun historique de ce qu’un bot a décidé ni de pourquoi. C’est votre affaire, dans votre télémétrie — la plateforme n’est pas l’endroit où se stocke le raisonnement de votre IA.