Galera resolvi criar esse tutorial, pois foi uma
dúvida bem colocada no tópico do "Dark kang". (lá no mmorpg Brasil)
Vi que a galera tava tendo problemas para arrumar isso. (Inclusive o membro
"Tamaki" criou um tópico na parte de suporte, pendido esse sistema). (lá no mmorpg Brasil)
Acho que isso é mais do que um bom motivo para esse tutorial ser aberto.
((AVISO))
Faça com calma, para não se perder! Pense enquanto você está fazendo, assim
você vai poder usar essa mesma lógica para outras coisas!
ENTÃO MÃOS-A-OBRA!
----Explicação Lógica---
-O problema está acontecendo pois a variável "stats" foi criada como
"byte" isso é: Só permite 0 á 255 o número.
(Eu não cheguei a olhar como era, para arrumar isso na versão 1.2, mas na
versão 2.0 é assim como vou postar).
-Dando seguimento: O que você precisa fazer é avisar pro VB, que você quer que
a variável dos stats seja "LONG" (permite até 2.147.483.648) ou "INTEGER" (permite até 32.767). Entendido?
-Dada a explicação, vamos ao passo-a-passo!
-----PASSO 1!-----------
-Abra a source do cliente e procure por "Private Type PlayerRec"
-Embaixo disso, dentre as linhas de códigos que tem ali, vai ter isso aqui:
"Stat(1 To Stats.Stat_Count - 1) As Byte" SUBISTITUA ISSO POR "Stat(1 To Stats.Stat_Count - 1) As Long".
--Agora procure por "If Value > MAX_BYTE Then Value = MAX_BYTE" e mude para
"If Value > MAX_LONG Then Value = MAX_LONG"
(Esse era um dos problemas, muitos não sabiam que era preciso alterar aqui.)
---Agora procure por "frmMain.lblPoints.Caption = GetPlayerPOINTS" ai vai ter um coisa escrita assim:
"If GetPlayerStat(Index, x) < 255 Then" troque o 255 por o Maximo de stats que você quer! 1000, 2000 etc...
--------PASSO 2!------------
-Abra a source do server e procure por: " ' Stats " embaixo disso vai ter:
" Stat(1 To Stats.Stat_Count - 1) As Byte " troque por: " Stat(1 To Stats.Stat_Count - 1) As Long "
-Procure por: "Dim PointType As Byte" troque por "Dim PointType As Long"
-Agora procure por: "If GetPlayerRawStat(index, PointType) >= 255"
e troque o 255 pelo número que você colocou LÁ no cliente como sendo o "Maximo" de stats!
---------
PARABÉNS você acaba de aumentar os stats máximos dos seus player!!
Dicas!
1- Você pode fazer algo parecido com esse tutorial, para mudar os outros
sistemas que estão travados no limite de
"255" Siga a mesma lógica, que você vai conseguir ^^
2- Você pode liberar o limite de 255 dos stats que os itens acrescentam.
(Lembre-se de modificar na "scrolbar" o "Max" de 255 para o
número que você desejar.)
3-Use a criatividade! =D
BOM! espero que tenham gostado desse tutorial \o\, Eu estava bolando um
tutorial legal, de influência de determinados "maps" no dano de
algumas classes, um sistema de "dano aumentado, por determinados terrenos"
por exemplo: Mágicos tem os stats multiplicados por 2, quando entram nos maps
de floresta.
Mas como a galerinha tava mais necessitada desse aqui, fica para uma próxima o
outro tuto
Abraço e Boa sorte!
Créditos: A mim mesmo Megos Arco!
dúvida bem colocada no tópico do "Dark kang". (lá no mmorpg Brasil)
Vi que a galera tava tendo problemas para arrumar isso. (Inclusive o membro
"Tamaki" criou um tópico na parte de suporte, pendido esse sistema). (lá no mmorpg Brasil)
Acho que isso é mais do que um bom motivo para esse tutorial ser aberto.
((AVISO))
Faça com calma, para não se perder! Pense enquanto você está fazendo, assim
você vai poder usar essa mesma lógica para outras coisas!
ENTÃO MÃOS-A-OBRA!
----Explicação Lógica---
-O problema está acontecendo pois a variável "stats" foi criada como
"byte" isso é: Só permite 0 á 255 o número.
(Eu não cheguei a olhar como era, para arrumar isso na versão 1.2, mas na
versão 2.0 é assim como vou postar).
-Dando seguimento: O que você precisa fazer é avisar pro VB, que você quer que
a variável dos stats seja "LONG" (permite até 2.147.483.648) ou "INTEGER" (permite até 32.767). Entendido?
-Dada a explicação, vamos ao passo-a-passo!
-----PASSO 1!-----------
-Abra a source do cliente e procure por "Private Type PlayerRec"
-Embaixo disso, dentre as linhas de códigos que tem ali, vai ter isso aqui:
"Stat(1 To Stats.Stat_Count - 1) As Byte" SUBISTITUA ISSO POR "Stat(1 To Stats.Stat_Count - 1) As Long".
--Agora procure por "If Value > MAX_BYTE Then Value = MAX_BYTE" e mude para
"If Value > MAX_LONG Then Value = MAX_LONG"
(Esse era um dos problemas, muitos não sabiam que era preciso alterar aqui.)
---Agora procure por "frmMain.lblPoints.Caption = GetPlayerPOINTS" ai vai ter um coisa escrita assim:
"If GetPlayerStat(Index, x) < 255 Then" troque o 255 por o Maximo de stats que você quer! 1000, 2000 etc...
--------PASSO 2!------------
-Abra a source do server e procure por: " ' Stats " embaixo disso vai ter:
" Stat(1 To Stats.Stat_Count - 1) As Byte " troque por: " Stat(1 To Stats.Stat_Count - 1) As Long "
-Procure por: "Dim PointType As Byte" troque por "Dim PointType As Long"
-Agora procure por: "If GetPlayerRawStat(index, PointType) >= 255"
e troque o 255 pelo número que você colocou LÁ no cliente como sendo o "Maximo" de stats!
---------
PARABÉNS você acaba de aumentar os stats máximos dos seus player!!
Dicas!
1- Você pode fazer algo parecido com esse tutorial, para mudar os outros
sistemas que estão travados no limite de
"255" Siga a mesma lógica, que você vai conseguir ^^
2- Você pode liberar o limite de 255 dos stats que os itens acrescentam.
(Lembre-se de modificar na "scrolbar" o "Max" de 255 para o
número que você desejar.)
3-Use a criatividade! =D
BOM! espero que tenham gostado desse tutorial \o\, Eu estava bolando um
tutorial legal, de influência de determinados "maps" no dano de
algumas classes, um sistema de "dano aumentado, por determinados terrenos"
por exemplo: Mágicos tem os stats multiplicados por 2, quando entram nos maps
de floresta.
Mas como a galerinha tava mais necessitada desse aqui, fica para uma próxima o
outro tuto
Abraço e Boa sorte!
Créditos: A mim mesmo Megos Arco!