Changelog
1.2
- Dungeon Mob Spawn:
lootTable,spawnParticle, adaptação ao número de jogadores (perExtraPlayer,maxCount,playerCountSource),maxSimultaneous,wavese os gatilhosonWaveClearedeonCleared. - Nova entrada Dungeon Loot Table: uma tabela de saque compartilhada por baús e mobs.
- Dungeon Loot Chest:
lootTableRefeadditionalLocationspara colocar vários baús a partir de uma só entrada (ignorado em uma dungeon gerada). - Loot Chest Trigger:
particleEffect, com eixos X, Y e Z separados e um centro. Os quatro campostriggerParticlesão legados: só valem quandoparticleEffectnão nomeia nenhuma partícula. - Novo evento On Dungeon Mobs Cleared.
- Nova entrada Dungeon Restrictions, ligada por
restrictionsa uma Dungeon Instance ou a uma Dungeon Room: sem elytra, barco ou carrinho, pérola do Ender, fruta de chorus ou riptide, comandos bloqueados, mensagem de recusa e permissão de exceção. - Requer GUI (OmniGUI) 0.20. A nova Dungeon Leaderboard Source usa o contrato de fonte de ranking do GUI 0.20: com um GUI mais antigo, o ranking do Dungeon não carrega. Atualize o GUI primeiro.
- Quebra de API para addons:
DungeonArtifactData,DungeonStatsePlayerDungeonStatspassaram para o pacotebtcrenaud.dungeons.core, eDungeonArtifactEntry.getPlayerStatseDungeonArtifactEntry.updatemudaram de assinatura. Um addon compilado contra o Dungeon 1.1.x precisa ser recompilado. Dungeons criadas no painel web não são afetadas. - Estatísticas: 22 estatísticas por jogador (dano causado e sofrido, abates de mobs, mortes, tempo jogado, salas e ondas limpas, recordes, conclusões solo e sem mortes...). Elas são contadas durante a run e pagas uma única vez por membro, por artifact, com um total entre vários artifacts. O dano é o que realmente tirou vida, limitado à vida do alvo.
- Dungeon Instance:
statsMobScopeescolhe quais mobs contam nas estatísticas,MARKED_ONLY(padrão, os mobs criados pela run) ouANY_MOB_IN_RUN_WORLD. - Novo fact Player Dungeon Statistic e os placeholders
dungeon_stat_<key>(com_rawpara o número puro),dungeon_total_<key>edungeon_inst_<id>_<key>. Os snippetscontent.dungeon_stats.duration_formatecontent.dungeon_stats.missing_valuedefinem como são escritos. - Nova entry Dungeon Leaderboard Source, para ligar ao campo
sourcede um ranking do GUI (GUI 0.20): artifacts,scope(LIFETIMEouCURRENT_RUN),rankBy,values,durationFormat,decimals,missingValueeunknownName. Tokens de linha:{value_<key>},{value_<key>_raw}e{score_raw}. - Dungeon Instance:
reconnectGrace(2 minutos por padrão). Um membro que se desconecta mantém seu lugar durante esse prazo e, se voltar a tempo, retoma com sua sidebar, seus ocultamentos e seu modo de jogo. Depois disso, ele sai da run e volta ao ponto de entrada ao se reconectar. Veja Desconexões. - Dungeon Restrictions:
gameMode(opcional, por exemploADVENTURE; o modo original do jogador é devolvido ao sair;CREATIVEeSPECTATORdesligam as estatísticas de combate),limitInteractionscomallowedInteractions(CHEST,TRAPPED_CHESTeBARRELpor padrão) eprotectedEntities(molduras, suportes de armadura, pinturas), emessageRepeatDelay(2 segundos).limitInteractionstambém recusa colocar blocos, baldes, veículos, ovos de spawn, fogo, farinha de osso e usar ferramentas em blocos. - Dungeon Restrictions: o impulso do tridente e a fruta de chorus agora são recusados já no clique, e não apenas o efeito. Só a permissão de contorno isenta um jogador: um operador a tem, a menos que o nó esteja explicitamente em
false. - Dungeon Category: os campos de slot
unlockedLoreelockedLoreagora sãounlockLoreelockLore. Páginas salvas com os nomes antigos continuam sendo lidas; se os dois estiverem presentes, o novo vence. - MMOProfiles: depois que o jogador escolhe um perfil, o retorno ao ponto de entrada e o modo de jogo original são aplicados de novo.
- Correções:
runs_leftnão conta mais uma morte que tira o jogador da run (ela fica emdeaths);waves_clearedconta apenas os grupos que definemwaves;%typewriter_dungeon_stat_current_health%mostra a vida atual durante uma run; o gravador de estatísticas não para mais de salvar depois de um erro; uma run fechada em um reload porque nenhum de seus membros está online conta o tempo jogado dos membros ausentes. - Nada muda em uma dungeon existente enquanto ela não usar esses campos. Para um baú que aparece quando todos os mobs são derrotados, veja Entidades nas dungeons.
1.1.1
- Paper 26.x: uma partida em
WORLD_PER_RUNpodia falhar comThe server did not create world 'dungeon_classic_...'. A cópia do modelo mantinha o ID de mundo do modelo (data/paper/metadata.dat), então o servidor a recusava como duplicata. Agora a cópia recebe seu próprio ID.
1.1
- Versão pública da reformulação descrita abaixo. Correção desde a 1.0:
WORLD_PER_RUNagora copia um mundo modelo salvo no formato do Paper 26.x (dimensions/minecraft/<name>).
1.0
Esta é uma reformulação da extensão, construída em torno de um modelo de run. Veja a nota de migração antes de atualizar um servidor que usava a 0.10.
Runs e mundos
- Uma run agora tem sua própria máquina de estados, seu registro e seu journal. Iniciar uma run é tudo ou nada: se uma etapa falha, nada é mantido e o custo de entrada é devolvido.
- Três modos de isolamento, definidos por dungeon com
isolation:SLIME_CLONE,WORLD_PER_RUN,SHARED_WORLD_SLOTS, eAUTO(padrão). Um modo que não pode rodar recusa a run. Veja Runs e isolamento de mundo. - Os mundos guardados no estilo do Paper 26.x (
dimensions/minecraft/<name>) são encontrados paraSHARED_WORLD_SLOTSe copiados paraWORLD_PER_RUN; um problema na preparação do mundo é registrado em uma única linha em vez de um stack trace completo. - Um
typewriter reloadou um Publish adota de novo as runs em andamento. Uma reinicialização do servidor as encerra de forma limpa. cooldownSecondsé um limite de tempo de verdade:0ou vazio significa sem limite.- Mundos de runs órfãos são limpos na inicialização, com salvaguardas (nome, arquivo marcador, nunca um mundo carregado).
- As estatísticas são gravadas: tentativas, conclusões e melhor tempo, por dungeon e por jogador.
damageMultipliere oscriteriada dungeon são aplicados.
Dungeons geradas
- Novas entries: Dungeon Room Template, Dungeon Connector Type, Dungeon Room Pool, Dungeon Generator, Dungeon Affix e um editor no jogo para portas e marcadores. Uma dungeon com um
generatoré montada a cada run. A mesma seed gera a mesma dungeon. Veja Dungeons geradas.
Salas, eventos e facts
- Os triggers
onEntereonLeavedas salas,enterOnce,leaveOnce,priority,criteriaemodifiersagora funcionam. Um novo campoverticalMargin. - Novos eventos: on_dungeon_start, on_dungeon_complete, on_dungeon_room_enter, on_dungeon_room_leave, on_dungeon_mob_death.
- Os facts
indungeoneindungeon_instanceagora funcionam. Novo fact dungeon_mobs_alive. - Novas actions: Dungeon Complete, Dungeon Clear Room, Dungeon Spawn Mobs.
- Novos Dungeon Run Audience e Dungeon Run Group.
Menus e lobbies
- Os menus são atualizados ao vivo (
autoRefreshTicks) e quando qualquer lobby muda. - O scoreboard de espera funciona. Os marcadores
DUNGEON_LOBBY_SLOTposicionam os lobbies. Oscriteriados slots são avaliados para cada jogador. - Um menu de party pode nomear a sua dungeon (
dungeonInstance); um menu com esse campo vazio atende todas as dungeons que nenhum outro menu nomeia. - As parties do MMOCore, do Parties e da extensão de party do Typewriter são somente leitura.
Baús
- Um sorteio por jogador e por baú,
visibility(AUTO,PER_PLAYER,SHARED),onDisappear,lootSelectioneweightedPicks, animação do baú, orientação a partir do yaw, blocos do CraftEngine e do Nexo, baús restaurados após um reload.
Entidades nas dungeons
- Dungeon NPC Instance: um NPC por run a partir de qualquer entity definition, agora exibido aos membros da sua run.
- Dungeon Mob Spawn: mobs de combate vanilla, uma vez por run, com um teto (
maxAliveMobs). Veja Entidades nas dungeons.
Textos do jogador e novos campos
- Os textos dos menus, lobbies, barra lateral da partida, baús de loot e recusas de início são snippets (
content.dungeon_menu.,content.dungeon_lobby.,content.dungeon_run.sidebar.,content.dungeon_chest.,content.dungeon_launch.). Os padrões não mudaram. As respostas dos comandos/typewriter dungeon ...também são snippets (content.dungeon_command.). - Novo campo
lobbyIdleKickSecondsna Dungeon Instance (padrão120). - Novos campos em Loot Chest Trigger:
triggerSoundVolume,triggerSoundPitch,triggerParticleCount,triggerParticleSpread,triggerParticleSpeed.broadcastMessageaceita códigos de cor.
Comandos
- Removido o subcomando
start, que nunca funcionou. Os comandos estão documentados no índice.
Limites conhecidos
- Somente Paper. O Folia não é compatível.
- As dungeons geradas usam apenas
WORLD_PER_RUN. - Uma cinematic do MythicMobsNPC em uma dungeon não foi testada.
0.10
A build independente. Os triggers de sala, os dois facts "in dungeon", a NPC instance e as estatísticas estavam declarados, mas não ativos.