Pular para o conteúdo
Ver no aplicativo

Uma forma melhor de navegar. Saiba mais.

GN Emulator

Um aplicativo em tela cheia na sua tela inicial com notificações push, distintivos e mais.

Para instalar este aplicativo no iOS e iPadOS
  1. Toque no ícone Compartilhar no Safari
  2. Role o menu e toque em Adicionar à Tela de Início.
  3. Toque em Adicionar no canto superior direito.
Para instalar este aplicativo no Android
  1. Toque no menu de 3 pontos (⋮) no canto superior direito do navegador.
  2. Toque em Adicionar à tela inicial ou Instalar aplicativo.
  3. Confirme tocando em Instalar.

Sugestão: controle de taxa de EXP POR JOGADOR (Lua)

Respostas Destacadas

  • Licença Lifetime

Estava tentando criar um evento para bônus de XP em dobro aos finais de semana, excluindo todos que estão com a mesma quantidade de resets do TOP RESET do servidor, para que eles não disparem e quem esteja atrás os alcance, mas encontrei algumas dificuldades.

Não existe nenhuma forma de aumentar a EXP de um jogador específico por script/Lua. A única alavanca de EXP é global. Isso impossibilita eventos de EXP seletivos (ex.: "XP em dobro no fim de semana para todos, MENOS os primeiros do ranking de resets", pra evitar que os líderes disparem, "era o que eu estava tentando fazer").

Peço uma API Lua (ou um efeito no EffectManager) que permita multiplicar a EXP de um jogador individual, com duração.

O que foi testado (e não resolve)

  1. Buffs do EffectManager (addBuff) — a lista de efeitos disponíveis no servidor não tem nenhum "EXP +%". Efeitos existentes: Greater Damage/Defense/Life/Mana, Bless/Soul, Mana Shield, Critical, Infinity Arrow, BP Recovery, Seals (Ascension/Wealth/Sustenance/Life/Mana) SEALS ESTÃO SENDO EQUIPADOS COMO RING, Scrolls, Elixir of Leader, Damage Reflect, Talisman Guardian/Protection. Nenhum de experiência.

  2. addBuff(193, ...) (índice citado em docs S6 antigas como "Seal: +100% EXP") — neste 4.0 não aplica buff de EXP; ele apenas coloca um Seal como ITEM no slot do anel, e o item não dá EXP.

  3. Itens "Seal" equipados no anel — testado via /make: não aumentam a EXP neste servidor.

  4. Lua (objeto User) — não há addExperience, setExperience nem setExperienceRate. Há getReset, addBuff/removeBuff/hasBuff, etc., mas nada que mexa na taxa de EXP do jogador.

  5. Único lever existente: AddExperienceRate_AL0..AL3 em GameServerInfo - Common.dat — é global por nível de conta (VIP tier), afeta todos os jogadores daquele tier ao mesmo tempo. Não há granularidade por personagem.

Qualquer uma destas opções resolveria

  • Opção A (preferida): uma função Lua no objeto User, por exemplo:

    • player:setExpRate(percent) / player:addExpRate(percent, seconds) — aplica um multiplicador de EXP temporário só naquele jogador; ou

    • player:addExpBuff(percent, seconds).

  • Opção B: um efeito novo no EffectManager do tipo "EXP Rate +X%" que funcione via addBuff(indice, duracao, valor) (como os demais buffs), afetando só o jogador que recebe.

Com isso, o dono do servidor consegue, por Lua, varrer os jogadores online e dar/remover o bônus de EXP conforme a regra que quiser (ex.: dar o dobro só a quem está abaixo do topo do ranking de resets).

Resolvido por José Silva

  • Solução
7 horas atrás, bcavalini disse:

Estava tentando criar um evento para bônus de XP em dobro aos finais de semana, excluindo todos que estão com a mesma quantidade de resets do TOP RESET do servidor, para que eles não disparem e quem esteja atrás os alcance, mas encontrei algumas dificuldades.

Não existe nenhuma forma de aumentar a EXP de um jogador específico por script/Lua. A única alavanca de EXP é global. Isso impossibilita eventos de EXP seletivos (ex.: "XP em dobro no fim de semana para todos, MENOS os primeiros do ranking de resets", pra evitar que os líderes disparem, "era o que eu estava tentando fazer").

Peço uma API Lua (ou um efeito no EffectManager) que permita multiplicar a EXP de um jogador individual, com duração.

O que foi testado (e não resolve)

  1. Buffs do EffectManager (addBuff) — a lista de efeitos disponíveis no servidor não tem nenhum "EXP +%". Efeitos existentes: Greater Damage/Defense/Life/Mana, Bless/Soul, Mana Shield, Critical, Infinity Arrow, BP Recovery, Seals (Ascension/Wealth/Sustenance/Life/Mana) SEALS ESTÃO SENDO EQUIPADOS COMO RING, Scrolls, Elixir of Leader, Damage Reflect, Talisman Guardian/Protection. Nenhum de experiência.

  2. addBuff(193, ...) (índice citado em docs S6 antigas como "Seal: +100% EXP") — neste 4.0 não aplica buff de EXP; ele apenas coloca um Seal como ITEM no slot do anel, e o item não dá EXP.

  3. Itens "Seal" equipados no anel — testado via /make: não aumentam a EXP neste servidor.

  4. Lua (objeto User) — não há addExperience, setExperience nem setExperienceRate. Há getReset, addBuff/removeBuff/hasBuff, etc., mas nada que mexa na taxa de EXP do jogador.

  5. Único lever existente: AddExperienceRate_AL0..AL3 em GameServerInfo - Common.dat — é global por nível de conta (VIP tier), afeta todos os jogadores daquele tier ao mesmo tempo. Não há granularidade por personagem.

Qualquer uma destas opções resolveria

  • Opção A (preferida): uma função Lua no objeto User, por exemplo:

    • player:setExpRate(percent) / player:addExpRate(percent, seconds) — aplica um multiplicador de EXP temporário só naquele jogador; ou

    • player:addExpBuff(percent, seconds).

  • Opção B: um efeito novo no EffectManager do tipo "EXP Rate +X%" que funcione via addBuff(indice, duracao, valor) (como os demais buffs), afetando só o jogador que recebe.

Com isso, o dono do servidor consegue, por Lua, varrer os jogadores online e dar/remover o bônus de EXP conforme a regra que quiser (ex.: dar o dobro só a quem está abaixo do topo do ranking de resets).

Boa! Esse cenário já está coberto pela API Lua Bonus, que preparamos para o próximo update. Ela permite dar EXP adicional por personagem, com duração e remoção individual.

Com ela dá para montar o evento de fim de semana, aplicar +100% de EXP em quem estiver abaixo do maior número de resets e deixar todos os empatados no topo sem esse bônus. Também tem opção separada para EXP Master.

Já validamos a EXP dobrando no jogo. A API estará disponível na próxima atualização. 😊

Rivify Brasil Ltda

Holding de tecnologia, Software, Cloud, IA
e infraestrutura digital.

[email protected]  •  www.rivify.com.br

Av. Tiradentes, 960, 9.º andar, sala 2 — Luz
São Paulo/SP — CEP 01102-000
CNPJ 68.145.965/0001-06

Nos acompanhem nas redes @rivifybrasil

Participe da conversa

Você pode publicar agora e se cadastrar depois. Se você tem uma conta, entre agora para publicar com sua conta.

Convidado
Responder a este tópico...

Conta

Navegação

Procurar

Procurar

Configurar notificações push do navegador

Chrome (Android)
  1. Toque no ícone de cadeado ao lado da barra de endereços.
  2. Toque em Permissões → Notificações.
  3. Ajuste sua preferência.
Chrome (Desktop)
  1. Clique no ícone de cadeado na barra de endereços.
  2. Selecione Configurações do site.
  3. Encontre Notificações e ajuste sua preferência.