É sempre bom manter um padrão na hora de criarmos os scripts.
Assim fica muito mais facil e simples.
Vou ver se tem algo para ser melhorado no seu artigo.
Alguns servers já vem com um sistema parecido, porém ele é feito utilizando UniqueID, que eu acho ruim de usar.
Aproveitando isso, pq é ruim de usar?







info
Grupo: Barão
Registrado: 27/12/06
Posts: 202
Reputação: +1
Para começar, achei que essa área era a melhor para postar isso, pois não se encaixa exatamente nem em tutoriais, nem nas áreas determinadas.
Eu resolvi criar alguns scripts para tornar a vida de hosters, alguns mappers e até scripters mais fácil. A ideia surgiu quando eu percebi que tinha criado dezenas de scripts para fazer esses sistemas, que poderiam ser simplificados em apenas um script ou dois. Ele consiste em várias ações, que julgo serem as mais usadas e procuradas, que serão bem fáceis de colocar no seu server. Para começar, pensei em:
- Quest:
Os baús para quest serão de actionID 10000 até 20000. Os ActionIDs dos baús representaram o item, por exemplo, o item de ID 1234 será a recompensa de uma chest com ActionID 11234. Alguns servers já vem com um sistema parecido, porém ele é feito utilizando UniqueID, que eu acho ruim de usar.
- Porta de Nível:
As portas de nível vão de 100 até 500, se você quiser de nível 50, será actionid 150, se quiser nível 1, 101, se quiser nível 350, actionID 450.
As portas que funcionarão podem ser editadas facilmente, como você verá no script.
- Tiles especiais:
Os tiles seguirão uma variedade de funções. Para tile de nível será usado de 500 até 900, seguindo o exemplo acima. As de premium são de ID 901, as de access são 902 para access 1, até 910 para access 9, pois não sei como vocês fazem a hierarquia. Também terão tiles que só se o jogador fez a quest tal poderá passar, mas isso é mais complicado. Será necessário alterar o script.
Scripts:
Quests:
Abra data/actions/scripts, crie um arquivo chamado questsystem.lua. Dentro dele, ponha:
O sistema inclui verificação de peso do item. O ID do item tem que estar no actionID do baú, porém somado com 10000. Se for uma crystal coin, o id deve ser 12160, por exemplo.
Para selecionar quais baús irão funcionar com esse sistema, abra data/actions/actions.XML. Dentro dele, você encontrará muitas "Tags", que são essas linhas. A edição delas funciona assim:
Atenção! Todos os baús com o id colocado irão funcionar como quest, e não poderão ser abertos normalmente. Além disso, todos os IDs desse baú deverão ser listados, os virados para os lados também (caso queira que eles funcionem também).
Caso você prefira, poderá adicionar por actionID. Assim, sua tag muda para:
Portas de Nível:
Abra data/actions/scripts e crie um arquivo chamado lvldoor.lua.
Dentro dele:
Em data/movements/scripts, crie lvldoor.lua, e dentro dele:
As portas que funcionarão com esse sistema são criadas por você, do mesmo jeito que os baús das quests. A tag de movement é diferente, mas deve ser posta com o mesmo ID que foi colocado no da action.xml. A sintaxe é:
As partes em negrito que merecem atenção. O item pode ser trocado por action como você preferir. lvldoor.lua é o nome do script que eu sugeri, mas ponha o que preferir.
Tiles Especiais:
data/movements/scripts, crie spectile.lua e escreva:
Mesmo esquema de adicionar movement no movement.xml. Adicione os tiles que quiser, se for usar apenas um ID de tile para isso use ItemID, pos os tiles irão bugar se você usar em outro lugar.
Por enquanto é só, coloquem dicas, sugestões, bugs que vocês encontrarem, e se puderem também novas coisas que vocês gostariam que tivesse aqui. Abraços :smile_positivo:
Editado Julho 3 por _ferrari_