Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


+24
wallace123
TecoKun
Samuka_Maker
samuel6406
Tsuna-kun
Canjoo
marcosfl
God of Darkness
Uchiha_Sasuke_Eternal
Nanzin
Daniel Carvalho
Mateus Silva
BrunoFox
lollllll
Fabrizio
KuraMa
SrºJokker
iCoke~
Faabinhuu ;
Jonny
LeonM²
Felix Blayder
matheus180
KaiqueHunter
28 participantes

    [Tutorial]Sistema de PK Avançado NP Master v3.0

    KaiqueHunter
    KaiqueHunter
    Experiente
    Experiente


    Mensagens : 620
    Créditos : 51

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por KaiqueHunter Seg maio 30, 2011 6:30 pm

    Sistema de PK Avançado:

    Esse sistema de PK foi baseado no do Mu Online,cuja caso a pessoa esteja PK troca a cor da Asa,a diferença é que neste caso trocaremos a Cor do Nome.
    Perguntas Frequentes:

    Pergunta:Porque esse sistema é avançado ?
    Resposta:Ele meche com varios Scriptes,inclusive o NetWork e caso a pessoa não saiba mecher com WinSock,ela pode acabar desconfigurando,por isso é recomendado que extraia uma nova pasta do NP antes de tentar fazer.

    Pergunta:Funciona em outros NetPlay ?
    Resposta:Funciona em todos NP baseados no NetPlay Plus 1.7

    1º Passo


    Antes de começar,iremos no "User Edits" e depois da linha 70,onde fica as cor iremos adicionar está
    variavel:

    Código:
    PK_COLOR = Color.new(250,0,0)

    Oque fizemos ? Nós adicionamos uma variavel contendo a cor "vermelha" que é perfeita para uma cor de quando a pessoa estiver PK.

    Agora iremos criar uma variavel com o nome de "PK Var",para o tutorial eu usei o Slot numero 10,vocês poderão usar outro Slot mas usaremos este Slot praticamente o tutorial inteiro então caso vocês queiram mudar vocês terão que modificar os Script.

    Agora que já criamos a Variavel iremos no Script "PlayerVsPlayer" e na linha 146 está assim:

    Código:
    netplayer_killed(pl) if pl.hp <= 0

    Iremos arrancar está linha de codigo e adicionaremos:

    Código:
    if pl.hp <= 0
    netplayer_killed(pl) 
    $game_variables[10] = 1
    end

    Com o "if",ela verifica se o Player que seu char atacou tem o HP igual ou menor que 0 caso sim,ele executa a função "netplayer_killed(pl)" e logo em seguida coloca o valor da variavel do Slot 10 com o valor 1,hã ? Porque colocaremos o valor 1 ? O valor da variavel sera usado para dizer se está PK ou não, o bom disso que sera possivel utiliza-las em varios sistemas,como empedir que o NPC converse com o matador,etc.Ou seja valor da variavel do Slot 10 = 1 significa que a pessoa está PK e valor 0 não está PK.

    2º Passo
    Agora falta a parte de mudar de nome,então iremos no Script "Event Text Display",este Script é responsavel por colocar o nome e a cor do nome em cima do personagem.Na linha 122 iremos modificar o "else" e colocaremos um "elsif" ficando assim.

    Código:

    if Network::Main.group == 'admin' and User_Edit::COLOR_ADMIN == true
    @text_display = [txt, ADM_Color]
    elsif $game_variables[10] == 1
    @text_display = [txt, User_Edit::PK_COLOR]
    else
    @text_display = [txt, Player_Color]
    end
    end
    end


    Com isso o Sistema de PK já estaria pronto,mas ele não seria global e ainda não teria um Refresh,ou seja mesmo que a pessoa mata-se a cor do nome iria mudar só se ela reloga-se.

    3º Passo


    Agora iremos fazer com que o Sistema de PK seja global ou seja caso a pessoa mate a cor do nome fique vermelho para os outros player,para isso iremos no Script "Game_NetPlayer" e iremos adicionar logo apos da linha 54 isto:

    Código:
    attr_accessor :variavel

    Isso foi colocado porque para que o Sistema de PK seja global é necessario que um Player verifique a variavel do Slot 10 para ver se sera colocado a cor vermelha ou a normal em cima do nome do outro player.O real problema é que o NP não tinha suporte para isso por isso é necessario adicionar está linha.
    Em seguida no mesmo Script logo apos da linha 104 iremos adicionar:

    Código:
    @variavel = 0

    Com isso estamos anulando o valor da "variavel" pois ele é redefinido quando é enviado a mensagem via Socket.
    Agora iremos no Script "Network" e na linha 381 e logo em seguida dessa linha iremos adicionar:

    Código:
    send += "@variavel = #{$game_variables[10]};"

    E logo apos da linha 519 iremos adicionar novamente este codigo:

    Código:
    send += "@variavel = #{$game_variables[10]};"

    Em seguida iremos no Script "Sprite_NetCharacter" e iremos arrancar da linha 63 até a 67 e no lugar iremos adicionar:

    Código:
    if @character.grupo == "Admin" and User_Edit::COLOR_ADMIN == true
    bitmap.font.color = User_Edit::ADM_COLOR
    elsif @character.variavel == 1
    bitmap.font.color = User_Edit::PK_COLOR
    else
    bitmap.font.color = User_Edit::PLAYER_COLOR
    end

    4º Passo

    Agora já temos um Sistema PK Global só falta a ultima coisa,fazer com que o sistema de Refresh sozinho,assim quando matarmos a cor mudar sem necessitar que relogue.
    Novamente no Script "Event Text Display" logo apos da linha 249 iremos adicionar estás linhas de codigo:

    Código:
    if @character.is_a?(Game_Player)
    dispose_display_text
    create_display_sprite(@character.text_display)
    end

    E na linha 163 iremos arrancar tanto está linha como a linha 165 e iremos adicionar:

    Código:
    if @character.is_a?(Game_Player)
    if Network::Main.group == 'admin' and User_Edit::COLOR_ADMIN == true
    bitmap.font.color = User_Edit::ADM_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] == 1
    bitmap.font.color = User_Edit::PK_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    else
    bitmap.font.color = User_Edit::PLAYER_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)   
    end
    else
    bitmap.font.color = args[1]
    bitmap.draw_text(0, 0, 160, 24, args[0], 1)
    end

    Prontinho [Tutorial]Sistema de PK Avançado NP Master v3.0 253468018 , seu proprio Sistema de PK.

    Exigencias:

    Se usar em seu jogo,dê os devidos creditos.
    Se postar em outro forum,dê os devidos creditos.
    Se copiar,se jogue de um predio.

    Sistema de PK Avançado v2.0

    Estou postando no mesmo topico porque o v2.0 só edita as funções do v1.0,então facilita eu postar no mesmo topico,além disso ajuda o forum pra não ficar tanto topico praticamente inutil.

    A versão 2.0 o PK terá Lv 1,2,3 , hã como assim ? Qual seria essa diferença de Lv,algo simples mais bem legal agora quando você matar uma pessoa você não ficaria PK logo você ficara PK lv 1 com cor amerelo,se matar novamente ficara PK lv 2 com cor Laranja e se matar novamente PK lv 3 com cor Vermelha,e se você matar alguem que estiver PK lv 1,2,3 ficara com cor azul claro Hero lv 1 e se matar mais um assasino ficara Hero lv 2 com cor azul escuro.

    1º Passo

    Vamos no "User Edits" e perto da linha 71 logo apos de:

    Código:
    PK_COLOR = Color.new(250,0,0)

    Iremos adicionar estas linhas:

    Código:
    PK1_COLOR = Color.new(255,255,0)
    #PK Lv 2
    PK2_COLOR = Color.new(255,115,0)
    #Hero Lv 1
    HERO1_COLOR = Color.new(0,128,255)
    #Hero Lv2
    HERO2_COLOR = Color.new(0,0,255)

    Estás linhas que dão a cor à cada nivel do nosso PK System.
    Logo em seguida iremos no Script "PlayervsPlayer" e iremos substituir desde a linha 146 até a 149 por esse codigo abaixo:

    Código:
    if pl.hp <= 0
    netplayer_killed(pl)
    if pl.variavel > 0
    $game_variables[10] -= 1
    else
    $game_variables[10] += 1
    end
    end

    2º Passo

    Iremos no Script "Event Text Display",nós vamos substituir a desde a linha 163 até a 178 por:

    Código:
    if @character.is_a?(Game_Player)
    if Network::Main.group == 'admin' and User_Edit::COLOR_ADMIN == true
    bitmap.font.color = User_Edit::ADM_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] == 1
    bitmap.font.color = User_Edit::PK1_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] == 2
    bitmap.font.color = User_Edit::PK2_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] >= 3
    bitmap.font.color = User_Edit::PK_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] == -1
    bitmap.font.color = User_Edit::HERO1_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    elsif $game_variables[10] <= -2
    bitmap.font.color = User_Edit::HERO2_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)
    else
    bitmap.font.color = User_Edit::PLAYER_COLOR
    bitmap.draw_text(0, 0, 160, 24, $game_party.actors[0].name, 1)   
    end
    else
    bitmap.font.color = args[1]
    bitmap.draw_text(0, 0, 160, 24, args[0], 1)
    end

    3º Passo

    Agora falta uma coisa,fazer com que os outros players tambem vejam se você está Hero ou PK.Para isso vamos ao Script "Sprite_NetCharacter" e iremos substituir da linha 63 até a 69 por:

    Código:
    if @character.grupo == "Admin" and User_Edit::COLOR_ADMIN == true
    bitmap.font.color = User_Edit::ADM_COLOR
    elsif @character.variavel == 1
    bitmap.font.color = User_Edit::PK1_COLOR
    elsif @character.variavel == 2
    bitmap.font.color = User_Edit::PK2_COLOR
    elsif @character.variavel >= 3
    bitmap.font.color = User_Edit::PK_COLOR
    elsif @character.variavel == -1
    bitmap.font.color = User_Edit::HERO1_COLOR
    elsif @character.variavel <= -2
    bitmap.font.color = User_Edit::HERO2_COLOR
    else
    bitmap.font.color = User_Edit::PLAYER_COLOR
    end

    Prontinho,agora se você matar alguem que está PK vira Hero,se matar alguem fica PK lv 1(Amarelo),e assim vai e se você matar que não esteja PK quando você estiver Hero você vai voltando ao normal,tipo se matar alguem que não esteja PK no Hero lv 2 você vai pro Lv 1 e se matar alguem novamente volta ao normal e assim vai xD.

    Informação Basica sobre a variavel:

    Caso a pessoa esteja Hero Lv 2 o valor da variavel é igual "-2" ou menor que "-2".
    Caso a pessoa esteja Hero Lv 1 o valor da variavel é igual "-1".
    Caso a pessoa esteja Normal o valor da variavel é igual "0".
    Caso a pessoa esteja PK Lv 1 o valor da variavel é igual "1".
    Caso a pessoa esteja PK Lv 2 o valor da variavel é igual "2".
    Caso a pessoa esteja PK Lv 3 o valor da variavel é igual "3" ou maior que "3".

    Assim vocês poderam editar o PK System por eventos facilmente [Tutorial]Sistema de PK Avançado NP Master v3.0 364988687 .



    Última edição por KaiqueHunter em Qui Jun 02, 2011 1:37 pm, editado 10 vez(es)
    matheus180
    matheus180
    Desenvolvedor
    Desenvolvedor


    Mensagens : 749
    Créditos : 174

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por matheus180 Seg maio 30, 2011 6:41 pm

    Cara belo sistema, mais uma demo seria melhor!


    _________________
    [Tutorial]Sistema de PK Avançado NP Master v3.0 3trEP
    Felix Blayder
    Felix Blayder
    Membro de Honra
    Membro de Honra


    Mensagens : 1406
    Créditos : 220

    Ficha do personagem
    Nível: 1
    Experiência:
    [Tutorial]Sistema de PK Avançado NP Master v3.0 Left_bar_bleue0/0[Tutorial]Sistema de PK Avançado NP Master v3.0 Empty_bar_bleue  (0/0)
    Vida:
    [Tutorial]Sistema de PK Avançado NP Master v3.0 Left_bar_bleue30/30[Tutorial]Sistema de PK Avançado NP Master v3.0 Empty_bar_bleue  (30/30)

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por Felix Blayder Seg maio 30, 2011 6:43 pm

    as pessoas ficão mal acostumadas com demo.... e cm tutoriais, é melhor para estudo, sou totalmente a favor deste sistema ser só por tutoriais.....

    PS: vou testa-o agora pra ver c está bom o sistema, quando terminar eu edto pra falar como está.


    _________________

    Se inscreva em meu Canal no YouTube:
    https://www.youtube.com/localnerd

    Faça uma doação para ajudar nos custos:

    https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3N8T2RJ977RCQ

    LeonM²
    LeonM²
    Lenda
    Lenda


    Mensagens : 1802
    Créditos : 153

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por LeonM² Seg maio 30, 2011 6:44 pm

    cara muito bom mais REP e colocarei nos ADD-ONS que estou fazendo e ainda da para fazer mais cores de coisas similares a essas,
    EDIT: só naum entendi muito bem a parte 4,arrancar que linha até que linha?


    Última edição por Leon Mega Maker em Seg maio 30, 2011 6:46 pm, editado 1 vez(es)
    KaiqueHunter
    KaiqueHunter
    Experiente
    Experiente


    Mensagens : 620
    Créditos : 51

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por KaiqueHunter Seg maio 30, 2011 6:45 pm

    Não fiz demo justamente pelo que o Felix disse,as pessoas são muito mal acustumada a tutorial e isso prejudica muito o estudo,no caso o tuturial eu explicaquei(Eu sei tá meio mal explicado) passo a passo,já a demo fica ruim.
    LeonM²
    LeonM²
    Lenda
    Lenda


    Mensagens : 1802
    Créditos : 153

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por LeonM² Seg maio 30, 2011 6:53 pm

    se importa se eu usar nos ADD-ONS que estou fazendo?
    só naum entendi muito bem a parte 4,arrancar que linha até que linha?
    KaiqueHunter
    KaiqueHunter
    Experiente
    Experiente


    Mensagens : 620
    Créditos : 51

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por KaiqueHunter Seg maio 30, 2011 6:55 pm

    Pode usar sim,avontade(Eu postei pra as outros pessoas usar '-')

    Arranque a linha 163 e a 165(A 164 é vazia xD).
    Qualquer coisa se não conseguir fazer por ser algo meio complexo poste aqui que eu ajudo.
    Jonny
    Jonny
    Aldeia Friend
    Aldeia Friend


    Medalhas : [Tutorial]Sistema de PK Avançado NP Master v3.0 Trophy11[Tutorial]Sistema de PK Avançado NP Master v3.0 9P5Gx
    Mensagens : 1936
    Créditos : 327

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por Jonny Seg maio 30, 2011 7:22 pm

    boy a probar y a testiar con mis amigos [Tutorial]Sistema de PK Avançado NP Master v3.0 3912376022


    EDI : Si me funciono pero cambia el nombre del admin con el nombre del usuario normal...!!! tambien
    como borro el PK pongo el variavel [10]= 0 ?????? o que ago?


    Última edição por Jonny D' Guetta em Seg maio 30, 2011 7:37 pm, editado 1 vez(es)


    _________________
    Spoiler:


    [Tutorial]Sistema de PK Avançado NP Master v3.0 KVIdx
    LeonM²
    LeonM²
    Lenda
    Lenda


    Mensagens : 1802
    Créditos : 153

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por LeonM² Seg maio 30, 2011 7:27 pm

    funciona perfeitamente mas agora to resolvendo o erro do ABS Global que da erro ao matar alguem esse erro ai eu e o Jonny vamos arrumar
    Jonny
    Jonny
    Aldeia Friend
    Aldeia Friend


    Medalhas : [Tutorial]Sistema de PK Avançado NP Master v3.0 Trophy11[Tutorial]Sistema de PK Avançado NP Master v3.0 9P5Gx
    Mensagens : 1936
    Créditos : 327

    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por Jonny Seg maio 30, 2011 7:39 pm

    Leon Mega Maker escreveu:funciona perfeitamente mas agora to resolvendo o erro do ABS Global que da erro ao matar alguem esse erro ai eu e o Jonny vamos arrumar




    lloooooooooooooooooo a arreglar isso del error ??????


    _________________
    Spoiler:


    [Tutorial]Sistema de PK Avançado NP Master v3.0 KVIdx

    Conteúdo patrocinado


    [Tutorial]Sistema de PK Avançado NP Master v3.0 Empty Re: [Tutorial]Sistema de PK Avançado NP Master v3.0

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qui Mar 28, 2024 3:00 pm