Histórico de Curtidas
-
Akiris deu reputação a xWhiteWolf em Buraco NegroEssa spell foi feita originalmente pro Yazzo numa versão 7.6 do tibia, eu tenho ela salva desde essa época e apenas adaptei e removi umas coisas inúteis (que agora tem função pra isso). A spell não funciona tão bem quanto funcionava naquela época porque muita coisa mudou mas ela funciona e não apresenta nenhum erro então não vejo o porque de não postar já que pode servir de base pra outros scripts de vocês.
Ela faz um buraco negro e puxa todos que estão na area em direção ao centro (caso seja possível)
Vou colocar duas versões (a primeira é a original arrumada pra rodar em 8.54 e a segundas é ela com algumas funções novas)
versão1:
versão2:
spells.xml
<instant name="Dark Hole" words="buraco negro" lvl="160" mana="500" prem="1" exhaustion="2000" needlearn="0" event="script" value="especiais/buraco negro.lua"> <vocation id="6"/> <vocation id="7"/> <vocation id="5"/> </instant> Espero que gostem e estudem o código dela! haha
Uma imagem da versão 1:
e uma da versão 2:
-
Akiris deu reputação a xWhiteWolf em [CMS] Campeonato Mensal de Scripting #01Fala galera do Tibia King, hoje eu trago a vocês a primeiríssima edição do Campeonato Mensal de Scripting. Essa é sua chance de mostrar suas melhores criações e concorrer contra outros membros à prêmios incríveis!
TEMA DESSA EDIÇÃO: QUESTS
Para este tema especificamente vocês podem utilizar quaisquer pastas do server, pode ser desde uma quest simples em actions como uma quest super complexa. Surpreendam-me com sua criatividade pois inovação será levada em consideração.
Como vai funcionar: Para participar, a partir de hoje (17/01/2015) os membros terão 2 semanas para fazer um script em torno do tema acima e postar-lo na Seção de participação do CMS, lá seu tópico ficará visível somente para você e nós da equipe do TK, poste também neste tópico apenas avisando que você está participando do concurso. Na seção de participação do CMS seu script será avaliado e a avalização será postada no próprio tópico do autor. Após o término do concurso os links de todos os tópicos de participações deste concurso serão postados no tópico de Resultado desta edição do CMS, os tópicos também serão movidos para a área mais adequada na seção de Scripting (actions, creaturescripts, mods, etc).
O campeonato só será realizado caso tenhamos mais de 5 de participantes. OBS: Todas as instruções dos formatos dos tópicos de participações estão na seção de Participação do CMS.
Os scripts serão analisados por mim e pelo separadamente seguindo os critérios abaixo: [Peso 25] Criatividade e Inovação: O quão criativo e inovador você foi ao criar o script, isso vale tanto no código quanto na idéia de sua utilização. Nesse critério será avaliado a capacidade tanto de criar um código de uma forma nova e ao mesmo tempo o quão criativo ficou o seu script no servidor. Contra exemplo: Fazer um script que seja comum ou igual a várias que tem por aí irá fazer você tirar uma pontuação baixa nesse quesito. [Peso 15] Aplicabilidade: O quão abrangente é o seu código ou o quão aplicável ele é, tanto em diferentes versões de tibia como em servidores derivados. Nesse critério será avaliado se seu script rodaria em diferentes servidores e também se seria uma idéia viável de se colocar em diferentes tipos de servidores. Contra exemplo: Fazer um script que tenha funções exclusivas de algumas versões ou fazer um script cuja idéia não seja concebível no mundo do Tibia irá fazer você tirar uma pontuação baixa nesse quesito. [Peso 10] Simplicidade e Organização. O quão simples e organizado seu código está. Nesse critério será avaliado se seu script está tão simples quanto ele poderia ser e também se ele está organizado (ordem das funções) e identado (estrutura do script) corretamente. Contra exemplo: Fazer um script bagunçado ou de dificil entendimento acarretará em uma pontuação baixa nesse quesito.
No final nós daremos notas de 0 a 10 isoladamente, e ao final compararemos as notas. As notas que possuirem uma discrepância maior que 3 pontos serão reavaliadas em conjunto em prol de obter um padrão nas correções. Após isso, será aplicada uma média ponderada para atribuir os pesos de cada categoria e iremos dar uma nota de 0 a 10 com base nisso.
O script obrigatoriamente deverá ser de sua autoria e não poderá ser nenhum trabalho que você já tenha postado, a idéia aqui é que você faça um script pro campeonato pois além de treinar irá aprender e melhorar suas habilidades. Como vocês viram, a maior parte da pontuação está na ideia e não no código em si, foi uma decisão minha e da equipe pra permitir que qualquer um possa participar e ter chance de ganhar, ou seja, não importa se você for o melhor scripter do país, se sua ideia for ruim, não vai adiantar nada seu código estar impecável.
Recompensas: 1º Lugar --- 20 REP+, Medalha de Ouro do CMS #01, Conquista de Scripter e Conquista de Scripter King *. 2º Lugar --- 15 REP+, Medalha de Prata do CMS #01 e Conquista de Scripter. 3º Lugar --- 10 REP+, Medalha de Bronze do CMS #01 e Conquista de Scripter.
Oponente Honrado: O quarto e quinto lugar receberão a Conquista de Scripter e 3 REP+ caso hajam mais de 8 participantes. * OBS¹: O membro que receber a conquista de Scripter King ficará com ela somente até a próxima edição do CMS, onde o vencedor atual terá que defender o título. Ou seja, para manter sua conquista de Scripter King você terá que ganhar a próxima edição do CMS, caso ao contrário, a conquista irá para o novo vencedor. OBS²: O membro só irá receber a conquista de Scripter caso ele ainda não a possua. OBS³: Todos os membros que participarem ganharão 1 REP+ como gratificação.
Por que Participar? Primeiramente esta é uma chance de realmente competir com outros membros pra saber quem é o melhor, não só quem sabe programar melhor mas sim quem é mais útil programando, nesse concurso as melhores idéias também serão levadas em consideração então mesmo que você não tenha tanta habilidade em Lua, ainda há grandes chances de você vencer! Aqui é sua chance de treinar e aprender cada vez mais sobre scripting! No mais, tem coisa melhor do que começar um projeto com um real incentivo e depois talvez até receber um prêmio por isso? Um campeonato que promete revelar não só os melhores scripters como também as mentes mais criativas do TK! Não perca sua chance de participar! Data final pra envio dos scripts pela seção de participação: 31/01/2015 Resultado dia: 05/02/2015
A equipe deseja uma boa sorte para todos que forem participar. Abraços.
Qualquer dúvida sintam-se a vontade para perguntar nos comentários. -
Akiris deu reputação a xWhiteWolf em Mostrar o tempo da Magic WallEae galera, hoje vou fazer uma pequena demonstração de como usar a função doShowTimeByPos, uma das mais novas funções adicionadas na New Lib, que agora está em versão 1.2.
A função:
Se seu server for 0.3.6/0.4 você só vai precisar adicionar essa linha marcada:
do contrário, se ele for das revs mais novas como 1.0 você irá adicionar essa linha:
Esses valores são a duração (20 segundos que é o tempo de duração da magic wall) e 20/35 é o TALKTYPE do tipo monster (cor laranja), seguindo a tabela do data\lib\constant.lua:
TALKTYPE_FIRST = 1 TALKTYPE_WHISPER = 2 TALKTYPE_YELL = 3 TALKTYPE_PRIVATE_PN = 4 TALKTYPE_PRIVATE_NP = 5 TALKTYPE_PRIVATE = 6 TALKTYPE_CHANNEL_Y = 7 TALKTYPE_CHANNEL_W = 8 TALKTYPE_RVR_CHANNEL = 9 TALKTYPE_RVR_ANSWER = 10 TALKTYPE_RVR_CONTINUE = 11 TALKTYPE_BROADCAST = 12 TALKTYPE_CHANNEL_RN = 13 TALKTYPE_PRIVATE_RED = 14 TALKTYPE_CHANNEL_O = 15 TALKTYPE_CHANNEL_RA = 17 TALKTYPE_MONSTER = 19 TALKTYPE_MONSTER_YELL = 20 Aqui tem uma imagem de como fica no server.
Note que eu fiz pra magic wall mas vale pra qualquer item que tenha duration, pra quests, pra contar tempo de invencibilidade de alguma spell ou oque você quiser, use a criatividade e explore o máximo dessa função. Abraços.
-
Akiris deu reputação a xWhiteWolf em Fogos de artificio.Eae galera, tirei uma meia horinha aqui pra fazer um script temático para o ano novo, sei que muita gente não vai estar jogando durante o ano novo mas para os que vão estar vai ser bem inesquecível haha.
Como o título já sugere, trata-se de uma chuva de fogos pra receber calorosamente o ano de 2015!.
a instalação é bem tranquila, o script só precisa da função isWalkable (é a primeira da new lib), se vc tiver problemas com a newlib apenas copie a primeira função e cole antes de todas as outras nesse script aqui que vai funcionar sem problema (ou se preferir remova todo lugar que tiver "if isWalkable..... then" e o "end").
Eis o script:
<talkaction log="yes" words="!fogos" acess="5" event="script" value="fogos.lua"/> PS: é uma talkaction.
O script tem uma lógica matemática bem bonita, ele pode parecer simples mas não é, então, se vc não sabe oque tá fazendo, não mexa em nada (só a parte de config com os comentários haha). Agora vc deve estar pensando: mas pqp, isso é uma talkaction, eu não vou poder estar on no server pra ativar ela qnd der meia noite.. bem, então é só trocar duas linhas do script (o callback function onSay(cid, words, param, channel) e a tag no xml e transformar num global events com horário definido). Façam oque quiserem aí, abraços do lobo
Vídeo :
ViitinG seu lindo, obrigado por postar o vídeo para mim!
-
Akiris deu reputação a xWhiteWolf em Taunt + ChannellingFala galera, vou mostrar agora como usar o novo sistema de cast imbutido na New Lib, é bem simples:
Pegarei como exemplo a spell Taunt, aqui está o código dela:
1- Pra adicionar o sistema de channelling nessa spell eu preciso inicialmente passar todas as funções dela pra um addEvent, ficando assim:
2- Agora pro segundo evento acontecer eu preciso de um time, que se encontra ali antes do return true e que em nenhum momento eu disse oque era. Agora que entra a função onCastChannel(uid, target, delay, effect, key) mas note que essa função requer um delay próprio, um efeito e uma id de storage então vou precisar alterar o config, ficando + ou - assim:
3- Agora note que temos uma key onde ficará salvo se o channelling foi realizado com sucesso, mas como saber? Simples, o valor dessa storage ficará 11 caso ele tenha sido realizado completamente com sucesso, então o passo final é colocar um checador no addEvent para o valor do Storage antes de soltar a spell, afinal, a spell só deverá sair se o channelling foi feito com sucesso.
4- A spell está perfeita e funcional agora, só q se vc for soltar vc vai perceber que o exhaust dela é bem menor que o tempo de channelling então o cara pode soltar ela diversas vezes só carregando e soltando. Pra controlar melhor isso já que se trata de uma spell praticamente mortal num x1 contra um knight nós usaremos um sistema de cooldown por storage, ficando assim:
Espero que vocês tenham aprendido como usar o cast System, agora um pequeno gif do funcionamento dele: