OverwolfSpire Codex ya está en Overwolf. Saber más →

Acerca de Spire Codex

Spire Codex es una base de datos completa de Slay the Spire 2, abreviado StS2, creada aplicando ingeniería inversa a los archivos del juego. Cada carta, reliquia, monstruo, poción, evento y poder de este sitio se extrajo directamente del código fuente y de los datos de localización del juego.

El proyecto nació de la curiosidad por saber cómo estaba hecho StS2 y creció hasta convertirse en una API y un sitio web completos. El objetivo es ofrecer la referencia detallada y consultable que la comunidad de Spire merece.

Si quieres participar, no dudes en abrir un PR en GitHub. Este repositorio está aguas abajo de donde se aloja el proyecto, así que puede tardar un poco en fusionarse tu PR. El proyecto tiene una API abierta de uso gratuito y que puedes alojar tú mismo. Y si quieres charlar sobre el proyecto, pásate por el Discord , donde publico novedades y hablo del proyecto.

Muchas gracias a todos los que apoyan el proyecto; consulta la página de agradecimientos para ver a los patrocinadores de Ko-fi y colaboradores de la comunidad.

Detrás del Codex

¡Hola! Soy Peter, tecnólogo autodidacta, papá genial, esposo buena onda y manitas crónico. Llegué a la ingeniería de software y la tecnología por un camino poco tradicional, construyendo cosas desde cero por pura curiosidad y pasión. No lo cambiaría por nada. He tenido bastantes proyectos (DPC, una comunidad de Discord con más de 10 000 profesionales de DevOps y plataformas, y Genshin News, un servicio de webhooks con las últimas noticias de Genshin Impact), pero Spire Codex es mi proyecto más grande y del que más orgulloso estoy.

Apoyar a Spire Codex

Spire Codex empezó como un proyecto personal nacido del amor por Slay the Spire y del deseo de crear herramientas para desarrolladores útiles y rápidas para la comunidad gamer.

Mantener bases de datos con mucho tráfico y una infraestructura de API rápida tiene costos reales de servidor y de tiempo. Si Spire Codex te salvó de una derrota, te ayudó a planear una partida o impulsó tu propio proyecto, ¡considera dejar una propina o hacerte miembro! ¡Gracias por tu apoyo, sea económico o no!

Qué contiene

Cómo funciona

Slay the Spire 2 está hecho con Godot 4, pero toda la lógica del juego vive en una DLL de C#/.NET 8. El flujo de datos:

1
Extracción del PCK
GDRE Tools extrae el archivo .pck de Godot, imágenes, animaciones Spine y datos de localización (~9.947 archivos)
2
Descompilación de la DLL
ILSpy descompila sts2.dll en ~3.300 archivos fuente de C# con todos los modelos del juego
3
Análisis de datos
17 analizadores en Python extraen datos estructurados del código C# descompilado y del JSON de localización
4
Renderizado Spine
Un renderizador headless en Node.js compone animaciones esqueléticas en PNG de retrato de 512×512 (más de 130 sprites)
5
API + Frontend
FastAPI sirve los datos analizados como una API REST con más de 20 endpoints; el frontend en Next.js la consume

Funciones

Páginas de detalle
Páginas enlazadas de cartas, personajes, reliquias, monstruos y pociones con todas las estadísticas
Búsqueda global
Pulsa . en cualquier lugar para buscar al instante en todas las categorías
Renderizado de texto enriquecido
Etiquetas BBCode del juego renderizadas con colores, animaciones e iconos en línea
Diálogos de personajes
Árboles de conversación de PNJ y frases de personajes de la localización del juego
Renders Spine
Más de 130 sprites de monstruos y personajes renderizados a partir de animaciones esqueléticas
API REST
API completa con filtrado, búsqueda y documentación Swagger para tus propios proyectos
Seguimiento de cambios
Diferencias a nivel de campo entre actualizaciones del juego en todas las categorías
Descarga de imágenes
Explora y descarga todo el arte del juego extraído por categoría

Tecnologías

Backend
Python, FastAPI, Pydantic
Frontend
Next.js, TypeScript, Tailwind
Renderizado
Node.js, Playwright, spine-webgl
Infraestructura
Docker, Forgejo CI

Este proyecto tiene fines educativos. Todos los datos del juego pertenecen a Mega Crit Games. No debe usarse para recompilar ni redistribuir el juego.