Inventory Manager API

Inventory Manager API

Por DjCtavia 18 de enero de 2026
#API#API de Gestión de Inventarios#Desarrollo#gaming#Hytale#Inventarios#plugins

InventoryManagerAPI

Un plugin para servidores de Hytale que proporciona una potente API para gestionar los inventarios de los jugadores con funcionalidad de guardado/carga persistente.

Propósito

InventoryManagerAPI resuelve el problema común de la persistencia del inventario en los servidores de Hytale. Ya sea que estés construyendo minijuegos que necesiten guardar/restaurar los inventarios de los jugadores, creando modos de juego personalizados con presets de inventario, o desarrollando plugins que requieran almacenamiento temporal de inventario, esta API ofrece una solución limpia y modular.

Qué Hace

  • Guardar los inventarios de los jugadores en almacenamiento persistente (archivos JSON)
  • Restaurar inventarios bajo demanda con plena preservación de los datos de los objetos
  • Múltiples modos de almacenamiento para diferentes casos de uso:
    • Basado en UUID – Almacenamiento simple específico para cada jugador
    • UUID + Sufijo – Múltiples variantes nombradas por jugador (por ejemplo, kit_pvp, kit_builder)
    • Nombres personalizados – Presets de inventario compartidos/globales accesibles a cualquier jugador

Características

Para Administradores de Servidores

  • Comandos integrados para la gestión manual de inventarios
  • Comportamiento configurable (limpiar inventario al guardar, eliminar archivo de inventario al cargar)
  • Configuración persistente con modificación en el juego

Para Desarrolladores de Plugins

  • API limpia accesible a través de InventoryManagerAPIPlugin.get().getInventoryStorageManager()
  • Operaciones asíncronas utilizando CompletableFuture para I/O no bloqueante
  • El patrón de estrategia permite backend de almacenamiento personalizados
  • Soporte completo de inventario: barra de acceso rápido, almacenamiento, mochila, armadura y ranuras de utilidad

Comandos

Comando Descripción
/invm save Guardar tu inventario actual
/invm load Restaurar un inventario guardado
/invm list Listar los inventarios guardados disponibles
/invm config view Ver la configuración actual
/invm config set <key> <value> Modificar la configuración
/invm config save Guardar la configuración en el disco
/invm config reload Recargar la configuración desde el disco

Opciones de Comando

Opciones de Guardar/Cargar:

  • --suffix <name> – Usar variante nombrada específica del jugador
  • --name <name> – Usar nombre de inventario compartido/global
  • --clear true|false – Anular la configuración de limpiar al guardar
  • --delete true|false – Anular la configuración de eliminar al cargar
  • --player <name> – aplicar la operación a otro jugador

Opciones de Listado:

  • --name – Mostrar inventarios con nombres personalizados
  • --suffix – Mostrar inventarios basados en sufijos
  • --uuid <player> – Filtrar por jugador específico

Configuración

Ajuste Por Defecto Descripción
StorageDirectory mods/.../inventories Dónde se almacenan los archivos de inventario
ClearInventoryOnSave true Limpiar el inventario del jugador después de guardar
DeleteFileOnLoad true Eliminar el archivo de inventario después de restaurar

Uso de la API

// Obtener el gestor
InventoryStorageManager manager = InventoryManagerAPIPlugin.get().getInventoryStorageManager();

// Guardar inventario por UUID
manager.saveInventory(playerUUID, inventory);

// Guardar con un sufijo (por ejemplo, para diferentes modos de juego)
manager.saveInventoryWithSuffix(playerUUID, inventory, "arena");

// Guardar como un preset nombrado (compartido entre jugadores)
manager.saveInventoryByName("starter_kit", inventory);

// Restaurar inventario
manager.restoreInventory(playerRef, store);

// Restaurar con sufijo
manager.restoreInventory(playerRef, store, "arena", null);

// Restaurar desde un preset nombrado
manager.restoreInventoryByName(playerRef, store, "starter_kit", null);

// Listar inventarios disponibles
List<String> namedInventories = manager.listNamedInventories();
List<String> playerInventories = manager.listSuffixInventories(playerUUID);

Relacionados:

Synapse

Synapse

#API#Desarrollo#Hytale

Synapse v1.3.0 — API moderna de marcadores de posición (¡Ahora con soporte para Hytale!) Synapse es un poderoso y modern...

Bridge

Bridge

#API#gestión#Hytale

Una poderosa biblioteca de plugins de Hytale para crear, gestionar y orquestar mundos temporales con facilidad. Bridge p...

HyDB

HyDB

#API#Base de datos#Desarrollo

HyDB &#8211; API de Base de Datos SQLite Profesional para Hytale 📊 Resumen HyDB es un plugin base profesional para Hyta...

Advanced Parties

Advanced Parties

#AdvancedParties#API#grupos

⚠️ Trabajo en Progreso ⚠️AdvancedParties está en desarrollo activo. Se planean características como la interfaz gráfica ...

Cassaforte

Cassaforte

#API#Cassaforte#Desarrollo

Una API de abstracción de plataforma para plugins de Hytale, que proporciona interfaces de economía, permisos y chat. De...

Coins

Coins

#API#Economía#Hytale

Hytale Coins Mod Un sencillo mod de economía para Hytale que añade monedas físicas y un sistema de cartera digital. Cara...