Problèmes de routing bucket
Les joueurs ou les objets sont dans des copies distinctes du monde et ne se voient donc pas.
Faites d'abord ceci
En général un script de métier, d'appartement ou de mini-jeu qui a mis quelqu'un dans une instance sans l'en sortir.
Ce que ça veut dire
Les routing buckets sont des instances séparées du monde. Un joueur dans le bucket 1 ne peut pas voir les entités du bucket 0, et inversement. Cela produit rarement une ligne d'erreur ; le symptôme, ce sont des entités qui « n'apparaissent pas », des joueurs invisibles les uns pour les autres, ou un véhicule qui existe sur le serveur et pas sur le client.
Ce qui la provoque
Classé par fréquence : la cause la plus probable en premier.
- 1
L'entité a été créée dans un bucket différent de celui du joueur
Les entités créées côté serveur atterrissent dans le bucket 0 sauf indication contraire. Un joueur déplacé dans un bucket pour un métier ou un appartement instancié ne peut pas les voir.
- 2
Le joueur a été déplacé et jamais ramené
Un plantage, une déconnexion en pleine instance, ou un chemin de script qui règle le bucket sans réinitialisation. Le joueur reste dans un monde vide après réapparition.
- 3
Deux scripts qui gèrent tous deux les buckets
Un script d'appartements et un script de mini-jeux attribuant tous deux des numéros de bucket, sans registre commun, finissent par se télescoper.
- 4
Le mode de verrouillage d'entités
SetRoutingBucketEntityLockdownModeenstrictempêche purement les clients de créer des entités dans ce bucket, ce qui casse l'apparition côté client à l'intérieur.
Comment savoir laquelle est la vôtre
-- serveur print(GetPlayerRoutingBucket(src), GetEntityRoutingBucket(entity))
Des numéros différents, et voilà tout le diagnostic.
Où regarder
Chaque appel à SetPlayerRoutingBucket et SetEntityRoutingBucket, et si chacun a sa réinitialisation.
Comment la corriger
Mettez les entités dans le bucket du joueur, et réinitialisez toujours à la sortie :
local bucket = GetPlayerRoutingBucket(src)
local veh = CreateVehicle(model, coords.x, coords.y, coords.z, h, true, false)
SetEntityRoutingBucket(veh, bucket)
AddEventHandler('playerDropped', function()
SetPlayerRoutingBucket(source, 0)
end)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 FixerPour ce type d'erreur, le Scanner de sécurité signale la gestion d'événements qui mène ici.