Desarrollo de una partida de Extractioncraft
Esta página documenta lo que ocurre desde la creación de una partida hasta la eliminación de su mundo instanciado, incluidos los temporizadores, las reglas de extracción y la forma en que los jugadores pierden su equipo.
Crear la partida
/exc createMatch <contentPackage.yml> entrega el betterStructuresModulesContainerName del paquete a BetterStructures, que genera un nuevo mundo instanciado. Antes, el comando comprueba que BetterStructures, EliteMobs y FreeMinecraftModels estén cargados, que el jugador no esté ya en una partida ni esperando a una, y que el paquete y su generador de módulos estén habilitados.
Mientras se genera el mundo, el jugador queda reservado para esta partida y no puede unirse a otra ni crearla. La generación se cancela, y se elimina el mundo a medio construir, si tarda más de 15 minutos, si el jugador se desconecta o ejecuta /exc leave, o si alguno de los plugins complementarios deja de estar disponible. Al terminar la generación:
- Se crea un
ExtractionMatchpara ese mundo, inicialmente en estado de espera. - El jugador que ejecutó el comando se añade a la partida y, en el tick siguiente, se teletransporta a un punto de aparición elegido al azar en el nuevo mundo. Si el mapa no tiene ningún punto de aparición, la partida se cancela.
Todo jugador que entra pasa al modo Aventura. Su ubicación y su modo de juego anteriores se guardan antes del cambio y se restauran al salir. Los jugadores conservan su propio inventario en la partida; no se aparta nada.
No hay cola ni emparejamiento. La partida existe porque alguien la ha creado.
Esperar a los jugadores
/exc createMatch es la única forma integrada de entrar en una partida. Extractioncraft no registra ningún subcomando join ni de espectador, así que normalmente cada partida contiene exactamente un jugador: su creador. Otros plugins pueden admitir jugadores o espectadores mediante la API para desarrolladores; las reglas siguientes se les aplican.
Mientras la partida está en espera:
- La admisión permite jugadores hasta el
maxPlayersdel paquete (8 en todos los paquetes prediseñados de Kobold Mines), rechazando las entradas a una instancia llena confailedToJoinOngoingMatchAsPlayerInstanceIsFull. - Una vez que la partida está en cuenta atrás o en curso, nadie más puede entrar como jugador. Los jugadores que llegan tarde reciben
failedToJoinOngoingMatchAsPlayerMessage. - Solo se aceptan espectadores cuando el paquete de contenido establece
spectatable: true. Todos los paquetes prediseñados lo dejan enfalse. - Salir ahora no tiene coste: la regla de eliminación de objetos solo se aplica cuando la partida está en curso.
Inicio
Cualquier jugador de la partida puede ejecutar /exc start.
- Si hay menos de
minPlayers, se rechaza el inicio y se avisa a todos mediantematchFailedToStartNotEnoughPlayersMessage, sustituyendo$amountpor la cantidad necesaria. - En caso contrario, la cuenta atrás muestra
2,1y después0a intervalos de un segundo. Termina en la tercera actualización, unos dos segundos después de la primera. - Si el número de jugadores cae por debajo de
minPlayersdurante la cuenta atrás, la partida se interrumpe y termina por completo. - Volver a ejecutar
/exc startuna vez iniciada la cuenta atrás no hace nada.
Al terminar la cuenta atrás, la partida comienza. Se desbloquean las interacciones físicas con redstone, aparecen los jefes instanciados del mapa, se colocan cofres y barriles, y arrancan el temporizador de 15 minutos, la contracción del borde del mundo y la brújula de la barra de jefe. Al mismo tiempo se colocan los puntos de extracción decorativos, aún inutilizables.
Temporizadores
| Temporizador | Duración | Efecto |
|---|---|---|
| Temporizador de partida | 15 minutos | Aparece como Timer MM:SS en el marcador lateral Extractioncraft, actualizado cada segundo. Al llegar a 00:00, la partida termina. |
| Desbloqueo de puntos de extracción | 1 minuto tras el inicio | Se coloca la versión utilizable de cada punto de extracción, incluida su palanca. |
| Plazo de extracción | 20 segundos | Comienza al accionar la palanca de un punto de extracción. |
| Apertura de contenedores | 3 segundos | Tiempo que debes permanecer quieto para saquear un cofre o un barril. |
Cuando el temporizador de partida llega a 00:00, la partida termina y todos los jugadores que sigan dentro salen con la extracción fallida. Consulta muerte y pérdida de objetos.
El borde del mundo
El borde está centrado en el centro del mapa generado y empieza con el mismo ancho que el mapa. BetterStructures calcula ese ancho como (2 × radius − 1) × moduleSizeXZ a partir del generador de módulos, lo que da 384 bloques en los mapas prediseñados de Kobold Mines. Cada segundo, el borde se ajusta al ancho inicial escalado según el tiempo restante, así que se contrae de forma constante y llega a 1 bloque cuando se agota el temporizador de 15 minutos.
La distancia de aviso se establece en el ancho actual del borde menos 50, sin bajar nunca de 0. Minecraft interpreta esa distancia como el número de bloques desde el borde a partir del cual se tiñe la pantalla, así que la superposición roja de aviso cubre todo el mapa hasta que el borde mide menos de 100 bloques de ancho; a partir de ahí solo se muestra cerca del borde.
Como las zonas más difíciles están en el centro del mapa (consulta botín al matar mobs), la contracción del borde empuja a los jugadores de forma constante hacia la parte más difícil y con mejores recompensas. El daño del borde sigue aplicándose, y el daño letal del borde expulsa al jugador mediante la ruta normal de muerte de la partida.
Extraerse
- Encuentra un punto de extracción. La barra de jefe de la parte superior funciona como una franja de brújula: muestra un marcador
⦿por cada punto de extracción situado a un máximo de 90° de la dirección en que miras, con unos 3° por carácter. La barra aparece al comenzar la partida, pero permanece vacía durante el primer minuto; solo dibuja marcadores de los puntos utilizables, que no se colocan hasta que se activa el temporizador de desbloqueo. - Haz clic derecho en la palanca del punto de extracción. La palanca se retira, todos los jugadores a menos de 10 bloques reciben el aviso "You have triggered an exit!" y se abre un único plazo de extracción de 20 segundos para ese punto.
- Permanece dentro de la zona de extracción: el cubo de 7 × 7 × 7 bloques centrado en el bloque del punto de extracción. Mientras estés dentro verás
Extracting! in N seconds!. - Al salir de la zona aparece
Extraction cancelled!, pero el plazo sigue corriendo. Volver a entrar antes de que termine sigue contando. - Al terminar el plazo, todos los que estén dentro se extraen a la vez:
Victory / Extraction successful!. Salen de la partida y conservan todo lo que llevan.
Cada punto de extracción abre un solo plazo por partida. El manejador acepta una palanca a menos de 10 bloques de un punto de extracción que todavía no se haya usado. Una palanca cerca de un punto ya usado no hace nada especial y se acciona como una palanca normal.
Muerte y pérdida de objetos
Las partidas de Extractioncraft dan una sola vida a cada jugador y no tienen reaparición ni cofres de muerte.
- El daño que mataría a un jugador se cancela por completo. En su lugar, el jugador sale de la partida. Durante una partida en curso, antes se eliminan sus efectos de poción, el fuego, la congelación y la distancia de caída.
- Al salir, recupera su modo de juego guardado y se teletransporta al lugar en el que estaba antes de entrar. La salud no se restaura, salvo para los jugadores que siguen dentro cuando termina la partida.
- Al caer por debajo del fondo del mundo, el jugador vuelve al último bloque que pisó, hasta tres veces seguidas. Después, el vacío puede matarlo como cualquier otro daño.
La forma en que un jugador sale decide qué ocurre con sus objetos una vez que la partida está en curso:
| Forma de salida | ¿Conserva el botín? |
|---|---|
| Extracción en un punto de extracción | Sí, vinculado |
Apagado del servidor o /exc reload | Sí, vinculado |
Muerte, /exc leave, /exc quit o desconexión durante una partida en curso | No, con la configuración predeterminada |
| Seguir dentro cuando se agota el temporizador de 15 minutos | No, con la configuración predeterminada |
| Salida durante la espera o la cuenta atrás | Sí, sin cambios |
"No" vacía todo el inventario, el objeto del cursor y la cuadrícula de crafteo cuando deleteItemsOnFailToExtract es true (el valor predeterminado). Con false, esas salidas vinculan los objetos en su lugar. La vinculación asocia al jugador que sale todos los objetos no vinculados mientras el encantamiento Soulbind de EliteMobs está habilitado; los objetos ya vinculados conservan su propietario.
Los jugadores que siguen dentro cuando una cuenta atrás se interrumpe por no alcanzar minPlayers salen al terminar la partida y conservan sus objetos intactos, porque la partida nunca llegó a iniciarse. La pérdida de objetos solo afecta a los jugadores que estaban en la partida cuando esta se inició.
Protecciones del mundo
El mundo instanciado está protegido durante toda su existencia:
- Los jugadores no pueden romper ni colocar bloques, usar polvo de hueso, vaciar cubos, editar carteles ni dañar el terreno. Se bloquean las explosiones, el fuego, el flujo de líquidos, la descomposición de hojas y la aparición de mobs normales, y se desactiva el planeo con élitros.
- Los cofres, barriles y demás contenedores no se pueden abrir; los contenedores de la partida se saquean como se describe en botín de contenedores. Las puertas, trampillas y puertas de valla no se pueden usar. Los marcos, soportes para armaduras y macetas están protegidos.
- Las interacciones físicas con redstone, como las placas de presión, se bloquean hasta que la partida comienza. Este ajuste no bloquea todos los tipos de interacción con redstone.
- Se bloquea el PvP cuando el paquete de contenido establece
pvpEnabled: false. - Los jugadores de la partida no pueden teletransportarse por ningún medio que no haya iniciado la propia partida, incluidos comandos, perlas de ender y frutas chorus. Los demás jugadores no pueden teletransportarse al mundo de la partida salvo que tengan
extractioncraft.match.bypass(por defecto: op). - Mientras la partida está en cuenta atrás o en curso, cualquier otra persona que se encuentre en su mundo sin
extractioncraft.match.bypassse envía al punto de aparición del mundo principal.
Los administradores pueden usar /exc protection bypass para las comprobaciones de bloques e interacciones que consultan el indicador de omisión del jugador. No omite las restricciones de teletransporte de la partida, la prohibición de PvP ni todas las reglas del mundo.
Fin de la partida
La partida termina cuando sale su último jugador activo (tanto si se ha extraído como si ha muerto, ha salido o se ha desconectado), cuando se agota el temporizador de 15 minutos o cuando una cuenta atrás deja de tener el mínimo de jugadores. Todos los que siguen dentro se curan y salen de la partida, Extractioncraft detiene las tareas de borde, brújula, marcador y partículas de la partida, y cualquier otra persona que quede en el mundo, como miembros del staff con el permiso de omisión, se envía al punto de aparición del mundo principal.
Después, el final de la partida solicita la eliminación permanente de su mundo temporal. Se omite la eliminación si no se puede descargar el mundo de memoria; mientras el plugin está habilitado, la eliminación de la carpeta espera cinco segundos y comprueba que el mundo no se haya vuelto a cargar.
Las partidas también se desmontan al deshabilitar el plugin, lo que incluye /exc reload y el apagado del servidor. Las partidas que todavía se están generando se cancelan, y los jugadores de las partidas en curso conservan sus objetos como se ha descrito antes.