Aller au contenu
Afficher dans l'application

Une meilleure façon de naviguer. En savoir plus.

Asterobot

Une application plein écran sur votre écran d'accueil avec notifications push, badges et plus encore.

Pour installer cette application sur iOS et iPadOS
  1. Appuyez sur Icône de partage dans Safari
  2. Faites défiler le menu et appuyez sur Ajouter à l'écran d'accueil.
  3. Appuyez sur Ajouter dans le coin supérieur droit.
Pour installer cette application sur Android
  1. Appuyez sur le menu à trois points (⋮) dans le coin supérieur droit du navigateur.
  2. Appuyez sur Ajouter à l'écran d'accueil ou Installer l'application.
  3. Confirmez en appuyant sur Installer.

SQL

L'onglet SQL exécute vos propres requêtes sur les données de jeu d'une version de jeu, pour les questions auxquelles les autres onglets ne répondent pas : une jointure entre tables, un décompte, un tri. Les requêtes s'écrivent dans le dialecte SQL de SQLite. Les données de jeu sont ouvertes en lecture seule : rien de ce que vous exécutez ne peut les modifier ni les casser.

L'ouvrir

Sur la page du jeu de la version, ouvrez Données de jeu, puis SQL. L'éditeur contient déjà la première requête d'exemple, prête à être exécutée.

Exécuter une requête

  1. Tapez une requête dans l'éditeur, ou modifiez celle qui s'y trouve.
  2. Cliquez sur Exécuter, ou appuyez sur Ctrl+Entrée (Cmd+Entrée sur Mac).

L'éditeur colore le SQL et propose des complétions pendant la saisie :

  • les colonnes des tables que votre requête nomme déjà ;
  • tous les noms de tables ;
  • les mots-clés et les fonctions SQL courants ;
  • entre apostrophes, les noms des enregistrements dans la Langue choisie dans l'en-tête de la page du jeu : taper 'Bouf propose Bouftou.

Lire les résultats

À côté des boutons, l'onglet affiche le nombre de lignes, arrêtée à la limite quand la requête avait plus de lignes que l'onglet n'en affiche, et la durée de la requête, en millisecondes.

Le tableau de résultats a une colonne par colonne sélectionnée, dans l'ordre de la requête, et deux colonnes peuvent porter le même nom. Les valeurs imbriquées s'affichent en JSON. Les valeurs longues sont coupées : pointez une cellule pour la lire en entier. Une requête qui ne trouve rien affiche « La requête n'a renvoyé aucune ligne. »

L'onglet affiche jusqu'à 500 lignes. Pour voir les lignes suivantes, restreignez la requête avec WHERE, ou parcourez-la par pages avec LIMIT et OFFSET.

Exemples

Exemples ouvre un menu de requêtes d'exemple regroupées par thème. En choisir une remplace le contenu de l'éditeur, et les notes sur ce thème apparaissent sous l'éditeur : quelles tables contiennent quoi, et les pièges à éviter.

Thème Ce que couvrent ses requêtes
explore Ce que contiennent les données de jeu : toutes les tables, leur taille, et lesquelles sont dérivées
names Trouver des enregistrements par nom grâce à la table _names
monsters Les monstres, leur force, et où ils vivent
items Les objets, ce qu'ils font, et d'où ils viennent
harvesting Ce qui pousse où, et quelle compétence permet de le récolter
navigation Les coordonnées, les zaaps et le graphe de déplacement du monde
crafting Les recettes, les ingrédients et les métiers qui les fabriquent
maps Les cellules, les cellules praticables et ce qui se trouve sur les cartes
quests Les quêtes, leurs étapes, et les donjons
text Tous les textes que le jeu peut afficher, en cinq langues

Plusieurs exemples cherchent des noms français, avec des conditions telles que n.language = 'fr'. Remplacez fr par en, de, es ou pt pour une autre langue.

Écrire vos propres requêtes

  • _catalog liste toutes les tables, avec leur nombre de lignes et le fait qu'elles soient dérivées ou non :

    SELECT name, row_count, derived FROM _catalog ORDER BY row_count DESC;
  • Les noms passent par _names, avec les colonnes record_table, record_id, name_id, name, language et ordinal. Un enregistrement peut avoir plusieurs noms, et l'ordinal 0 est son nom principal.

  • Les textes d'une langue sont dans la table text_ suivie du code de langue, par exemple text_fr, avec une colonne id et une colonne text.

  • Dans une table dérivée, dont le nom contient deux tirets bas, chaque ligne pointe vers sa ligne parente avec _parent_id.

  • Mettez le texte entre apostrophes, comme dans 'monsters'. Les guillemets doubles servent seulement à nommer une table ou une colonne.

  • Pour chercher dans les noms ou les textes, les index plein texte _names_fts et text_fr_fts (un par langue) sont bien plus rapides que LIKE '%...%'. Les exemples names et text montrent comment les utiliser.

L'onglet Tables de Données de jeu montre les colonnes de chaque table et leurs types, ce qui aide pendant l'écriture.

Lecture seule et limites

INSERT, UPDATE, DELETE, CREATE et toute autre instruction qui écrit échouent, et ATTACH est aussi refusé : une requête ne peut donc atteindre aucun autre fichier de base de données.

Quand l'éditeur contient plusieurs instructions séparées par des points-virgules, elles s'exécutent toutes, et l'onglet affiche le résultat de la dernière.

Limite Valeur Au-delà
Lignes affichées 500 Les autres lignes sont laissées de côté, et arrêtée à la limite apparaît.
Durée 10 secondes par requête La requête est interrompue et échoue.
Longueur de la requête 64 Kio La requête échoue avec un texte tel que datacenter: query is 70000 bytes, over the 65536 byte limit.
Taille d'une valeur construite par la requête 16 Mio La requête échoue.
Requêtes simultanées 4 sur une même version de jeu, partagées entre tous les onglets SQL ouverts et les scripts de tous les bots Les autres requêtes attendent leur tour.

Quand une requête échoue

Une alerte rouge affiche la raison telle que SQLite la donne : un texte commençant par datacenter: qui nomme le problème, par exemple no such column: nmae pour un nom de colonne mal tapé. Quand Asterobot n'a donné aucune raison, l'alerte indique La requête a échoué. Corrigez la requête et exécutez-la de nouveau.

Utiliser une requête dans un script

Un script exécute le même type de requête avec query() de asterobot:gamedata, sur les données de jeu de la version de jeu de son bot. L'onglet SQL est l'endroit le plus rapide pour mettre au point une requête avant de la placer dans un script : Requêtes SQL explique le reste, y compris les paramètres.

Compte

Navigation

Recherche

Recherche

Configurer les notifications push du navigateur

Chrome (Android)
  1. Appuyez sur l'icône de cadenas à côté de la barre d'adresse.
  2. Tap Autorisations → Notifications.
  3. Ajustez vos préférences.
Chrome (Desktop)
  1. Cliquez sur l'icône représentant un cadenas dans la barre d'adresse..
  2. Select Paramètres du site.
  3. Find Notifications et ajustez vos préférences.