Sobre el proyecto

# Moon Moon es un framework ligero de servidor de juegos implementado con el modelo de actores en C++23. Un hilo de trabajo puede alojar uno o más actores (servicios) que se comunican a través de colas de mensajes. ## Características - **Multiplataforma**: Windows (VS2022 17.5+), Linux (GCC 13+), macOS (Clang 16+) - **Redes**: TCP, UDP/KCP, WebSockets, HTTP con rendimiento optimizado - **Scripting en Lua**: lógica impulsada por Lua con soporte de corrutinas asíncronas para sockets, temporizadores, comunicación entre servicios/procesos - **Clientes de bases de datos**: controladores asíncronos para Redis, PostgreSQL, MongoDB y MySQL - **Bibliotecas**: biblioteca JSON de Lua optimizada, Lua Protobuf, sistema de archivos de Lua, Lua zset para listas de clasificación - **Navegación**: integración de Recast Navigation - **Arquitectura simple**: código fuente conciso y fácil de entender - **Planificación basada en ASIO** ## Inicio rápido ```shell # Ejecutar pruebas ./moon example/test/main_test.lua # Ejecutar scripts de ejemplo ./moon example/example_timer.lua ./moon example/main_game.lua ``` ## Compilación 1. Instalar un compilador de C++23 (VS2022 17.5+, GCC 13+ o Clang 16+) 2. Instalar [premake5](https://premake.github.io/download) 3. Clonar el repositorio 4. Compilar: `premake5 build --release` 5. Ejecutar: `premake5 run --release example/send_benchmark.lua` ## Comunidad - [Gitter](https://gitter.im/undefined/community) - [Wiki/Documentación](https://github.com/sniper00/moon/wiki) - Grupo de QQ: 543833695 ## Extensiones Bibliotecas adicionales disponibles en https://github.com/sniper00/lrust ## Demo [MoonDemo](https://github.com/sniper00/MoonDemo.git) ## Casos de uso Los juegos creados con Moon incluyen *Age of Kita* y *战神遗迹* (War God Ruins). ## Proyectos relacionados - [NoahGameFrame](https://github.com/ketoo/NoahGameFrame)