Ir para conteúdo

Ranking PvP


Faraday

Posts Recomendados

Bom, vou ser simples e rápido.

 

Ao meu ver, a forma com que está sendo contabilizado o respeito no ranking PvP não é muito "justa". Creio que a fórmula atual é Matou/Morreu. Isso faz com que uma pessoa que tenha matado 100 e não tenha morrido nenhuma ou apenas uma vez fique com 100 pontos de respeito, ao passo que uma que tenha matado 1000 e morrido apenas 10 tenha a mesma quantidade de pontos.

 

A minha sugestão é mudar a contagem de pontos de respeito para a fórmula (Matou - Morreu)/10

Link para o comentário
Compartilhar em outros sites

Bom, vou ser simples e rápido.

 

Ao meu ver, a forma com que está sendo contabilizado o respeito no ranking PvP não é muito "justa". Creio que a fórmula atual é Matou/Morreu. Isso faz com que uma pessoa que tenha matado 100 e não tenha morrido nenhuma ou apenas uma vez fique com 100 pontos de respeito, ao passo que uma que tenha matado 1000 e morrido apenas 10 tenha a mesma quantidade de pontos.

 

A minha sugestão é mudar a contagem de pontos de respeito para a fórmula (Matou - Morreu)/10

Concordo, quem tem mais atividade normalmente morre mais, porém o numero de kills é infinitamente maior.

Link para o comentário
Compartilhar em outros sites

Exatamente isso que eu penso Kaball, a pessoa mata infinitamente mais do que morre, mas mesmo assim não está nem no ranking hehe

+1

 

Faça uma enquete, deve ter mais resultado

Link para o comentário
Compartilhar em outros sites

Faraday

Ia criar um tópico sobre isso também, mas aproveitando que você abriu vou comentar aqui, inclusive para não ser punido por fazer posts repetidos hehe.

 

 

Essa formula do Mata/Morre é usada pra que a disputa seja contínua.

Não sei se o ranking é resetado periodicamente, mas considerando que não fosse resetado, os jogadores mais antigos e frequentadores do pvp nunca perderiam o trono do ranking. Claro, isso é excelente pros jogadores de agora, mas uma droga pros jogadores novos de Agosto por exemplo.

 

Concordo também que a formula Mata/Morre não é eficiente, inclusive pelo simples fato de colocar o mesmo peso para matar e morrer já não é eficiente, é um cálculo que não considera honra.

 

Além disso, existem outras questões que injustificam o ranking do pvp.

 

Exemplo: Não sei se o sistema atual de ranking do servidor tem esse tipo de proteção, mas se você matar 50 vezes um noob e ele voltar 500 vezes, vc vai ganhar 500 pontos? Isso abre uma brecha para fraudar pontos (vou falar mais sobre isso no final do post).

 

 

 

Na minha opinião, a formula do ranking deve ser muito mais complexa, não só contar o "matei e morri", mas contar pontos baseado na autenticidade da morte causada ou sofrida.

No padrão desses sistemas se grava o número de mortes sofridas e causadas e só depois se faz o cálculo.

Acho isso falho, porque se resume a pontuação baseada apenas nesses dois fatores.

O ideal é no ato da morte, o script calcular o peso da morte considerando o seu level e do oponente.

 

Um exemplo de formula

 

Você Matou (formula): Killed_Level / Killer_Level * 3 = Kill_Point

 

O Killed Level é o oponente, e o Killer Level é você, já o 3 é o potencializador da formula. O Kill Point é o resultado da morte, que é somado ao seu total de pontos de mortes causadas.

 

Usando o exemplo acima vamos supor que você tenha level 200 e a sua vítima tenha 150 a formula ficaria assim:

150 / 200 * 3 = 2 (arredondado decimais)

 

Já se você matar alguém com o mesmo level que você.

200 / 200 * 3 = 3

 

Ou matando alguém com mais level que você

250 / 200 * 3 = 4

 

Os pontos seriam diferentes para cada situação.

 

 

 

Agora, a formula para quando você morrer, teria um outro peso. Ao invés de potencializar com 3, o peso da morte seria o triplo, ou seja 9, assim para cada vez que você morrer, você terá que matar 3x mais para recuperar a posição. Isso é para dar peso diferente nas duas situações.

Abaixo o exemplo:

 

Você Morreu (formula): Killed_Level / Killer_Level * 9 = Kill_Point

 

Lembrando que nessa formula você muda de lado, agora você não é mais o Killer, e sim o Killed.

 

Os exemplos ficariam assim:

Você com level 200 e seu oponente assassino com level 150

200 / 150 * 9 = 12

 

Você com 200 e seu oponente com o mesmo level

200 / 200 * 9 = 9

 

Você com 200 e o seu oponente com level superior (250)

200 / 250 * 9 = 7

 

 

O que isso significa?

  • Se você for morto por um "inferior", você deve ter mais pontos de morte, por ter sido uma morte mais indigna.
  • Já se você for morto por alguém de level superior ao seu, a sua morte é mais justificável, e logo deve receber menos pontos de morte.
  • O potencializador é 9 e não 3, porque para cada morte sofrida, você precisa ter pelo menos o triplo de mortes causadas. Ou seja, se você morreu 1x por alguém do mesmo level, você precisa matar 3x alguém do mesmo level para conquistar a sua honra de pvp.

 

Outras questões importantes.

Para evitar fraudes na matança e pontuação do pvp, o script precisa considerar a última vítima do jogador, e se for repetida, não computar os pontos ou reduzir o potencializador. Na época que eu desenvolvi um script pvp assim, considerei 3 mortes seguidas possíveis. Ou seja, se você matar Fulaninho e ele reviver e voltar pra te ajudar a subir o ranking, ele não vai te somar mais que 3 mortes seguidas (ou somar com potencializador reduzido).

 

Ou seja, para o ranking se tornar funcional teria que haver uma disputa entre 3 pessoas ou mais para as vítimas fazerem rodízio de no máximo 3 mortes seguidas. E quando fosse disputar x1 só entre dois amigos, apenas 3 mortes consecutivas seriam consideradas. Caso você matasse ele 3 vezes e morresse em seguida, a contagem da morte resetaria, te dando a possibilidade de voltar e vingar a sua morte 3x contando pontos.

 

 

Conclusão

Com toooda essa bagaça funcionando, seria possível daqui 3 meses o server estar cheio e mesmo quem é novato lutar para te matar 300 vezes para te tirar a posição das suas 1000 mortes causadas.

 

Sei que o texto ficou meio grande, que a ideia é complexa, e que matemática é chato.

Mas para deixar o PVP fluir, e contar pontos de honra, ao invés de só contar pontinhos "matei e morri", seria o ideal, ou quase isso.

 

Valeu. =)

Link para o comentário
Compartilhar em outros sites

Fazer um sistema tão "complexo" como você falou nem sempre traz vantagem. Quem quer fraudar, vai fraudar. Isso não dá pra ser evitado. ^^

Se você não conta mais de 3 abates seguidos contra o mesmo jogador, é só o cara dar esc e pegar outro boneco para morrer.

Se, após morrer 3 vezes seguidas, um jogador parar de dar score no PvP, vai ser injusto com quem o matou depois disso.

 

Basear o valor de um abate no level dos envolvidos é uma boa ideia. Pelo menos daria mais trabalho para aqueles que querem pagar de joão sem braço.

 

Mas, e se, além dos níveis, fosse considerada a posição do jogador morto no ranking? Imagine que matar o top do servidor te daria muito mais pontos do que matar um cara que nem no ranking está.

Editado por ddz
Link para o comentário
Compartilhar em outros sites

Realmente tem essa coisa de ficar pegando free frag no PvP, mas acho que isso pode ser fiscalizado pelos GM's e pelos próprios PvP players.

 

Acho que a "nova fórmula" (se realmente for mudada) de contar pontos no PvP deve ser decidida pelos ADM's, só acho que do jeito que está não está justo.

Link para o comentário
Compartilhar em outros sites

Oi réis humanos, tudo bem com ocês?

 

Um comentário infame, vocês sabem como faz pra um script de NPC realizar um cálculo para PvP?

Existem muitos sistemas de cálculos de rank em sistema de PvP, um dos mais conhecidos

é o do Mooka, se eu não me engano é assim podem procurar no Google por Mooka PVP, e o sistema que ele usa,

foi justamente o que eu falei, o K-D/10 ;-;

Essa ideia de monitorar quem faz Free Frag (F.F.) é meio que complicado...

 

Um beijo e um abraço!

Link para o comentário
Compartilhar em outros sites

@Biio

Faz alguns anos que não lido com scripts, mas na época que eu tinha um server e tive que criar um ranking desse do zero (incluindo esse som do "monster kill" em mortes seguidas sem morrer) era quando tinham lançado a pouco tempo uma atualização em que se permitia pegar o ID do killer e do killed através de variáveis nativas do script. Hoje em dia isso deve estar mais aprimorado, e as possibilidades devem ter aumentado bastante.

 

Enfim, da pra pegar algumas coisas prontas, uma documentação do emulador (pra ver os comandos) e usar a criatividade pra dar uma turbinada =D

 

 

@Faraday

Concordo com você quando diz que o método atual não é eficaz, e injusto. Só não acho que seja injusto com os que estão no top ranking, mas sim injusto para os novos jogadores (bons, diga-se de passagem).

Para os top rankings é cômodo e lazy, pois uma vez no topo, eles nunca descem (a menos que morram infinitamente mais do que mataram) considerando o fato de que a formula Matei - Morri / 10 é simplesmente o peso de 1 pra 1. Ou seja: Morri 1 só preciso matar 1 pra me recuperar, e isso não é mérito, a menos que haja reset periódico, e de tempo em tempo todos comecem do zero novamente (todo mês por exemplo).

 

A parada do GM ficar monitorando fica meio fora da realidade, considerando o fato de que os GMs estão malemau prestando suporte (salvo o Loveless, Uri e uns outros que não tive contato). A correria ta começando com a volta pra facul e etc.

 

É evidente que o ADM é quem vai decidir, inclusive decidir se isso vai mudar mesmo ou se vai manter tudo como está.

O que estamos fazendo aqui é oferecendo material pra ele analisar, é uma discussão baseada em opiniões sustentadas pela experiência do usuário.

 

 

@ddz

Primeiro, obrigado por responder com um argumento construtivo, fico feliz de ter sua opinado embasada sobre a fórmula. =D

 

Realmente, evitar integralmente as fraudes não é o caso, mas tentar limitar as possibilidades.

Se for o caso, não precisaria considerar as 3 mortes consecutivas para o char morto, mas para a account do char morto (ao invés de usar o id do char, usaria o id da conta no script), isso já diminuiria a facilidade de apenas trocar de char.

 

Outros métodos de tentar burlar o sistema podem (e vão) aparecer, como reunir 2 amigos cúmplices com contas diferentes e revesar a matança entre os dois, o que já começaria a ser mais complicado, reunir 2 sujeitos dispostos a uparem chars até um level eficaz a render pontos de morte, achar um cantinho do PVP propício a ninguém ver, manter os dois de bico fechado.

 

A fórmula do level também entra como um "método" de proteção. Por exemplo, criar uma conta nova, um char noob com level 50 daria zero pontos, ou até daria pra restringir a fórmula, para só somar pontos se o char for maior que level 100 por exemplo.

 

E mesmo assim, se alguém conseguir subir no ranking fraudando, o fato do peso de "matei" sobre "morri" ser 3x maior, contribui para os concorrentes correrem atrás do prejuízo e darem a lição no cara.

 

 

Calcular Pontos do Ranking

 

A ideia de considerar a pontuação do ranking pra medir o peso dos pontos é excelente, genial, e mais eficaz ainda do que só considerar o level, porque dai sim estaria lidando diretamente um fator de honra, matar quem já matou muito e morreu pouco.

Nesse caso só teria que se certificar que a gravação da pontuação está sendo feita com variáveis globais permanentes, de modo que a pontuação do jogador esteja disponível em cache para o script fazer o cálculo imediato, evitando que o script faça consultas ao banco de dados a cada morte.

 

Usando a sua ideia, pensei no seguinte. Daria a fórmula dos levels, e adicionar pontuação extra de acordo com a pontuação do oponente no ranking. Por exemplo, se você é novo no ranking (ou não está) e consegue matar um top ranking, você tem mais honra que se você já estivesse no topo do ranking e matasse outro top ranking (segunda posição por exemplo). Isso não entraria em questão quando você morresse, apenas quando você matasse. Para estimular a escalada de quem está em baixo.

 

Uma possível fórmula pra isso, seria assim:

Considerando que você matou alguém, a variável Killer_Point são os seus pontos de Ranking PVP, e Killed_Point são os pontos de quem você matou.

 

Fórmula: ( Killed_Points - Killer_Points ) * 2 / 100 = Extra_Point

 

Exemplo: ( 1.000 - 300 ) * 2 / 100 = 14

 

Explicando: Supondo que você tem só 300 pontos de ranking pvp, e seu oponente morto é top ranking com 1.000 pontos. Ao matá-lo, o script pegaria a diferença de pontos dele para você (1.000 - 300 = 700) e calcularia 2% da diferença para lhe dar pontos extras, que nesse caso seriam 14 pontos extras (somado à formula do level). Caso o Extra_Point resulte num número negativo (se você tiver mais pontos que o seu oponente morto) o Extra_Point não é considerado, pra não tirar pontos de você.

Esse modelo de formula serve para lhe dar mais pontos extra se a distância que você estiver do top ranking for maior. Conforme você subir a pontuação, seus pontos extras vão sendo cada vez menor (em comparação ao top ranking).

 

