Changelog
1.2
- Dungeon Mob Spawn:
lootTable,spawnParticle, adaptación al número de jugadores (perExtraPlayer,maxCount,playerCountSource),maxSimultaneous,wavesy los disparadoresonWaveClearedyonCleared. - Nueva entrada Dungeon Loot Table: una tabla de botín compartida por cofres y mobs.
- Dungeon Loot Chest:
lootTableRefyadditionalLocationspara colocar varios cofres desde una sola entrada (se ignora en una mazmorra generada). - Loot Chest Trigger:
particleEffect, con ejes X, Y y Z separados y un centro. Los cuatro campostriggerParticleson heredados: solo se aplican siparticleEffectno nombra ninguna partícula. - Nuevo evento On Dungeon Mobs Cleared.
- Nueva entrada Dungeon Restrictions, vinculada con
restrictionsa una Dungeon Instance o una Dungeon Room: sin elytra, barco ni vagoneta, perla de Ender, fruta de chorus ni tridente con propulsión, comandos bloqueados, mensaje de rechazo y permiso de exención. - Requiere GUI (OmniGUI) 0.20. La nueva Dungeon Leaderboard Source usa el contrato de fuente de clasificación de GUI 0.20: con un GUI más antiguo, la clasificación de Dungeon no se carga. Actualiza primero GUI.
- Ruptura de API para los addons:
DungeonArtifactData,DungeonStatsyPlayerDungeonStatspasan al paquetebtcrenaud.dungeons.core, yDungeonArtifactEntry.getPlayerStatsyDungeonArtifactEntry.updatecambian de firma. Un addon compilado contra Dungeon 1.1.x debe recompilarse. Las mazmorras creadas en el panel web no se ven afectadas. - Estadísticas: 22 estadísticas por jugador (daño infligido y recibido, bajas de mobs, muertes, tiempo jugado, salas y oleadas despejadas, récords, finalizaciones en solitario y sin morir...). Se cuentan durante la partida y se abonan una sola vez por miembro, por artifact, con un total entre varios artifacts. El daño es el que realmente quitó vida, limitado a la vida del objetivo.
- Dungeon Instance:
statsMobScopeelige qué mobs cuentan en las estadísticas,MARKED_ONLY(por defecto, los mobs creados por la partida) oANY_MOB_IN_RUN_WORLD. - Nuevo fact Player Dungeon Statistic, y los placeholders
dungeon_stat_<key>(con_rawpara el número sin formato),dungeon_total_<key>ydungeon_inst_<id>_<key>. Los snippetscontent.dungeon_stats.duration_formatycontent.dungeon_stats.missing_valuefijan cómo se escriben. - Nueva entrada Dungeon Leaderboard Source, para conectar al campo
sourcede una clasificación de GUI (GUI 0.20): artifacts,scope(LIFETIMEoCURRENT_RUN),rankBy,values,durationFormat,decimals,missingValueyunknownName. Tokens de fila:{value_<key>},{value_<key>_raw}y{score_raw}. - Dungeon Instance:
reconnectGrace(2 minutos por defecto). Un miembro que se desconecta conserva su sitio durante ese plazo y, si vuelve a tiempo, continúa con su barra lateral, sus ocultaciones y su modo de juego. Pasado el plazo, abandona la partida y vuelve a su punto de entrada al reconectarse. Consulta Desconexiones. - Dungeon Restrictions:
gameMode(opcional, por ejemploADVENTURE; el modo propio del jugador se devuelve al salir;CREATIVEySPECTATORdesactivan las estadísticas de combate),limitInteractionsconallowedInteractions(CHEST,TRAPPED_CHESTyBARRELpor defecto) yprotectedEntities(marcos, soportes para armadura, cuadros), ymessageRepeatDelay(2 segundos).limitInteractionstambién rechaza colocar bloques, cubos, vehículos, huevos generadores, fuego, polvo de hueso y usar herramientas sobre bloques. - Dungeon Restrictions: el impulso del tridente y la fruta de chorus se rechazan ahora desde el clic, no solo su efecto. Solo el permiso de exención exime a un jugador: un operador lo tiene mientras el nodo no esté explícitamente en
false. - Dungeon Category: los campos de ranura
unlockedLoreylockedLorepasan a llamarseunlockLoreylockLore. Las páginas guardadas con los nombres antiguos se siguen leyendo; si están ambos, gana el nuevo. - MMOProfiles: cuando el jugador elige un perfil, se vuelven a aplicar el regreso al punto de entrada y el modo de juego de origen.
- Correcciones:
runs_leftya no cuenta una muerte que saca al jugador de la partida (queda endeaths);waves_clearedsolo cuenta los grupos que definenwaves;%typewriter_dungeon_stat_current_health%muestra la vida actual durante una partida; el escritor de estadísticas ya no deja de guardar tras un error; una partida cerrada en una recarga porque ninguno de sus miembros está conectado cuenta el tiempo jugado de sus miembros ausentes. - No cambia nada en una mazmorra existente mientras no use estos campos. Para un cofre que aparece cuando todos los mobs han sido derrotados, consulta Entidades en las mazmorras.
1.1.1
- Paper 26.x: una partida en
WORLD_PER_RUNpodía fallar conThe server did not create world 'dungeon_classic_...'. La copia de la plantilla conservaba el ID de mundo de la plantilla (data/paper/metadata.dat), así que el servidor la rechazaba como duplicado. Ahora la copia recibe su propio ID.
1.1
- Versión pública de la renovación descrita abajo. Corrección desde la 1.0:
WORLD_PER_RUNahora copia un mundo plantilla guardado al estilo de Paper 26.x (dimensions/minecraft/<name>).
1.0
Es una reestructuración de la extensión, construida en torno a un modelo de partida. Consulta la nota de migración antes de actualizar un servidor que usaba 0.10.
Partidas y mundos
- Una partida tiene ahora su propia máquina de estados, su propio registro y su propio diario. Iniciar una partida es todo o nada: si falla un paso, no se conserva nada y se reembolsa el coste de entrada.
- Tres modos de aislamiento, fijados por mazmorra con
isolation:SLIME_CLONE,WORLD_PER_RUN,SHARED_WORLD_SLOTSyAUTO(por defecto). Un modo que no puede ejecutarse rechaza la partida. Consulta Partidas y aislamiento de mundo. - Los mundos guardados al estilo de Paper 26.x (
dimensions/minecraft/<name>) se encuentran paraSHARED_WORLD_SLOTSy se copian paraWORLD_PER_RUN; un problema al preparar el mundo se registra en una sola línea en lugar de una traza completa. - Un
typewriter reloado un Publish readopta las partidas en curso. Un reinicio del servidor las termina limpiamente. cooldownSecondses un límite de tiempo real:0o vacío significa sin límite.- Los mundos de partida huérfanos se purgan al arrancar con salvaguardas (nombre, archivo marcador, nunca un mundo cargado).
- Se escriben las estadísticas: intentos, finalizaciones y mejor tiempo, por mazmorra y por jugador.
- Se aplican
damageMultipliery loscriteriade la mazmorra.
Mazmorras generadas
- Nuevas entradas: Dungeon Room Template, Dungeon Connector Type, Dungeon Room Pool, Dungeon Generator, Dungeon Affix y un editor en el juego para puertas y marcadores. Una mazmorra con un
generatorse monta para cada partida. La misma semilla da la misma mazmorra. Consulta Mazmorras generadas.
Salas, eventos y facts
- Los triggers de sala
onEnteryonLeave,enterOnce,leaveOnce,priority,criteriaymodifiersfuncionan ahora. Un nuevo campoverticalMargin. - Nuevos eventos: on_dungeon_start, on_dungeon_complete, on_dungeon_room_enter, on_dungeon_room_leave, on_dungeon_mob_death.
- Los facts
indungeoneindungeon_instancefuncionan ahora. Nuevo fact dungeon_mobs_alive. - Nuevas acciones: Dungeon Complete, Dungeon Clear Room, Dungeon Spawn Mobs.
- Nuevos Dungeon Run Audience y Dungeon Run Group.
Menús y lobbies
- Los menús se actualizan en vivo (
autoRefreshTicks) y cuando cambia cualquier lobby. - El scoreboard de espera funciona. Los marcadores
DUNGEON_LOBBY_SLOTcolocan los lobbies. Loscriteriade los huecos se evalúan para cada jugador. - Un menú de party puede nombrar su mazmorra (
dungeonInstance); uno vacío atiende a toda mazmorra que ningún otro menú nombre. - Las parties de MMOCore, Parties y la extensión de party de Typewriter son de solo lectura.
Cofres
- Una tirada por jugador y cofre,
visibility(AUTO,PER_PLAYER,SHARED),onDisappear,lootSelectionyweightedPicks, animación del cofre, orientación a partir del yaw, bloques de CraftEngine y Nexo, cofres restaurados tras una recarga.
Entidades en mazmorras
- Dungeon NPC Instance: un NPC por partida a partir de cualquier definición de entidad, ahora mostrado a los miembros de su partida.
- Dungeon Mob Spawn: mobs de combate vanilla, una vez por partida, con un tope (
maxAliveMobs). Consulta Entidades en mazmorras.
Textos para el jugador y campos nuevos
- Los textos de los menús, lobbies, barra lateral de la partida, cofres de botín y rechazos de lanzamiento son snippets (
content.dungeon_menu.,content.dungeon_lobby.,content.dungeon_run.sidebar.,content.dungeon_chest.,content.dungeon_launch.). Los valores por defecto no cambian. Las respuestas de los comandos/typewriter dungeon ...también son snippets (content.dungeon_command.). - Nuevo campo
lobbyIdleKickSecondsen la Dungeon Instance (por defecto120). - Nuevos campos en Loot Chest Trigger:
triggerSoundVolume,triggerSoundPitch,triggerParticleCount,triggerParticleSpread,triggerParticleSpeed.broadcastMessageacepta códigos de color.
Comandos
- Se eliminó el subcomando
start, que nunca funcionó. Los comandos están documentados en el índice.
Límites conocidos
- Solo Paper. Folia no es compatible.
- Las mazmorras generadas usan solo
WORLD_PER_RUN. - Una cinemática de MythicMobsNPC en una mazmorra no está probada.
0.10
La compilación independiente. Los triggers de sala, los dos facts de "en la mazmorra", la NPC instance y las estadísticas estaban declarados pero no activos.