Suporte ao desenvolvimento de jogos!


    Modificando e Entendendo os Status

    Compartilhe
    avatar
    FilipeJF
    Aldeia Friend
    Aldeia Friend

    Medalhas :
    Mensagens : 1920
    Créditos : 134

    Modificando e Entendendo os Status

    Mensagem por FilipeJF em Ter Abr 12, 2011 3:58 pm

    Entendendo os status


    Bem, muitos já tiveram dúvidas como para que serve "Spirit", "Willpower", etc...

    Primeiramente,
    o "Spirit" foi retirado da engine, e o que este status fazia, foi para
    o Willpower... ou seja, agora, o Willpower é "Willpower + Spirit".


    Spoiler:
    Strength: Força do ataque.
    Endurance: Defesa contra ataques físicos e mágicos**, e recuperação de HP.
    Agility: Aumenta sua esquiva (Dodge, Parry, etc) e aumenta o dano crítico.
    Intelligence/Magic: Aumenta o dano das magias**, aumenta o máximo de MP.
    Willpower: Aumenta a velocidade de recuperação de HP e MP.

    **: Como padrão, defesa contra magia não vem na engine, nem dano da magia + inteligência; para ativar, leia
    este tutorial do megosarco.

    Atenção:

    Antes
    de iniciar a modificação de status, recomendo que realize um backup
    (cópia de segurança) do seu jogo, pois eu não responsabilizarei-me por
    qualquer ato ou erro que você cometer!

    ______________________________________________________

    Modificando os status


    Bem, vamos começar a modificação pelo Willpower.

    Willpower

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Function GetPlayerVitalRegen.

    Dentro desta function, haverá um código mais ou menos assim:

    Código:
    Select Case Vital
            Case HP
                i = (GetPlayerStat(index, Stats.Willpower) * 0.8) + 6
            Case MP
                i = (GetPlayerStat(index, Stats.Willpower) / 4) + 12.5
        End Select

    É
    aqui que edita-se a velocidade de recuperação de HP e MP! Você pode
    editar os valores como quiser, e pode até mesmo colocar outros status
    pra recuperar!

    Eu modifiquei o meu, que ficou assim:

    Código:
    Select Case Vital
            Case HP
                i = (GetPlayerStat(index, Stats.Willpower) * 0.7) + (GetPlayerStat(index, Stats.Endurance) * 0.5) + 6
            Case MP
                i = (GetPlayerStat(index, Stats.Willpower) / 2) + (GetPlayerStat(index, Stats.Intelligence)) + 12.5
        End Select

    Modifique á vontade, use a imaginação!

    Strength

    Spoiler:
    Aqui, poderemos modificar o dano causado pelo ataque normal (CTRL)!

    Vá ao Server~Side, entre no modCombat e procure por Function GetPlayerDamage (está abaixo do GetPlayerVitalRegen)!

    Você verá um código mais ou menos assim:

    Código:
    If GetPlayerEquipment(index, Weapon) > 0 Then
            weaponNum = GetPlayerEquipment(index, Weapon)
            GetPlayerDamage = 0.085 * 5 * GetPlayerStat(index, Strength) * Item(weaponNum).Data2 + (GetPlayerLevel(index) / 5)
        Else
            GetPlayerDamage = 0.085 * 5 * GetPlayerStat(index, Strength) + (GetPlayerLevel(index) / 5)
        End If

    Você pode modificá-lo como quiser. Para quem não sabe, o "Item(weaponNum).Data2" é o dano da arma equipada.

    Eu modifiquei assim:

    Código:
    If GetPlayerEquipment(index, Weapon) > 0 Then
            weaponNum = GetPlayerEquipment(index, Weapon)
            GetPlayerDamage = 0.085 * 8 * GetPlayerStat(index, Strength) * Item(weaponNum).Data2 + (GetPlayerLevel(index) / 3)
        Else
            GetPlayerDamage = 0.085 * 8 * GetPlayerStat(index, Strength) + (GetPlayerLevel(index) / 3)
        End If

    Deixei um pouquinho mais forte. Successful"

    Outros status, irei explicar mais tarde como modificá-los.


    ____________________________________________________

    Modificando os status dos NPCs!

    Agora, vamos editar os status dos NPCs, como sua vitalidade máxima, seu dano e sua recuperação de HP.

    Modificando sua vitalidade máxima:

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Function GetNpcMaxVital (está abaixo do GetPlayerDamage)!

    Você verá um código mais ou menos assim:

    Código:
    Select Case Vital
            Case HP
                GetNpcMaxVital = Npc(npcNum).HP
            Case MP
                GetNpcMaxVital = 30 + (Npc(npcNum).Stat(Intelligence) * 10) + 2
        End Select

    Você poderá modificá-lo á vontade, lembrando que o Npc(npcNum).HP é a HP do NPC, que está no editor de NPCs.

    Você pode até mesmo adicionar um novo stats no seu game, que "diminui os status dos inimigos"!!

    Eu modifiquei o meu assim:

    Código:
    Select Case Vital[/color][/color]
    [color=red][color=black]        Case HP[/color][/color]
    [color=red][color=black]            GetNpcMaxVital = Npc(npcNum).HP - 3[/color][/color]
    [color=red][color=black]        Case MP[/color][/color]
    [color=red][color=black]            GetNpcMaxVital = 30 + (Npc(npcNum).Stat(Intelligence) * 10) + 2[/color][/color]
    [color=red][color=black]    End Select


    Modifique á vontade! Mas lembre-se de sempre fazer um backup! Successful


    Modificando o dano e recuperação de HP do NPC:

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Function GetNpcVitalRegen (caso queira editar a recuperação de HP) ou Function GetNpcDamage (caso queira editar o dano do NPC).

    Acho que nem preciso explicar tudo, né?! Só seguir os mesmos passos das modificações anteriores.


    _________________________________________________________________


    Modificando status de rates
    Nesta parte, você poderá modificar os status de "rate", como dano crítico e esquiva!

    Modificando % de dano crítico:

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Public Function CanPlayerCrit!

    Haverá um código assim:

    Código:
    rate = GetPlayerStat(index, Agility) / 52.08[/color][/color]
    [color=blue][color=black]    rndNum = RAND(1, 100)[/color][/color]
    [color=blue][color=black]    If rndNum <= rate Then[/color][/color]
    [color=blue][color=black]        CanPlayerCrit = True[/color][/color]
    [color=blue][color=black]    End If


    Modifique o "rate = ...". O resto, deixe o AI fazer a lógica. u_u

    Eu modifiquei o meu, e ficou assim:

    Código:
    rate = GetPlayerStat(index, Agility) / 10[/color][/color]
    [color=blue][color=black]    rndNum = RAND(1, 100)[/color][/color]
    [color=blue][color=black]    If rndNum <= rate Then[/color][/color]
    [color=blue][color=black]        CanPlayerCrit = True[/color][/color]
    [color=blue][color=black]    End If


    Modifique á seu gosto!


    Modificando % de Dodge (esquiva):

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Public Function CanPlayerDodge!

    Haverá um código parecido com esse:

    Código:
    rate = GetPlayerStat(index, Agility) / 83.3[/color][/color]
    [color=blue][color=black]    rndNum = RAND(1, 100)[/color][/color]
    [color=blue][color=black]    If rndNum <= rate Then[/color][/color]
    [color=blue][color=black]        CanPlayerDodge = True[/color][/color]
    [color=blue][color=black]    End If


    Modifique o "rate = ...". Eu modifiquei o meu, que ficou assim:

    Código:
    rate = GetPlayerStat(index, Agility) / 10[/color][/color]
    [color=blue][color=black]    rndNum = RAND(1, 100)[/color][/color]
    [color=blue][color=black]    If rndNum <= rate Then[/color][/color]
    [color=blue][color=black]        CanPlayerDodge = True[/color][/color]
    [color=blue][color=black]    End If


    Modificando % de Parry:

    Spoiler:
    Vá ao Server~Side, entre no modCombat e procure por Public Function CanPlayerParry!

    Terá um código assim:

    Código:
    rate = GetPlayerStat(index, Strength) * 0.25[/color][/color]
    [color=blue][color=black]    rndNum = RAND(1, 100)[/color][/color]
    [color=blue][color=black]    If rndNum <= rate Then[/color][/color]
    [color=blue][color=black]        CanPlayerParry = True[/color][/color]
    [color=blue][color=black]    End If


    Modifique-o á vontade! O meu eu deixei assim mesmo, porque está em um valor bom...


    Modificando Critical, Dodge e Parry de NPCs:

    Spoiler:
    Faça os mesmos procedimentos acima. Mas, faça em:

    Public Function CanNpcCrit
    Public Function CanNpcDodge
    Public Function CanNpcParry![/b]


    __________________________________________________

    Você pode modificar muitas outras coisas neste modCombat.

    Em breve, farei um tutorial, modificando muitas coisas em seu jogo.

    Créditos:
    DarkKang


    _________________

    avatar
    Valentine
    Administrador
    Administrador

    Medalhas :
    Mensagens : 4801
    Créditos : 1020

    Re: Modificando e Entendendo os Status

    Mensagem por Valentine em Ter Abr 12, 2011 5:52 pm

    Muito bom
    +1 crédito

    Tava dificio entender e traduzir essas coisas no Eo, porque o robin abreviou ai fica complicado saber o que era aquilo ;x


    _________________
    avatar
    FilipeJF
    Aldeia Friend
    Aldeia Friend

    Medalhas :
    Mensagens : 1920
    Créditos : 134

    Re: Modificando e Entendendo os Status

    Mensagem por FilipeJF em Ter Abr 12, 2011 6:57 pm

    É, Eu tambem achei o mesmo que você, isso nos da uma breve noção, ou melhor ajuda muito.


    _________________


    Conteúdo patrocinado

    Re: Modificando e Entendendo os Status

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Dom Abr 22, 2018 7:17 pm