Godot 4 · GDScript
Contenido descargable
Entrega datos que publicas online (niveles, packs, configuraciones de evento) sin actualizar el juego. Tu subes el contenido al panel; el jugador lo recibe automaticamente.
Como lo Recibes
El contenido marcado para descarga automatica llega solo tras conectar. Cada pieza tiene una clave (la defines en tu panel) y la recibes por la senal content_loaded:
Gamdato.content_loaded.connect(_on_content)
Gamdato.content_sync_complete.connect(_on_content_done)
func _on_content(clave: String, datos: Variant) -> void:
if clave == "niveles":
_cargar_niveles(datos) # datos es lo que subiste (Dictionary, Array...)
func _on_content_done(actualizadas: Array, desde_cache: Array) -> void:
print("Contenido listo.")# content_loaded(key: String, data: Variant)
# data is an envelope; your uploaded value lives at data[key]:
{
"schema_version": 1,
"generated_at": "2026-06-07T18:00:00.000Z",
"levels": [ ... ] # your uploaded value, under your content key
}Lectura Instantanea y Bajo Demanda
get_cached_content(clave) lee al instante la copia guardada. get_game_content(clave) pide contenido bajo demanda (el que no es de descarga automatica).
El contenido se guarda en el dispositivo para uso offline y solo se vuelve a descargar cuando publicas una version nueva. Recuerda subir el numero de version de la clave al editar contenido.
Cargar Todo de una Vez
get_bootstrap() trae todo el contenido de descarga automatica en una sola respuesta, ideal para una pantalla de carga. Escucha bootstrap_loaded.
Gamdato.bootstrap_loaded.connect(_on_bootstrap)
Gamdato.get_bootstrap()
func _on_bootstrap(payload: Dictionary) -> void:
# payload contiene cada clave de descarga automatica en el nivel superior
if payload.has("levels"):
_load_levels(payload["levels"])