MMORPGVT es un proyecto que combina elementos de juegos de rol multijugador masivos en línea (MMORPG) con integraciones personalizadas para VTubers. Proporciona herramientas y funciones para enriquecer la experiencia de streaming con mecánicas de juego y características interactivas.
Este proyecto permite a los creadores de contenido:
- Crear mecánicas de juego en tiempo real para su audiencia, como:
- Batallas interactivas: Los espectadores pueden usar comandos de chat para participar en combates, apoyar a sus personajes o realizar ataques especiales.
- Exploración en tiempo real: Genera mapas donde los espectadores deciden qué camino tomar o qué acciones realizar.
- Economía virtual: Gestión de recursos como oro o puntos de experiencia, que los espectadores pueden ganar y gastar a través de interacciones en el chat.
- Misiones colaborativas: Los espectadores se agrupan para completar tareas específicas, desbloqueando recompensas o contenido exclusivo.
- Conectar con plataformas populares como Twitch.
- Personalizar interacciones para mantener a los espectadores comprometidos.
Sigue estos pasos para instalar el proyecto en tu sistema:
-
Clona el repositorio:
git clone https://github.com/madkoding/mmorpgvt.git cd mmorpgvt -
Instala WSL (Windows Subsystem for Linux): Si estás en Windows y deseas usar un entorno Linux para el desarrollo:
- Abre PowerShell como administrador y ejecuta:
wsl --install
- Esto instalará la versión por defecto de Ubuntu. Reinicia tu sistema si es necesario.
- Una vez instalado, abre la terminal de Ubuntu desde el Menú Inicio.
- Actualiza los paquetes de Ubuntu:
sudo apt update && sudo apt upgrade - Asegúrate de tener instalado Git y Node.js en WSL siguiendo los pasos a continuación.
- Abre PowerShell como administrador y ejecuta:
-
Instala Node.js con NVM: Si no tienes Node.js instalado, puedes usar NVM (Node Version Manager) para gestionar diferentes versiones de Node.js:
- Instala NVM siguiendo las instrucciones de su repositorio oficial.
- Una vez instalado, ejecuta:
nvm install 16 nvm use 16
- Asegúrate de que está activo con:
node -v
-
Instala las dependencias: Asegúrate de tener Node.js 14 o superior. Instala los requerimientos ejecutando:
npm install
-
Configura las variables de entorno: Renombra el archivo
.env.local.examplea.env.localy edítalo con los valores correspondientes para tu entornoPuedes configurar las siguientes variables de ejemplo para Firebase:
NEXT_PUBLIC_FIREBASE_API_KEY=tu_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=tu_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=tu_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=tu_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=tu_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=tu_app_id NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=tu_measurement_id
-
Ejecuta la aplicación:
npm run dev
Esto iniciará el servidor de desarrollo en
http://localhost:3000.
El archivo package.json incluye varios scripts para gestionar y ejecutar tareas en el proyecto. A continuación, se describen los comandos disponibles:
npm run dev: Inicia el servidor de desarrollo de Next.js para ver los cambios en tiempo real.npm run build: Genera una versión optimizada de la aplicación lista para producción.npm run start: Inicia el servidor de producción después de haber ejecutadonpm run build.npm run lint: Ejecuta ESLint para analizar el código en busca de problemas de estilo y errores.npm run format: Aplica Prettier para formatear el código automáticamente.npm run test: Ejecuta las pruebas unitarias utilizando Jest con cobertura.
El proyecto incluye un conjunto de pruebas para garantizar la estabilidad y funcionalidad del sistema. Las pruebas se ejecutan utilizando Jest, un framework popular para realizar tests en proyectos de JavaScript y React. Para correr las pruebas en este proyecto, utiliza el siguiente comando:
npm run testEste comando ejecutará todas las pruebas y generará un informe de cobertura en caso de estar configurado. Actualmente, se evalúan aspectos clave del proyecto, como:
- Validación de componentes: Asegura que los componentes principales de la aplicación funcionan como se espera.
- Integraciones críticas: Comprueba que la integración con servicios externos como Firebase se realiza correctamente.
- Lógica del juego: Valida las mecánicas principales del juego, como la unión de jugadores y las interacciones básicas.
Para más información sobre cómo configurar o extender las pruebas, consulta la documentación oficial de Jest o revisa los archivos en la carpeta __tests__ del proyecto.
¡Gracias por tu interés en contribuir! Este proyecto utiliza Git para el control de versiones y GitHub para coordinar las colaboraciones. Sigue estos pasos para participar:
Primero, necesitas una copia local del proyecto. Si no tienes Git instalado, descárgalo aquí.
git clone https://github.com/madkoding/mmorpgvt.gitEsto creará una carpeta llamada mmorpgvt en tu máquina.
Nunca trabajes directamente en la rama principal (main). Crea una nueva rama con un nombre descriptivo que indique los cambios que harás:
git checkout -b nombre-de-mi-ramaPor ejemplo:
git checkout -b agregar-documentacionRealiza los cambios necesarios en el código o la documentación. Asegúrate de seguir las guías de estilo del proyecto.
Una vez que hayas terminado, guarda un registro de los cambios realizados:
git add .
git commit -m "Descripción breve de los cambios realizados"Por ejemplo:
git commit -m "Añadí documentación para contribuir con Git"Antes de enviar tus cambios, sincroniza tu copia local con la versión más reciente del repositorio principal:
git fetch origin
git merge origin/mainEnvía tu rama al repositorio remoto para que otros puedan revisarla:
git push origin nombre-de-mi-ramaVe al repositorio en GitHub y crea un "Pull Request" desde tu rama. Describe los cambios que realizaste y qué problema resuelve tu contribución.
Un miembro del equipo revisará tu Pull Request. Si es necesario, realiza los ajustes que se te soliciten y sigue trabajando en tu rama. Los nuevos cambios se añadirán automáticamente a tu Pull Request.
Si tienes preguntas o dudas, utiliza la sección de Issues para comunicarte.