Por norma o pessoal reclama com o servidor que tenha itemshop, aqui é ao contrario, reclamam porque não tem itemshop. Ter itemshop não é garantia do que o servidor não irá fechar, todos os servidores que fecharam, inclusive o Portugalia, tinham itemshop.
E vais pedir desculpas as vitimas que ficaram sem email e que utilizam a mesma password!? Que não devem ser poucas...
Burros! Ainda se dão ao trabalho de dar leak a uma base de dados de um servidor que mal tem gente?!
Tenho que chegar a frente para vós dizer, cresçam e parem de ser autenticas crianças em busca da fama, um servidorzeco que nem 300 online consegue ter.
E ainda usam um Hosting grátis, só demonstra o quão "Hacker" vocês são, tão l33t.
Meeeh mais um tópico, mais uma discussão que não vai servir para nada... típico de atrasados mentais em busca de atenção.
Um aviso para ninguém gastar dinheiro com esta pessoa.
Irá prometer-vos updates, mas NUNCA os receberão.
É o melhor scammer que conheço e goza de proteção de comunidades como metin2.dev (ao dinheiro que faz, devem lucrar todos)
Quem comprou a source sabe bem do que falo. Gostaria que se tivessem no mesmo caso, que apresentassem também as vossas provas.
Está mais do que na altura de avisar a comunidade e parar com este scam elaborado.
Este link é o conteúdo da pasta google drive que ele partilhou com os "clientes". NÃO TENHO a password dos ficheiros, pois NUNCA me foi disponibilizada após inúmeros pedidos.
Caso alguém a chegue a descobrir ou saiba, seria uma mais valia para todos.
https://drive.google.com/drive/folders/1P9QEZF74DTaWbLzFlViwWDp_a_Qwfw1d?usp=sharing
Falta o client / source servidor e source client que não tenho neste disco. Amanhã já terei acesso ao disco onde guardei essas cópias e irei também postar aqui o link.
Este é TODO o histórico de mensagens que tive com ele e com o seu assistente (pois dar scams dá muito trabalho e é necessária a ajuda):
https://drive.google.com/file/d/19kCaWfGRHsFK26yef9gASYtu-EJB5gte/view?usp=sharing
NÃO COMPREM NADA a este scammer. Não existe outra palavra a não ser scam para o que ele faz.
Comentários que ah e tal é resell vem de pessoas ignorantes, como já foi mencionado os próprios "criadores" de files estão a dar resell se formos pela lógica, se não fossem os leaks que aconteceram não existiria sequer servidores privados.
Se os outros podem vender porque é que este membro deveria levar com boquinhas desnecessárias?
Porque não se chama vegas ou martysama?
Toca a crescer pessoal, a idade não vos trás mentalidade a não ser que a queiram ganhar.
Quando é que vão acordar gente? De uma vez por todas, nenhum de vós criou algo do zero. Todos copiam-se uns aos outros, quer nos Sistemas como em qualquer outra coisa.
As personagens também foram vocês que fizeram?
Ainda continuam ai com a mania do "não sabes fazer sozinho, nao sabem fazer por vocês proprios" esse argumento é PARVO e RIDICULO.
Quem os ouve a falar, parece que foram vocês que criaram o jogo do ZERO e isso é uma MENTIRA.
Passam a semana toda a andar a discussão por causa de um servidorzeco ter isto ou aquilo, enfim! Cresçam.
+ Consciência e menos discussões sem qualquer nexo (de preferência também nos argumentos).
Boas noites a todos procuro alguém experiente em cores dos canais para ajudar a reconfigurar as portas tanto das files como cliente
já fiz uma pequena pesquisa em que dizem que tenho verificar as portas ver se não tem nenhuma repetida a única a ficar igual é a db port em todos os canais mas para quem nunca mexeu em cores de um servidor torna-se um pouco chato pago pelo trabalho caso seja preciso desde já obrigado a quem perdeu um pouco do seu tempo a ler este meu tópico
SYSERR: Aug 24 02:05:17 :: socket_bind: bind: Address already in use
O problema é que o teu PC não tem a resolução pedida pelo metin2: 800x600
Isto faz com que apareça o erro, por muitas vezes que possas carregar no "Resolver problemas de compatibilidade".
A solução reside na source do executável, no GrpDevice.cpp:
if (!ms_kD3DDetector.Find(800, 600, 32, TRUE, &ms_iD3DModeInfo, &ms_iD3DDevInfo, &ms_iD3DAdapterInfo))
return CREATE_DETECT;
Basta remover isto que já irás conseguir jogar, agora só depende do dono deste servidor.
Na realidade chega.
O lalaker1 não assume qual o número do HEADER_GC_ATTACK na comunicação do game to client, por isso que utiliza sempre o default.
Bem-vindo ao Metin2 (Oficial)
Quest's:
- main_quest_lv1 - Traduzida a partir do Oficial por mim
- find_squareguard - Traduzida a partir do Oficial por mim
- find_skillteacher - Traduzida por mim
Créditos Traduções - Adm[Santos]
Notas: Apenas fiz questão de traduzir a partir do jogo oficial as primeiras duas quest's. Quanto a ultima não a encontrei no jogo devem ter tirado ao meter a quest "busca o soldado experiente" que no meu ponto de vista não tem qualquer interesse já esta é bastante boa para quem joga pela primeira vez o jogo, foi traduzida por mim mas falta lhe algo talvez um pouco de criatividade caso alguém edite gostaria que partilha se aqui por comentário.
Já agora se alguém testar comente aqui se esta tudo bem caso encontrem algum erro ou não esteja a dar é favor comentar e caso consigam solucionar deixem a correção em comentário.
Até a próxima!
quest main_quest_lv1 begin
state start begin
when login or levelup with pc.get_level() == 1 begin
set_state( gotoinfomation )
end
end
state gotoinfomation begin
when letter begin
send_letter("Bem-Vindo ao Metin2")
end
when button or info begin
say_title("Bem-Vindo ao Metin2")
say("As excitantes aventuras do Metin2 estão prestes a")
say("começar. Primeiro encontra o Guarda da Cidade.")
say("Ele irá dar-te algumas informações básicas e")
say("várias tarefas.")
say("Se quiseres ir à caça, poderás encontrar animais")
say("selvagens nas redondezas da vila. Eles serão")
say("mostrados no mini-mapa como pontos vermelhos.")
say("Deves concentrar-te nos Cães Selvagens, para")
say("começar, uma vez que são os alvos mais fáceis.")
say("Boa sorte!")
set_state( gototeacher )
end
end
state gototeacher begin
when letter begin
local v=find_npc_by_vnum(20354)
if v!=0 then
target.vid("__TARGET__", v, mob_name(20354))
end
q.set_icon("scroll_open_green.tga")
send_letter("Encontra o Guarda da Cidade")
end
when button or info begin
say_title("Encontra o Guarda da Cidade")
say("Fala com o Guarda da Cidade clicando nele. Ele é")
say("o NPC para onde aponta uma seta. Se não o")
say("conseguires ver talvez ele esteja demasiado")
say("longe. Segue os pontos que piscam no mapa até")
say("chegares ao Guarda da Cidade.")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Guarda da Cidade:")
say("Deves ser novo na cidade! Vejo que eles ainda não")
say("te tornaram um soldado. Já tiveste algum treino")
say("sequer? Olha bem para ti! Alguma vez usaste uma")
say("arma? Ouve bem! Tens de ser cuidadoso se quiseres")
say("sobreviver a esta guerra. Irei ajudar-te até")
say("teres atingido o nível 10. E não penses que vai")
say("ser fácil! Agora põe-te a andar!")
wait()
say_title("Guarda da Cidade:")
say("Vai e aprende os básicos do combate e caça! Assim")
say("que tiveres atingido um nível mais alto regressa")
say("à vila e fala comigo de novo. Porque é que ainda")
say("estás aqui? Não ganharás experiência ficando aqui")
say("a olhar!")
clear_letter()
set_state(__COMPLETE__)
set_quest_state("find_squareguard","find")
set_quest_state("main_quest_lv2","run")
end
end
state __COMPLETE__ begin
end
end
quest find_squareguard begin
state start begin
end
state run begin
when login with pc.level<=5 begin
set_state(find)
end
end
state find begin
when letter begin
local find_npc_vnum = 0
if pc.get_empire()==1 then
find_npc_vnum = 11000
elseif pc.get_empire()==2 then
find_npc_vnum = 11002
elseif pc.get_empire()==3 then
find_npc_vnum = 11004
end
local v=find_npc_by_vnum(find_npc_vnum)
if 0==v then
else
target.vid("__TARGET__", v, "Guarda da Praça")
end
end
when letter begin
send_letter("Encontra o Guarda da Praça")
end
when button or info begin
say_title("Informação:")
say("Vai até ao centro da vila e fala com o Guarda da")
say("cidade. Ele irá dar-te a primeira missão.")
say("Podes encontrá-lo no centro da vila.")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Guarda da Cidade:")
say("Bem vindo à nossa vila aventureiro! Ficaria")
say("muito grato se me fizesses um favor. Se te der")
say("200 Yang podes comprar-me uma Poção Vermelha?")
say("Podes comprá-la na Loja Geral.")
say("Neste momento estou a trabalhar, por isso não")
say("posso abandonar o centro da vila.")
wait()
say_title("Informação:")
say("Recebeste 200 Yang do Guarda da Cidade. Podes")
say("usar Yang para comprar itens e serviços a outros")
say("habitantes da vila. Vai ter com a Negociadora da")
say("Loja Geral e compra uma Poção Vermelha.")
pc.changemoney(200)
set_state(buy)
end
end
state buy begin
when letter begin
send_letter("Compra uma Poção Vermelha(P)")
local v=find_npc_by_vnum(9003)
if v!=0 then
target.vid("__TARGET__", v, mob_name(9003))
end
end
when button or info begin
say_title("Informação:")
say("Compra uma Poção Vermelha na Loja Geral e leva-a")
say("ao Guarda da Cidade.")
end
when 11000.chat."Onde posso comprar uma Poção Vermelha?" or
11002.chat."Onde posso comprar uma Poção Vermelha?" or
11004.chat."Onde posso comprar uma Poção Vermelha?" begin
say_title("Guarda da Cidade:")
say("Podes obter uma Poção Vermelha da Negociadora da")
say("Loja Geral. Ela está ali. Se não a conseguires")
say("ver, dirige-te ao circulo a piscar no mapa grande")
say("ou ao ponto a piscar no mini-mapa!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Negociadora da Loja Geral:")
say("Bem-vindo aventureiro!")
say("Oh, o Guarda da Cidade enviou-te? Ele Precisa de")
say("uma Poção Vermelha? Vou dar-te cinco.")
say("Aqui tens. Estas poções servem para regenerar a")
say("tua Vida e são bastante saborosas.")
wait()
say_title("Negociadora da Loja Geral:")
say("Podes ser um novo, mas tenho a certeza que te")
say("tornarás um cliente regular. É oir isso que te")
say("ofereço estas poções a custo zero. Espero ver-te")
say("de novo.")
wait()
say_title("Informação:")
say_reward("Recebeste 5 Poções Vermelhas(P) da Negociadora da")
say_reward("Loja Geral.")
say_reward("As Poções vermelhas servem para a regeneração dos")
say_reward("teus Pontos de Vida (VD).")
pc.give_item2(27001,5)
setstate(deliver)
end
end
state deliver begin
when letter begin
send_letter("Regressa ao Guarda da Cidade")
local find_npc_vnum = 0
if pc.get_empire()==1 then
find_npc_vnum = 11000
elseif pc.get_empire()==2 then
find_npc_vnum = 11002
elseif pc.get_empire()==3 then
find_npc_vnum = 11004
end
local v=find_npc_by_vnum(find_npc_vnum)
if 0==v then
else
target.vid("__TARGET__", v, mob_name(find_npc_vnum))
end
end
when button or info begin
say_title("Informação:")
say("Regressa ao Guarda da Cidade e dá-lhe uma Poção")
say("Vermelha.")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
if pc.countitem(27001)<1 then
target.delete("__TARGET__")
say_title("Guarda da Cidade:")
say("Não conseguiste a Poção Vermelha(P) que eu te")
say("pedi? Que pena! Ok... podes ficar com o Yang para")
say("as tuas necessidades.")
say("Já agora... Os Professores perguntaram por ti.")
say("Eles querem conhecer-te.")
else
say_title("Guarda da Cidade:")
say("Obrigado por me trazeres a poção! Agora posso")
say("cumprir melhor o meu dever e nem precisei de")
say("abandonar o meu posto. Queres saber o que faço?")
say("Bem, geralmente eu limito-me a anunciar")
say("informações importantes. Por vezes também ofereço")
say("os meus serviços a pessoas com problemas ou que")
say("estão sob ataque. Mas o meu trabalho principal é")
say("gerir as Guilds. Vem ter comigo se tiveres")
say("interessado em juntar-te ou fundar uma Guild.")
wait()
say_title("Guarda da Cidade:")
say("Já agora, os Professores andam á tua procura.")
say("Devias ir ter com eles agora.")
say("Ah, e quase me esquecia! Como símbulo da minha")
say("gratidão podes ficar com o troco! Até breve.")
pc.removeitem(27001, 1)
end
clear_letter()
set_state(__COMPLETE__)
set_quest_state("find_skillteacher", "find")
end
end
state __COMPLETE__ begin
end
end
quest find_skillteacher begin
state start begin
end
state find begin
when letter begin
pc.setqf("talk_count", 0)
local job=pc.get_job()
if job==0 then
local v=pc_find_skill_teacher_vid(1)
if 0!=v then target.vid("teacher1", v, "Professor - Luta Corpo") end
local v=pc_find_skill_teacher_vid(2)
if 0!=v then target.vid("teacher2", v, "Professor - Luta Mental") end
elseif job==1 then
local v=pc_find_skill_teacher_vid(1)
if 0!=v then target.vid("teacher3", v, "Professor - Arte Furtiva") end
local v=pc_find_skill_teacher_vid(2)
if 0!=v then target.vid("teacher4", v, "Professor - Arte do Arco") end
elseif job==2 then
local v=pc_find_skill_teacher_vid(1)
if 0!=v then target.vid("teacher5", v, "Professor - Luta d'Armas") end
local v=pc_find_skill_teacher_vid(2)
if 0!=v then target.vid("teacher6", v, "Professor - Magia Negra") end
elseif job==3 then
local v=pc_find_skill_teacher_vid(1)
if 0!=v then target.vid("teacher7", v, "Professor - Força Dragão") end
local v=pc_find_skill_teacher_vid(2)
if 0!=v then target.vid("teacher8", v, "Professor - Energia") end
end
end
when letter begin
send_letter("Encontra os professores")
end
when button begin
say(locale.NOTICE_COLOR.."Encontra os Professores"..locale.NORMAL_COLOR)
if pc.job==0 then
say_title("Informação:")
say("Encontra os Professores de Luta Corpo e")
say("Luta Mental, eles têm informações sobre")
say("as Habilidades da Classe de Guerreiro para")
say("ti.")
elseif pc.job==1 then
say_title("Informação:")
say("Encontra os Professores de Arte Furtiva e")
say("Arte do Arco, eles têm informações sobre")
say("as Habilidades da Classe de Ninja para ti.")
elseif pc.job==2 then
say_title("Informação:")
say("Encontra os Professores de Luta d'Armas e")
say("Magia Negra, eles têm informações sobre")
say("as Habilidades da Classe de Sura para ti.")
elseif pc.job==3 then
say_title("Informação:")
say("Encontra os Professores de Força Dragão e")
say("de Energia, eles têm informação sobre as")
say("Habilidades da Classe de Xamã para ti.")
end
end
when info begin
say(locale.NOTICE_COLOR.."Encontra os Professores"..locale.NORMAL_COLOR)
if pc.job==0 then
say_title("Informação:")
say("Encontra os Professores de Luta Corpo e")
say("Luta Mental, eles têm informações sobre")
say("as Habilidades da Classe de Guerreiro para")
say("ti.")
elseif pc.job==1 then
say_title("Informação:")
say("Encontra os Professores de Arte Furtiva e")
say("Arte do Arco, eles têm informações sobre")
say("as Habilidades da Classe de Ninja para ti.")
elseif pc.job==2 then
say_title("Informação:")
say("Encontra os Professores de Luta d'Armas e")
say("Magia Negra, eles têm informações sobre")
say("as Habilidades da Classe de Sura para ti.")
elseif pc.job==3 then
say_title("Informação:")
say("Encontra os Professores de Força Dragão e")
say("de Energia, eles têm informação sobre as")
say("Habilidades da Classe de Xamã para ti.")
end
end
when teacher1.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher1")
say_title("Professor de Luta Corpo:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta Corpo, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Luta Corporal e Luta Mental.")
wait()
say_title("Professor de Luta Corpo:")
say("A Luta Corporal baseia-se em ataques básicos")
say("rápidos e constantes.")
say("Portanto, as habilidades para Guerreiro Corpo")
say("são algo como Raiva, Espada Rotativa,")
say("Aura da Espada e muitas outras habilidades que")
say("podes treinar.")
wait()
say_title("Professor de Luta Corpo:")
say("Para obteres informações sobre o treino de")
say("Luta Mental, deves de falar com o Professor de")
say("Luta Mental.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher2.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher2")
say_title("Professor de Luta Mental:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta Mental, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Luta Mental e Luta Corporal.")
wait()
say_title("Professor de Luta Mental:")
say("Na Luta Mental aprendem-se habilidades que")
say("concentram todo o poder na mente e a")
say("dispará-lo todo de uma só vez.")
say("Portanto, as habilidades para Guerreiro Mental")
say("são algo como Força do Golpe, Ataque Espada,")
say("e muitas outras habilidades que usam vibração")
say("para deixar os inimigos inconscientes.")
wait()
say_title("Professor de Luta Mental:")
say("Para obteres informações sobre o treino de")
say("Luta Corpo, deves de falar com o Professor de")
say("Luta Corpo.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher3.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher3")
say_title("Professor de Arte Furtiva:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Arte Furtiva, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Arte Furtiva e Arte do Arco.")
wait()
say_title("Professor de Arte Furtiva:")
say("Arte Furtiva é mais para hits críticos.")
say("As Habilidades que se podem aprender são")
say("Ataque Rápido que ataca os pontos vitais do")
say("inimigo, Adaga Rotativa que pode atacar")
say("múltiplos inimigos, Modo Furtivo para que se")
say("possa esconder e muitas outras Habilidades.")
wait()
say_title("Professor de Arte Furtiva:")
say("Para obteres informações sobre o treino de")
say("Arte do Arco, deves de falar com o Professor")
say("de Arte do Arco.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher4.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher4")
say_title("Professor de Arte do Arco:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Arte do Arco, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Arte Furtiva e Arte do")
Say("Arco.")
wait()
say_title("Professor de Arte do Arco:")
say("No treino de Arte do Arco os Ninjas aprendem a")
say("utilizar habilidades à distancia com um arco.")
say("Podem aprender Tiro Repetido em que são")
say("disparadas setas múltiplas de uma só vez e")
say("Chuva de Setas que dispara setas para múltiplos")
say("inimigos, Seta de Fogo que dispara setas em")
say("chamas e outras habilidades.")
wait()
say_title("Professor de Arte do Arco:")
say("Para obteres informações sobre o treino de")
say("Arte Furtiva, deves de falar com o Professor")
say("de Arte Furtiva.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher5.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher5")
say_title("Professor de Luta d'Armas:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta d'Armas, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Luta d'Armas e")
Say("Magia Negra.")
wait()
say_title("Professor de Luta d'Armas:")
say("As habilidades de Luta de Armas são semelhantes")
say("às habilidades de Luta Corpo da classe de")
say("Guerreiro. No entanto tem habilidades mais")
say("inteligentes que usam maldições e magias.")
say("As habilidades que se podem aprender são")
say("Lamina Encantada que absorve a vida dos")
say("inimigos, Espiral do Dragão, que é uma espiral")
say("de vento que dá ao inimigo danos inevitáveis")
say("e muitas mais habilidades.")
wait()
say_title("Professor de Luta d'Armas:")
say("Para obteres informações sobre o treino de")
say("Magia Negra, deves de falar com o Professor")
say("de Magia Negra.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher6.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher6")
say_title("Professor de Magia Negra:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Magia Negra, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Magia Negra e Luta")
Say("d'Armas.")
wait()
say_title("Professor de Magia Negra:")
say("A magia negra possui habilidades que usam")
say("a escuridão e o poder de fogo.")
say("O Ataque Obscuro é o seu ataque mais comum,")
say("o Ataque Chama para queimar os seus inimigos,")
say("Bola da Escuridão pode atacar o inimigo à")
say("distancia, Ataque Espiritual tornará o inimigo")
say("mais lento e Espírito Chama que gira em torno")
say("de si e ataca qualquer coisa que chegue perto.")
wait()
say_title("Professor de Magia Negra:")
say("Para obteres informações sobre o treino de")
say("Luta d'Armas, deves de falar com o Professor")
say("de Luta de Armas.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher7.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher7")
say_title("Professor de Força Dragão:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Força Dragão, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Força Dragão e")
Say("Energia.")
wait()
say_title("Professor de Força Dragão:")
say("A Força Dragão convoca o Deus Dragão e usa")
say("o seu poder para atacar o inimigo.")
say("Aprendem-se Habilidades como Ataque do Dragão")
say("que dispara a imagem do dragão para a frente")
say("e ataca múltiplos inimigos com a probabilidade")
say("de pegar fogo, Rugido do Dragão que convoca")
say("a força do dragão ao seu redor e habilidades")
say("como Bênção para se proteger e muitas outras.")
wait()
say_title("Professor de Força Dragão:")
say("Para obteres informações sobre o treino de")
say("Energia, deves de falar com o Professor de")
say("Energia.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher8.target.click with pc.getf("find_skillteacher", "talk_count")==0 begin
target.delete("teacher8")
say_title("Professor de Energia:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Energia, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Energia e Força")
Say("Dragão.")
wait()
say_title("Professor de Energia:")
say("O treino de Energia ensina a usar a energia dos")
say("relâmpagos. O Atirar Raio podem causar maior")
say("dano e também tem chance de atordoar o inimigo.")
say("O Invocar Raio é um ataque eléctrico à")
say("distancia que pode atacar múltiplos alvos.")
say("A Energia fortalece um parceiro e a si mesmo e")
say("aumenta o poder de ataque.")
say("O Curar cura até as feridas mais profundas,")
say("restaura vida e remove efeitos negativos e")
say("ainda se aprendem algumas outras habilidades.")
wait()
say_title("Professor de Energia:")
say("Para obteres informações sobre o treino de")
say("Força Dragão, deves de falar com o Professor")
say("Força Dragão.")
say("Obrigado!")
pc.setqf("talk_count", 1)
end
when teacher1.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher1")
say_title("Professor de Luta Corpo:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta Corpo, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Luta Corporal e Luta Mental.")
wait()
say_title("Professor de Luta Corpo:")
say("A Luta Corporal baseia-se em ataques básicos")
say("rápidos e constantes.")
say("Portanto, as habilidades para Guerreiro Corpo")
say("são algo como Raiva, Espada Rotativa,")
say("Aura da Espada e muitas outras habilidades que")
say("podes treinar.")
wait()
say_title("Professor de Luta Corpo:")
say("Para obteres informações sobre o treino de")
say("Luta Mental, deves de falar com o Professor de")
say("Luta Mental.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher2.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher2")
say_title("Professor de Luta Mental:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta Mental, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Luta Mental e Luta Corporal.")
wait()
say_title("Professor de Luta Mental:")
say("Na Luta Mental aprendem-se habilidades que")
say("concentram todo o poder na mente e a")
say("dispará-lo todo de uma só vez.")
say("Portanto, as habilidades para Guerreiro Mental")
say("são algo como Força do Golpe, Ataque Espada,")
say("e muitas outras habilidades que usam vibração")
say("para deixar os inimigos inconscientes.")
wait()
say_title("Professor de Luta Mental:")
say("Para obteres informações sobre o treino de")
say("Luta Corpo, deves de falar com o Professor de")
say("Luta Corpo.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher3.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher3")
say_title("Professor de Arte Furtiva:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Arte Furtiva, chamei-te aqui")
say("porque vais ter que escolher as tuas habilidades")
say("assim que atingires o nível 5 e podes escolher")
say("entre Arte Furtiva e Arte do Arco.")
wait()
say_title("Professor de Arte Furtiva:")
say("Arte Furtiva é mais para hits críticos.")
say("As Habilidades que se podem aprender são")
say("Ataque Rápido que ataca os pontos vitais do")
say("inimigo, Adaga Rotativa que pode atacar")
say("múltiplos inimigos, Modo Furtivo para que se")
say("possa esconder e muitas outras Habilidades.")
wait()
say_title("Professor de Arte Furtiva:")
say("Para obteres informações sobre o treino de")
say("Arte do Arco, deves de falar com o Professor")
say("de Arte do Arco.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher4.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher4")
say_title("Professor de Arte do Arco:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Arte do Arco, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Arte Furtiva e Arte do")
Say("Arco.")
wait()
say_title("Professor de Arte do Arco:")
say("No treino de Arte do Arco os Ninjas aprendem a")
say("utilizar habilidades à distancia com um arco.")
say("Podem aprender Tiro Repetido em que são")
say("disparadas setas múltiplas de uma só vez e")
say("Chuva de Setas que dispara setas para múltiplos")
say("inimigos, Seta de Fogo que dispara setas em")
say("chamas e outras habilidades.")
wait()
say_title("Professor de Arte do Arco:")
say("Para obteres informações sobre o treino de")
say("Arte Furtiva, deves de falar com o Professor")
say("de Arte Furtiva.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher5.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher5")
say_title("Professor de Luta d'Armas:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Luta d'Armas, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Luta d'Armas e")
Say("Magia Negra.")
wait()
say_title("Professor de Luta d'Armas:")
say("As habilidades de Luta de Armas são semelhantes")
say("às habilidades de Luta Corpo da classe de")
say("Guerreiro. No entanto tem habilidades mais")
say("inteligentes que usam maldições e magias.")
say("As habilidades que se podem aprender são")
say("Lamina Encantada que absorve a vida dos")
say("inimigos, Espiral do Dragão, que é uma espiral")
say("de vento que dá ao inimigo danos inevitáveis")
say("e muitas mais habilidades.")
wait()
say_title("Professor de Luta d'Armas:")
say("Para obteres informações sobre o treino de")
say("Magia Negra, deves de falar com o Professor")
say("de Magia Negra.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher6.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher6")
say_title("Professor de Magia Negra:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Magia Negra, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Magia Negra e Luta")
Say("d'Armas.")
wait()
say_title("Professor de Magia Negra:")
say("A magia negra possui habilidades que usam")
say("a escuridão e o poder de fogo.")
say("O Ataque Obscuro é o seu ataque mais comum,")
say("o Ataque Chama para queimar os seus inimigos,")
say("Bola da Escuridão pode atacar o inimigo à")
say("distancia, Ataque Espiritual tornará o inimigo")
say("mais lento e Espírito Chama que gira em torno")
say("de si e ataca qualquer coisa que chegue perto.")
wait()
say_title("Professor de Magia Negra:")
say("Para obteres informações sobre o treino de")
say("Luta d'Armas, deves de falar com o Professor")
say("de Luta de Armas.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher7.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher7")
say_title("Professor de Força Dragão:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Força Dragão, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Força Dragão e")
Say("Energia.")
wait()
say_title("Professor de Força Dragão:")
say("A Força Dragão convoca o Deus Dragão e usa")
say("o seu poder para atacar o inimigo.")
say("Aprendem-se Habilidades como Ataque do Dragão")
say("que dispara a imagem do dragão para a frente")
say("e ataca múltiplos inimigos com a probabilidade")
say("de pegar fogo, Rugido do Dragão que convoca")
say("a força do dragão ao seu redor e habilidades")
say("como Bênção para se proteger e muitas outras.")
wait()
say_title("Professor de Força Dragão:")
say("Para obteres informações sobre o treino de")
say("Energia, deves de falar com o Professor de")
say("Energia.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
when teacher8.target.click with pc.getf("find_skillteacher", "talk_count")==1 begin
target.delete("teacher8")
say_title("Professor de Energia:")
say("Tu és o novato que eu estou a espera?")
say("Bem-vindo!")
say("Eu sou o Professor de Energia, chamei-te")
say("aqui porque vais ter que escolher as tuas")
say("habilidades assim que atingires o nível 5 e")
say("podes escolher entre Energia e Força")
Say("Dragão.")
wait()
say_title("Professor de Energia:")
say("O treino de Energia ensina a usar a energia dos")
say("relâmpagos. O Atirar Raio podem causar maior")
say("dano e também tem chance de atordoar o inimigo.")
say("O Invocar Raio é um ataque eléctrico à")
say("distancia que pode atacar múltiplos alvos.")
say("A Energia fortalece um parceiro e a si mesmo e")
say("aumenta o poder de ataque.")
say("O Curar cura até as feridas mais profundas,")
say("restaura vida e remove efeitos negativos e")
say("ainda se aprendem algumas outras habilidades.")
wait()
say_title("Professor de Energia:")
say("Para obteres informações sobre o treino de")
say("Força Dragão, deves de falar com o Professor")
say("Força Dragão.")
say("Obrigado!")
setstate(__COMPLETE__)
q.done()
end
end
state __COMPLETE__ begin
when enter begin
q.done()
end
end
end
Boas pessoal.
Como viram o titulo do tópico, eu alterei a quest do sistema de pets do metin2.sg e alterei de maneira a que possam colocar bonus aos pets...
Antes de mais, aqui fica a quest:
quest pet_system begin state start begin function get_pet_info(itemVnum) pet_info_map = { -- [ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx, bonus or nor, id bonus, value bonus , etc etc [53001] = { 34001, "'s Phoenix do Fogo", 0, 1, 1, 5000000}, [53002] = { 34002, "'s Baby Reindeer", 0, nil}, [53003] = { 34003, "'s Phoenix do Gelo", 0, nil}, [53004] = { 34001, "'s Phoenix do Fogo", 0, nil}, [53005] = { 34004, "'s Azrael Bebé ", 1, nil}, [53006] = { 34009, "'s Azrael Bebé (Ouro)", 1, nil}, [53010] = { 34008, "'s Leonidas", 0, nil}, [53011] = { 34007, "'s Khan", 0, nil}, [53012] = { 34005, "'s Porky", 0, nil}, [53013] = { 34006, "'s Rufus", 0, nil}, [53007] = { 34010, "'s Bambi", 0, nil}, [53008] = { 34011, "'s Knuud", 0, nil}, [53009] = { 34012, "'s Bao Bao", 0, nil}, } itemVnum = tonumber(itemVnum) return pet_info_map[itemVnum] end function get_spawn_effect_file(idx) effect_table = { [0] = nil, [1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse", } return effect_table [idx] end when 53007.use or 53013.use or 53012.use or 53011.use or 53010.use or 53005.use or 53004.use or 53003.use or 53002.use or 53001.use or 53006.use or 53008.use or 53009.use begin local pet_info = pet_system.get_pet_info(item.vnum) if null != pet_info then local mobVnum = pet_info[1] local petName = pet_info[2] local spawn_effect_file_name = pet_system.get_spawn_effect_file(pet_info[3]) if true == pet.is_summon(mobVnum) then if spawn_effect_file_name != nil then pet.spawn_effect (mobVnum, spawn_effect_file_name) end pet.unsummon(mobVnum) if pet_info[4] != nil then local num_bonus = pet_info[4] -- valor de bonus a "desaplicar" for i = 1, num_bonus, 1 do affect.remove_collect(pet_info[5+2*(i-1)], pet_info[6+2*(i-1)], 60*60*24*365) end end else if pet.count_summoned() < 1 then pet.summon(mobVnum, petName, false) if pet_info[4] != nil then local num_bonus = pet_info[4] -- valor de bonus a aplicar for i = 1, num_bonus, 1 do affect.add_collect(pet_info[5+2*(i-1)], pet_info[6+2*(i-1)], 60*60*24*365) end end else syschat("You already summoned a pet.") end if spawn_effect_file_name != nil then pet.spawn_effect(mobVnum, spawn_effect_file_name) end end -- if pet.is_summon end -- if null != pet_info end -- when end -- stateend -- quest
Quest no pastebin: http://pastebin.com/bwe0dUZN
Pronto, vamos agora à breve explicação de como adicionar bonus a cada pet.
Como vêm nesta linha ([53001] = { 34001, "'s Phoenix do Fogo", 0, 1, 1, 5000000},), a seguir ao "0," tem um numero, nesse número definim o numero de extras que querem, após isso, tem o 1 e o 5000000, o 1 é o id do bonus, e o 5000000 é o valor do bonus. Para adicionarem mais bonus fica algo assim do género: [53001] = { 34001, "'s Phoenix do Fogo", 0, 2, 1, 5000000, 2, 50000}, como repararam o 1 foi substituido pelo 2 que fica possivel ter 2 bonus. Se não quiserem ter bonus, fica assim: [53001] = { 34001, "'s Phoenix do Fogo", 0, nil}, .
Penso que tenham percebido, qualquer dúvida avisem.
Creditos: metin2.sg (Quest original)
Eu (pela alteração da quest)
NewWars pela ideia xd
Cumprimentos.
Boas pessoal dando continuidade a ideia do meu Grande Amigo @kami4001
Hoje venho postar uma espada feita por mim, nada de especial minha primeira espada, usem e abusem :)
Link do Download
Link da Analise do Ficheiro .rar
Creditos @Dynamic Things
Creditos Pela Criação do Gif e Suporte na criação da espada @kami4001
Bye Bye
boas cyberianos!
bem malta criei mais uma arma nova e decidi partilhar com a malta
arma recomendada por: nagatto
se não gostarem da espada já sabem a quem culpar xD
( esta é a Espada do Zabuza Momoch "Kubikiribōchō" (em Kanji "首斬り包丁" tradução: Lâmina do Executor ) )
(Não criei a espada 100% do zero mas recriei bastantes partes dela e fiz texturas novas então deu trabalho a fazer a mesma)
a textura "espada_zabuza_kami.dds" deve ser compactada no client em item.epk na localização ymir work\item\weapon
não podem mudar o nome da textura (.dds)
download (134,42 kb em zip) https://www.mediafire.com/file/a6gc2uo1whsabmk/espada_zabuza_kami.zip
se alguém quiser que eu faça mais armas, postem nos comentários imagens com concept art de armas e se eu gostar delas talvez eu faça e poste aqui no futuro ;)
também pode ser fotografias de uma arma real o importante é meterem imagens nos comentarios