Registrar | Comunidade | Postados Hoje | Pesquisar | Calendário | FAQ |
|
Tutoriais Ragnarok Aprenda mais sobre Ragnarok nesta área, tutoriais, dicas, e muito mais você só encontra aqui! |
|
Ferramentas do Tópico |
#1
|
||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||
Usando todas as funções do X-Ray! :: Índice :: 1 - .: Introdução :. 2 - .: Conseguindo o seu Hexed X-Ray :. 3 - .: Adicionando Custom Headgears :. 4 - .: Adicionando Custom Hairstyles :. 5 - .: Adicionando Custom Mobs/NPC's :. 6 - .: Adicionando Custom Skills :. 6.1 - . Edições na Source . 6.2 - . Edições nos Databases . 6.3 - . Edições nos Client . 7 - .: Adicionando Custom Classes :. 7.1 - . Edições na Source . 7.2 - . Edições nos Databases . 7.3 - . Edições nos Client . 8 - .: Agradecimentos/Créditos :. -------------------------- 1 - .: Introdução :. Nesse tutorial, eu vou mostrar (ou pelo menos tentar) como usar todas as funções do X-Ray (por enquanto versão 11.0.1), incluindo a adição de custom classes, skills, monstros/npcs, headgears e hairstyles. Todos os créditos vão pro Meruru, que criou essa coisa tão útil chamada X-Ray, esse guia vai meramente guiá-lo no uso dessa ferramenta. 2 - .: Conseguindo o seu Hexed X-Ray :. Para baixar um hexed do X-Ray, vá até o fórum do HeliumRO, registre-se lá, logue, vá na seção X-Ray do fórum, e no tópico onde o Meruru disponibiliza os hexeds X-Ray, baixe o X-Ray Client 11.0.1 (vou usar esse hexed nesse guia, não recomendo que você siga esse guia com um hexed mais antigo). OBS: Leia o Tutorial sobre como Diffar um X-Ray [Para ver e baixar os arquivos, deve se Registrar ou Logar. ] Lembrando que eu NÃO vou dar suporte sobre registro/login no fórum do HeliumRO, se você não consegue se registrar lá, ou logar lá, ou tiver qualquer tipo de problema, peça para alguém que consiga, ou então baixe um hexed pronto de algum lugar. Depois que você baixar seu X-Ray, diffe-o seguindo um guia de criação de hexeds qualquer, lembrando que você pode usar um diff qualquer, não existem diffs específicos pro X-Ray, mas o diff PRECISA ser pra versão do hexed que você baixou, se é um hexed "10-17" por exemplo, você terá que usar o diff "v10-17a". Depois que tiver seu hexed diffado, coloque-o na pasta do seu Ragnarök, e coloque as tabelas (os arquivos que vieram junto com seu X-Ray) na sua pasta data, ou no seu custom grf, se você não os adicionar, o hexed não vai iniciar. Depois que você fez tudo isso, vamos começar. 3 - .: Adicionando Custom Headgears :. Nessa seção, eu vou explicar como se adiciona custom headgears ao client, usando o X-Ray, para isso, você precisará mexer apenas na visionary_tab, e em alguns arquivos do client e do seu servidor. Primeiramente, adicione o custom headgear no seu servidor, usando o formato certo, no item_db2.txt (que é destinado para custom items), e grave a View-ID (número da coluna view) que você usou para o seu headgear, esse número precisa ser um número razoavelmente alto (recomendo 400 ou mais) para evitar conflitos futuros com headgears oficiais.. Agora, vamos editar a visionary_tab. Quando você abrir a visionary_tab, verá um monte de caracteres em ASCII, não mexa nesses caracteres, eles são os headgears oficiais, e se você mexer em algum deles, vai causar vários erros com os headgears já contidos no Ragnarok. Pra explicar melhor como a visionary_tab funciona, cada linha dela é associada a um View-ID, e o nome contido nessa linha diz para o client que nome de sprite/act ele deve associar ao item, a primeira linha (depois do !1), por exemplo, é referente ao item com a View-ID 1. Agora, existem dois meios de adicionar os seus custom headgears, usando uma função do X-Ray chamada "ID-Jumping", ou sem usar essa função. AVISO : INDEPENDENTE DO MODO DE ADICIONAR QUE VOCÊ USAR, VOCÊ DEVE SEMPRE DEIXAR A LINHA "*_°í±Û" POR ÚLTIMO NO ARQUIVO, POIS ESSA É A ÚLTIMA LINHA QUE O X-RAY VAI LER, QUALQUER LINHA DEPOIS DELA SERÁ IGNORADA! Adicionando sem usar o ID-Jumping: Para adicionar custom headgears sem usar o ID-Jumping, basta você adicionar o nome do sprite/act do seu headgear na visionary_tab, depois dos headgears originais, nesse formato : Citação:
Lembrando que você NÃO deve adicionar linhas totalmente em branco, o X-Ray vai parar de ler a tabela na primeira linha em branco que ele encontrar, mas você pode colocar qualquer tipo de nome para indicar linhas em branco, já que eles não serão usados. E a linha onde está "_seusprite" deve ser a linha correspondente ao número da View-ID que você colocou no seu item, lá no item_db2.txt (diminuindo 1 no número da linha, considerando a primeira linha que é "!1"). Usando o ID-Jumping: Para adicionar custom headgears usando o ID jumping, você deve ir até a última linha da visionary_tab, e colocar uma linha indicando pra qual linha ele irá pular, e na linha logo abaixo, o nome do arquivo .spr/.act do seu item, assim : Citação:
Logo, o "_seusprite" vai ser a minha View ID 400. Lembrando que o ID-Jumping é um pouco bugado, se você tiver erros adicionando headgears dessa maneira, adicione usando o outro método. Aviso : TODAS AS LINHAS devem ter um "_" antes do nome do arquivo act/spr. Agora é só adicionar os arquivos do seu custom headgear (.spr/.act quando equipado), nas pastas corretas, lembrando que todos esses arquivos devem ter o mesmo nome, e todos eles devem ter o nome que você indicou na visionary_tab. É preciso também adicionar o seu custom headgear nos arquivos idnum2itemdesctable.txt, num2itemdesctable.txt, idnum2itemdisplaynametable.txt num2itemdisplaynametable.txt, idnum2itemresnametable.txt e num2itemresnametable.txt no formato correto, para descobrir como fazê-lo, siga um guia de adição de custom headgears normal. Aviso : O X-Ray não influenciará a adição do seu item nos arquivos idnum2itemresnametable.txt e o num2itemresnametable.txt, então adicione-os lá normalmente. Pronto, após ter feito tudo isso, o seu hexed vai ler seus custom headgears normalmente. 4 - .: Adicionando Custom Hairstyles :. Primeiramente, pra adicionar custom hairstyles, você vai ter que abrir o arquivo vanity_m/f_tab(depende do sexo que você quer adicionar, caso seja pra homens, será na m_tab, caso seja pra mulheres, será na f_tab). Então, é só você adicionar mais um número na tab, seguindo a ordem do arquivo, o último número provavelmente será o 23, então é só adicionar o 24 logo depois. Depois, você tem que adicionar os arquivos .spr/.act do custom hairstyle na pasta "/data/sprite/Àΰ£Á·/¸Ó¸®Åë/[sexo]/", no formato "Nº_SEXO", usando a pasta/prefixo ³² pra homens, e ¿© pra mulheres. Após ter feito isso, você terá que adicionar os custom hairstyles no seu servidor (na verdade apenas aumentar o limite), pra isso, vá no arquivo conf/battle/client.conf, e procure essas linhas: Citação:
Consertando os sprites do Blank Eyes/Moustash (essa parte é uma advertência do Meruru traduzida) Quando você adiciona custom hairstyles no seu client, você PRECISA corrigir os sprites do Blank Eyes/Moustash também. Se você não consertá-los, vão ocorrer erros quando você equipar esses items usando seu custom hairstyle! Primeiramente, aqui estão as pastas que nós vamos mexer. (use um programa de edição de grfs pra isso) sprite\악세사리 E a pasta de cada sexo: MASCULINO:남 FEMININO:여 Quando você entrar em um dessas pastas você verá um monte de arquivos com nomes baseados nos números dos headgears/sexo. Os que nós vamos usar são os que parecem com esses: [sexo]_배틀온라인[número].spr [sexo]_배틀온라인[número].act Extraia esses arquivos usando um programa de edição de grfs, caso ele não converta os nomes pra ASCII automaticamente, use um programa pra convertê-los (como o gayconv ou o Unbollox). Depois de tê-los extraído, eles devem estar com os nomes parecidos com isso: \sprite\¾Ç¼¼»ç¸®\[sexo]\[sexo]_¹èƲ¿Â¶óÀÎ[número].spr \sprite\¾Ç¼¼»ç¸®\[sexo]\[sexo]_¹èƲ¿Â¶óÀÎ[número].act Para adicionar esses arquivos pro seu hairstyle, basta criar uma cópia de cada um deles, e editar o número do hairstyle pro do seu custom hairstyle. Caso o hairstyle que você adicionou seja o 24, e você tenha adicionado na vanity_m_tab.txt, ficaria assim: \sprite\¾Ç¼¼»ç¸®\³²\³²_¹èƲ¿Â¶óÀÎ24.spr \sprite\¾Ç¼¼»ç¸®\³²\³²_¹èƲ¿Â¶óÀÎ24.act Após ter feito isso, é só adicioná-los à sua pasta data, ou então convertê-los e passá-los pro seu custom grf. 5 - .: Adicionando Custom Mobs/NPC's :. Para adicionar custom Mobs/NPC's no client, você vai usar a monstrosity_tab.txt. Abrindo esse arquivo, você perceberá que ele não é como as outras tables, porque ela tem a info de todos os mobs/npcs/jobs do jogo (apesar de que aqui os jobs não são sprites, e sim o nome que aparece na janela de status). Para adicionar custom mobs, é só você adicionar o seu mob no mob_db2.txt normalmente, eu por exemplo vou usar o ID 3000 para meu monstro. Depois de adicionar o seu mob no mob_db, é só ir lá na monstrosity_tab, e ir na última linha antes do ID do seu monstro, por exemplo, eu estou usando o ID 3000, então primeiro eu procuro o maior ID Jump que tem na tabela menor que 3000, e acho isso : Citação:
Citação:
Citação:
Depois, é só adicionar os arquivos .spr/.act na pasta "sprite/¸ó½ºÅÍ/" com o mesmo nome definido na monstrosity, no meu caso seria "meu_mob.spr" e "meu_mob.act". Agora para adicionar NPC's, você terá que usar um ID menor que o 1000, e maior do que os já usados, isso é limitado no server, não no client, se você quiser editar esse limite, edite no arquivo src/map/npc.h. Então, ache a última linha de NPC da monstrosity e adicione depois o nome do seu .spr/.act (você pode usar um ID maior que o do último NPC usando ID Jumping, mas você NÃO PODE usar um ID maior que 1000, porque é aqui que começam os jobs). Depois, é só adicionar os arquivos na pasta sprite/npc, com o mesmo nome que você colocou na monstrosity_tab, e pronto, é só usar o número que você colocou no cabeçalho do seu NPC (lembrando que pode acontecer que o ID seja 1 número depois do colocado na monstrosity_tab, então, teste os dois). 6 - .: Adicionando Custom Skills :. Agora começa a parte mais temida, porém, essa parte não é tão difícil, se você experimentar, e tentar algumas vezes, e se basear nas skills já prontas, você deve conseguir com o tempo ^^. Nessa parte, nós teremos que começar a mexer na source do emulador, então, se você pretende tentar essa parte, você vai precisar da source do emulador (pasta src), de preferência baixada do repositório, e de um compilador pronto pra compilar seu eAthena, e vai ter que saber usá-los também, caso já saiba/tenha tudo isso, vamos começar. Eu vou dividir essa parte em 3 seções : As edições na Source, nos Databases, e no Client. 6.1 - . Edições na Source . Primeiramente, você terá que editar o arquivo src/map/skill.h, nesse arquivo, você vai ter que adicionar a sua custom skill, e apontar o ID dela, lembrando que o ID deve ser maior que 1019 e menor que 8001, sugiro que você não use IDs muito altos, mas caso prefira... Bem, para adicionar a skill, você tem que procurar essa linha no arquivo : Citação:
Citação:
Primeiramente, abra o arquivo, e você verá uma lista de todas as skills do jogo, desça essa lista até o final, e quando achar essa linha: Citação:
Citação:
Após ter colocado isso, você terá que adicionar sua skill nas outras partes do arquivo, dependendo de como sua skill será, baseie-se em skills já prontas, em condições/semelhanças que ela tenha com a sua, tente, por exemplo, começar apenas clonando uma skill, é mais fácil e ajuda a aprender mais como funciona o código do emulador. Depois de editar tudo que é necessário, salve e feche o arquivo. Então, dependendo da skill (em algumas não é necessário, apenas cheque uma skill semelhante à sua), você terá que editar o arquivo battle.c, pra definir fórmula de dano, se a skill é afetada por cards, pelo elemento da arma, e várias coisas do tipo, novamente, tente seguir o formato de outras skills pra se orientar, ou até clonar outra skill primeiramente. Depois, dependendo da skill (caso ela inflinja algum status no inimigo/user), você terá que editar o arquivo status.c, como eu já disse antes, siga o formato de outras skills, ou então clone uma, x]. Pronto, agora a parte da edição da source está pronta, recompile seu emulador, e suas skills já estarão adicionadas no servidor. Se ocorrer algum erro, não se preocupe, isso é normal, reveja tudo que você fez, corrija possíveis erros, não fechar os códigos com "}"'s ou não adicionar "break;"'s é normal, provavelmente você terá que recompilar várias vezes para acertar, se precisar de ajuda, pode postar que eu faço o possível pra ajudar. 6.2 - . Edições nos Databases . Agora começa a parte de databases, essa é a parte que você vai adicionar sua(s) custom skill(s) nos databases do servidor, informando as specs da skill. Primeiramente, adicione sua skill no skill_db, no formato certo, o ID da skill, se ela pode ser interrompida, etc. Siga o formato de outras skills, ou então consulte o cabeçalho para ver como adicionar sua skill. Depois, você terá que adicionar sua skill no skill_cast_db.txt, nesse arquivo você vai informar o delay/cast-time de cada level da sua skill, consulte o outras skills já prontas ou o cabeçalho para aprender como adicionar sua skill. Então, você vai precisar adicionar sua skill no skill_tree.txt, nesse arquivo, você vai indicar que classes terão a skill, e que skills serão necessárias para obtê-la, siga o formato de outras skills, ou então consulte o cabeçalho, para saber como adicionar a sua. Agora, você precisará adicionar sua skill no arquivo skill_require_db.txt, nesse arquivo, você vai informar quanto SP a skill vai gastar por level, se a pessoa precisa estar em algum estado (com spirit spheres por exemplo) para usar a skill, se ela precisa ter alguma arma equipada, etc. Siga o formato de outras skills ou consulte o cabeçalho para adicionar a sua. 6.3 - . Edições no Client . Agora vamos para a parte do hexed, para adicionar custom skills, você usará a player_ability_tab.txt, para adicionar skills para players, a homun_ability_tab.txt para adicionar skills para homunculus, e a guild_ability_tab para adicionar skills para guilds, aqui, eu vou ensinar como usar a player, já que eu quero é adicionar uma skill para um player, mas o método de uso é o mesmo para as três, então, para seguir esse "exemplo", você vai usar a player_ability_tab, abra-a, e você verá que ela tem listada todas as skills, e os "ID-Jumpings" que existem na table, indicam os ID's de cada skill. A última skill deve ser a "SA_ELEMENTWIND", que corresponde ao ID 1019, baseando-se nessa linha, adicione sua custom skill logo depois. Se você usou o ID 1020 para sua custom skill, seria só adicionar logo depois de "SA_ELEMENTWIND", uma nova linha "MINHA_SKILL", mas se você não usou o ID 1020, adicione linhas em branco com qualquer conteúdo "NULL_SKILL" por exemplo, até chegar ao ID da sua skill (vá contando, já que o número da linha não é referência). Você também pode tentar usar o ID-Jumping, mas comigo, isso não funcionou, então teste, se não funcionar mesmo, use esse método. Depois, é só adicionar a sua skill nos arquivos "data/skilldesctable.txt" (a descrição da sua skill), "skillnametable.txt" (o nome da sua skill), e caso ela seja level-selectable (que você possa escolher o level que vai usar), no arquivo "leveluseskillspamount.txt" (a quantidade de SP necessária para cada level da skill). Após tudo isso, sua custom skill estará adicionada no seu server e no seu client com sucesso, apenas execute tudo e teste! 7 - .: Adicionando Custom Classes :. Pronto, agora chegou a parte que eu creio que seja a que as pessoas tem mais interessse, a parte de adicionar custom classes (jobs). Primeiramente, você deve ter conhecimento de que essa função ainda é um pouco bugada, o seu char provavelmente vai ficar andando de um modo estranho (e engraçado diga-se de passagem), com o sprite alinhado na diagonal, porém andando para frente, basicamente, ele vai andar meio desalinhado, apesar de não afetar a jogabilidade. Essa é uma parte que provavelmente também lhe cause alguns erros na hora de compilar, como na parte das skills, você provavelmente vai ter que recompilar várias vezes até acertar (pelo menos eu tive, :P), e é normal esquecer uma coisa ali e outra aqui, então se não estiver funcionando, primeiramente revise o que você já fez, que com certeza você vai achar algum erro bem bossal ^^. Também como na parte das skills, eu resolvi dividir essa parte do tutorial em 3 seções, a das edições da Source, a das edições dos Databases, e a das edições do client. 7.1 - . Edições na Source . O primeiro arquivo da source que nós vamos fuçar, vai ser o já conhecido de bastante gente "common/mmo.h". Abrindo esse arquivo e descendo um pouco a scrollbar, você vai reparar que como na parte das skills, estão todos os jobs do jogo, e cada um com seu respectivo ID apontado nesse arquivo. É agora que você deve decidir que ID você vai usar para a sua custom classe, lembre-se que esse ID não pode ser o ID de nenhum monstro/NPC já existente, e de nenhuma das classes, eu costumo usar ID's por volta de 27~35, ou IDs bem altos, como 4051+ (depois das classes atuais). Nesse tutorial, eu vou usar o ID 35 para minha classe, e vou criá-la como uma expanded class (ou seja, não será a evolução de nenhum job, e sim um job separado, como Ninja ou Gunslinger). Para adicionar sua custom class nesse arquivo (supondo que você use o ID 35), primeiro ache essa linha: Citação:
Citação:
Citação:
Para adicionar o seu custom job aqui, adicione logo abaixo dessa linha, nesse formato : Citação:
Agora vá até o arquivo src/map/atcommand.c, agora nós vamos editar o comando @job/@jobchange, para que ele suporte o seu custom job, caso contrário, mesmo que seu job existisse, o comando não reconheceria ele, e você só poderia se tornar esse job através de NPC's e coisas do tipo. Nesse arquivo, ache essa linha : Citação:
Citação:
Agora começa a parte meio chata... abra o arquivo itemdb.c e ache essa linha : Citação:
Para adicionar seu custom job nesse arquivo, adicione logo abaixo : Citação:
Citação:
Agora abra o arquivo map.h. Descendo um pouco a scrollbar, você verá que nesse arquivo ele também define que tipo de job será seu custom job, você precisa adicionar aqui de acordo com o que adicionou nos outros arquivos, senão provavelmente vai dar erro na hora de compilar ou na hora de rodar o servidor mesmo. Já que minha custom classe vai ser uma expanded class, eu vou procurar por esta linha (que é a que define a última base/expanded class): Citação:
Citação:
Depois de modificar, salve e feche o arquivo. Então, abra o arquivo pc.c e ache estas linhas : Citação:
Citação:
Citação:
Citação:
Citação:
Citação:
Agora abra o pc.h (finalmente o último arquivo da source que vamos editar ^^), e ache isso nele : Citação:
Esse check checa o ID do job para ver se esse ID é um ID válido para uma classe de um player, perceba que ele checa se o ID é menor ou igual (<=) à JOB_XMAS, que é 26, ou seja, todo ID menor ou igual a 26 (26-1) será válido para um job, ou seja, os IDs que vão do Novice até o Ninja. Depois, o próximo ID válido para um job será maior ou igual (>=) a Novice High, que é o ID 4001, até o Soul Linker, que é o último ID de job lançado até agora. O que nós precisaremos fazer é editar esse check pra que ele reconheça o ID do nosso custom job como um ID válido. Supondo que você esteja usando o ID 35, você pode colocar assim : Citação:
Pronto! Isso é tudo que temos que editar na source! Após ter feito TUDO isso, recompile seu emulador, e veja se não acusa erro nenhum, caso acuse, revise todo o processo, por erros básicos, se ainda assim tiver certeza de que não cometeu nenhum erro, poste aqui e eu ajudo na medida do possível ^^. 7.2 - . Edições nos Databases . Agora vamos começar a editar os databases. Primeiramente, abra o arquivo const.txt, e ache essa linha: Citação:
Citação:
Depois, procure mais embaixo por esta linha : Citação:
Então, adicione assim : Citação:
Agora, nós adicionaremos o custom job nos job_dbs1 e 2, para definir a aspd com cada arma, o número de HP, o peso, e etc da custom classe, para isso, apenas abra o job_db1, e o job_db2, e adicione sua custom classe lá, usando o ID/Nome que você deu pra ela, e seguindo o cabeçalho para saber como adicionar a sua (ou até basei-se/copie de outra classe). Depois disso, nós teremos que editar a exp.txt para definir quanta exp nosso job precisará para cada level, senão, ele ficará apenas no level 0 de base/job, sem poder evoluir, pra isso, escolha a linha de exp de job/base que você quer usar para seu job, e aonde, por exemplo, estiver assim : "//Base - Normal Jobs 255,0:1:2:3:4:5:6:7:8:9:10:11:12:13:14:15:16:17:18 :19:20:21:23:24:25:26" Esses números entre os ":" são os números dos jobs afetados por esses valores (incluindo max level). Para adicionar seu custom job, basta apenas adicionar ele no formato dos outros, usando o ID que você apontou pra ele, assim : "//Base - Normal Jobs 255,0:1:2:3:4:5:6:7:8:9:10:11:12:13:14:15:16:17:18 :19:20:21:23:24:25:26:35" Pronto, agora nós precisaremos editar uma coisa básica no arquivo conf/msg_athena.conf. Lembra que eu usei a msg 1000 pro meu job? Pois é, agora você vai adicionar a msg que você quiser com o número que você apontou nesse arquivo, já que eu usei a msg 1000, o meu ficou assim : "1000: Meu Job" Pronto, salve e feche. 7.3 - . Edições no Client . Estamos chegando no final! Agora é a parte mais fácil, adicionar no client. Pra isso, você só vai precisar dos arquivos .spr/.act da sua custom classe. Primeiramente, abra a class_tab, e adicione o nome dos arquivos .spr/.act lá, apontando o ID da sua classe, no meu ficou assim : Citação:
Quanto à imf_tab, ainda não se sabe como se criar arquivos desse tipo customizados, mas já é quase certeza que é esse arquivo que causa o erro de desalinhamento dos sprites da classe, nessa table, você pode usar o nome de qualquer classe pro ID da sua classe, que não vai afetar em nada, faça isso apenas para evitar erros. Agora, vá na monstrosity_tab e procure pelo ID do seu Job lá (esse, se você estiver usando um ID baixo, vai ser provavelmente o ID da linha). No meu caso, eu estou usando o ID 35, então eu vou até a linha 35, e substituo o "1_ETC_01" dessa linha por "Meu Job", depois é só salvar e fechar. Após tudo isso feito, você terá que adicionar os sprites da sua custom class, pra isso, vá na pasta (caso não tenha crie) data/sprite/Àΰ£Á·/¸öÅë, e nessa pasta terão duas outras pastas, uma pra cada sexo. Adicione na do sexo masculino (³²), o spr e o act da sua custom class nesse formato : nome_³².spr nome_³².act Lembrando que esse "nome" é o nome que você apontou nas tabelas. Faça o mesmo para o sexo feminino, porém usando o símbolo/pasta ¿©. Após tudo isso feito, sua custom class deve estar adicionada no seu servidor/client com sucesso, apenas teste. ^^ Para adicionar os sprites de weapon na sua custom class, apenas equipe uma arma, e isso deve causar um erro de falta de spr, apenas olhe o diretório/nome do arquivo que ele pede, e coloque lá o .spr/.act das weapons da sua custom class, usando o nome que ele pede. Pra dar um exemplo de como fica no final, segue uma SS da custom class que eu fiz, "Shaman", usando uma custom skill que eu fiz pra ela também, "Mass Heal", que é basicamente uma mistura de "Slim Potion Pitcher" com "Heal", que deu nisso aí, um Potion Pitcher de área que afeta guild/party, mas que usa a fórmula do Heal (de int, lvl, etc) : (Sim, eu estou usando a skill em um bando de clones sem cabeça >.<) Observações Pra quem estava com dúvida no esquema de bitmask de custom jobs (que número usar pra que o job possa usar os equipamentos), eu acabei descobrindo o esquema da bitmask de jobs do item_db, e vou explicar ela aqui pra vocês, é o seguinte : Primeiro, vamos dar uma olhada na tabela do arquivo doc/item_db.txt : Código PHP:
O que você tem que fazer pra descobrir a bitmask de um ID (o que você usa no itemdb.c, independente do que você usa no resto dos arquivos), é elevar ele a 2, e depois converter o resultado para hexadecimal, usando um conversor comum, como esse. Vamos testar por exemplo com o ID 22, você (com uma calculadora de preferência), calcula 2 elevado a 22, o resultado será 4194304. Depois, pegamos esse valor e colocamos no conversor, depois é só clicar no botão "DEC to HEX", que ele irá converter, e o resultado será 400000. Agora, se observarmos na tabela, o valor do ID 22 (Star Gladiator), é exatamente esse, mas antecedido por 2 zeros pra manter o formato, e o 0x que é como um "prefixo" das bitmasks : Código PHP:
8 - .: Agradecimentos/Créditos :. Agradecimentos a : Meruru - por ter criado o X-Ray, essa ferramenta tão útil que facilita tanto nossa vida. Kadmus - por ter feito junto comigo esse processo de vááárias tentativas de criação de custom skills/classes. _Shadow_ - por ter me dado uns toques de uns erros idiotas meus na parte de skills e por mais algumas coisas em que me ajudou, e é claro, por ter me incentivado a criar esse tutorial enoooorme, que eu estava na dúvida se criava ou não . Créditos: MithBR - Pela criação do tutorial original Nosyel - Pela edição, correção de alguns erros e postagem Valeu e grande abraço a todos, dúvidas postem aqui mesmo! Última edição por Nosyel; 27-05-2009 às 11:13 PM. |
O Seguinte 6 Usuário(s) disseram "MUITO OBRIGADO" para Nosyel Por terem gostado deste post : | ||
Afroblack (02-01-2010), cowboy furioso (28-05-2009), guinho w.a (27-05-2009), Haohmaru22 (28-05-2009), nillander (06-08-2013), numb (28-05-2009) |
|
|
Tópicos Similares | ||||
Tópico | Tópico Iniciado Por | Fórum | Respostas | Última Mensagem |
Tutorial Usando o P2K SEEM | guinho w.a | Tutoriais Motorola | 4 | 15-03-2010 01:11 AM |
Usando o GoogleMaps no A1200 | guinho w.a | A1200/A1200i/A1200e | 2 | 24-09-2009 02:27 PM |
[Tutorial] Baixando e Diffando o XRay. | Nosyel | Tutoriais Ragnarok | 15 | 23-09-2009 02:12 PM |
LineAge II | Nosyel | Tutoriais Line Age | 11 | 01-06-2009 03:28 PM |
[Tutorial] Wamp server para sites de lineage2. | SUPREMO | Tutoriais Line Age | 0 | 23-05-2009 12:07 PM |