Up em Grupos

    Compartilhe

    gui408
    Ocasional
    Ocasional

    Mensagens : 184
    Créditos : 7

    Up em Grupos

    Mensagem por gui408 em Dom Jun 07, 2015 3:25 pm

    Ola galera,tem um tempo q estou tentando arrumar um modo em que,um player de level alto nao up outro player de level baixo rapidao,pois fik sem logica.
    Exemplo um player lvl 1 pede ajuda a outro player lvl 110,e esse player lvl 1 upa rapidao,eu queria de algum modo interromper isso.
    Eu ja puis pra ganha exp grupo se for apenas no mesmo mapa,mas isso nao e suficiente ja que o outro lvl alto pode ir matando e upando o outro rapido de qualquer forma.
    Entao queria ajuda de vcs,eu ja fiz um tutorial,exp de acordo com lvl do npc,mas tipo se c usa evento de xp,a exp buga,eu queria por assim...
    exemplo... Player lvl 1 so vai ganha exp ao mata mobs 10 leveis de diferenca,se ele estiver lvl 11,ao mata o mob lvl 1 nao ganha mais exp,assim ficaria melhor ou se tiver outro modo,mas eu nao quero que o player ganha mais exp caso ele mate um npc de lvl maior,bem se puderem ajuda,obrigado pela atencao.

    Dooolly
    Moderador Global
    Moderador Global

    Medalhas :
    Mensagens : 1173
    Créditos : 124

    Re: Up em Grupos

    Mensagem por Dooolly em Dom Jun 07, 2015 4:41 pm

    gui408 escreveu:Ola galera,tem um tempo q estou tentando arrumar um modo em que,um player de level alto nao up outro player de level baixo rapidao,pois fik sem logica.
    Exemplo um player lvl 1 pede ajuda a outro player lvl 110,e esse player lvl 1 upa rapidao,eu queria de algum modo interromper isso.
    Eu ja puis pra ganha exp grupo se for apenas no mesmo mapa,mas isso nao e suficiente ja que o outro lvl alto pode ir matando e upando o outro rapido de qualquer forma.
    Entao queria ajuda de vcs,eu ja fiz um tutorial,exp de acordo com lvl do npc,mas tipo se c usa evento de xp,a exp buga,eu queria por assim...
    exemplo... Player lvl 1 so vai ganha exp ao mata mobs 10 leveis de diferenca,se ele estiver lvl 11,ao mata o mob lvl 1 nao ganha mais exp,assim ficaria melhor ou se tiver outro modo,mas eu nao quero que o player ganha mais exp caso ele mate um npc de lvl maior,bem se puderem ajuda,obrigado pela atencao.

    Acho que isso não seria dificil de fazer, procura na sub em que o player ganha a EXP quando esta em party e poin um condição de diferença de level com os outros membros, caso o level for menor que o dele em uns 10 leveis de diferença a xp fica = 0 ou calculada pelas 1/5 de acordo com seu gosto.


    _________________
    Meu Forum

    Spoiler:


    gui408
    Ocasional
    Ocasional

    Mensagens : 184
    Créditos : 7

    Re: Up em Grupos

    Mensagem por gui408 em Dom Jun 07, 2015 5:49 pm

    Vou tentar fazer aqui,estava tentando fazer isso mas vou ir tentando se eu conscegui eu falo aqui e do um edit

    Profane ~
    Moderador Local
    Moderador Local

    Mensagens : 366
    Créditos : 66

    Re: Up em Grupos

    Mensagem por Profane ~ em Seg Jun 08, 2015 4:49 am

    Hi ;3 Acho que eu lembro como faz... Se tiver alguma falha aqui; podemos dar o help para corrigir..


    Vai no Server Side - ModCombat - na Public.. PlayerAttackNpc (acho que é essa responsável por distribuir e calcular o exp..)

    Procura isso aqui:

    Código:

            ' Make sure we dont get less then 0
            If exp < 0 Then
                exp = 1
            End If

    Acima disso adiciona :

    Código:
    ' Ganhar Menos Exp caso o NPc for level mais baixo
          If GetPlayerLevel(attacker) <= NPC(npcNum).Level Then
            exp = exp
          Else
          exp = NPC(npcNum).exp - Int(((GetPlayerLevel(attacker) - NPC(npcNum).Level) * exp) / 5)
        End If

    Isso vai fazer com que, a cada level que o jogador for maior que o Npc, irá diminuir a exp /5 (No caso 20%) Usei o numero citado pelo Dooly.

    Agora em relação ao Player Lv Alto upar um level Low...

    Pode ser um If lá no InviteAccept colocando uma diferença máxima de level que podem aceitar um Player e.e Tipo... Se o cara for... 10 leveis de diferença da Party ou do Lider da Party.. o sistema não permitiria ele entrar ou... Permitir isso, porém você adiciona uma sub que transforma o Exp da Party como individual.. (Caso PlayerAttack Level for 10 Lv maior que o do Lider... ele passaria a não enviar mais exp para a Party...ou exp = 1)

    Não sei se vai curtir a ideia.. Mas se sim, podemos ver de ajudar nisso ;3
    Att






    _________________

    gui408
    Ocasional
    Ocasional

    Mensagens : 184
    Créditos : 7

    Re: Up em Grupos

    Mensagem por gui408 em Seg Jun 08, 2015 7:28 pm

    curti a ideia,vou tentar fazer aki,mas do grupo do invite nao tenho mt ideia,se puder da uma sugestao da if.
    fiz este tutorial,ele funcionou,porem nao vejo ele funcional para mim,pos se eu coloco evento de 2x exp,a exp divide por 2 em vez de multiplicar,mesmo caso do vip,entao n e muito funcional para mim.

    Profane ~
    Moderador Local
    Moderador Local

    Mensagens : 366
    Créditos : 66

    Re: Up em Grupos

    Mensagem por Profane ~ em Ter Jun 09, 2015 2:06 pm

    [Situação 01]
    Rate Exp = 1x
    Monstro A - Level 10 - Exp = 100
    Player Lv 1 - Ganho de Exp ao Abater monstro A = 100

    Rate Exp = 2x
    Monstro A - Level 10 - Exp = 200
    Player Lv 1 - Ganho de Exp ao Abater monstro A = 200

    [Situação 02]
    Rate Exp = 1x
    Monstro A - Level 10 - Exp = 100
    Player Lv 5 - Ganho de Exp ao Abater monstro A = 20

    Rate Exp = 2x
    Monstro A - Level 10 - Exp = 200
    Player Lv 5 - Ganho de Exp ao Abater monstro A = 40

    [Situação 03]
    Rate Exp = 1x
    Monstro A - Level 10 - Exp = 100
    Player Lv 10 - Ganho de Exp ao Abater monstro A = 1

    Rate Exp = 2x
    Monstro A - Level 10 - Exp = 200
    Player Lv 10 - Ganho de Exp ao Abater monstro A = 1

    Vai ser tipo isso ;v ~ Se aumentar a Rate Exp, Vip, Server.. Numero de Player%Exp... tudo irá aumentar a exp devidamente, porém se o jogador for muitos leveis acima ou igual ao do monstro... logo a exp passará a ser 1.. evita "Farm" de jogadores leveis alto em mapas low level.. torna o jogo progressivo..

    Se a Exp é limitada, logo tenho de buscar cantos mais fortes para poder ganhar exp. Isso força jogadores a se unir em Party's e Buscarem maiores desafios.

    ##

    Já em relação ao invite de jogador leveis mais alto para a party. E.e Sugiro que procure a ... InviteAccept acho que é isso.. fazer algo do tipo

    Código:
    If GetPlayerLevel(target) > (GetPlayerLevel(Index) + 10) then
    Send PlayerMsg(i) "O Player alvo está em um level muito avançado para poder entrar em grupo; Pink"
    Exit Process
    End if

    Não tenho Vb ;c e estou afastado euhueh Posso apenas dar support "mental" e "motivacional"... Mas creio que isso ai já dê certo.. Substitua o 10 por algum numero que deseje.. whatever.. Alguém que esteja mais familiarizado e possa ver o processo me corrija se estiver falho.. n sei se ele aceita Index msm sendo o Solicitante.. ou se é aé (i) n lembro direito uheuehueh...

    Isso ai é para que ele não entre na party.. tenta enviar a solicitação, ele check se o Player Alvo é 10 Level Acima do Solicitante... (Sempre o solicitante é o Lider obvio..) então ele envia uma msg para o lider dizendo que o cara é level alto e n pode entrar no grupo.. evitando assim que um cara lv alto ajude um level low ;3

    Boa Sorte e Att ;3




    _________________

    gui408
    Ocasional
    Ocasional

    Mensagens : 184
    Créditos : 7

    Re: Up em Grupos

    Mensagem por gui408 em Ter Jun 09, 2015 9:47 pm

    Tendi,mas essas situacoes nao corresponderam aqui...
    Exemplo
    Npc lvl 10=100x
    player lvl 5 ganha=50x
    evento 2x ganha 100x

    Mas com esse seu codicos quando coloco evento 2x o player ganha 25x,so vai diminuindo,era isso xD

    Profane ~
    Moderador Local
    Moderador Local

    Mensagens : 366
    Créditos : 66

    Re: Up em Grupos

    Mensagem por Profane ~ em Ter Jun 09, 2015 10:29 pm

    É justamente por isso que é progressivo Oo ; não vejo o erro lol uheuhe


    _________________

      Data/hora atual: Qua Dez 07, 2016 5:35 am