Todos os sistemas Retenção e conteúdo diário

Missões diárias

Dez linhas de missão — PvP, PK, monstros, raid boss, grand boss, craft, recomendação, nível de clã e tyrannosaurus — cada uma com estágios progressivos que renovam todo dia. O jogador abre a lista dentro do jogo com .mission e vê exatamente o que falta.

Por que isso importa para o seu servidor

O jogador que entra sem saber o que fazer sai em vinte minutos. Missão diária resolve isso pelo caminho mais barato que existe: ela dá um objetivo pequeno, alcançável na sessão, e um motivo para voltar amanhã.

O efeito colateral é o que interessa de verdade. Uma missão de PvP põe gente na zona de combate; uma de raid boss enche o mapa em horário morto; uma de craft faz o mercado girar. Você não está só dando item — está dirigindo para onde o servidor tem gente.

Cada linha vive num arquivo em mission/: pvp.xml, pk.xml, monster.xml, raidboss.xml, grandboss.xml, craftSuccess.xml, recommend.xml, recommended.xml, clanLevel.xml e tyrannosaurus.xml.

A estrutura do arquivo

<mission type="PVP">
    <stage level="1" name="PvP Killer" icon="icon.skill0223"
           desc="Kill %remain% more flagged players."
           required="5" itemId="9244" count="1" isDaily="true" />
    <stage level="2" ... required="10" itemId="9244" count="1" isDaily="true" />
    <stage level="3" ... required="15" itemId="9244" count="1" isDaily="true" />
</mission>
AtributoO que faz
typeO gatilho da missão. É o que liga o arquivo ao evento do jogo — não invente valores novos.
levelA ordem do estágio. O jogador só vê o próximo depois de fechar o anterior.
nameO nome mostrado na lista. Pode repetir entre estágios, como no exemplo.
iconO ícone exibido, no padrão do cliente (icon.skill0223).
descA descrição. %remain% é substituído pelo quanto ainda falta — use sempre, é o que transforma a lista em progresso visível.
requiredQuantas vezes o gatilho precisa acontecer para fechar o estágio.
itemId / countO prêmio do estágio.
isDailyCom true, o progresso zera na virada do dia. Com false, a missão é única e não volta.

Desenhando os estágios

O padrão entregue no pvp.xml sobe de 5 em 5 — 5, 10, 15, 20, 25 — pagando o mesmo item em todos. É uma escada simples e funciona, mas dá para fazer melhor:

  • Primeiro estágio muito baixo. O jogador precisa fechar um antes de decidir se vale a pena. Um required="3" no nível 1 converte muito mais do que um required="10".
  • Prêmio crescente nos últimos. Se todos os cinco estágios pagam igual, o jogador para no terceiro. Subir o count no quarto e no quinto dá motivo para ir até o fim.
  • Cuidado com o teto. Some o prêmio de todos os estágios de todas as dez missões: é isso que entra na economia por jogador por dia. Esse número precisa caber no seu plano, não na sua boa vontade.

Missão diária x missão única

isDaily="true" é o caso normal — a missão renova e vira rotina. isDaily="false" serve para outra coisa: conteúdo de entrada. Uma missão única de "alcance nível 40" ou "entre num clã" guia o jogador novo pelos primeiros passos e nunca mais aparece.

Misturar as duas na mesma lista funciona bem: as únicas puxam o jogador novo, as diárias seguram o antigo.

Cuidados

  • required alto demais mata a missão. Se o jogador não consegue fechar numa sessão, ela deixa de ser diária e vira frustração. Calibre pelo tempo médio de sessão do seu servidor, não pelo do jogador mais dedicado.
  • Missão de PK precisa de cabeça. Premiar PK incentiva exatamente o comportamento que afasta jogador novo. Se for usar, deixe o prêmio simbólico.
  • %remain% fora da desc deixa o jogador cego. Sem ele a lista mostra a missão mas não o progresso.
  • Mudar required no meio do dia não zera o progresso já feito, mas muda a meta debaixo do jogador. Prefira mexer na virada.

Como isso conversa com o resto da base

As missões usam os mesmos itens do sistema de recompensas em reward/, e o .mission faz parte do menu do jogador junto com .info, .acp e .set. O login diário da Community Board cobre a outra metade da rotina: a missão premia o que o jogador faz, o login premia o fato de ele voltar.

Falar no WhatsAppContato aqui