
Tudo que xWhiteWolf postou
-
Sistema de Auto-Facing: Vire Automaticamente para o Target ao Atacar (TFS 0.3.6)
a cip sempre copia os OTs hahaha eu espero q um dia eles tragam aquele sistema de auto rope/shovel q eu fiz, dps q criei isso nunca mais consegui jogar nenhum outro otserver q n fosse o meu kkkk
-
[Canary] Mapa Global Completo 14x Atualizado
Obrigado por espalhar a palavra do canary @luanluciano93, lembro quando você chegou no projeto e ainda tinha algumas ressalvas se deveria usar ou não, que bom que conseguimos trazer você pro lado amarelo da força. Muita gente daqui do TK me conhece e o canary vem na verdade de uma ideia que tive anos atrás depois do fim do projeto BlackOnix (lá em 2008) que era juntar as pessoas + incríveis da comunidade pra fazer um servidor fodástico e completo que seria público. A ideia de ter um produto incrivelmente bom seria avançar o desenvolvimento, unificar esforços e ter uma base comum que fosse atrativa pra qualquer um desenvolver em cima e contribuir de volta. Quando eu conheci o pessoal da OTBR e vi que eles já estavam realizando essa ideia, foi um match instantâneo e estou acompanhando o projeto desde então. Eu cheguei a fazer umas contribuições pontuais e até trazer várias correções e melhorias do meu projeto pessoal, o Empire, pra esse futuro que nós acreditávamos. Infelizmente levou mais de 15 anos pra eu ver uma iniciativa do tipo aqui na comunidade isso me venceu pelo cansaço, hoje em dia eu diria que estou mais pra eu "conselheiro" que dá um apoio moral e suporte de forma pontual já que não estou mais envolvido de forma ativa na comunidade e nem tenho mais servidor. Vale ressaltar que mesmo sob intenso hate e racismo (sobretudo de algumas pessoas da otland), a galera da otbr continua fazendo um trampo SEM PALAVRAS. Usem, divulguem e defendam! O canary é top e é brasileiro. É a melhor base e de longe o projeto que mais continua evoluindo o cenário do open tibia. O pessoal por trás desse projeto é sensacional e muito focado em evoluir o projeto com muito carinho e cuidado, eles merecem ser sempre citados: Eduardo Dantas, Lucas Grossi, Renato "Foot", "Majesty", Luan "Ardent" (cfcluan), "Beats", Murilo, "Marcosvf132" e Renato "Mehah" são alguns dos maiores contribuidores.
-
[Recrutamento Projeto Global 12x] OtservBR Global - Future Open Source
concordo com o @luanluciano93, a melhor estratégia nesse caso seria todo mundo focar numa única base. O maior foco da galera lá (eu incluso) é ter uma src estável, completa e customizável. Se vocês entrassem com um foco maior em conteúdo pro Datapack seria sensacional porque aí seria possível avançar bem o projeto que poderia beneficiar vocês mesmo em consequência. Além disso, fazendo os PRs lá eles iriam passar pelo meu review, o que ia assegurar que os códigos estão bons e nao vão criar nenhuma situação inesperada.
- Sistema de Reset 100%
-
Magnus Challenger
@Heyron opa amigo, fico feliz que você tenha conseguido achar a solução, mas apesar de isso funcionar pra você pode não funcionar pra todos já que a forma de definir os scripts vai estar diretamente ligado à source que a pessoa utiliza. Dito isso, eu vou pedir que qualquer pessoa que ainda utilize TFS 0.X, considere migrar para uma source mais atualizada como o TFS 1.3 ou o otservbr-global. Essas sources antigas tem muitos bugs e por mais que tenha muitos scripts disponíveis para versões mais antigas, é mais vantajoso pra você adaptar os scripts pras novas versões do que descobrir mais tarde um crash que você não vai achar de onde é.
-
DIA 18
só falta + 2900 pra me afetar agora cachorro kawaii
-
DIA 18
piedade
-
DIA 18
Alguem me explica pq o Vodkart tem 7 awards e eu só tenho 5 sendo mostradas (sendo que tenho 6) @Cat Vodkart: xWhiteWolf
-
Magnus Task System 1.2
Você tem que criar um novo arquivo em data/libs chamado tasksystem e colar esse conteúdo lá, e aí procurar qual a lib que carrega todas as libs (acho q fica na pasta core) e seguir o exemplo para mandar ela iniciar a lib que você criou tasksystem.lua Se nao rolar, o jeito vai ser copiar a lib para cada script que usar ele. Vai funcionar, mas cada vez que você for editar algo vai precisar garantir que todos os scripts usam a mesma tabela atualizada.
- Critical Skill System
-
Erro critical system do xWhiteWolf
permita-me lhe ajudar: Descrição do erro: Description:data/creaturescripts/scripts/critical.lua:9: attempt to perform arithmetic on a boolean value "Tentativa de conta com valores booleanos (verdadeiros/falso) na linha 9" a linha 9: local chance = (getPlayerSkillLevel(cid, SKILL_ID) * percentual) * 10 Dessa linha aí, vc tem 3 coisas sendo multiplicadas: uma função, uma variavel e uma constante. Tanto a constante (10) quanto a variavel (percentual) são bem definidas e não podem ser booleanas (true/false), o que nos indica que o problema é que sua função getPlayerSkillLevel(cid, SKILL_ID) não está retornando o level da skill. Você pode checar isso colocando na linha acima dessa print(getPlayerSkillLevel(cid, SKILL_ID)) e vendo o que ele vai escrever no seu console. Se isso se confirmar, busca outra função ou tenta ver o que tem de errado nessa
-
Ots 8.60 exclusivos, novidades sobre bots, anti-MapTracker e muitos sistemas de eventos para seu Otserv!
parabéns pro pessoal que teve seu conteúdo publicado na primeira tk magazine! @Nolis parabens por ter organizado isso, inclusive com as conquistas, ficou bem legal ??
- Volatile Spiderling
-
Anel de Sauron
sim, com duas modificações: 1) coloca pra ao equipar o ring setar um storage no jogador como 1 e quando remover, setar esse storage para 0 2) vc pode fazer um creaturescripts onStatsChange que verifica se o tipo de combat é Healing e se o storage for 1 vc só dá return false (pra impedir que o cara conclua essa modificação de stats)
-
[Spell] Katara's Sense
se vc olhar no script da new lib: eu declaro duas tabelas no comecinho (grass e driedgrass), o que vc tem que fazer é substituir essas tabelas localmente (declara no script lá local grass = {todos os ids de corpse q quer usar} e local driedgrass = {todos os ids de esqueleto que quer gerar aleatoriamente} pra fazer ele bater certinho o esqueleto com o corpse (caso vc queira usar mais de um tipo de corpse) você teria que fazer outras adaptações, mas a ideia é essa ai
- Voodoo
-
(Resolvido)Shapeshifter Ring Script
pra restringir por classe você só precisa fazer um if: if not isInArray({4, 8}, getPlayerVocation(cid)) then doPlayerSendCancel(cid, "Your class cannot equip this item") return false end coloca isso logo abaixo de function onEquip
- Chain Lightning
-
Chain Lightning
Adiciona essa função no inicio do script: function doBlast(uid, target, delay, effectx, effectz, percent, min, max, type, hits, fromPos, n) if fromPos ~= nil and (fromPos.x ~= getCreaturePosition(target).x or fromPos.y ~= getCreaturePosition(target).y) then doSendDistanceShoot(fromPos, getCreaturePosition(target), effectx) fromPos = (fromPos.x ~= getCreaturePosition(target).x or fromPos.y ~= getCreaturePosition(target).y) and getCreaturePosition(target) or nil else fromPos = getCreaturePosition(target) end doTargetCombatHealth(uid, target, type, -min, -max, effectz) n = n or 1 if math.random(1, 10) <= (percent/10) then possible = {} for j = -3, 3 do for k = -3, 3 do middlePos = {x = getCreaturePosition(target).x + j, y = getCreaturePosition(target).y + k, z = getCreaturePosition(target).z, stackpos = 253} if isWalkable(middlePos, false, true, true) then creature = getTopCreature(middlePos).uid if creature > 0 then table.insert(possible, creature) end end end end target = #possible > 0 and possible[math.random(#possible)] or target end if n < hits then addEvent(function() if isCreature(uid) and isCreature(target) then doBlast(uid, target, delay, effectx, effectz, percent, min, max, type, hits, fromPos, (n + 1)) end end, delay) end return true end
-
Contador de Monstros
@Nolis Não só ja tem isso no Empire (há alguns anos), mas o script é incrivelmente similar (pra não dizer igual). Na época foi o Breno que (fez/copiou de algum lugar) e eu adaptei ele pra extrair os monstros ordenados por nome crescente: Código (em talkaction) Lista extraída: Obs: no meu for eu uso a função pairsByKeys para iterar, vc precisa adicionar isso aqui na sua lib: Quanto ao tópico, interessante a ideia de fazer onStartup mas isso pode acabar fazendo seu servidor levar mais tempo pra abrir que o normal, por talkaction é mais 'controlado' até porque vc nao vai editar a quantia de monstros no jogo em todo startup então não faz tanto sentido ficar atualizando todo dia.
-
OtClient V8 - Sources
@Camilo Salvadori não é, mas vai servir de estudo pra trazerem as melhorias pro otclient original
-
Nova equipe & Dark Mode!
muito bom, vou dando feedbacks conforme for percebendo. Por agora tá show
-
Nova equipe & Dark Mode!
@Nolis ficou mais agradável, mas ainda tem algumas coisas que ficaram um pouco esquisitas: Spoiler: essa Barra do editor ainda tá mt clara:
-
Nova equipe & Dark Mode!
por alguma razão tem umas partes mais cinzas e outras em preto. As em cinza tão horriveis pra ler os textos brancos: Em contrapartida nas que estão em preto ficou legal:
-
Nolis Show Off
Já são uns 2 ou 3 anos trabalhando com você na equipe e você ainda consegue me surpreender. Como eu te falei no privado, não achava que você conseguiria entregar nada melhor que Amazonia, que ali era o seu auge justamente porque você estava trabalhando com um bioma que é sua zona de conforto (nature/forest) e justamente no bioma extremo oposto (desert) foi que você conseguiu entregar um dos melhores designs de cidade que eu já vi. Dargor é simplesmente fantástica, não só por ser uma cidade muito linda mas por ter todos os elementos de uma cidade real como avenidas principais, vias coletoras e comércio centralizado nos locais de maior fluxo. Se fizer boas hunts em volta garanto que vai virar a queridinha dos high level pro Empire