Enfim, são recursos opcionais que podem ser aprimorados. Evitar 100% é quase impossível, mas um sistema complexo estreitaria muito o volume de fraude, além é claro, de possibilitar o posicionamento do ranking baseando-se por pontos de honra e possibilitando que o ranking seja atemporal, em qualquer momento algum novo jogador possa subir no ranking (com muito mais esforço do que o top ranking evidentemente).

 

É isso ai.

Valeu. :v:

Link para o comentário
Compartilhar em outros sites

Oi pessoal, tudo certo com ocês?

 

Vou falar a verdade, desta vez, só li a parte que dizia respeito a mim... kkkkkkk'

Abraço cara! boa sorte com sua luta ao ranking de PvP ai!

 

Um beijo e um abraço!

Link para o comentário
Compartilhar em outros sites

Acredito que este Ranking PvP não deve mesmo focar acabar com as fraudes, mas sim prestigiar aqueles que se esforçaram para subir. É claro que uma medida ou outra para acabar com a esperteza descarada de alguns ajuda, mas não deve passar disso.

 

@bash:

 

Achei muito bacana a sua nova fórmula para cálculo dos pontos, mas, a não ser que essa fórmula seja usada apenas quando killer_point <= killed_point, teremos um problema desse tipo:

 

(1000 - 1100) * 0.02 = -2

Editado por ddz
Link para o comentário
Compartilhar em outros sites

a não ser que essa fórmula seja usada apenas quando killer_point <= killed_point, teremos um problema desse tipo:

 

(1000 - 1100) * 0.02 = -2

 

 

Valeu @ddz

 

Isso mesmo, essa parte ta comentada ali depois da fórmula

 

Caso o Extra_Point resulte num número negativo (se você tiver mais pontos que o seu oponente morto) o Extra_Point não é considerado, pra não tirar pontos de você.

 

Além de ser considerado somente resultados positivos, o Extra_Point seria calculado somente quando você Mata, não quando você Morre.

 

Com isso, essa fórmula seria para incentivar a escalada, e beneficiar principalmente os que estão por baixo do ranking (e que conseguem matar os posicionados no ranking). Assim quem chega no topo do ranking não pode ficar preguiçoso e parar de matar ou ficar morrendo de bobeira, tem que evitar morrer pra não perder x3 pontos e pra não brindar o oponente com 2% da sua diferença de pontos (alavancando a escalada dele, caso seja um oponente menos pontuado).

 

Mas é isso ai, esclarecido essa parte =D

 

Fico feliz que tenha gostado.

 

Valeu :ok:

Link para o comentário
Compartilhar em outros sites

 

 

Valeu @ddz

 

Isso mesmo, essa parte ta comentada ali depois da fórmula

 

 

Além de ser considerado somente resultados positivos, o Extra_Point seria calculado somente quando você Mata, não quando você Morre.

 

Com isso, essa fórmula seria para incentivar a escalada, e beneficiar principalmente os que estão por baixo do ranking (e que conseguem matar os posicionados no ranking). Assim quem chega no topo do ranking não pode ficar preguiçoso e parar de matar ou ficar morrendo de bobeira, tem que evitar morrer pra não perder x3 pontos e pra não brindar o oponente com 2% da sua diferença de pontos (alavancando a escalada dele, caso seja um oponente menos pontuado).

 

Mas é isso ai, esclarecido essa parte =D

 

Fico feliz que tenha gostado.

 

Valeu :ok:

 

Eu quis dizer se alguém com 1200 pontos matar uma pessoa com 1000.

Esses extra points seriam somados aos pontos de abate? Como bônus?

Link para o comentário
Compartilhar em outros sites

 

kkkkkkkkkkk

Biio, isso me lembra um artigo que li essa semana: http://goo.gl/uvV3We

 

kkkkkk, é pra levar na esportiva. também leio só o que me interessa =D

pra zuar

 

Valeu, voltando ao que interessa em 3, 2, 1.. :o.o:

Bela matéria me fez parar e pensar que eu faço isso involutariamente.

 

@Edit

 

Não li as partes que envolviam calculos. #odeiomatématica

Apoio que o ranking deve ser aprimorado já que está muito falho e injusto.

Editado por Murdok
Link para o comentário
Compartilhar em outros sites

Eu quis dizer se alguém com 1200 pontos matar uma pessoa com 1000.

Esses extra points seriam somados aos pontos de abate? Como bônus?

 

Então, se uma pessoa de maior pontuação matar alguém de menor pontuação, o Extra Points seria um número negativo (pois a diferença seria negativa).

Nessa situação o extra points seria ignorado, considerando a ideia de que quem já está no topo da lista de ranking já é soberano na disputa.

 

