THE ORB
Arrancando el studio

La creación de la entidad devolvió 0 o falló

Algo intentó generar un vehículo, una persona o un objeto y no apareció.

groupsLas cosas no aparecenpersonPodés arreglarlo

Haz esto primero

Comprueba que el vehículo o el modelo que quiere esté instalado de verdad y que su script esté corriendo.

bug_reportMejor pega tu consola entera

Qué significa

Un nativo de aparición devolvió 0 en vez de un identificador. En ese momento no dio error; el fallo sale a la luz más tarde, como un argumento inválido o un index-nil cuando se usa el identificador.

Qué lo provoca

Ordenado por la frecuencia con la que es la respuesta.

  1. 1

    El modelo nunca se cargó

    RequestModel es asíncrono. Generar antes de que HasModelLoaded devuelva true da 0 todas las veces.

  2. 2

    El modelo no existe

    Un vehículo o un ped a medida cuyos archivos de stream faltan, están mal nombrados o están en un recurso que no arrancó. El hash es válido, el asset no está.

  3. 3

    El pool de entidades está lleno

    Mirá el error de límite de entidades. En el techo, toda creación devuelve 0.

  4. 4

    Creado en el servidor sin OneSync

    El CreateVehicle del lado del servidor requiere OneSync. Sin él, el nativo no está disponible de esa forma.

  5. 5

    Creado demasiado lejos de cualquier jugador

    La creación del lado del servidor en coordenadas donde no hay nadie cerca puede no llegar a instanciarse hasta que alguien esté en rango.

Cómo saber cuál es el tuyo

print(IsModelInCdimage(model), IsModelValid(model), HasModelLoaded(model))

false en los dos primeros significa que el modelo no existe en este servidor. True en los dos y false en el tercero significa una carrera de carga.

Dónde mirar

La llamada de aparición y las líneas justo encima.

Cómo arreglarlo

local function spawnVehicle(model, coords, heading)
    local hash = type(model) == 'string' and GetHashKey(model) or model
    if not IsModelInCdimage(hash) or not IsModelValid(hash) then return nil end

    RequestModel(hash)
    local deadline = GetGameTimer() + 5000
    while not HasModelLoaded(hash) and GetGameTimer() < deadline do Wait(0) end
    if not HasModelLoaded(hash) then return nil end

    local veh = CreateVehicle(hash, coords.x, coords.y, coords.z, heading, true, false)
    SetModelAsNoLongerNeeded(hash)
    if not DoesEntityExist(veh) then return nil end
    return veh
end

¿Sigues atascado en tu propio código?

Esta página es lo que suele significar este error. Pega tu consola en Server Fixer y ordenará todo lo que haya en ella y te dirá qué hacer primero; y si prefieres no tocarlo, ORBIE puede reparar el script y devolverte el recurso listo para soltar.

bug_reportAbrir el Server Fixer

Para este tipo de error, el Escáner de seguridad marca el manejo de eventos que lleva hasta acá.

Errores que viajan con este