Sobre el proyecto
Luban es una solución de configuración para juegos, diseñada para cubrir las necesidades del flujo de trabajo de configuración en proyectos desde pequeños hasta muy grandes. El proyecto está bajo licencia MIT, dirigido principalmente a diseñadores y programadores de juegos, para estandarizar la definición, validación y generación de código/datos de configuración.
Capacidades principales:
- Formatos de datos fuente: admite la familia Excel (csv, tsv, xls, xlsx, xlsm), json, xml, yaml, lua, etc.
- Formatos de exportación: puede generar formatos de datos como binary, json, bson, xml, lua, yaml, etc.
- Sistema de tipos: admite estructuras comunes de listas de filas y herencia de tipos OOP, para expresar datos complejos de GamePlay como árboles de comportamiento, habilidades, tramas, mazmorras, etc.
- Generación de código: soporte integrado para C#, Java, Go, C++, Lua, Python, JavaScript, TypeScript, Rust, PHP, Erlang, Godot, etc., y extensible a otros lenguajes mediante esquemas de mensajes como protobuf.
- Esquemas de mensajes: admite protobuf (schema + binary + json), flatbuffers (schema + json), msgpack (binary).
- Validación de datos: proporciona verificación de referencias ref, verificación de rutas de recursos path, verificación de rangos range, etc.
- Soporte de localización.
- Motores y plataformas: admite Unity, Unreal, Cocos2x, Godot, WeChat Mini Games, etc., y puede ejecutarse en Windows, Linux y Mac.
- Soluciones de actualización en caliente: admite hybridclr, ilruntime, {x,t,s}lua, puerts, etc.
- El código generado no llama a interfaces de reflexión, compatible con herramientas de ofuscación y refuerzo como Obfuz, Obfuscator, Confuser, .Net Refactor, etc.
- El pipeline de generación es modular y pluginizado, facilitando el desarrollo secundario y la personalización.
AI Native (desde 5.0.0): para AI Agent / IDE, proporciona Skills oficiales, schema legible por máquina y errores, CLI `Luban.Agent` (validación / consulta de tablas / describe), servidor MCP `Luban.Mcp`, y opciones como `-c schema-json`, `--errorFormat json`. Los recursos de IA en el repositorio están en el directorio `ai/`.
Desarrollo y pruebas: el repositorio principal incluye pruebas de integración xUnit, sin dependencia de luban_examples externo, ejecutable con `dotnet test src/Luban.Tests/Luban.Tests.csproj`; los fixtures y salidas esperadas están en `tests/fixtures/` y `tests/golden/`, y se pueden actualizar con `tests/scripts/update-goldens.ps1` o `.sh`, o configurando la variable de entorno `LUBAN_UPDATE_GOLDEN=1` para actualizar en el lugar.
Documentación y ejemplos: la documentación oficial y la guía de inicio rápido están en datable.cn, y los proyectos de ejemplo están en el repositorio luban_examples.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.