MMOCore
Visão geral
A extensão MMOCore conecta o plugin de RPG MMOCore ao TypeWriter. Ela expõe o perfil de um jogador no MMOCore (classe, nível, pontos, atributos, profissões, habilidades, árvore de habilidades, waypoints, party e guilda) como facts e variáveis do TypeWriter, para que seus diálogos, quests e audiences possam reagir a ele.
Ela também adiciona objetivos de quest que acompanham eventos do MMOCore (experiência de profissão, nível de profissão, uso de habilidades), ações que controlam o sistema de waypoints e a experiência de profissão, e duas entries de grupo para que uma party ou uma guilda possa compartilhar o progresso de quests.
A maioria das entries apenas lê dados. Nada é armazenado pela própria extensão: todo valor vem ao vivo do MMOCore quando o TypeWriter o solicita.
Recursos
- Facts de perfil — leia nível, experiência, pontos, vida, mana, stamina e stellium com um único valor selecionável.
- Facts de classe e profissão — verifique a classe atual, o nível da classe e o nível ou a experiência de qualquer profissão.
- Facts de habilidade — leia o nível de uma habilidade de classe, se ela está desbloqueada e se um slot de habilidade está vinculado.
- Facts da árvore de habilidades — leia o nível de um nó da árvore de habilidades, ou verifique se ele está desbloqueado ou no máximo.
- Waypoints — desbloqueie, bloqueie ou teletransporte um jogador para um waypoint do MMOCore e verifique se um está desbloqueado.
- Objetivos de quest — objetivos de experiência de profissão, nível de profissão e uso de habilidade para quests do TypeWriter.
- Party e guilda — contagem de membros como facts; nome, tag, id, dono e membros da guilda como variáveis.
- Grupos — compartilhe facts do TypeWriter em uma party ou guilda do MMOCore.
- Variáveis de lista — habilidades desbloqueadas, nós desbloqueados, waypoints, habilidades vinculadas, amigos e a cadeia de lançamento ativa.
Instalação
- Instale o MMOCore e sua biblioteca MythicLib no servidor.
- Certifique-se de que a extensão oficial Quest do TypeWriter está instalada. Os três objetivos a exigem.
- Obtenha a extensão nas lojas (veja os botões no painel de resumo acima) e coloque o JAR em
plugins/Typewriter/extensions/. - Reinicie o servidor. Na inicialização, o console imprime
[MMOCoreExtension] MMOCoreExtension enhancements initialized successfully.
Primeiros passos
Crie uma etapa de quest que é concluída quando o jogador atinge o nível 10 na profissão de mineração e então desbloqueia um waypoint:
- No painel web do TypeWriter, abra uma page sequence e adicione uma ação Unlock Waypoint. Defina
waypointIdcomo o id do waypoint do MMOCore, por exemplospawn_town. - Abra (ou crie) uma page static com a sua quest e adicione um Profession Level Objective.
- Preencha
questcom a entry da sua quest,displaycom o texto exibido no rastreador de quests,professioncom o id da profissão (por exemplomining) elevelcom10. - Defina
onCompletecomo a ação Unlock Waypoint do passo 1. - Publique. Quando um jogador com a quest ativa atingir o nível, o waypoint é desbloqueado.
Para usar a classe do jogador em uma condição de diálogo, adicione um Class Fact com classId definido como o id da classe do MMOCore. Ele retorna 1 quando o jogador tem essa classe e 0 caso contrário, então você pode usá-lo em um criterion com value definido como 1.
Deixe profession vazio em Profession Level Objective ou em Add Profession Experience para ter como alvo o nível e a experiência da classe principal em vez de uma profissão.
Como funciona
Facts e variáveis são lidos sob demanda. Os objetivos escutam eventos do MMOCore (ganho de experiência, subida de nível, uso de habilidade) e só contam para jogadores que correspondem aos criteria do objetivo e têm a quest ativa. Os objetivos de experiência e de uso de habilidade guardam seu progresso no fact que você liga, que deve ser um fact persistente (armazenável em cache), como um fact permanente ou de sessão.
Placeholders
O campo waypointId das ações de waypoint aceita placeholders do PlaceholderAPI. Eles são resolvidos para o jogador antes de o waypoint ser procurado.
| Campo | Aceita |
|---|---|
waypointId de Unlock Waypoint, Lock Waypoint e Warp Waypoint | Um id de waypoint, ou um placeholder que retorne um. |
Entries
38 entradas, geradas a partir do código-fonte da extensão.
Ações5
- Add Profession ExperienceAdd experience to a MMOCore profession
- Mmocore Leave Skill CastingForce the player to exit MMOCore's casting mode
- Mmocore Lock WaypointRemove access to a MMOCore waypoint
- Mmocore Unlock WaypointUnlock a MMOCore waypoint for the player
- Mmocore Warp WaypointWarp the player to a MMOCore waypoint using stellium
Objetivos3
- Mmocore Profession Exp ObjectiveGain MMOCore profession experience
- Mmocore Skill Cast ObjectiveCast specific MMOCore skills
- Profession Level ObjectiveReach a certain MMOCore profession level
Fatos15
- Class Level FactPlayer's MMOCore class level
- Guild Members FactNumber of members in the player's guild
- Guild Online Members FactNumber of online members in the player's guild
- Mmocore Attribute Value FactNumber of points invested in a specific MMOCore attribute
- Mmocore Class FactCheck the player's current MMOCore class
- Mmocore Player Boolean FactExpose boolean values from a player's MMOCore profile
- Mmocore Player Number FactExpose various numeric values from a player's MMOCore profile
- Mmocore Profession FactRetrieve information about a MMOCore profession
- Mmocore Skill FactRead state about a specific MMOCore class skill
- Mmocore Skill Slot Bound FactCheck whether a MMOCore skill slot currently holds a skill
- Mmocore Skill Tree Node FactInspect a specific MMOCore skill tree node
- Mmocore Stat Value FactExpose MMOCore stat values, either total or base
- Mmocore Waypoint Unlocked FactCheck if the player unlocked a specific MMOCore waypoint
- Party Members FactNumber of members in the player's party
- Profession Level FactPlayer's level in a MMOCore profession
Variáveis13
- Mmocore Active Casting Skills VariableReturns the list of skill identifiers available in the current casting chain
- Mmocore Bound Skill VariableReturns the skill identifier bound to a specific MMOCore slot
- Mmocore Friends List VariableReturns the UUIDs of the player's MMOCore friends
- Mmocore Guild ID VariableReturns the identifier of the player's MMOCore guild if any
- Mmocore Guild Members VariableReturns the UUIDs of the members in the player's MMOCore guild
- Mmocore Guild Name VariableReturns the name of the player's MMOCore guild if any
- Mmocore Guild Owner VariableReturns the owner UUID of the player's MMOCore guild if any
- Mmocore Guild Tag VariableReturns the tag of the player's MMOCore guild if any
- Mmocore Player Class VariableReturns the identifier of the player's current MMOCore class
- Mmocore Unlocked Nodes VariableReturns every skill tree node identifier the player has unlocked
- Mmocore Unlocked Skills VariableLists the MMOCore skills unlocked for the player's current class
- Mmocore Waypoints VariableLists every waypoint identifier unlocked by the player
- Player Class VariablePlayer's MMOCore class name
Grupos2
- Guild GroupGroup for the whole guild
- Party GroupGroup for the whole party
Solução de problemas
A extensão não carrega. O MMOCore e o MythicLib devem estar instalados e ativados, e a extensão Quest do TypeWriter deve estar presente. Verifique no console, na inicialização, o primeiro erro.
Um fact sempre retorna 0. O jogador não tem perfil no MMOCore (por exemplo, um NPC do Citizens) ou o id está errado. classId, professionId, skillId, fullId e waypointId devem corresponder à configuração do MMOCore. Class Fact ignora maiúsculas e minúsculas em classId; os demais ids são passados ao MMOCore exatamente como escritos.
Nada acontece quando uma ação é executada. As ações de waypoint registram um aviso como Attempted to unlock unknown waypoint '...' for <player> quando o id não existe no MMOCore. Verifique o id na configuração de waypoints do MMOCore. Add Profession Experience não faz nada, silenciosamente, quando o id da profissão é desconhecido.
O objetivo de experiência ou de uso de habilidade nunca avança. Ligue um fact persistente em fact, garanta que a quest em quest esteja ativa para o jogador e que o jogador corresponda aos criteria. No objetivo de uso de habilidade, skillIds recebe ids de skill handlers do MMOCore, e requireSuccess ignora usos que falharam.
Um objetivo de profissão conta todas as profissões. Em Profession Exp Objective, um profession vazio aceita experiência de qualquer profissão. Preencha-o para acompanhar uma profissão.
O warp não tem efeito ou custa caro demais. Warp Waypoint usa o próprio warp do MMOCore com stelliumCost. O custo é tratado pelo MMOCore, então o jogador precisa de stellium suficiente e as regras do waypoint se aplicam.
Extensões relacionadas
- MMOItems — a integração companheira para itens e criação do MMOItems.