Suporte ao desenvolvimento de jogos!


    [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Compartilhe
    avatar
    Megos Arco
    Moderador Local
    Moderador Local

    Mensagens : 38
    Créditos : 20

    [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Mensagem por Megos Arco em Qui Fev 17, 2011 5:15 am

    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!


    _________________
    Meu projeto:




    Nunca desestimule alguém que evolui, não importa quão lenta seja a evolução :pirat:
    avatar
    Valentine
    Administrador
    Administrador

    Medalhas :
    Mensagens : 4942
    Créditos : 1051

    Re: [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Mensagem por Valentine em Qui Fev 17, 2011 5:05 pm

    Bem legal cara
    + 1 crédito

    Eu tinha tentado antes mais tava dando overflow, mas vou tentar agora com esse tuto


    _________________
    avatar
    HugoFreitas
    Administrador
    Administrador

    Medalhas :
    Mensagens : 661
    Créditos : 175

    Re: [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Mensagem por HugoFreitas em Qui Fev 17, 2011 8:47 pm

    Muito bom Megos!
    Você poderia entrar para equipe da aldeia, ou para a equipe pessoal minha e do marlos, seria uma boa!

    +1 créd.


    _________________


    avatar
    Megos Arco
    Moderador Local
    Moderador Local

    Mensagens : 38
    Créditos : 20

    Re: [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Mensagem por Megos Arco em Qui Fev 17, 2011 11:04 pm

    Olá muito obrigado aos 2!

    Hugo te mandei uma pvt!

    Recebeu?


    Abraço!


    _________________
    Meu projeto:




    Nunca desestimule alguém que evolui, não importa quão lenta seja a evolução :pirat:

    Conteúdo patrocinado

    Re: [EO] Como aumentar os stats (para mais de 255) sem dar overflow!

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Seg Ago 20, 2018 12:19 am