antiblock
Elveron

Leaderboard


Popular Content

Showing content with the highest reputation on 01/18/2018 in all areas

  1. 5 points
    NewWars

    Quest Triggers(Acionador de quest)

    Boas comunidade, Os quest triggers são usados para quando uma ação especifica de um jogador precisa de alguma ação da parte do servidor, como por exemplo ao fazer login mostrar uma mensagem de boas vindas. Um exemplo em código: quest boas_vindas begin state start begin when login begin chat("Bem-vindo") end end end O funcionamento de cada trigger é definido pelo game(nucleo), e cada um tem funções distintas, abaixo deixo todos os triggers existentes de um nucleo mainline limpo: Alguns deles desconheço o que fazem ao certo mais vou investigar o código e avisarei quando tiver informação sobre os mesmos. Cumprimentos.
  2. 2 points
    Paradox

    [PVM] Metin2 - Old World - PT-BR

    Nice Website IP Link... Nice Name... Nice Server... http://187.109.111.18:8080/ why? why?
  3. 2 points
    'PACI

    Metin2 - Old World - Portugues BR [PVM]

    Mas o que é isto? Tópico fechado.
  4. 1 point
    'PACI

    Implementar Mobs

    Olá, Pediram para fazer um tutorial para implementar mobs, e aqui vai, tentarei ser o mais explícito possível. Portanto, já alguma vez devem ter visto o que contém a pasta de algum mob. Contém vários ficheiros (.gr2, .msa, .msm, .mse, .tga/.dds e o motlist.txt) [*]O GR2 é o que contém, digamos, a forma do mob, a sua estrutura e os movimentos do mesmo. [*]Os ficheiros .msm e/ou .msa servem para que se possa aplicar o GR2. [*]Os ficheiros .mse tratam dos efeitos do mob. [*]O .tga ou .dds é a textura do mob. [*]E o motlist.txt indica os movimentos correspondentes a cada gr2. Para colocarmos o mob temos antes que verificar se a sua pasta contém estes ficheiros todos. Agora, instalar a pasta do mob no cliente. Bem, a meu ver, é mais fácil fazer um .eix e .epk que contenha só os ficheiros do dito mob, mas podem sempre colocá-lo em outro ficheiro. Para saber onde colocar, abrem o .msm e irão encontrar um diretório. Por exemplo: BaseModelFileName "D:Ymir Workmonster2crustacean_bosscrustacean_boss.GR2" Esse diretório indica onde é que vai buscar o .gr2 do mob. Sendo assim, descompactam o monster2.eix/.epk e vão até: ymir workmonster2 E colocam lá a pasta do mob. Depois no ficheiro .xml, que foi criado na altura de descompactar o monster2, devem adicionar as linhas dos ficheiros adicionados para que se possa compactar também no ficheiro e não seja excluído. Por exemplo: É imprescindível ter o .xml do ficheiro(s) adicionado(s), caso contrário, a alteração/adição não será aplicada. Bem, até aqui simples. O que devem fazer a seguir, é descompactar o root.eix/.epk e procurar por um ficheiro denominado: npclist.txt. O que lá contém é: id_mob [tabulador] nome_msm Isto servirá para que consigam ver o mob. Exemplo: 7052 scorpionman_sword7053 scorpionman_bow7054 snakeman_sword É obrigatório estar separado o nome do .msm do id do mob pelo tabulador. Após isto, guardam o npclist.txt e voltam a compactar o root. Sendo assim, vamos à parte final. A query: Ora bem, para o mob existir, devem cria-lo no mob_proto do navicat, se não, os passos anteriores efetuados, apenas enchiam o cliente de murraça por um mob que não existe. Para facilitar a vida, deixarei aqui uma query (serverside/clientside) para usarem como base para o vosso novo mob. Esta query não tem nada editado, vem com os valores no mínimo, portanto vocês já editam o que quiserem nela. Navicat -> Player -> Query -> New Query: -> Run Na query vocês editam o ID e o nome_mob. E por último, vem o mob_proto do cliente. Descompactam o locale e, de seguida, o mob_proto. Depois no final, adicionam: Fecham e guardam o mob_proto, compactam, colocam de novo no locale e compactam-no. Depois, os ficheiros todos (monster2, root, locale) colocam na pasta pack do vosso cliente. Entram no vosso servidor, fazem /reload p e depois testam o vosso novo mob. (/m id_mob). É tudo! Espero ter sido explícito, qualquer dúvida não hesitem em perguntar. Cumprimentos e Boa sorte.
  5. 1 point
    Frost

    Fractured MMO

    Boas pessoal. Apesar de já não vir ao Fórum á algum tempo, hoje decidi vir para vos dar a conhecer um novo MMO que está a ser desenvolvido e que promete imenso :) O jogo chama-se Fractured, é uma mistura de MMO com MOBA, de estilo tipo Diablo e PoE, é um jogo sem leveling nem classes, apenas têm centenas de spells que podem aprender, sejam eles magias ou skills de armas fisicas, com isto significa que podem fazer a "classe" que achem mais apropriada ao vosso estilo de jogo, neste jogo vocês vão ter provavelmente das maiores liberdades que já viram em um MMO e em que a exploração e o conhecimento são própriamente a maior fonte de poder que podem ter. Agora em baixo vou tentar explicar em base o que o Fractured tem para oferecer. No jogo existem 3 raças, raças essas que são "Humans", "Beastmans" e "Demons", cada uma destas raças tem o seu próprio planeta, cada um com o seu próprio ambiente e os seus próprios stats. - Os "Humans" são uma raça a raça mais livre de todas as 3, fisicamente são a raça mais fraca, mas têm uma tecnologia e um conhecimento muito superior ás outras 2. No planeta dos "Humans" podem cometer crimes tipo fazerem PK (player kill), mas isto traz certas consequências, podem ter de ir a julgamento e não se sabe qual poderá ser o veredicto. Isto faz que com esta raça seja uma raça PvPvE. - Os "Beastmans" são uma raça que diferente dos "Humans" têm varias sub-raças, estas sendo "Tiger-kin" (tigres), "Wolf-kin" (lobos), "Bear-kin" (ursos) e "Hart-kin" (tipo renas ou algo assim), cada uma destas sub-raças tendo as suas vantagens e desvantagens em relação umas ás outras. O planeta desta raça é o maior dos 3, e é um planeta em que maioritariamente vivem em harmonia com a natureza e uns com os outros, o que faz com que PK/PvP não seja possivel, isto é, a não ser que uma das outras raças os invada, algo que não é tão simples de fazer como parece, pois são precisas certas circustancias e trabalho arduo para tornar possivel viagens a outros planetas, especialmente a planete da raça "Beastmans". Resumindo isto faz com que esta planeta seja mais estilo PvE. - Os "Demons" são a raça mais violenta das 3, tal como a de cima, tem várias sub-raças que são os "Shadow Demons" (Nightmares), "Hellfire Demons" (Infernals) e "Blood Demons" (Vampires). O planeta deles é o mais mortífero de todos, sendo que PK é algo totalmente normal e sem qualquer risco. Durante a história deles, é mesmo contado que ele tinham de se matar uns aos outros para sobreviver, visto que o planeta deles é dificil de arranjar recursos para sobrevivência natural. Algo especial sobre esta raça é que, enquanto que as outras, para viajarem até outros planetas, é preciso trabalho árduo, esta raça, quando ocorrem os fenómenos chamados "Eclipses", eles são permitidos a viajar até ao planeta dos "Humans" para causar toda a destruição que quiserem e sem qualquer dificuldade. Digamos que esta é uma raça, tal como o nome deles diz, demoniaca. O que faz desta raça com estilo mesmo PvP. Mais informação acerca disto pode ser encontrada aqui: https://fracturedmmo.com/feature-spotlight-1-three-races-three-gameplays/ https://fracturedmmo.com/feature-spotlight-2-universe-planets-travels/ Em cima ja falei sobre como não existem classes, mas que existem imensos e imensos spells mágicos e físicos, que vos permite fazer todo o tipo de combinações que seja melhor para o vosso estilo de jogo. Os spells são tantos que a variadade de combinações é quase infinita, visto que vocês podem aprender todos eles, sem excepção. Mais informação aqui: https://fracturedmmo.com/feature-spotlight-3-knowledge-system/ https://fracturedmmo.com/feature-spotlight-4-skills-galore/ Algo que eu ainda não mencionei, e isto é algo que eu especialmente acho fantástico, é a forma como vai ser possível interagir com o ambiente. Por exemplo, podem congelar um rio para atravessar e descongelá-lo para fazer cair os vossos inimigos quando eles estão a passar, podem queimar uma árvore e fazê-la incendiar os vossos adversários, podem mandar por exemplo uma flecha pelo meio de uma parede de fogo, ao fazer isso essa seta vai-se incendiar e provavelmente incendiar a pessoa em que acertar. Existem tantas possibilidades neste jogo que nem tenho forma de as apontar aqui todas. Acerca do mundo Fractured em si, existe muita informação também, um exemplo é como a fauna (monstros/animais) em si muda completamente conforme a atitude do player para com eles, como durante o dia há muitos animais inofencivos mas quando fica de noite estes mesmos se tornam em bestas ferozes, como dependendo da estação do ano em que estão, nem sempres os mesmos monstros vão habitar o mesmo sítio, ou seja existe migração... Podem ir aqui para mais informação acerca disto: https://fracturedmmo.com/state-game-1/ Existe imensas coisas que eu não falei aqui, mas não quero prolongar muito o tópico por isso falei só nas coisas mais básicas. Se vos tiver interessado visitem o site do Fractured e o Fórum em si pois vão aprender muita coisa. Se estiverem interessados em se registar e em seguir o jogo, registem-se a partir deste link, pois vão-me estar a ajudar, e qualquer dúvida que tenham estejam á vontade para me contactar, pois ficarei mais do que contente de vos esclarecer ^^ Meu link pelo qual peço que se registem: https://fracturedmmo.com/?refcode=3b0db531e5aa Fractured Homepage: https://fracturedmmo.com/ Fractured Fórum: https://forum.fracturedmmo.com/ Com os melhores cumprimentos, Frost.
  6. 1 point
    Potato

    [PVM] Metin2 - Old World - PT-BR

    NONONONO E NO, batatinha não gostou nada deste tópico, muito menos deste servidor. Okay amigo é assim queres fazer 1 server oldschool? Muito bem então faz 1 server oldscool bem feito, realmente oldschool não é por sistemas que são bem fáceis de meter btw só porque os recentes servers (desde 2012 no minimo mas ok) também os tem. Amigo Oldschool a sério não podes estar a meter bonus BR porque só nos servers BR vocês tem esse tipo de bonus logo para nós PT e resto do mundo batateiro não nos diz nada, se queres ter players mete bonus normais, acho que isso foi criado porque alguém teve preguiça no navicat e meteram tudo ao monte ueueueuueueueueuueueueueuueueue sorry voltei uma batata major possuiu-me. Outra coisa podes tentar procurar por bons oldschools, tens muitos exemplos procura entre as datas de 2007 até MÁXIMO Fim de 2010. Em Portugal já tinhas muitos servers privados muitos deles em hamachi como Elitemt2 que antigamente era 3Worlds ou Metin3PT, tinhas o Mkmt2, tinhas o MyLastMt2, AddictMt2 e tantos outros (grande maioria via hamachi até inicios de 2010), todos oldschool na altura claro que os tempos mudaram e eles mudaram os servidores também com os anos, btw também tens servers br´s oldschool como o Mt2ROX. Honestamente se querem oldschool vocês tenham atenção aos detalhes TODOS dos servidores de oldschool e metam ideias originais mas que mantenham o oldschool digamos assim, nada de sistemas bué loucos e olha para estes efeitos DRED OLHA PARA ESTA FORÇA QUE DÁ 500K DE DANO MULEKE AIIII QUE DELICIA VEIIOOOO sorry voltei. Onde estava? Ha sim, quando digo ideias originais refiro-me a mudanças pequenas porém que não mudem a ideia ou a jogabilidade ou o sentimento de estarem em 1 verdadeiro oldschool. Hamm xau potato signing off ._.
  7. 1 point
    Cσяvσ⋆

    Fractured MMO

    Digo já, foi a 1º vez na vida que li uma parte inicial de um site completa, em papel está ai feito um jogo que pode-se tornar um dos grandes (top 5) em que se ficar aqui a falar dele nunca mais me calo, esperemos que o gameplay mostre o que está ai prometido... visto ser um grupo de rapaziada jovem como o @morfo2 disse.
  8. 1 point
    morfo2

    Fractured MMO

    MMOhuts tem F2P mas se dizes que é B2P acredito. Não me agrada minimamente a politica deles. Formam startup para venderem um jogo ao público e ainda pedem financiamento numa campanha, isso cheira-me a peta. Mas cada um faz o que pode para ganhar a vida lol. Sacar dinheiro de 3 sítios diferentes é mesmo à patrão.
  9. 1 point
    Really

    Fractured MMO

    É certo que é uma excelente ideia , mas se o projeto for para a frente nao tenho a menor duvida que eles vao ganhar muito disto , os alemaes sao o publico alvo deste tipos de jogos , vais aos MMOs de telemovel é so alemaes a comprar VIP 9 100 euros + em todos os servidores que abrem para serem top1 .. Este tipo de jogos tem um sucesso demasiado grande na Alemanha e eu por acaso gosto destes jogos costumo jogalos no Movel.
  10. 1 point
    Frost

    Fractured MMO

    De momento a comunidade não é muito grande, mas para um jogo em que está ainda a pouco mais de meio ano em desenvolvimento acho que já está bastante aceitável, e se começar a ganhar popularidade com certeza irá crescer. Para te corrigir só numa cena, estás enganado, não vai ser F2P, o jogo vai ser B2P, o que me agrada bastante a mim ^^ Outra coisa, vai haver kickstarter, eles já anunciaram que este ano vão começar uma campanha de kickstarter ao fim de desenvolverem um pouco mais o jogo e terem mais para apresentar ao público :)
  11. 1 point
    morfo2

    Fractured MMO

    Espero que sim. O conceito é bom, agora é saber aplicar. Mas duvido que tenha uma comunidade suficiente, este tipo de jogo é apreciado por uma minoria , ainda por cima vai ser F2P, ou investem imenso em IS e fica P2W ou não sei como vão pagar o jogo. Como startup que são também não irão certamente usufruir de campanhas de financiamento como kickstarter e afins porque já têm o investidor deles. É um jogo que está sob negócio de risco e ainda nem sequer tem nada para apresentar.
  12. 1 point
    Frost

    Fractured MMO

    O jogo está em pre desenvolvimento, o alpha esta suposto ser no Q4 deste ano por isso ainda há pouca coisa de imagens. O melhor que podes ver é neste link, em que mostram algumas habilidades https://fracturedmmo.com/feature-spotlight-4-skills-galore/ :) De momento no site tens uma opção chamada "The Foundation", aí vais ter varias quests que podes completar para evoluir de nivel no site apenas, conforme evoluis o nivel no site ganhas diferente recompenças (muitas delas in-game mais tarde) ^^ Sim tens razão, de momento isto ainda só esta tudo em papel, tal como ja referi varias vezes o jogo esta no desenvolvimento ainda. Independentemente de algumas coisas serem retiradas de outros jogos, não vejo mal nenhum nisso, aliás dificilmente encontras um jogo em que não tenha ido buscar muitas ideias a outros jogos diferentes, mas isso não significa que o jogo vá ser mau. Mesmo que certas cenas venham de outros jogos, os planos que os devs têm para o jogo em papel é bastante inovador e diferente de todos os outros jogos que já vi, se conseguirem implementar tudo corretamente e de forma a dar correto, certamente vai ser um jogo espetacular, mas isso é algo que de momento não podemos discutir muito, apenas quando eles implementarem e desenvolverem mais o jogo se tornará possivel discutir melhor. Em relação ao dizeres que ao fim de lançarem o jogo cagam para isso, isso é apenas uma especulação tua, ainda falta muito tempo até ao lançamento, certamente até la a comunidade vai crescer e a dev team vai ganhar novos membros também, ninguém sabe como vai ser o futuro ^^
  13. 1 point
    morfo2

    Fractured MMO

    "SEIZE YOUR CHANCE TO WIN A GAME KEY!" O jogo ainda está em pré-produção, é um mero conceito de 10 jovens italianos sem experiência nenhuma na área que receberam guito da startup e agora brincam com Unity. No papel é uma maravilha, pena que na realidade esse estilo de jogo depende exclusivamente da jogabilidade e não do paleio. As "novidades" que apresentam não são nada de especial, decidiram inventar uma história mas se virem a skill tree ou as skills, que são as únicas coisas que têm para demonstrar neste momento, são retirados de outros jogos. Com sorte, se o orçamento não acabar, daqui a 2 anos lançam o jogo e depois cagam nisso por não terem a aderência necessária para pagar as despesas do jogo e aos investidores. Mas o conceito está muito bom, sem dúvida.
  14. 1 point
    яล∂เ๏ล¢†เเ√э

    ChewL

    Bem vindo! A mim nao me recebes tu :'(
  15. 1 point
    Honeybear

    ChewL

    Bem - vindo :) Alguma dúvida ou erro não hesites em enviar mp !! Cumprimentos
  16. 1 point
    Really

    Fractured MMO

    Parace interessante mas algumas imagens podiam dar mais pica para uma pessoa ir exprimentar.
  17. 1 point
    Sabes o que era uma coisa mesmo fixe? uma critica construtiva em vez de um comentário que não é produtivo. Eu sei eu sei, este meu comentário faz de mim hipócrita, mas se não te vês ao espelho, ao menos reconhece.
  18. 1 point
    A Tech-Gamers não morre enquanto houverem recordações!
  19. 1 point
    Cσяvσ⋆

    Empréstimo Na Boa

    Smurf com 30-35k IP, sem champs e sem runes, conta não verificada. Entras na conta, passas para o teu email e é tua permanentemente, foi o que devias ter feito desde o inicio :)
  20. 1 point
    Nestle

    Empréstimo Na Boa

    Só não percebo porque não crias tu uma conta e jogas nela
  21. 1 point
    A professora pediu-nos que fizessemos um projecto e eu como gosto de Metin2 desenvolvi isto: Ver este Tutorial em PDF Espero que gostem E s c o l a S e c u n d á r i a D r . J o r g e C o r r e i a por: Paulo Gonçalves Aluno nº19 da turma TGPSI De 24/04/2012 a 08/05/2012 Relatório do Projecto de Programação de Sistemas Informáticos 1 Paulo Gonçalves – Projecto de PSI Índice Índice 1 Introdução 2 Objectivos 3 Desenvolvimento do Projecto 4 Ponto 1 – Instalação e configuração dos Ficheiros do Servidor 4 Ponto 2 – Instalação e configuração dos programas de acesso ao servidor 7 Parte I – Instalação e configuração do Navicat 7 Parte II - instalação e configuração do Filezilla 7 Ponto 3 – Criação de uma conta e tornar o nosso personagem GameMaster (administrador) 8 Parte I – Criação de uma conta. 8 Parte II – Tornar o nosso personagem GameMaster (administrador) 9 Ponto 4 – Ligar o cliente ao servidor. 10 Ponto 5 – Estudo das bases de Dados. 11 Parte I – Estudo da Base de Dados Accounts. 11 Parte II – Base de Dados common . 12 Parte III – Base de Dados Player. 13 Ponto 6 – Implementação de itens, NPCS e monstros(mobs) 15 Parte I – Implementação de itens. 15 Parte II – Implementação de NPCS. 20 Parte III – Implementação de monstros(mobs). 22 Dificuldades Sentidas. 25 Conclusão. 26 Girias utilizadas neste documento e no mundo dos jogos. 27 Bibliografia e Netgrafia. 28 2 Paulo Gonçalves – Projecto de PSI Introdução Neste módulo foi proposto pela professora desenvolvermos-mos um projecto individual sobre algo aprendido na disciplina de Programação de Sistemas de Informação e propus-me a desenvolver e explicar o processo de instalação e configuração de um servidor de jogos, Metin2, e ainda conectar as bases de dados do servidor com o cliente de jogo. Escolhi este projecto porque engloba várias áreas da informática, nomeadamente Sistemas Operativos, Arquitectura de Computadores, Redes de Comunicações e Programação de Sistemas de Informação. Para tal efeito utilizei os seguintes programas: -Navicat 10.0; -Notepad++; -Filezilla; -Virtual PC 2007; -M2 extractor; -Portmap; -DUC Client No-ip; -Ficheiros do Servidor; -GIMP 2.8 -Cliente. O servidor como requer bibliotecas somente disponibilizadas pelo sistema operativo FreeBSD toda a configuração e instalação foi feita numa máquina virtual. Os ficheiros do servidor assim como as bases de dados foram criados por outras pessoas sendo o meu objectivo apenas o de melhorar os aspectos defeituosos deixados pelos criadores. Todo o conhecimento que adquiri sobre este assunto foi nos fóruns da Internet, Youtube e na escola, tendo tido muito trabalho de pesquisa antes de poder fazer qualquer alteração. 3 Paulo Gonçalves – Projecto de PSI Objectivos Este projecto tem como objectivos principais: -Instalação e Configuração do Servidor de Metin2; -Instalação e Configuração dos programas de acesso; -Criar uma conta e tornar o nosso personagem GameMaster (administrador); -Ligar o cliente ao servidor; -Estudo das Bases de Dados; -Implementação de novos itens, NPCS e monstros (mobs). -Desenvolvimento de um programa para fazer a transferência dos arquivos mais recentes e actualizados em relação ao servidor (Patcher). 4 Paulo Gonçalves – Projecto de PSI Imagem 1 - Escolha da placa de rede Desenvolvimento do Projecto Ponto 1 – Instalação e configuração dos Ficheiros do Servidor Primeiro comecei por fazer a instalação de uma nova placa de rede. Para este passo fui no menu Iniciar do Windows, depois na pesquisa escrevi hdwwiz. Carreguei no botão Seguinte, seleccionei o ponto Instalar o hardware que eu seleccionar manualmente a partir de uma lista e carreguei no botão Seguinte. Nesta lista seleccionei a aba placas de rede e cliquei no botão seguinte. Na aba fabricante escolhi Microsoft e depois Microsoft Adaptor Loopback. Depois Seguinte, Seguinte e ele instala. Quando a placa de rede for instalada cliquei em concluir. Depois segue-se a configuração da placa de rede. Para este passo fui ao Menu Iniciar, Painel de Controlo, Centro de rede e partilha e no meu caso cliquei na conexão local 3. Fui as propriedades e editei as configurações IP v4. Pus para atribuir um IP fixo com as seguintes configurações. Ilustração 2 - Propriedade do Protocolo IP v4 Pus um visto no Validar Definições ao Sair e OK. 5 Paulo Gonçalves – Projecto de PSI Feito isto tive que fazer três transferências. Ficheiros do Servidor + Maquina Virtual: http://depositfiles....files/g1o5m24f6 Virtual PC 2007:http://www.microsoft.com/en-us/download/details.aspx?id=4580 Portmap: http://www.mediafire...v1fvn8e62f8zb4a Extrai o Portmap e os ficheiros do Servidor e instalei como um programa normal o virtual PC. A senha dos ficheiros do servidor é “cyber-gamers.org”. De seguida abri o Virtual PC e cliquei no botão New..., Next, Create a Virtual Machine, Next, Next. No Operating System coloquei Others, Next, Adjusting the RAM, pus 1024MB de RAM e Next. Escolhi a opção An existing Virtual Hard Disk e Next. Coloquei a localização dos ficheiros do Servidor extraÍdos (um ficheiro .vhd) e cliquei Next. Tendo feito isto seleccionei a máquina e cliquei em Settings. Na aba Networking seleccionei o Microsoft Adaptor Loopback. Depois cliquei Finish. Seleccionei a minha máquina e cliquei Start. O programa Virtual PC vai iniciar um sistema operativo virtual. O utilizador que usamos é o root com a password mcncc.com (pode ser mudada posteriormente). Depois de colocar o login e a password na consola escrevi sysinstall. Depois escolhi a opção configure e depois Networking, Interfaces. Optei pela opção de0 e carreguei em No, No e coloquei as seguintes configurações: Ok, Yes, Esc, Esc. Outra configuração que fiz neste menu foi a configuração do Teclado. Para isso fui à opção Keymap e escolhi Portuguese (accent). Feito isto carreguei ESC e escrevi na linha de comandos /etc/rc.d/netif restart para reiniciar as configurações de rede. Depois escrevi reboot para reiniciar a máquina. Quando a máquina reiniciou inseri o login e password e escrevi na linha de comandos ./start para iniciar o servidor. Depois liguei o Portmap abrindo o programa. Chegando ao fim da instalação e configuração da máquina fui configurar os programas de acesso. 7 Paulo Gonçalves – Projecto de PSI Ponto 2 – Instalação e configuração dos programas de acesso ao servidor Parte I – Instalação e configuração do Navicat Primeiro transferi o programa. http://www.mediafire...s82q276b8gd8wtd Extrai e instalei normalmente. Quando me pediu para inserir o Serial abri o programa encontrado na pasta LZ0 (keygen.exe). Colei o serial e registei o programa. Abri o navicat e fui configurar uma nova ligação. Para isto cliquei na opção connect e escolhi mysql. Ilustração 5 - Nova ligação SQL Depois no connection name pus um nome à minha escolha (metin2). No host name coloquei 192.168.5.100. O port fica igual (3306). O utilizador fica root e a password é 123456. Pus um visto no Save Password e Cliquei no OK. A parte da ligação à base de dados está feita. Parte II - instalação e configuração do Filezilla Efectuei a transferência no site: http://filezilla-project.org/ Instalei como um programa normal e procedi a configuração. Para tal fui a aba Ficheiro, Gestor de Sitios, Novo sitio. Ilustração 6 - Novo Sitio No anfitrião coloquei 192.168.5.100, na Porta 22, no protocolo SFTPD – SSH File Transfer Protocol. Na parte do tipo de inÍcio de sessão coloquei normal e no utilizador root com a palavra passe mcncc.com. Feito isto cliquei em OK e a configuração do Filezilla está feita. 8 Paulo Gonçalves – Projecto de PSI Ponto 3 – Criação de uma conta e tornar o nosso personagem GameMaster (administrador) Parte I – Criação de uma conta. Este passo é indispensável pois sem uma conta não é possÍvel fazer a ligação ao servidor através de um cliente. Neste caso usei o navicat, mas de futuro usarei uma página criada por mim, para qualquer pessoa ter acesso e poder criar uma conta. Para tal efeito abri o navicat e acedi à ligação previamente configurada. Seleccionei a base de dados account e abri a tabela accounts. Na coluna id coloquei um número que ainda não foi usado(neste caso 2) e no login o nome usado para efectuar o login no cliente. Ilustração 7 - Adicionar uma conta A password utiliza uma encriptação por tive que fazer uma consulta antes, de modo que, fui a parte query, New Query, e escrevi SELECT PASSWORD(‘123456’); Ilustração 8 – Query para gerar a password encriptada Cliquei em run e copiei o valor obtido e colei na coluna password. Depois no real_name pus o nome verdadeiro, social_id o código para apagar as personagens, e no email o meu email. Feito isto a conta estava criada. 9 Paulo Gonçalves – Projecto de PSI Parte II – Tornar o nosso personagem GameMaster (administrador) Agora com a conta criada deveremos nos tornar administradores do jogo para que possamos fazer testes e outras coisas. No navicat abri a base de dados common e a tabela gmlist. Lá inseri um novo registo e coloquei os seguintes valores: mID: um número que ainda não fosse utilizado; mAccount: o login da conta que foi criada anteriormente; mName: o nome que o personagem irá ter; mAuthority: IMPLEMENTOR. Ilustração 9 - Adicionar uma personagem à tabela dos GMs Quando acabei este passo ao fazer ligação com aquela conta e ao criar um personagem com o nome escolhido, este se tornava GameMaster. 10 Paulo Gonçalves – Projecto de PSI Ponto 4 – Ligar o cliente ao servidor Após as configurações anteriores tive que criar o personagem e testar se o servidor estava a funcionar correctamente. Para isso fiz as configurações necessárias no cliente para poder ligarme ao servidor. Para efectuar a transferência do cliente acedi a este link: http://uploaded.to/file/jlxzczc8 Extrai, abri o ficheiro serverimfo.py com o notepad++ , e coloquei o ip da máquina virtual (192.168.5.100). Abri o programa metin2_2010.exe cliquei em START e pus as minhas credências da conta. Ilustração 10 - Metin2_2010.exe Ilustração 11 - Inserir as credenciais de conta Fiz a ligação ao servidor e cliquei no botão criar. Escolhi a classe e o sexo (Guerreiro e Masculino), Ilustração 13 - Criar o Personagem o nome foi aquele que coloquei previamente na tabela de gmlist e escolhi a cor que desejava que o equipamento fosse (cor 2). Cliquei em criar e depois quando me apareceu para escolher o personagem cliquei em começar. Esperei o loading e apreceu o meu personagem com o simbolo GM acima da cabeça (significando que é GameMaster). Ilustração 12 - Personagem no Mundo do Jogo Como conseguimos jogar, o servidor estava funcional. 11 Paulo Gonçalves – Projecto de PSI Ponto 5 – Estudo das bases de Dados Existem 3 bases de dados que são fundamentais à execução do servidor. Elas são Accounts, Common e Player. Dentro das mesmas existem tabelas que exigem a nossa compreenção. Sem saber para que serve um campo em questão uma alteração na base de dados pode compremeter todo o funcionamento do servidor, desde dar erro ao escolher a personagem a o servidor nem ligar. Parte I – Estudo da Base de Dados Accounts Esta base de dados serve para guardar as contas que são criadas. Dentro desta existe apenas uma tabela que se precisa compreender, accounts, que tem os seguintes campos: Id, login, password, real_name, social_id, email, phone1, phone2, zipcode, adress, create_time, question1, answer1, question2, answer2, is_testor, status, securitycode, newsletter, empire, name_checked, availDt, cash, gold_expire, silver_expire, safebox_expire, autoloot_expire, fish_mind_expire, marriage_fast_expire, money_drop_rate_expire, ttl_cash, ttl_mileage, channel_company, last_play. Destes todos apenas precisei de compreender o funcionamento dos seguintes: Id, login, password, real_name, social_id, email, phone1, phone2, zipcode, adress, question1, answer1, question2, answer2, status, gold_expire, silver_expire, safebox_expire, autoloot_expire, fish_mind_expire, marriage_fast_expire e money_drop_rate_expire. Destes apenas os seguintes não podem ser nulos: Id, login, password, social_id Após estudar o funcionamento de cada campo cheguei a conclusão de que os campos actuam segundo o seguinte: Id, é uma chave primária. Serve para identificar a que conta os personagens pertencem. Este campo é auto increment por isso não precisamos de especificar um valor. Login, é o nome utilizado para se fazer o login no cliente. Este campo tem que ser único. Password, é a password utilizada para se fazer o login no cliente. Este campo utiliza a encriptação de Password do MySQL. Este processo é irreversivel, portanto só se pode encriptar e não se pode desencriptar fazendo com que seja uma palavra passe muito segura. Social_id, é o código que vai ser utilizado ao eliminar uma personagem, fazendo assim com que a personagem só possa ser eliminada pelo criador da conta. Real_name, é o nome real do dono da conta. Email, é o email a que a conta está associada. Se usarmos num site uma recuperação da password por email, este campo torna-se essencial. Phone1, phone2, é um campo para que se coloque o número de telemóvel. Não tem muito interesse pois o utilizador nunca vai ser contactado via telemovel e no jogo não há nada que seja feito a partir do telemovel. Zipcode, adress, Informações relactivamente a morada. Não tem muita utilidade nesta base de dados. Question1, question2, São as perguntas de segurança. Se for feito a reposição de password com perguntas secretas estes campos tornam-se essenciais. Answer1, answer2, São as respostas as perguntas de segurança. Se for feito a reposição de password com perguntas secretas estes campos tornam-se essenciais. Status, Quando o valor deste campo for OK, poderemos fazer o login no cliente normalmente. Este campo é de extrema utilidade se utilizarmos algum método de validação por email. gold_expire, silver_expire, safebox_expire, autoloot_expire, fish_mind_expire, marriage_fast_expire e money_drop_rate_expire, bónus do jogo, são do tipo data e guardam até que dia estes bónus estão activos. São extremamente uteis caso queiramos fazer um sistema VIP. Feito este estudo cheguei a conclusão de que a query óptima para acrescentar uma nova conta é: INSERT INTO accounts(login, password, social_id, email, question1, question2, answer1,answer2, status, gold_expire, silver_expire, safebox_expire, autoloot_expire,fish_mind_expire, marriage_fast_expire e money_drop_rate_expire) VALUES (‘login’,PASSWORD(‘password’), ‘código de apagar a personagem’, ‘email’, ‘questão 1’, ‘questão2’,‘resposta1’, ‘resposta2’, ‘OK’, ‘data de hoje mais dez dias’, data de hoje mais dez dias’, datade hoje mais dez dias’, data de hoje mais dez dias’, data de hoje mais dez dias’, data de hojemais dez dias’, data de hoje mais dez dias’); Parte II – Base de Dados common Esta base de dados serve para guardar as coisas comuns ao servidor. Uma das tabelas é a gmlist, que serve para guardar os GameMasters que o servidor tem. Esta tem os seguintes campos: mID, mAccount, mName, mAuthority, mContactIP, mServerIP Destes apenas os seguintes não podem ser nulos: mID, mAccount, mName, mAuthority Depois de estudar esta tabela cheguei à conclusão que: O campo mID é a chave primária e guarda o número do GM. O campo mAccount serve para dizer a que conta o GM pertence, para que se for criado um personagem com o mesmo nome do GM este não ter poderes de administração. O campo mName é o nome do personagem que é GM. O campo mAuthority é onde se designa que tipo de GM ele é, Implementor, que tem acesso a tudo ou apenas um Wizard, que pode só fazer apenas algumas coisas. 13 Paulo Gonçalves – Projecto de PSI Com isto cheguei a conclusão que a query optima é: INSERT INTO gmlist(mID, mAccount, mName, mAuthority, mServerIP) VALUES (‘id’, ‘nome daconta’, ‘nome do personagem’, ‘IMPLEMENTOR’, ‘ALL’); Parte III – Base de Dados Player Esta base de dados guarda todos os dados relactivamente ao jogo. Todas as tabelas são deveras importantes, embora para atingir o meu objectivo só precisei compreender as tabelas item_proto e mob_proto. Outras tabelas importantes são a player que guarda os registos dos personagems, guild, que guarda todas as alianças feitas no jogo, land, que guarda os terrenos das alianças, item, que guarda a quem pertence tal item, item_atrr, que guarda os especiais e quantidades que podem ser aplicados nos items, shop, que designa a determinado NPC uma loja e shop_item que determina que lojas vendem determinado item e que quantidades. Vou começar por falar da tabela item_proto. Ao estudar a tabela vi que tem os seguintes campos: Vnum, name, locale_name,type, subtype, weight, size, antiflag, flag, wearflag, immuneflag, gold, shop_buy_price, refined_vnum, refine_set, refine_set2, magic_pct, limittype0, limitvalue0, limittype1, limitvalue1, applytype0, applyvalue0, applytype1, applyvalue1, applytype2, applyvalue2, value0, value1, value2, value3, value4, value5, socket0, socket1, socket2, socket3, socket4, socket5, specular, socket_pct, addon_type. Vnum serve para identificar o id do item. Name serve para identificar o nome do item nos ficheiros do servidor. Locale_name serve para identificar os nomes dos itens no cliente. Type, subtype, servem para identificar qual o tipo de item (espada, leque, poção, item normal,). Size, o tamanho que ocupa no inventario. Antiflag, flag, wearflag, immuneflag, Restrições de raça, se pode ser vendido e se se pode deixar cair. Shop_buy_price, preço ao vender o item numa loja do jogo. Refined_vnum, refine_set, refine_set2, informações sobre a refinação do item. limittype0, limitvalue0, limittype1, limitvalue1, restrições de nivel. applytype0, applyvalue0, applytype1, applyvalue1, applytype2, applyvalue2, bonus daquela arma. value0, value1, value2, value3, value4, value5, valores referentes ao tipo de item que é. E depois estudei a tabela mob_proto que tem os seguintes campos: 14 Paulo Gonçalves – Projecto de PSI vnum, name, locale_name, rank, type, battle_type, level, size, ai_flag, mount_capacity, setRaceFlag, setImmuneFlag, empire, folder, on_click, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, gold_min, gold_max, exp, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, drop_item, resurrection_vnum, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, mob_color, polymorph_item, skill_level0, skill_vnum0, skill_level1, skill_vnum1, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive, skill_level2, skill_vnum2, skill_level3, skill_vnum3, skill_level4, skill_vnum4 vnum, o id que identifica o mob. Name, o nome que identifica nos ficheiros do servidor. Locale_name, o numero que identifica no cliente. Rank, o nivel de dificuldade. Type, o tipo de mob que é. Level, o nivel do mob. Ai_flag, como o mob se comporta. Empire, o império ao qual pertence o moob. On_click, o que o mob faz quando se clica nele. St, dx, ht, iq, status do mob. Damage_min, damage_max, dam_multiply, valores de dano do mob. skill_level1, skill_vnum1, skill_level2, skill_vnum2, skill_level3, skill_vnum3, skill_level4, skill_vnum4, que habilidades o moob tem. resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, resistencias aos personagens que o mob tem. 15 Paulo Gonçalves – Projecto de PSI Ponto 6 – Implementação de itens, NPCS e monstros(mobs) Para concluir este passo já é preciso descompactar ficheiros do servidor. Para tal usamos a ferramenta do M2 Extractor. Como já é uma ferramenta antigo que eu possuo e não aencontro já disponibilizada na internet eu próprio fiz o upload. Primeiro fiz a transferência do M2 Extractor http://www.mediafire.com/?jxao19gjw5oboqa Depois copiei para o caminho C:m2 e extrai. Fiquei com um programa chamado m2.exe. Este programa trabalha com os ficheiros .eix e .epk do cliente através de ficheiros .xml. Para o usar tive que ir à linha de comandos do Windows (Menu Iniciar e na pesquisa escrever cmd) e ir para a pasta do programa (cd c:m2). Feito isto tive que criar um ficheiro .xml e copiar o arquivo que desejo descompactar do cliente. Depois escrevi na consola m2 ficheiro.xml e ele extraiu-me os ficheiros para a pasta Source.Depois tive que ir através do navegador do Windows (explorer) ir a pasta c:m2source e lá encontravam-se todos os ficheiros que estavam dentro do ficheiro .epk. Parte I – Implementação de itens. Nesta parte adicionei 3 itens comuns que irão fazer parte de uma missão. O nome desses itens são, Chave de Azurite, Cabeça Encolhida e Totem do Resto. Todos estes itens têm um Ícone. Os Ícones podem ser encontrados nestes links: Chave de Azurite Cabeça Encolhida Totem do Resto Guardei as 3 imagens no meu computador. De seguida criei 4 ficheiros XML, icon.xml, root.xml, locale_de.xml, item_proto.xml em que os conteúdos eram os seguintes: icon.xml <Buildfile version="1.1"><Action type="extract" archivePath="C:m2icon" outputPath="Source" extractAll="YES"createXML="YES" xmlPath="iconpack.xml" /></Buildfile>16 Paulo Gonçalves – Projecto de PSI locale_de.xml item_proto.xml De seguida copiei os ficheiros icon.epk, icon.eix, locale_de.epk, locale_de.eix da pasta pack do cliente para a pasta c:m2 e os ficheiros criados para a pasta c:m2. Abri a consola e fui para a pasta m2. Escrevi m2 root.xml. O programa extraiu sem quaisquer erros. Ilustração 14 - Linha de comandos Windows Fiz o mesmo para o ficheiro icon.xml e locale_de.xml. Foi criado a pasta Source, o ficheiro rootpack.xml,o ficheiro locale_depack.xml e o ficheiro iconpack.xml. No explorador do Windows fui à pasta c:m2Source e lá tinha os ficheiros todos que estavam dentro dos ficheiros .epk. Feito isto editei as imagens no GIMP para passar de png para tga, o formato de imagem do metin2. Para efectuar este passo abri as imagens no GIMP e na aba ficheiro -> exportar selecionei a extensão .tga. Ilustração 15 - Edição das imagens no GIMP Primeiro copiei as três imagens editadas para a pasta c:m2sourceiconitem <Buildfile version="1.1"><Action type="extract" archivePath="C:m2locale_de" outputPath="Source" extractAll="YES"createXML="YES" xmlPath="locale_depack.xml" /></Buildfile><Buildfile version="1.1"><Action type="item_proto_extract" path="item_proto" output="item_proto_dump.xml" /></Buildfile>17 Paulo Gonçalves – Projecto de PSI Depois abri o ficheiro c:m2sourcelocaledeitemlist.txt com o notepad++. Efectuei uma pesquisa (CTRL + F) com o número 30311, 30312 e 30319 para verificar se já existiam entradas desse número nesse ficheiro. Como não existia entrada para esses números eu fui acrescentar estas linhas: Depois editei o ficheiro c:m2sourcelocaledeitem_desc.txt com o notepad++. Efectuei uma pesquisa (CTRL + F) com o número 30311, 30312 e 30319 para verificar se já existiam entradas desse número nesse ficheiro. Como não existia adicionei as seguintes linhas: Agora copiei o ficheiro c:m2Sourcelocaledeitem_proto para a pasta c:m2. Executei na consola do Windows, na pasta c:m2, o comando m2 item_proto.xml. Isto criou o ficheiro item_proto_dump.xml. Editei esse ficheiro. Fiz a pesquisa acima referida, e mais uma vez como não existia adicionei as seguintes linhas: 30311 ETC icon/item/30311.tga30312 ETC icon/item/30312.tga30319 ETC icon/item/30319.tga30311 Chave de Azurite Esta delicada chave, com uma pedra de Azurite, abre a passagem para o 2º Andar das Catacumbas do Demónio. 30312 Totem de Rosto Este pedaço de madeira com um rosto cravado serve como chave para o 6º Andar das Catacumbas do Demónio. 30319 Cabeça Encolhida Esta cabeça de demónio encolhida abre o selo para o 3º Andar das Catacumbas do Demónio. Este item é negociável. <Item vnum="30311" name="Chave de Azurite" gb2312name="Chave de Azurite" type="5" subtype="0"weight="0" size="1" antiflag="0" flag="4" wearflag="0" immuneflag="0" gold="0" buy_price="0" limittype0="0"limitvalue0="0" limittype1="0" limitvalue1="0" applytype0="0" applyvalue0="0" applytype1="0" applyvalue1="0"applytype2="0" applyvalue2="0" value0="0" value1="0" value2="0" value3="0" value4="0" value5="0" socket0="0"socket1="64944" socket2="127" socket3="65008" socket4="21631" socket5="4855" refine_vnum="0" refine_set="0"magic_pct="0" specular="0" socket_pct="0" /><Item vnum="30312" name="Totem do Resto" gb2312name="Totem do Resto" type="5" subtype="0" weight="0"size="1" antiflag="0" flag="4" wearflag="0" immuneflag="0" gold="0" buy_price="0" limittype0="0" limitvalue0="0"limittype1="0" limitvalue1="0" applytype0="0" applyvalue0="0" applytype1="0" applyvalue1="0" applytype2="0"applyvalue2="0" value0="0" value1="0" value2="0" value3="0" value4="0" value5="0" socket0="0" socket1="64944"socket2="127" socket3="65008" socket4="21631" socket5="4855" refine_vnum="0" refine_set="0" magic_pct="0"specular="0" socket_pct="0" /><Item vnum="30319" name="Cabeça Encolhida" gb2312name="Cabeça Encolhida" type="5" subtype="0"weight="0" size="1" antiflag="0" flag="4" wearflag="0" immuneflag="0" gold="0" buy_price="0" limittype0="0"limitvalue0="0" limittype1="0" limitvalue1="0" applytype0="0" applyvalue0="0" applytype1="0" applyvalue1="0"applytype2="0" applyvalue2="0" value0="0" value1="0" value2="0" value3="0" value4="0" value5="0" socket0="0"socket1="64944" socket2="127" socket3="65008" socket4="21631" socket5="4855" refine_vnum="0" refine_set="0"magic_pct="0" specular="0" socket_pct="0" />18 Paulo Gonçalves – Projecto de PSI Agora compactei os arquivos de novo para colocar no cliente. Para tal o que eu fiz primeiro foi a criacção de um outro ficheiro .xml, item_protopack.xml com o seguinte conteudo: Ainda acrescentei no ficheiro iconpack.xml as seguintes linhas: Executei na consola do Windows, na pasta c:m2, o comando m2 item_protopack.xml. Isto criou o ficheiro item_proto. Copiei o item_proto para a pasta c:m2Sourcelocalede e Voltei a compactar tudo com os seguintes comandos: m2 locale_depack.xml m2 iconpack.xml Copiei os ficheiros icon.epk, icon.eix, locale_de.epk e locale_de.eix para a pasta pack do cliente. Abri o navicat, liguei-me a ligação ahamachi(nome escolhido anteriormente), escolhi a base de dados player e em new query inseri a seguinte query: <Buildfile version="1.1"><Action type="item_proto_create" path="item_proto_dump.xml" output="item_proto" /></Buildfile>INSERT INTO item_proto VALUES ('30311', 'Chave de Azurite', 'Chave de Azurite', '5', '0', '0', '1','0', '4', '0', '', '0','0', '0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0', '-1', '-1', '-1', '-1','-1', '-1', '0', '0', '0');INSERT INTO item_proto VALUES ('30312', 'Totem do Resto', 'Totem do Resto', '5', '0', '0', '1','0', '4', '0', '', '0','0', '0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0', '-1', '-1', '-1', '-1','-1', '-1', '0', '0', '0');INSERT INTO item_proto VALUES ('30319', 'Cabeça Encolhida', 'Cabeça Encolhida', '5', '0', '0', '1','0', '4', '0', '', '0','0', '0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0', '-1', '-1', '-1', '-1','-1', '-1', '0', '0', '0');<File archivedPath="icon/item/30311.tga"type="1"><![CDATA[Sourceiconitem30311.tga]]></File><File archivedPath="icon/item/30312.tga"type="1"><![CDATA[Sourceiconitem30312.tga]]></File><File archivedPath="icon/item/30319.tga"type="1"><![CDATA[Sourceiconitem30319.tga]]></File>19 Paulo Gonçalves – Projecto de PSI Feito isto fui ao cliente, fiz login, escolhi a personagem e no chat escrevi /reload p para fazer um recarregamento as tabelas _proto. Depois no chat fiz /i 30311. Verifiquei se apareceu o item. Repeti o mesmo passo para os items 30312 e 30319. Ilustração 16 - Os três novos itens 20 Paulo Gonçalves – Projecto de PSI Parte II – Implementação de NPCS. Nesta parte foi adicionado um NPC (Non Playable Character), para fazer o teletransporte para dentro uma nova zona implementada. Para isso usei um modelo já existente de NPC (um ficheiro .gr2). As únicas coisas que fiz foi a instrução SQL e integrar o NPC com o cliente para que o possamos visionar. O primeiro passo que tomei foi extrair o ficheiro root.epk, e para tal efeito criei o ficheiro root.xml. Nele escrevi o seguinte: Copiei os ficheiros root.epk e root.eix, executei o seguinte comando na pasta c:m2: m2 root.xml e o programa descompactou os ficheiros contidos dentro do ficheiro root. Editei o documento c:m2sourcenpclist.txt com o notepad++ e pesquisei para ver se existe a linha 20133. Como não existia adicionei a seguinte linha nesse mesmo ficheiro: Feito isto guardei o documento e na consola executei o comando m2 rootpack.xml. Copiei o root.epk e root.eix gerados e colei dentro da pasta pack do cliente. Ilustração 17 - Modelo do NPC <Buildfile version="1.1"><Action type="extract" archivePath="C:m2root"outputPath="Source" extractAll="YES" createXML="YES"xmlPath="rootpack.xml" /></Buildfile>20133 jinno_patrol_spear21 Paulo Gonçalves – Projecto de PSI Depois fiz a query SQL: Fiz login no jogo, digitei no chat /reload p e depois /m 20133. Ilustração 18 - NPC adicionado INSERT INTO mob_proto VALUES (20133, 'Guardião das Catacumbas', 'Guardião dasCatacumbas', '5', '1', '0', '120', '', 'NOMOVE', '0', '', 'STUN,SLOW,CURSE,TERROR', '0', '', '2','0','0','0','0','0','0', '120', '3', '1', '0','0', '100', '4', '100', '100', '0', '2000', '150', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', null, null, null, null, null, null);[/center][center]22 Paulo Gonçalves – Projecto de PSI Parte III – Implementação de monstros(mobs). O cliente que fiz a transferência já tem todos os monstros que quero inserir implementados, portanto só precisei de trabalhar as querys SQL que foram as seguintes: INSERT INTO `mob_proto` VALUES ('2501', 'zombie_diseased_kid', 0x48F66C6C656E7175616C6C65, '1', '0', '0', '100', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0','30', '40', '200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2502', 'zombie_diseased_dog', 0x48F66C6C656E68756E64, '1', '0', '0', '98', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '33','40', '200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2503', 'Zombie', 0x48F66C6C656E6F6666697A696572, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '34', '40','200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2504', 'zombie_diseased_sword', 0x48F66C6C656E6F6666697A696572, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0','', '0', '40', '40', '200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2505', 'zombie_diseased_spear', 0x48F66C6C656E77E46368746572, '2', '0', '0', '110', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '300', '700', '50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100','5000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2506', 'zombie_diseased_bow', 0x5A7765696B6F70662D48F66C6C656E736368FC747A65, '2', '0', '0', '105', '', 'AGGR','0', 'HUMAN', '', '0', '', '0', '43', '40', '200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2507', 'zombie_diseased_boss', 0x48F66C6C656E67726569666572, '4', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '','0', '47', '40', '200', '10', '300', '450', '15000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2508', 'zombie_soldier_scythe', 0x48F66C6C656E6B726965676572, '3', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '','0', '65', '40', '200', '10', '600', '800', '150000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '11974', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2509', 'zombie_soldier_bow', 0x48F66C6C656E736368FC747A65, '3', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0','59', '40', '200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2510', 'zombie_soldier_spear', 0x48F66C6C656E73706565726BE46D70666572, '3', '0', '0', '105', '', 'AGGR', '0','HUMAN', '', '0', '', '0', '70', '40', '200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2511', 'zombie_magician', 0x48F66C6C656E7072696573746572, '3', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0','80', '40', '200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2512', 'zombie_bigboss', 0x48F66C6C656E6D616A6F72, '4', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '80', '40','200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2513', 'zombie_ghost', 0x48F66C6C656E6D65747A6C6572, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '67','40', '200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2514', 'zombie_general', 0x48F66C6C656E67656E6572616C, '4', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '86','40', '200', '10', '300', '450', '30000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');23 Paulo Gonçalves – Projecto de PSI INSERT INTO `mob_proto` VALUES ('2541', 'zombie_soldier_scy', 0x42F67365722048F66C6C656E6B726965676572, '4', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '81', '40', '200', '10', '600','800', '150000', '3', '3', '8500000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '11973', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2542', 'zombie_soldier_bow', 0x42F67365722048F66C6C656E736368FC747A65, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '66', '40', '200', '10', '300','450', '50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2543', 'zombie_soldier_spear', 0x42F67365722048F66C6C656E73706565726BE46D70666572, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '70', '40', '200','10', '300', '450', '50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2544', 'zombie_magician', 0x42F67365722048F66C6C656E7072696573746572, '2', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '59', '40', '200', '10', '300','450', '50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2545', 'zombie_bigboss', 0x42F67365722048F66C6C656E6D616A6F72, '4', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '76', '40', '200', '10', '300', '450','50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2546', 'zombie_ghost', 0x42F67365722048F66C6C656E6D65747A6C6572, '3', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', '', '0', '', '0', '80', '40', '200', '10', '300', '450','50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2547', 'zombie_general', 0x42F67365722048F66C6C656E67656E6572616C, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '','0', '90', '40', '200', '10', '300', '450', '50000', '3', '3', '5000000', '5000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2591', 'zombie_king', 0x5461727461726F73, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200', '10', '450','800', '200000', '3', '3', '12000000', '12000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2592', 'zombie_king', 0x48F66C6C656E62617374617264, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200','10', '450', '800', '200000', '3', '3', '12000000', '12000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2593', 'zombie_king', 0x48F66C6C656E62617374617264, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200','10', '450', '800', '200000', '3', '3', '12000000', '12000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2594', 'zombie_king', 0x48F66C6C656E62617374617264, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200','10', '450', '800', '200000', '3', '3', '14000000', '14000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2595', 'zombie_king', 0x457265626F73, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200', '10', '450', '800','200000', '3', '3', '14000000', '14000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2596', 'zombie_king', 0x417A7261656C732042727574, '5', '0', '0', '105', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200', '10','700', '900', '200000', '3', '3', '14000000', '14000000', '350000', '70', '100', '100', '100', '2000', '120', '11972', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2597', 'zombie_god', 0x436861726F6E, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '90', '40', '200', '10', '700', '800','200000', '3', '3', '16000000', '16000000', '350000', '70', '100', '100', '100', '2000', '120', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('2598', 'zombie_god', 0x417A7261656C, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN', 'SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000','250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0');24 Paulo Gonçalves – Projecto de PSI Tendo efectuado as querys foi ao cliente, fiz /reload p e expirimentei evocar todos os mobs que adicionei tendo sido eles: 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511, 2512, 2513, 2514, 2541, 2542, 2543, 2544, 2545, 2546, 2547, 2591, 2592, 2593, 2594, 2595, 2596, 2507, 2598, 30101, 30102, 30103, 30104, 30111, 30112, 30113, 30114, 30115, 30116, 30117, 30118, 30119. Ilustração 19 - Monstros implementados INSERT INTO `mob_proto` VALUES ('30101', '?????', 0x53746174756520646573204B7564, '5', '1', '0', '70', '', 'NOMOVE', '0', '', 'STUN,SLOW,CURSE,TERROR', '0', '', '2', '0', '0', '0', '0', '0', '0', '3954','3', '1', '0', '0', '562', '79', '100', '100', '0', '2000', '150', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30102', '?????', 0x426173616C742D4F62656C69736B, '5', '1', '0', '70', '', 'NOMOVE', '0', '', 'STUN,SLOW,CURSE,TERROR', '0', '', '2', '0', '0', '0', '0', '0', '0', '3954','3', '1', '0', '0', '562', '79', '100', '100', '0', '2000', '150', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30103', '?????', 0x536368696C646B72F674656E66656C73, '5', '1', '0', '70', '', 'NOMOVE', '0', '', 'STUN,SLOW,CURSE,TERROR', '0', '', '2', '0', '0', '0', '0', '0', '0','3954', '3', '1', '0', '0', '562', '79', '100', '100', '0', '2000', '150', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0','0', '0');INSERT INTO `mob_proto` VALUES ('30104', '?????', 0x52756E656E706661686C, '5', '1', '0', '70', '', 'NOMOVE', '0', '', 'STUN,SLOW,CURSE,TERROR', '0', '', '2', '0', '0', '0', '0', '0', '0', '3954', '3', '1', '0','0', '562', '79', '100', '100', '0', '2000', '150', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30111', 'zombie_ghost_door', 0x312E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30112', 'zombie_ghost_door', 0x322E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30113', 'zombie_ghost_door', 0x332E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30114', 'zombie_ghost_door', 0x342E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30115', 'zombie_ghost_door', 0x352E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30116', 'zombie_ghost_door', 0x362E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30117', 'zombie_ghost_door', 0x372E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30118', 'zombie_ghost_door', 0x382E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');INSERT INTO `mob_proto` VALUES ('30119', 'zombie_ghost_door', 0x392E20546F72206465722056657264616D6D6E6973, '5', '0', '0', '120', '', 'AGGR', '0', 'HUMAN','SLOW,FALL,CURSE,POISON,TERROR', '0', '', '0', '120', '40', '150', '10', '800', '1000', '250000', '3', '3', '16000000', '16000000', '600000', '70', '100', '100', '100', '5000', '120', '11971', '0', '0', '0', '0','0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.2', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');25 Paulo Gonçalves – Projecto de PSI Dificuldades Sentidas Uma das dificuldades que senti no desenvolvimento deste projecto foi o de encontrar uns ficheiros de servior funcionais, pois todas as transferências que efectuei davam erros de configuração. Outra dificuldade foi o tempo que tive para a concretização do mesmo. 26 Paulo Gonçalves – Projecto de PSI Conclusão Diverti-me a realizar este projecto pois é uma coisa de que gosto muito. Embora não tenha conseguido concretizar todos os objectivos por falta de tempo, penso que o tempo foi bem distribuido para as tarefas, e consegui fazer o máximo que o tempo me permitia. Passei grandes momentos a fazer pesquisas, falar com outras pessoas sobre problemas encontrados nos ficheiros do servidor e a publicar tuturiais de minha autoria sobre este assunto. Tive ajuda do meu irmão Luis Carlos Graça, pois ele me disponibilizou um computador para montar os ficheiros de servidor, embora esteja a usar o meu computador de momento por falhas de configurações. No futuro desejo abrir o servidor ao público para que mais pessoas possam disfrutar do meu trabalho e desenvolver os objectivos que me faltam. Desejo ainda implementar mais coisas a nivel de missões, profissões, masmorras e campos de batalha. Para concluir espero que este relatório seja objectivo e de fácil compreensão. Paulo Gonçalves 27 Paulo Gonçalves – Projecto de PSI Girias utilizadas neste documento e no mundo dos jogos Download – Transferência; Upload – Alojar o ficheiro num servidor; Cliente – Programa que estabelece a ligação entre o utilizador e o servidor; NPC – Non Playable Character – Personagem comandada pelo computador; Mob – NPC com o qual o jogador luta para adquirir experiência, bens e dinheiro; Masmorras – Mapa que se tem de fazer determinadas condições para ir passando para a próxima área, normalmente precisa-se de um grupo para conseguir completar uma masmorra; Campo de Batalha – Mapa em que os jogadores se defrontam com o objectivo de marcar mais pontos. Cada morte de um jogador equivale a um ponto; Alianças – Uniões feitas entre jogadores com os mesmos ideais ou fins; Grupo – Junção temporário de Vários jogadores com o fim de atingir determinado objectivo; HP – Health Points – Pontos de Vida, é o tanto de vida que um jogador tem; SP – Spirit Points – Pontos de Espirito, é o tanto de mana que o jogador tem para executar as habilidades; Skills – Habilidades – Ataques especiais que só podem ser executados por determinada raça; Noob – Jogador novato, sem experiência de jogo; Leet – Jogador experiente, já jogou bastantes horas o jogo de forma que aprendeu muitos truques e dicas para fazer o máximo dinheiro e/ou experiência; Experiência – Quando se chega a uns determinados pontos de experiência o jogador sobe um nÍvel. Dinheiro – Moeda de troca no jogo. 28 Paulo Gonçalves – Projecto de PSI Bibliografia e Netgrafia http://cyber-gamers.org/ - Tutoriais escritos em português http://www.youtube.com/user/mt2tuguinha - Tutoriais em Video http://newmetin2.net/2010/02/02/codigos-gm-pt-pt/ - Códigos utilizados pelos GMs http://www.elitepvpers.com/forum/metin2-pserver-discussions-questions/ - Tutoriais escritos em alemão.
  22. 0 points
    Metin2 Old World Esperamos que sua estadia seja duradoura, e que aproveite ao máximo os recursos do servidor. Estamos aqui para prestar o melhor suporte aos usuários, e para pacientemente ouvir as reclamações e sugestões dos nossos players, que são a base para todo esta nossa caminhada. Bugs e duvidas podem e devem ser enviadas em nossa pagina no Facebook. https://www.facebook.com/M2OldWorld/ Ou também se preferir, entre em contato com um dos nossos GM's que sempre quando fazem login, automaticamente o servidor dispara uma noticia para informar os players. Site: http://187.109.111.18:8080/ SERVIDOR EM FAZE DE TESTES SUJEITO A CORREÇÕES E ALTERAÇÕES NENHUMA INFORMAÇÃO DOS PLAYERS SERÁ PERIDA SISTEMA DE BACKUP EM TEMPO REAL INFORMAÇÕES DO SERVIDOR Level Maximo: 99 Qtd. Player por Reino Equilibrada Rate XP: 100% Rate Drop: 100% Rate Gold Drop: 100% Transmutações Old School Armadura Negra Painel de Bonus (Inventário) Sistema de Pets Sistema de Energia Sistema Offline-Shop Sistema de Costume-Hair(Somente) Escudos LVL 81 Elmos LVL 80 Evento Dragon Soul Evento Guild vs Guild Evento 1x1 Guerra da Tocha Guerra da Encruzilhada Guerras de Guild Metins fixos para FARM NPC de 1x1 (City 2) NPC Maltrapilho > (Descarte de itens) Anel Anti-exp Anel da distorção (Teleport) Cavalo nivel 30 Skill de linguagem P 30 lvl de diferença para grupo Itens no chão por apenas 30s Drop Caixas do Dragão das Metin2 (Refines etc) Sem Item-Shop (Durante faze teste) SKILL'S PASSIVAS VENDEDORA ARMEIRO ARMOREIRO
This leaderboard is set to Lisbon/GMT+01:00