Skip to content

sc_spawn_service_v1.spawn_as

1.2. spawn_near_player, recorded as yours (self, as sco_plugin_load received it), so set_entity_transform lets you move the entity. Same answers as spawn_near_player, plus “bad argument” for a null self. Same size check as set_entity_transform: size > offsetof(sc_spawn_service_v1, spawn_as). Implementation may return tracking-failure reason after successful spawn with out_id nonzero.

const char *(*)(sco_plugin *, const char *, const double *, uint64_t *)

Service index

Property Value
Symbol sc_spawn_service_v1.spawn_as
Record ID sc-spawn-service-v1-spawn-as
Service spawn.entities
Table sc_spawn_service_v1
Version macro SC_SPAWN_SERVICE_VERSION
Packed table version 65538
Since / availability size >= 64; 1.2
Complete member extent (x64 bytes) 64
Table size (x64 bytes) 64

Header source

const char* (*spawn_as)(sco_plugin* self, const char* entity_class, const double offset[3], uint64_t* out_id);
1.2. spawn_near_player, recorded as yours (self, as sco_plugin_load received it), so set_entity_transform lets you move the entity. Same answers as spawn_near_player, plus “bad argument” for a null self. Same size check as set_entity_transform: size > offsetof(sc_spawn_service_v1, spawn_as). Implementation may return tracking-failure reason after successful spawn with out_id nonzero.

NULL means spawn and tracking succeeded; non-NULL borrowed reason otherwise. Tracking failure can occur after spawn, with nonzero out ID and live unowned/unmovable entity; failure is not rollback.

unspecified

Movement ownership recorded for self, forgotten on unload; this is not an automatic despawn promise. Failure reason borrowed; lifetime unspecified; never free.

Game thread only; recursive reentrancy unspecified.

unspecified

unspecified

No cancellation entrypoint; asynchronous streaming is not cancelled by this table.

Status labels are copied verbatim from the catalogue: direct is native access; typed-wrapper is wrapper-backed; restricted is a subset/adaptation; unsupported means no supported route is established. No status implies universal safety.

Language Catalogue status Source evidence / wrapper tokens
c direct include/sc_spawn.h
(*spawn_as)
cpp direct include/sc_spawn.h
(*spawn_as)
csharp unsupported docs/sdk-csharp.md
The host-owned services each have a class.
docs/sdk-csharp.md
| Class | Service | Does |
lua unsupported sdk/docs/lua.md
The script sees only:
sdk/docs/lua.md
There is no io, os, package, require, debug, dofile, loadfile or FFI
plugins/lua/sco_lua_game.c
if (!(actors || vehicles || world || entities || creative)) return;

None identified in the catalogue; this is not proof none can exist.

ABI pins prove layout, not semantic behavior or a live game session.