Só lembrando.

Nesse exemplo to considerando o fato de que o ranking pvp não precisa ser resetado periodicamente, e considerando também o fato de que players que entrem no server em Outubro, consigam começar a disputar o PVP e subir um pouco no ranking. Se o cara chegar depois no server, e tiver a capacidade de matar o top ranking, ele precisa de uma chance de mesmo com muito sofrimento, alcançar uma boa posição.

Link para o comentário
Compartilhar em outros sites

@bash

 

Mas o fato é que o ranking PvP é resetado todo mês, já que vale 1 mês de Hiper VIP para o vencedor, então acho que esse método de nunca ser resetado dificilmente será colocado pelo ADM.

Link para o comentário
Compartilhar em outros sites

Mas o fato é que o ranking PvP é resetado todo mês, já que vale 1 mês de Hiper VIP para o vencedor, então acho que esse método de nunca ser resetado dificilmente será colocado pelo ADM.

 

Tanto a fórmula do Level quanto a fórmula dos Pontos (sugerido pelo ddz), são eficazes mesmo havendo reset, pois deixa o PVP bem mais disputado durante os 30 dias. Essas fórmulas funcionam bem para PVPs não resetados porque usa uma soma justa de pontos, mas não significa que não pode ser resetado, a única diferença é que todo mundo começa do zero a cada 30 dias, mas la pelo dia 20 ainda há chance de um top ranking ser desbancado por alguém novo que mate ele adoidado e prove que é melhor no PVP.

 

No caso de haver reset periódico, poderia ser adotado apenas a fórmula de level, incluindo a proteção de mortes sequenciais (como citado no meu primeiro post). Ou ainda assim daria pra usar a fórmula dos Pontos de ranking, mas diminuir a proporção: ao invés de 2% daria pra dar 0,2%. Enfim, é totalmente adaptável.

Mesmo usando a fórmula simples do Matei - Morri / 10 seria ideal atribuir mais peso à morte, por exemplo Matei - (Morri * 3) / 10.

Isso serviria pra deixar mais disputado e se tornar mais merecido o Hiper VIP, pois em 30 dias tem muita coisa pra rolar. hehe

 

Agora cá entre nós Faraday, a impressão que me dá, é que vc anda meio lazy kkkkkkkkkkk.. Parece que ta querendo fazer o pé de meia no ranking nos primeiros dias, e depois não precisar mais ralaz pra se manter no ranking. uaehuaehaue :mal:

 

Enfim, pra todos os efeitos, essas são só sugestões né cara, usa quem quer :s:

 

Valeu =)

Link para o comentário
Compartilhar em outros sites

Na verdade é exatamente isso que está acontecendo agora, gostaria justamente de tirar essa de pegar o ranking no início e esperar acabar o mês pra receber o premio. Uma pessoa que mata 500 e não morre nenhuma não precisa ir no PvP mais nunca, já que está ficando com 500 de respeito.

 

Vamos ver o que o ADM reserva pra gnt hehe

Link para o comentário
Compartilhar em outros sites

Pode cre Faraday

Se o problema for esse (a ausência do player depois de conquistar posição), então tanto a fórmula dos Levels quanto a dos Points podem ser usadas para amenizar isso. Primeiro que o cara não vai conseguir fraudar posição tão facilmente pra subir do pvp o mais rápido possível, e Segundo, que se ele sumir, a pontuação dele fica parada e a dos outros players podem ir subindo, claro, se baterem ele justamente nas pontuações.

 

Agora se mesmo assim a ausência do player for um problema, da pra fazer uma rotina no script, em que diariamente a pontuação dos players é baixada em 1%, como se fosse uma depreciação dos pontos parados (tipo como acontece com os carros auehauehae). Desse modo, é necessário o player se preocupar em "manter" realmente seus pontos, continuando a matar pelo menos 1% a mais do que o dia anterior. No fim do mês, ele teria uma baixa total de 30%, Logo, se ele pegou 1000 pontos no dia 1 e ficou lazy até o dia 30, no final do mês ele teria +/- 700 pontos (calculei do jeito simples, sem efeito composto)

 

Nesse exemplo dos 1% ao dia, não tem uma fórmula específica, teria que ver como o script do pvp funciona, com que tipo de gravação das variáveis, pra então poder implementar a rotina. Por exemplo, se for por mysql, uma query executando um update com o calculo seria o suficiente. Se for com variáveis globais permanentes, o script teria que passar por todas as variáveis dando a baixa de 1%.

 

Mas a ideia é essa.

 

Enfim, vamos ver as novidades ae :o.o:

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...