diff --git a/README.md b/README.md index 563abc7..ce0b5f0 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Plataforma de preservacion de videojuegos con documentales interactivos. Servido | **MapleStory 2 - Web** | En linea | 4000 | ~70 MB | | **MapleStory 2 - Game Ch0** | En linea | 20002/21002 | ~341 MB | | **MapleStory 2 - MySQL** | En linea | 3307 | ~733 MB | -| **Minecraft FTB Infinity** | En linea | 25565 | ~3.5 GB | +| **Minecraft FTB Evolution** | En linea | 25565 | ~3.5 GB | **Total**: ~5.6 GB RAM / 40 GB disponibles | 31 GB disco / 96 GB disponibles @@ -34,11 +34,11 @@ Plataforma de preservacion de videojuegos con documentales interactivos. Servido - **Cliente**: MapleStory 2 Global Client + XML Patches - **Documental**: "MapleStory 2: El Mundo Que Construimos Juntos" (7 capitulos) -### Minecraft: FTB Infinity Evolved -- **Servidor**: [itzg/minecraft-server](https://github.com/itzg/docker-minecraft-server) (Java 8) +### Minecraft: FTB Evolution +- **Servidor**: [itzg/minecraft-server](https://github.com/itzg/docker-minecraft-server) (Java 21) - **Conexion**: `192.168.10.234:25565` -- **Cliente**: FTB App o launcher compatible con FTB Infinity Evolved v3.1.0 -- **Modpack**: 175+ mods, Minecraft 1.7.10 + Forge 10.13.4.1614 +- **Cliente**: FTB App o launcher compatible con FTB Evolution v1.29.1 +- **Modpack**: 200+ mods, Minecraft 1.21.1 + NeoForge 21.1.218 ## Arquitectura @@ -182,7 +182,7 @@ docker compose -f docker-compose.maple2.yml up -d |------|--------|--------|------------| | `fusionfall` | FusionFall | Online | 7 capitulos | | `maplestory2` | MapleStory 2 | Online | 7 capitulos | -| `minecraft-ftb-infinity` | Minecraft: FTB Infinity Evolved | Online | Pendiente | +| `minecraft-ftb-evolution` | Minecraft: FTB Evolution | Online | Pendiente | ### Documentales | Juego | Titulo | Capitulos | diff --git a/docker/docker-compose.dev.yml b/docker/docker-compose.dev.yml index f74bc51..2d402bc 100644 --- a/docker/docker-compose.dev.yml +++ b/docker/docker-compose.dev.yml @@ -82,25 +82,22 @@ services: - openfusion_data:/usr/src/app/data minecraft-ftb: - image: itzg/minecraft-server:java8 + image: itzg/minecraft-server:java21 restart: unless-stopped container_name: minecraft-ftb environment: EULA: "TRUE" TYPE: FTBA - FTB_MODPACK_ID: 23 - FTB_MODPACK_VERSION_ID: 99 + FTB_MODPACK_ID: 125 + FTB_MODPACK_VERSION_ID: 100181 MEMORY: 6G MAX_MEMORY: 6G - MOTD: "Project Afterlife - FTB Infinity Evolved" + MOTD: "Project Afterlife - FTB Evolution" DIFFICULTY: normal MAX_PLAYERS: 20 VIEW_DISTANCE: 10 ENABLE_COMMAND_BLOCK: "true" - JVM_DD_OPTS: "fml.queryResult=confirm" - JVM_XX_OPTS: "-XX:+UseParNewGC -XX:+CMSIncrementalPacing -XX:+CMSClassUnloadingEnabled -XX:ParallelGCThreads=2 -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10" - # Fix: Forge 1.7.10 manifest expects versioned jar name on classpath - PRE_LAUNCH_CMD: "cp -n /data/minecraft_server.jar /data/minecraft_server.1.7.10.jar 2>/dev/null; true" + MAX_TICK_TIME: -1 ports: - "25565:25565" volumes: diff --git a/docs/architecture.md b/docs/architecture.md index 3460753..edc4233 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -127,7 +127,7 @@ MinIO corre como servicio S3-compatible para almacenar: | Archivo | Proposito | Servicios | |---------|----------|-----------| -| `docker-compose.dev.yml` | Desarrollo local | PG, MinIO, CMS, Web, OpenFusion, Minecraft FTB | +| `docker-compose.dev.yml` | Desarrollo local | PG, MinIO, CMS, Web, OpenFusion, Minecraft FTB Evolution | | `docker-compose.maple2.yml` | MapleStory 2 | MySQL, World, Login, Game, Web, File-Ingest | | `docker-compose.yml` | Produccion | PG, MinIO, CMS, Web, Nginx, Certbot | diff --git a/docs/cms-content.md b/docs/cms-content.md index 719e476..044b897 100644 --- a/docs/cms-content.md +++ b/docs/cms-content.md @@ -72,7 +72,7 @@ Las **relaciones** (`_lnk` tables) conectan las filas del mismo estado. Un juego |------|-------------|--------|-------|---------|----------|--------| | fusionfall | sx17hshy2d... | FusionFall | MMORPG | 2009 | 2013 | online | | maplestory2 | ms2maple2d... | MapleStory 2 | MMORPG | 2015 | 2020 | online | -| minecraft-ftb-infinity | mcftbinfd... | Minecraft: FTB Infinity Evolved | Sandbox | 2011 | - | online | +| minecraft-ftb-evolution | mcftbevol... | Minecraft: FTB Evolution | Sandbox | 2011 | - | online | ### Documentales (2) diff --git a/docs/deployment.md b/docs/deployment.md index 069b8a2..f212f75 100644 --- a/docs/deployment.md +++ b/docs/deployment.md @@ -45,7 +45,7 @@ docker ps | 21002 | MapleStory 2 Game gRPC | | 3307 | MySQL (MapleStory 2) | | 4000 | MapleStory 2 Web | -| 25565 | Minecraft FTB | +| 25565 | Minecraft FTB Evolution | ### Detener servicios ```bash diff --git a/docs/game-servers.md b/docs/game-servers.md index d1c507e..bf2073a 100644 --- a/docs/game-servers.md +++ b/docs/game-servers.md @@ -136,18 +136,18 @@ Para agregar un segundo canal, duplicar el servicio `maple2-game-ch0` en el comp --- -## Minecraft: FTB Infinity Evolved +## Minecraft: FTB Evolution ### Resumen | Dato | Valor | |------|-------| -| Imagen Docker | itzg/minecraft-server:java8 | -| Modpack | FTB Infinity Evolved v3.1.0 | -| Minecraft | 1.7.10 | -| Forge | 10.13.4.1614 | +| Imagen Docker | itzg/minecraft-server:java21 | +| Modpack | FTB Evolution v1.29.1 | +| Minecraft | 1.21.1 | +| NeoForge | 21.1.218 | | Puerto | 25565 | | RAM | ~3.5 GB (6 GB JVM heap, 8 GB limite contenedor) | -| Mods | ~175 | +| Mods | 200+ | ### Configuracion El servidor se configura via variables de entorno en `docker-compose.dev.yml`: @@ -156,46 +156,36 @@ El servidor se configura via variables de entorno en `docker-compose.dev.yml`: environment: EULA: "TRUE" TYPE: FTBA - FTB_MODPACK_ID: 23 - FTB_MODPACK_VERSION_ID: 99 + FTB_MODPACK_ID: 125 + FTB_MODPACK_VERSION_ID: 100181 MEMORY: 6G MAX_MEMORY: 6G - MOTD: "Project Afterlife - FTB Infinity Evolved" + MOTD: "Project Afterlife - FTB Evolution" DIFFICULTY: normal MAX_PLAYERS: 20 VIEW_DISTANCE: 10 - JVM_DD_OPTS: "fml.queryResult=confirm" - PRE_LAUNCH_CMD: "cp -n /data/minecraft_server.jar /data/minecraft_server.1.7.10.jar 2>/dev/null; true" + ENABLE_COMMAND_BLOCK: "true" ``` -### Fix Conocido: Classpath de Forge 1.7.10 -El MANIFEST.MF del jar de Forge 1.7.10 referencia `minecraft_server.1.7.10.jar` en su Class-Path, pero la imagen itzg renombra el archivo a `minecraft_server.jar`. Sin el fix, Forge no encuentra log4j2 y crashea con `NoClassDefFoundError`. - -**Solucion**: El `PRE_LAUNCH_CMD` copia el archivo con el nombre correcto antes de cada inicio. Si recreas el volumen, este fix se aplica automaticamente. - ### Primer inicio El primer inicio toma 5-10 minutos porque: 1. Descarga el FTB App installer -2. Descarga los ~175 mods del modpack -3. Instala Forge 10.13.4.1614 +2. Descarga los 200+ mods del modpack +3. Instala NeoForge 21.1.218 4. Genera el mundo ### Conexion de cliente 1. Instalar [FTB App](https://www.feed-the-beast.com/app), MultiMC, ATLauncher, o Prism Launcher -2. Instalar modpack **FTB Infinity Evolved** version 3.1.0 +2. Instalar modpack **FTB Evolution** version 1.29.1 3. Multiplayer > Add Server: `192.168.10.234:25565` -### Modo Experto -Para activar el modo experto (recetas mas complejas): -``` -/ftb_mode set expert -``` -Ejecutar desde la consola del servidor o como operador in-game. +### Fix: Watchdog crash en primer inicio +Con 200+ mods, el mod Hexerei tarda mas de 60 segundos generando recetas al iniciar, lo que activa el watchdog de Minecraft. Se resuelve con `MAX_TICK_TIME: -1` en las variables de entorno del compose. ### Troubleshooting -- **"NoClassDefFoundError: org/apache/logging/log4j/Level"**: El fix de classpath no se aplico. Ejecutar manualmente: `docker exec minecraft-ftb cp /data/minecraft_server.jar /data/minecraft_server.1.7.10.jar` y reiniciar - **Server lag**: Reducir `VIEW_DISTANCE` de 10 a 8, o aumentar `MEMORY` si hay RAM disponible -- **Pastebin 403**: Error inocuo — Pastebin bloquea requests automaticos. Solo afecta a los badges de FTB Utilities, no a la funcionalidad del juego +- **NeoForge install fails**: Verificar que la imagen Docker es `java21` (no java8 ni java17) +- **Watchdog crash (single tick took 60s)**: Verificar que `MAX_TICK_TIME: -1` esta configurado ---