THE ORB
Démarrage du studio

l'index de la table est nil

Un script a tenté de ranger quelque chose sous un nom vide, en général un identifiant de joueur pas encore prêt.

groupsCette fonctionnalité cesse de marchercodeIl faut un développeur

Faites d'abord ceci

Cela arrive en général pendant qu'on se connecte. Regardez si cela se déclenche à la connexion.

bug_reportCollez plutôt toute votre console

Ce que ça veut dire

Quelque chose a été STOCKÉ dans une table sous une clé nil : t[k] = vk est nil. Lire avec une clé nil est légal et renvoie nil ; écrire avec une clé nil est une erreur.

Ce qui la provoque

Classé par fréquence : la cause la plus probable en premier.

  1. 1

    Une clé venue d'une recherche en échec

    cache[GetPlayerIdentifier(src)] = data où l'identifiant est nil parce que le joueur n'est pas encore complètement connecté.

  2. 2

    Une variable de boucle utilisée au-delà de la fin

    Stocker sous items[i] alors que i est sorti de la liste.

  3. 3

    Un champ qui n'existe pas sur l'objet

    byJob[player.job.name] = x où le métier n'a pas de nom.

  4. 4

    Une clé numérique devenue NaN

    Diviser par zéro ou un tonumber() sur quelque chose d'illisible, puis l'utiliser comme index. Cela donne « table index is NaN ».

Comment savoir laquelle est la vôtre

Affichez la clé, pas la table :

print('clé =', tostring(laCle))

La ligne est courte et la clé est en général une seule expression : cela l'identifie immédiatement.

Où regarder

L'affectation de la ligne nommée, précisément ce qui est entre les crochets.

Comment la corriger

Protégez la clé à l'endroit où elle est produite :

local id = GetPlayerIdentifier(src, 0)
if not id then return end
cache[id] = data

Toujours bloqué sur votre propre code ?

Cette page explique ce que cette erreur signifie en général. Collez votre console dans Server Fixer : il classera tout ce qui s'y trouve et vous dira quoi faire en premier ; et si vous préférez ne pas y toucher, ORBIE peut réparer le script et vous rendre la ressource prête à déposer.

bug_reportOuvrir le Server Fixer

Pour ce type d'erreur, le Script Optimizer lit le script et répare le code derrière tout ça.

Les erreurs qui voyagent avec celle-ci