<p align="center">
  <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.md">English</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
</p>

<p align="center">
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/ai-rpg-engine/readme.png" width="400" alt="AI RPG Engine">
</p>

<p align="center">
  <a href="https://github.com/mcp-tool-shop-org/ai-rpg-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/ai-rpg-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
  <a href="https://github.com/mcp-tool-shop-org/ai-rpg-engine/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
  <a href="https://mcp-tool-shop-org.github.io/ai-rpg-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
</p>

# @ai-rpg-engine/content-schema

Esquemas de contenido y validadores para el motor de juegos de rol con IA. Permite definir habitaciones, entidades, diálogos, objetos y misiones como datos.

## Instalación

```bash
npm install @ai-rpg-engine/content-schema
```

## ¿Qué incluye?

- **Esquemas de habitación:** Zonas con salidas, propiedades y estado ambiental.
- **Esquemas de entidad:** Definiciones de personajes no jugables (PNJs), criaturas y personajes del jugador.
- **Esquemas de diálogo:** Árboles de diálogo basados en grafos, con condiciones y efectos.
- **Esquemas de objeto:** Equipamiento, consumibles, objetos de misión con modificadores de estadísticas.
- **Cargador de paquetes de contenido:** Valida y carga paquetes de contenido en formato JSON/TypeScript.
- **Esquemas de habilidad:** Definiciones de habilidades, definiciones de estados y validación de paquetes con advertencias sobre el equilibrio.
- **Validadores de esquema:** Validación en tiempo de ejecución con mensajes de error estructurados.

## Uso

```typescript
import { loadContent, validateGameContent, toJsonSchema } from '@ai-rpg-engine/content-schema';

const result = loadContent(myContentData);
if (!result.ok) {
  console.error(result.errors);
}

const refs = validateGameContent(myContentData);
if (!refs.ok) {
  console.error(refs.errors);
}

const schema = toJsonSchema();
```

## Documentación

- [Archivos de contenido (Cap. 13)](https://mcp-tool-shop-org.github.io/ai-rpg-engine/handbook/13-content-files/) — creación de paquetes de contenido.
- [Manual](https://mcp-tool-shop-org.github.io/ai-rpg-engine/handbook/)
- [GitHub](https://github.com/mcp-tool-shop-org/ai-rpg-engine)

---

Creado por <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
