Histórico de Curtidas
-
lusgo deu reputação a Cat em Árvores do Tibia - Variações By NolisFiz essas peças para deixar a natureza Tibiana mais variada, recomendado uso de pattern + peças individuais para melhor efeito.
Créditos: Cipsoft
Amostra:
Download:
arvores_tibia.rar
-
lusgo deu reputação a Cat em Modificando Extensions I - Grounds (Terrain Palette)Extensions Customizadas II - Walls
Extensions Customizadas I - Grounds
Extensions Customizadas III - Doodads (objetos montados)
Sumário
A. Escolha do item e arquivos que serão alterados.
B. Edição do arquivo grounds.xml e adição da base para um novo brush.
C. Explicação sobre o que modificar nas linhas adicionadas.
D. Edição do arquivo borders.xml e adição da base para as bordas do brush anterior.
E. Configuração dos Ids das bordas e do brush.
F. Cadastramento do brush na paleta terrain, editando o arquivo tilesets.xml
COMEÇAR
(Dica: Utilize Notepad++)
A.
Tudo que está em azul nas imagens acima é onde você vai clicar e/ou editar. Recomendo backup. Cuidado para não modificar qualquer linha por acidente ou sem saber o que está fazendo, uma letra errada já é o suficiente pra dar erro na hora de abrir o mapa. Escolha o piso que você quer adicionar. Vou escolher o dark spikes para usar como exemplo, ok? (na imagem, ele já está pronto e adicionado na paleta)
B.
Abra grounds.xml. Repare que o documento começa com <materials> e termina com </materials> Desça até o final do código. Antes do </materials> há algum item cadastrado, um </brush> Alguma coisa ... </brush>. Após o último brush, e antes do </materials>, cole o seguinte código:
<brush name="ITEMNOME" type="ground" server_lookid="ITEMID - ID PRA APARECER NA PALETA" z-order="NUMERO"> <item id="ID" chance="100"/> <item id="ID" chance="100"/> <item id="ID" chance="100"/> <item id="ID" chance="100"/> <border align="outer" id="NUMEROBORDA"/> </brush>
C.
Server_lookid é pra por o ID da sprite que vai aparecer na paleta, pra identificar o atalho. Coloque o ID do ground principal caso tenha mais versões do mesmo. Em Z-order, se o brush X tiver z-order maior que brush Y, a borda de brush X vai sobrepor a do Y. Item Id e chances, adicione os grounds e mude o valor da chance para definir qual deles vai predominar caso houver vários, como por exemplo o grass, que tem diversas sprites diferentes. Se for apenas uma sprite, pode deixar uma linha. Border align, tem outer e inner. São para as duas finalidades apresentadas nas imagens abaixo.
(No inner dessa imagem, fora utilizado <border align="inner" to="none" id="1"/>, que é padrão para vários brushs)
O codigo do Dark Spikes ficará assim:
<brush name="dark spikes" type="ground" server_lookid="12234" z-order="3200"> <item id="12234" chance="2500"/> <item id="12235" chance="2500"/> <item id="12236" chance="2500"/> <item id="12237" chance="2500"/> <border align="outer" id="155"/> </brush>
D.
Revise o que você modificou e salve. Abra borders.xml. O esquema é o mesmo, desça até o final e depois de </border> e antes de </materials>, adicione o código abaixo:
<border id="NUMEROBORDA"> -- NOME -- <borderitem edge="n" item="ID"/> <borderitem edge="e" item="ID"/> <borderitem edge="s" item="ID"/> <borderitem edge="w" item="ID"/> <borderitem edge="cnw" item="ID"/> <borderitem edge="cne" item="ID"/> <borderitem edge="csw" item="ID"/> <borderitem edge="cse" item="ID"/> <borderitem edge="dnw" item="ID"/> <borderitem edge="dne" item="ID"/> <borderitem edge="dsw" item="ID"/> <borderitem edge="dse" item="ID"/> </border>
E.
O número que estiver em border id vai servir para ligar essass bordas ao brush criado anteriormente. Identifique o nome do brush a qual essa borda pertence para ficar fácil encontrar mais tarde ( -- exemplo -- ) Siga a tabela abaixo para configurar as bordas, conforme a posição delas:
O código das bordas do dark spikes ficará assim:
<border id="155"> -- dark spikes border -- <borderitem edge="n" item="12255"/> <borderitem edge="e" item="12256"/> <borderitem edge="s" item="12254"/> <borderitem edge="w" item="12257"/> <borderitem edge="cnw" item="12264"/> <borderitem edge="cne" item="12265"/> <borderitem edge="csw" item="12263"/> <borderitem edge="cse" item="12262"/> <borderitem edge="dnw" item="12260"/> <borderitem edge="dne" item="12261"/> <borderitem edge="dsw" item="12259"/> <borderitem edge="dse" item="12258"/> </border>
F.
Agora que o ground foi criado e as bordas configuradas, é preciso adicionar o atalho na paleta, para poder usá-lo. Abra tilesets.xml. Dê um ctrl + f e procure por: <tileset name="Nature"> em terrain. Ou no local que você preferir. Também pode colocar na ordem que quiser, reinicie o editor e teste.
Dúvidas? Comente.
-
lusgo deu reputação a Cat em Modificando Extensions II - Walls (Terrain Palette)Extensions Customizadas I - Grounds
Extensions Customizadas II - Walls
Extensions Customizadas III - Doodads (objetos montados)
Sumário
A. Informações e exemplo de tipos de walls conforme nomenclatura no código.
B. Onde colocar o novo código do brush de wall.
C. Como configurar o brush, paredes na horizontal, vertical, corner e pole.
D. Como cadastrar o brush na paleta.
COMEÇAR
(Dica: Utilize Notepad++)
A.
Tudo que está em azul nas imagens acima é onde você vai clicar e/ou editar. Recomendo backup. Atenção ao modificar os arquivos, uma letra errada já é o suficiente pra dar erro na hora de abrir o mapa. Usarei como exemplo Stone Wall. No geral, adicionar walls é bem simples.
B.
Abra walls.xml. Repare que o documento começa com <materials> e termina com </materials> Desça até o final do código. Antes do </materials> há algum item cadastrado, um </brush> Alguma coisa ... </brush>. Após o último brush, e antes do </materials>, cole o seguinte código:
<brush name="stone wall" type="wall" server_lookid="1050"> <wall type="horizontal"> <item id="1050" chance="500"/> <door id="6252" type="normal" open="false"/> <door id="6253" type="normal" open="false"/> <door id="6254" type="normal" open="true"/> <door id="6257" type="locked" open="false"/> <door id="6258" type="locked" open="true"/> <door id="6261" type="quest" open="false"/> <door id="6262" type="quest" open="true"/> <door id="6265" type="magic" open="false"/> <door id="6266" type="magic" open="true"/> <door id="6444" type="hatch_window" open="false"/> <door id="6446" type="hatch_window" open="true"/> <door id="1267" type="window"/> </wall> <wall type="vertical"> <item id="1049" chance="400"/> <door id="6249" type="normal" open="false"/> <door id="6250" type="normal" open="false"/> <door id="6251" type="normal" open="true"/> <door id="6255" type="locked" open="false"/> <door id="6256" type="locked" open="true"/> <door id="6259" type="quest" open="false"/> <door id="6260" type="quest" open="true"/> <door id="6263" type="magic" open="false"/> <door id="6264" type="magic" open="true"/> <door id="6445" type="hatch_window" open="false"/> <door id="6447" type="hatch_window" open="true"/> <door id="1268" type="window"/> </wall> <wall type="corner"> <item id="1053" chance="1000"/> </wall> <wall type="pole"> <item id="1051" chance="1000"/> </wall> </brush>
C.
Brush Name é o nome que aparecerá na paleta e também o nome usado para identificar e cadastrar o brush em tilesets.xml. Server Lookid é o id da sprite que será mostrada na paleta. Wall Type Horizontal, aqui você colocara em Item Id os ids das walls, portas e janelas na horizontal (janelas ficam em door id também) Normal Doors são utilizadas em casas de npc, depósitos, torres ou construções em geral. Locked Doors são utilizadas em houses. Se você colocar um action id nessa porta e um action id em uma chave (dentro de um baú de quest), será possível abrir a porta usando esta mesma chave, igual no Tibia Global. Quest Door são utilizadas em quests que precisa ter permissão de acesso para abrir a porta, como um npc lhe entregando uma storage ou uma task concluída. Magic door são utilizadas para permitir que apenas jogadores de tal level passem, se você por um aid 1100 nesta porta, só vai poder passar se for level 100. Se por 1050, precisará ter level 50. 1800, precisará ter level 800, etc. Window são janelas comuns. Hatch windows são janelas que abrem/fecham (com o brush ativado, vá no mapa e clique com o botão direito na janela e depois em Open Door). O mesmo se aplica para os itens na vertical. Em Corner e Pole, basta configurar os ids conforme a imagem acima. São os cantos da parede. Salve o arquivo.
D.
Agora que a parede o ground foi criada, é preciso adicionar o atalho na paleta, para poder usá-la. Abra tilesets.xml. Dê um ctrl + f e procure por: <tileset name="Town Walls"> em terrain. Ou no local que você preferir. Também pode colocar na ordem que quiser, reinicie o editor e teste. (exemplo: <brush name="stone wall"/>)
Dúvidas? Comente.
-
lusgo deu reputação a Cat em Modificando Extensions III - Doodads (montando objetos)• Extensions Customizadas I - Grounds
• Extensions Customizadas II - Walls
> Extensions Customizadas III - Doodads (objetos montados)
Os arquivos que serão editados serão estes abaixo, faça um backup antes de começar:
• Mostrarei 4 tipos de Doodads que podem ser criados na paleta:
1 - Um item único simples.
2 - Itens que se conectam.
3 - Vários itens sortidos.
4 - Peças no andar superior e inferior, vertical e horizontal.
Agora vou mostrar como funcionam os códigos desses doodads.
Eles podem ser usados como modelo para criar outros.
1 - Item único.
Em RME - data - versão - doddads.xml
Usarei o item Lava Fountain como exemplo:
<brush name="lava fountain" type="doodad" server_lookid="5074" draggable="true" on_blocking="false" thickness="100/100"> <alternate> -- south -- <item id="5074" chance="10"/> </alternate> <alternate> -- east -- <item id="5075" chance="10"/> </alternate> </brush> Brush Name: o nome que será identificado posteriormente em tilesets.xml, para ser cadastrado na paleta
Type: Não mude.
Server_lookid: Id do item que aparecerá na paleta.
Draggable: Se o item é arrastável ou não.
On_blocking: Se o item poderá ser colocado em cima de outros objetos ou void, ou apenas em um piso andável.
Thickness: Não mude.
• Para este item simples, veja que é possível adicionar outras versões do mesmo item, como por exemplo ele virado para outras direções, para isso você usa a tag: <alternate> conteúdo </alternate>.
• No map editor, para alternar a direção do item utilize a tecla Z. Não precisa definir a direção do item no código, conforme você utilizar a tecla Z o item será alternado de acordo com a ordem que os objetos foram adicionados no código.
2 - Itens que se conectam:
Em RME - data - versão - doddads.xml
Usarei o item Stone Wall como exemplo:
<brush name="stone railing2" type="wall" server_lookid="3481"> <wall type="pole"> <item id="3483" chance="1"/> </wall> <wall type="horizontal"> <item id="3481" chance="1"/> </wall> <wall type="vertical"> <item id="3482" chance="1"/> </wall> <wall type="corner"> <item id="3480" chance="1"/> </wall> </brush> • Type wall permite usar as tags "pole, horizontal, vertical e corner", para definir como os itens serão conectados, portanto não mude. Não esqueça de sempre fechar a tag corretamente <wall type...> ... </wall>.
Wall type Pole id:
Wall type Horizontal id:
Wall type Vertical id:
Wall type corner id:
3 - Itens sortidos:
Em RME - data - versão - doddads.xml
Usarei o item Stone Rocks como exemplo:
<brush name="tiny stone rocks" type="doodad" server_lookid="3614" draggable="true" on_blocking="true" on_duplicate="true" thickness="50/100"> <item id="3610" chance="4"/> <item id="3611" chance="7"/> <item id="3613" chance="7"/> <item id="3614" chance="10"/> </brush> • Parecido com o código do Lava Fountain, a diferença é que nesse caso não tem a tag alternate, pois os itens não possuem uma direção específica. Mas possuem variedades, e isso pode ser feito simplesmente duplicando o código <item id..../>
• Chance irá definir qual item aparecerá mais vezes e menos vezes.
4 - Peças no andar superior e inferior
Em RME - data - versão - doddads.xml
Usarei o item Waterfall como exemplo:
<brush name="waterfall" type="doodad" server_lookid="3569" draggable="true" on_blocking="true" on_duplicate="true" thickness="100/100"> <alternate> <composite chance="10"> <tile x="0" y="0" z="0"> <item id="3569" chance="10"/> </tile> <tile x="0" y="1" z="0"> <item id="3573" chance="10"/> </tile> <tile x="0" y="0" z="-1"> <item id="3571" chance="10"/> </tile> </composite> </alternate> <alternate> <composite chance="10"> <tile x="0" y="0" z="0"> <item id="3570" chance="10"/> </tile> <tile x="1" y="0" z="0"> <item id="3574" chance="10"/> </tile> <tile x="0" y="0" z="-1"> <item id="3572" chance="10"/> </tile> </composite> </alternate> </brush> • Veja que para adicionar um item que contém uma parte dele no andar superior, usamos o esquema x, y, z dentro da tag <composite></composite>.
Lembrando que:
(o centro = 0 é o SQM onde for aplicado o conjunto de itens)
- X representa a linha horizontal, positivo = vai para a direita, negativo = vai para a esquerda.
- Y a vertical, positivo = vai para o sul, negativo = para o norte.
- e Z floors (andares), sendo que Z negativo = para subir e Z positivo = para descer, Z = 0 representa o andar-centro (onde o item for aplicado).
- Composite chance: mantenha o mesmo valor para ambas as opções
• Nesse código foi usado a tag <Alternate></alternate> por que a cachoeira possui duas direções, e para alterná-las use a tecla Z.
• Observando a primeira tag <alternate> veja a posição dos três itens:
• Cadastre os doodads em tilesets.xml, use a ferramenta CTRL + F para procurar itens próximos ou paletas que você quer adicionar os itens e acrescente as tags:
Exemplo:
<brush name="lava fountain"/>
• Use os códigos de modelo para criar novos itens.
• O estilo de doodad (exemplo 4) pode ser usado para criar pontes, estátuas e outros objetos que possam ser montadas as partes.
• Dúvidas? Comente.
-
lusgo deu reputação a worthdavi em Anunciar quem Matou um MonstroComo você registra o script no próprio XML do monstro, então acho que não é preciso usar o nome dos mesmos no script.
function onDeath(monster, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified) Game.broadcastMessage("O jogador " .. killer:getName() .. " matou o monstro " .. monster:getName() .. "!") return true end
Essa função simplesmente já faz o trabalho, já que os monstros vão ser inseridos no script por meio do XML.
-
lusgo recebeu reputação de L3K0T em Anunciar quem Matou um MonstroMuito bom!!!
Teria como colocar uma lista de criaturas para simplificar vários boss em um único código?
-
lusgo deu reputação a L3K0T em Anunciar quem Matou um MonstroL3KOT tfs: 1.3
Bom esse sistema é bem simples, ele anuncia pro servidor todo ao matar um tal monstro especifico.
1° vai em otserv\data\creaturescripts\scripts copia um arquivo.lua, renomeia para monsterkill.lua e add dentro;;;
function onDeath(monster, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified) local monstro = "Diablo" if monster:getName() == monstro then Game.broadcastMessage("O Jogador "..killer:getName().." matou o Boss " ..monster:getName().. "! ") end return true end
Em creaturescripts.xml add
<event type="death" name="monsterkill" script="monsterkill.lua"/>
Abra o xml do monstro que você quer que apareça a mensagem global depois de mata-lo e add lá no final depois de loot;;
<script> <event name="monsterkill" /> </script> feito isso, salve tudo e pronto!!! Sucesso e jamais desista do seus projetos.
ajuda sandada para @Faysal creditos: L3K0T and @Faysal
-
lusgo recebeu reputação de dezon em Meu projetoOlá Tibianos, vou ir direto ao assunto, estou querendo criar um servidor inovador (ou não) e gostaria de saber o que vocês pensam a respeito de algumas coisas do universo do Tibia e também de algumas coisas a mais. Para isso criei um formulário que contém poucas perguntas, sendo elas de múltipla escolha e alguma opcionais que são dissertativas.
Eu gostaria muito de poder contar com o apoio de vocês para que o meu projeto não somente agrade a mim e a minha equipe, mas que também agrade a todos, afinal sinto falto de quando eu jogava Tibia e me divertia, o que infelizmente não ocorre mais comigo devido a ganância que eu encontro nos grandes servidores e imagino que outros também sintam isso e por conta disso criei o projeto.
Link para o formulário da Google Docs: https://docs.google.com/forms/d/15FjYtLJZlvFmSIsoeeFp-R8NDI3oUiWHcG46PY-8Ous/viewform
Irei fazer o servidor ao meu tempo, pois faço parte de outro servidor que não pretendo me distanciar e ainda tenho que estudar, mas quero trazer de volta a era de ouro do Tibia, com inovações e uma boa mecânica de jogo.
Caso você tenha respondido, muito obrigado!
* * *
-
lusgo deu reputação a Skydangerous em [Programação] Descompilação Distro@1215171
Modifiquei o título do tópico, para o conteúdo de sua dúvida.
para que ficar nas regras do fórum.
Até !
-
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]Já postei lá no seu tópico da dúvida a solução do "problema".
http://www.tibiaking.com/forum/topic/31447-groups-bugado/
Desculpa a demora...
-
lusgo deu reputação a Jamison Collins em (Resolvido)Groups BugadoBem, vamos lá...
Primeiramente, deixe tudo do jeito que você baixou, sem alterações.
Agora, você mudará o group id do seu personagem para 3.
Logo depois, você entrará na tabela de accounts, e na mesma conta onde tiver o seu personagem, você alterará o type para 5.
Assim :
Desculpa a demora.
-
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]@UP
TFS com suporte para versão 10.35 !
Obs.: Por mais que eu não esteja mais no equipe do Tibia King, não significa que eu deixarei de atualizar o tópico. Essa última atualização(02/03/2014) demorou pois eu estava esperando um novo conteúdo significante do TFS, que no caso, é a atualização para 10.35 !
Obrigado.
-
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]@Updated.
Adicionado as minhas atualizações do TFS 1.0 que em breve serão também aceitas pelo TFS oficialmente. (obrigado pela ajuda comedinhasss) Compile feito no dia 20/01/2014 ! -
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]Link para download dos DLLs foram adicionados.
-
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]Bem, esse distro só suporta banco de dados MySQL, esse tipo de banco de dados só tem suporte com site.
Conclusão... para abrir um servidor com esse distro, você terá que criar um site, e aqui há um link que explica como faz para instalar e abrir :
http://www.tibiaking.com/forum/topic/8861-como-criar-um-site-para-seu-servidor/
Uma observação :
Esse link contém um site desatualizado que não suporta esse distro (o gesior, que contém dentro desse link acima), então, eu sugiro que você apenas baixe o XAMPP 1.6.5 do link que eu passei acima, e baixe o Gesior desse link que estou passando : http://www.tibiaking.com/forum/topic/29471-gesior-aac/
O server você baixa nesse tópico mesmo.
-
lusgo deu reputação a Jamison Collins em [TFS 1.0] Compilações [Last Rev.: 02/03/2014]Atual versão
suportável no
TFS é :
10.35
(02/03/2014)
TKbianos,
Hoje eu dou inicio a um compromisso com você em disponibilizar toda semana a versão mais recente do TFS 1.0 compilada !
Há um tempo, o TFS 0.4 foi abandonado, pois deram inicio ao TFS 1.0. Algo revolucionário, muito mais rápido e muito mais eficiente com todos os novos sistemas do atual Tibia (original), e disponibiliza mais funções para edições de scripts e outros.
Confira todas as alterações do TFS 0.4 para TFS 1.0 (em inglês) :
Minhas alterações sobre o TFS 1.0 :
Links para downloads dos distros:
[TFS 1.0] 07.01.2014 (10.31).rar [TFS 1.0] 20.01.2014 (10.31).rar [TFS 1.0] 02.03.2014 (10.35).rar <Última versão> Links para scans:
[TFS 1.0] 07.01.2014 (10.31).rar (1/45) [TFS 1.0] 20.01.2014 (10.31).rar (1/45) [TFS 1.0] 02.03.2014 (10.35).rar (0/48)
DLLs:
[TFS 1.0] DLLs.rar
Scan do DLLs.rar :
[TFS 1.0] DLLs.rar (0/42)
Agradecimentos :
Créditos :
TFS Team e outros...
Obs.: Por mais que eu não esteja mais no equipe do Tibia King, não significa que eu deixarei de atualizar o tópico. Essa última atualização (02/03/2014) demorou pois eu estava esperando um novo conteúdo significante do TFS, que no caso, é a atualização para 10.35 !
Obrigado.
Tópico criado meio as pressas, se estiverem sentindo falta de algo, me avisem.