MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!

Participe do fórum, é rápido e fácil

MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!
MMORPG Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ranking Configurável(LevelResetsGuildPoints).txt

+5
M.Dutra
DarkninoxD
V-Force
Pablo
Thales12
9 participantes

Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Thales12 Dom 26 Fev 2012, 12:04

Mas por que configurável?
-Por que eu otimizei ele pra você escolher qual valor quer usar, com simples configuração, assim se você quiser configurar ele pra ter 3 jogadores no ranking, ou 300, basta apenas adicionar 2 zeros no numero e o sistema faz o resto. Alem disso, se você quiser fazer com que ele seja um sistema de Reset, Level, Guild Points, ou o caralho a 4, tanto faz, só mudar o valor (:

Então vamos ao sistema:

Server

Primeiro, vá ao modTypes, e acima de:

Código:
Type PlayerInvRec
    Num As Long
    Value As Long
    Dur As Long
End Type

Adicione:

Código:

Public Const MAX_RANK = 20 'Este aqui é o valor de quantos players tem no rank
Public Ranking(1 To MAX_RANK + 1) As RankingRec
Public TempRank(1 To MAX_RANK + 1) As RankingRec

Type RankingRec
Name As String
Level As Long
End Type

Agora, adicione esta sub no final do modGamelogic:

Código:
Sub CheckRanking(ByVal Index As Long)
Dim i As Long
Dim n As Long
Dim o As Long
Dim Valor As Long
Dim Nome As String
Valor = GetPlayerLevel(Index) 'Valor (Aqui voce pode substituir pelo level do player, ou quantidade de resets dele (provavelmente será GetplayerResets(index)), voce quem decide
Nome = GetPlayerName(Index) 'Aqui é caso voce nao use o nome do player, caso seja um ranking de guilds por exemplo, seria GetplayerGuild(index) no lugar do nome
For i = 1 To MAX_RANK
If Ranking(i).Level < Valor Then

'Escrever informaçoes no TempRank
For n = 1 To MAX_RANK
TempRank(n).Name = Ranking(n).Name
TempRank(n).Level = Ranking(n).Level
Next n

'Reduzir uma posição dos demais
For n = i To MAX_RANK
If n = MAX_RANK Then Exit For
Ranking(n + 1).Level = TempRank(n).Level
Ranking(n + 1).Name = TempRank(n).Name
Next n

'Adicionar jogador no ranking
Ranking(i).Level = Valor
Ranking(i).Name = Nome

'Verificar existencia do jogador que não seja esta adicionada agora
For n = i + 1 To MAX_RANK
If Ranking(n).Name = Nome Then
'Se sim, subir os anteriores uma posição acima
For o = n To MAX_RANK
Ranking(o).Name = Ranking(o + 1).Name
Ranking(o).Level = Ranking(o + 1).Level
Next o
End If
Next n

Exit For
End If
Next i
End Sub

Agora, acima de:

Código:
' :::::::::::::::::::::::::
            ' :: Status Point Packet ::
            ' :::::::::::::::::::::::::

Adicione:

Código:
Case "ranking"
        Packet = "ranking" & SEP_CHAR
        For i = 1 To MAX_RANK
        Packet = Packet & Ranking(i).Name & SEP_CHAR
        Packet = Packet & Ranking(i).Level & SEP_CHAR
        Next i
        Packet = Packet & END_CHAR
        Call SendDataTo(Index, Packet)
        Exit Sub

Agora, no Sub InitServer, abaixo de:
Código:
Call SetStatus("Carregando falas...")
    Call LoadSpeeches

Adicione:

Código:
Call SetStatus("Carregando ranking...")
    Call LoadRanking

Agora no DestroyServer, abaixo de:

Código:
Call SetStatus("Descarregando sockets e timers...")

Adicione:

Código:
Call SetStatus("Salvando Ranking...")
Call SaveRanking

Agora crie as subs que a gente fez, em algum lugar do modDatabase (pode ser no fim), adicione:

Código:
Sub SaveRanking()
Dim i As Long
For i = 1 To MAX_RANK
Call SpecialPutVar(App.Path & "\TopLevel.ini", Val(i), "Nome", Ranking(i).Name)
Call SpecialPutVar(App.Path & "\TopLevel.ini", Val(i), "Level", Val(Ranking(i).Level))
Next i
End Sub

Sub LoadRanking()
Dim i As Long
For i = 1 To MAX_RANK
Ranking(i).Name = GetVar(App.Path & "\TopLevel.ini", Val(i), "Nome")
Ranking(i).Level = Val(GetVar(App.Path & "\TopLevel.ini", Val(i), "Level"))
Next i
End Sub

Agora vamos adicionar a checagem, mas é o seguinte, você tem que saber aonde você vai colocar a checagem, se por exemplo for um ranking de resets, ele tem que estar na sub aonde reseta o player, se for um ranking de level, vai ser na Sub CheckPlayerLevelUp, que no caso é aonde ele passa o player de level, como não sei como funciona o sistema de resets que cada um usa, vou mostrar o modo de level que é provavelmente oque todos usam, na sub CheckPlayerLevelUp, abaixo de:

Código:
Call SendDataToMap(GetPlayerMap(Index), "levelup" & SEP_CHAR & Index & END_CHAR)

Adicione:

Código:
Call CheckRanking(Index)

PRONTO! o server já acabou

Cliente

na frmMirage, adicione um botao com o seguinte código:

Código:
Call SendData("ranking" & SEP_CHAR & END_CHAR)

Agora no modClientTCP, acima de:

Código:
' :::::::::::::::::::::::::
    ' :: Map npc data packet ::
    ' :::::::::::::::::::::::::

Adicione:

Código:
If Parse(0) = "ranking" Then
    frmMirage.lstRanking.Clear
    n = 1
 
    For i = 1 To MAX_RANK
        frmMirage.lstRanking.AddItem "Nome: " & Parse(n) & " - " & Val(Parse(n + 1))
        n = n + 2
    Next i
 
    End If

Agora na frmMirage, adicione uma lista com o nome lstRanking

Por fim, é isso! (:

Espero que ninguém aqui tenha problemas com o sistema, sugiro que usem uma engine zerada pra testar antes de colocar no seu jogo, ou salve ele antes de adicionar o sistema, por que caso aconteça algum problema tente seguir o tutorial novamente lendo atentamente. Algum problema, duvida, bug, crítica, sugestão, pedido, só postar logo abaixo (:

ESTE TUTORIAL FOI CRIADO POR BOASFESTA, CASO QUEIRA USÁ-LO COMO BASE PARA POSTAR AQUI, NÃO ESQUEÇA DOS CRÉDITOS.

ESTE CONTEÚDO É DA MMORPG BR, E É PROIBIDO POSTÁ-LO COMO TUTORIAL EM ALGUM OUTRO FÓRUM, MESMO QUE SEJA APENAS BASEADO NO MESMO!

Créditos: boasfesta
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Pablo Dom 26 Fev 2012, 13:12

Primeiro a posta no forum da mmo que emoção *-*
muito bom thales vo usar no meu projeto +1 cred ;D
Pablo
Pablo
Moderador Global
Moderador Global

Mensagens : 1371

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por V-Force Dom 26 Fev 2012, 14:23

Interessante, mto bom, +1 de cred...xo procurar o Boas aki no forum pra dar cred nele tbm...
V-Force
V-Force
Administrador V-Force
Administrador V-Force

Mensagens : 933

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por DarkninoxD Seg 19 Mar 2012, 14:44

Ai mano na parte Do Client~Side ai na hora do Compile da Erro nas Seguintes partes

Código:

If Parse(0) = "[b]ranking[/b]" Then
    frmMirage.lstRanking.Clear
    n = 1
 
    For i = 1 To "MAX_RANK" << Erro Aqui mais la ta sem Aspas e Logico
        frmMirage.lstRanking.AddItem "Nome: " & Parse(n) & " - " & Val(Parse(n + 1))
        n = n + 2
    Next i
 
    End If

ai qdo Deleto ele da erro tb na "Next i"

Ai eu apago tb vai normal mais ai abre o rank normal mais fica so o Primeiro do Rank mais ninguem '-'

Edit~~~~~~~~
Achei um Error. No Client~side tem q conter isto aqui Tambem oo

Código:

Public Const MAX_RANK = 20 'Este aqui é o valor de que voce colocou no servidor.
Public Ranking(1 To MAX_RANK + 1) As RankingRec
Public TempRank(1 To MAX_RANK + 1) As RankingRec

Type RankingRec
Name As String
Level As Long
End Type

eu coloquei isso no Client side e pego mais agora ta assim

Ranking Configurável(LevelResetsGuildPoints).txt Imagemiug

Ajuda ai '-'

Edit ~~~~

Sugiro a vcs antes de postar uma Bosta como essa, Favor testar antes '-'
DarkninoxD
DarkninoxD
Membro
Membro

Mensagens : 143

http://elitegamesonline.com.br

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Pablo Dom 01 Abr 2012, 10:11

DarkninoxD escreveu:Ai mano na parte Do Client~Side ai na hora do Compile da Erro nas Seguintes partes

Código:

If Parse(0) = "[b]ranking[/b]" Then
    frmMirage.lstRanking.Clear
    n = 1
 
    For i = 1 To "MAX_RANK" << Erro Aqui mais la ta sem Aspas e Logico
        frmMirage.lstRanking.AddItem "Nome: " & Parse(n) & " - " & Val(Parse(n + 1))
        n = n + 2
    Next i
 
    End If

ai qdo Deleto ele da erro tb na "Next i"

Ai eu apago tb vai normal mais ai abre o rank normal mais fica so o Primeiro do Rank mais ninguem '-'

Edit~~~~~~~~
Achei um Error. No Client~side tem q conter isto aqui Tambem oo

Código:

Public Const MAX_RANK = 20 'Este aqui é o valor de que voce colocou no servidor.
Public Ranking(1 To MAX_RANK + 1) As RankingRec
Public TempRank(1 To MAX_RANK + 1) As RankingRec

Type RankingRec
Name As String
Level As Long
End Type

eu coloquei isso no Client side e pego mais agora ta assim

Ranking Configurável(LevelResetsGuildPoints).txt Imagemiug

Ajuda ai '-'

Edit ~~~~

Sugiro a vcs antes de postar uma Bosta como essa, Favor testar antes '-'

mano aprenda a imterpretar um tutorial que pelo caso você errou feio, você criou 1 form que não pedi no tutorial é ainda não leu corretamente para faze-lo, se você quiser eu tiro print de como ficou o meu aqui que fiz para um amigo, bom o meu ficou sem nenhum erro, impecavel sem bugs e nem nada.
Pablo
Pablo
Moderador Global
Moderador Global

Mensagens : 1371

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por M.Dutra Dom 01 Abr 2012, 13:19

Pablo escreveu:
DarkninoxD escreveu:Ai mano na parte Do Client~Side ai na hora do Compile da Erro nas Seguintes partes

Código:

If Parse(0) = "[b]ranking[/b]" Then
    frmMirage.lstRanking.Clear
    n = 1
 
    For i = 1 To "MAX_RANK" << Erro Aqui mais la ta sem Aspas e Logico
        frmMirage.lstRanking.AddItem "Nome: " & Parse(n) & " - " & Val(Parse(n + 1))
        n = n + 2
    Next i
 
    End If

ai qdo Deleto ele da erro tb na "Next i"

Ai eu apago tb vai normal mais ai abre o rank normal mais fica so o Primeiro do Rank mais ninguem '-'

Edit~~~~~~~~
Achei um Error. No Client~side tem q conter isto aqui Tambem oo

Código:

Public Const MAX_RANK = 20 'Este aqui é o valor de que voce colocou no servidor.
Public Ranking(1 To MAX_RANK + 1) As RankingRec
Public TempRank(1 To MAX_RANK + 1) As RankingRec

Type RankingRec
Name As String
Level As Long
End Type

eu coloquei isso no Client side e pego mais agora ta assim

Ranking Configurável(LevelResetsGuildPoints).txt Imagemiug

Ajuda ai '-'

Edit ~~~~

Sugiro a vcs antes de postar uma Bosta como essa, Favor testar antes '-'

mano aprenda a imterpretar um tutorial que pelo caso você errou feio, você criou 1 form que não pedi no tutorial é ainda não leu corretamente para faze-lo, se você quiser eu tiro print de como ficou o meu aqui que fiz para um amigo, bom o meu ficou sem nenhum erro, impecavel sem bugs e nem nada.

Sim ele tem que aprender a interpretar sim mais nesse caso ai não tem nada a ver com a Form ele apenas botou o código de atualizar o Ranking no lugar errado.
OBS: Falo isso porque tive o mesmo problema e resolvi ele apenas colocando o Call CheckRanking(Index) no lugar correto.

Sugiro a vcs antes de postar uma Bosta como essa, Favor testar antes '-'
kkkkkkkkkkkkkk' falo o mesmo pra você tenho aqui no meu jogo e funciona perfeitamente "boasfesta" Ganhou meu crédito.
Essa eu ri alto bosta kkkkkkkkkkkkk se é bosta faça o seu e use-o.
Bosta é tu filho. vlw

Atenciosamente, M.Dutra
M.Dutra
M.Dutra
Membro Junior
Membro Junior

Mensagens : 94

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Pablo Dom 01 Abr 2012, 14:54

M.Dutra, fiz esse sistema para o jogo do meu amigo que ele me pediu ja que não posso dar o meu ranking supremo das galaxias, então quando vim olhar aqui o topico tae o muleque dizendo

Sugiro a vcs antes de postar uma Bosta como essa, Favor testar antes '-'

pocha mano isso ae foi brabo, não sabe concluir um sistema e ainda falar coisa, acho que a galera de hoje em dia, não quer nem aprender as coisas e ja sair dizendo que tudo e bosta, eu lembro dos tempos antigos que quase não tinha sistema e os jogos eram feitos quase sem nada..
Pablo
Pablo
Moderador Global
Moderador Global

Mensagens : 1371

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Lucas Roberto Dom 06 maio 2012, 15:48

ai desculpa reviver o topico etc...
mais estive observando este topico e vi que muitos criticaram o DarkninoxD e não ajudo

DarkninoxD refaz o sistema inteiro como está pedindo sem colocar em uma form
e depois que concluir coloque isso no client-side

procure por

Código:
Public Const MAX_FRIENDS = 20

ai abaixo coloque

Código:
Public Const MAX_RANK = 20

pronto resolvido seu problema e esta aprovado 100% +1 de cred BoasFesta
Lucas Roberto
Lucas Roberto
Membro Veterano
Membro Veterano

Mensagens : 1794

http://universogamesmmo.forumeiros.com/forum

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por boasfesta Ter 14 maio 2013, 12:33

Eu gostaria de pedir para o autor do tópico por favor colocar meus créditos ali no fim do tutorial, obrigado.

(To ligado que esse tópico tá morto mas eu realmente gostaria que tivesse meu nome ali bem claro antes que aconteça merdas como antes, sem querer ser chato mas sabe como são os noobs de hoje em dia...)


Última edição por boasfesta em Ter 14 maio 2013, 12:42, editado 1 vez(es)
boasfesta
boasfesta
Membro Sênior
Membro Sênior

Mensagens : 292

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por maza Ter 14 maio 2013, 12:41

pow boa festa me da uma bola ai to tentando fazer esse tuto mais num ta rolando cara tem um jeito mais facil de fazer um ranking de reset?
maza
maza
Novato
Novato

Mensagens : 48

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por boasfesta Ter 14 maio 2013, 12:43

Eu respondi no seu tópico de ajuda: http://www.mmorpgbr.com/t14300-sistema-de-ranking-de-resets#125984

Resolvemos isso por lá ok? Wink
boasfesta
boasfesta
Membro Sênior
Membro Sênior

Mensagens : 292

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Zyzz Ter 14 maio 2013, 13:35

Não seria mais fácil enviar uma PM pedindo pra colocar os créditos, isso evitaria "reviver" o tópico, na próxima infelizmente terei que puni-lo :/
Zyzz
Zyzz
Membro Junior
Membro Junior

Mensagens : 65

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por boasfesta Qui 16 maio 2013, 15:01

Por que notei que há pessoas o utilizando e necessitando de ajuda como o maza portanto acho que não seria problema revivê-lo nessas condições, já que outras pessoas poderiam ter o mesmo problema pois o sistema é complicado Wink
Mas fique á vontade.
boasfesta
boasfesta
Membro Sênior
Membro Sênior

Mensagens : 292

Ir para o topo Ir para baixo

Ranking Configurável(LevelResetsGuildPoints).txt Empty Re: Ranking Configurável(LevelResetsGuildPoints).txt

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos