Scripts tfs 0.4 (OLD)
Fórum destinado a conteúdos de desenvolvimento envolvendo o Tibia Clássico.
Encontre pelo tipo de código:
Tópicos nesta seção estão sujeitos a análise e aprovação!
Seu tópico de conteúdo será analisado em até 48h por um membro de nossa equipe, fique atento.
Saiba mais:
1445 tópicos neste fórum
-
Eae, vim trazer outra função também meio inutil function getNumberType(n) return n % 2 == 0 and "par" or "impar" end ela retorna se o número é par ou impar exêmplo de uso: function onSay(cid, words, param) if tonumber(param) then return doPlayerSendTextMessage(cid, 27, "O número " .. tonumber(param) .. " é " .. getNumberType(tonumber(param) .. " .") end return doPlayerSendTextMessage(cid, 28, "Parâmetro incorreto, digite !comando número.") end espero que achêm alguma utilidade.
-
- 0 respostas
- 438 visualizações
-
-
Em Global Events.xml adicione essa tag... agora em Globalevents/scripts crie um arquivo chamado.. e adicione isso dentro do arquivo. dbclean.lua Creditos : Leoprotons 90% Por ter Criado Kalvin Karl 10% Por ter trago para o TK.
-
- 0 respostas
- 463 visualizações
-
-
Eae denovo glr vim trazer um script que é bom para eventos eu acho o adm fla !antipush ai ninguem pode puxar ngm /data/talkactions/scripts nome.lua function onSay(cid, words, param) if getGlobalStorageValue(3213) > 0 then setGlobalStorageValue(3213, 0) doPlayerSendTextMessage(cid, "You desativo the anti-push.") else setGlobalStorageValue(3213, 1) doPlayerSendTextMessage(cid, 27, "You ativo the anti-push.") end return true end talkactions.xml <talkaction log="yes" access="5" words="!antipush" event="script" value="nome.lua"/> /data/creaturescripts/scripts nome.lua function onPush(cid, target) if getGlobalStorageValue…
-
- 0 respostas
- 1.2k visualizações
-
-
Eai Tibianos! Trago Sistema De Compra De Itens Por Talkaction. Índice: Infomações. Tutorial. Creditos. Informação: Tutorial: Creditos: Stigal = 100%
-
- 2 respostas
- 1.5k visualizações
-
-
Eae glr vim aqui trazer outra função meio inutil function getTypesOnTable(t) local ret = {} for _, v in ipairs(t) do table.insert(ret, type(v)) end return ret end local tabela = {"", 2, true} print(getTypesOnTable(tabela)) end string number boolean é isso espero que achem alguma utilidade para ela Valew Oneshot(Lpz) por arrumar.
-
- 0 respostas
- 462 visualizações
-
-
Olá galerinha do TK fiz um script aki à pedido de um amigo meu acho que ja existe um parecido no forum mais sem delongas vamo ao script Primeiramente va em /data/creaturescripts/scripts crie um arquivo com nome de recompenselvl ou um de sua preferencia coloque isso dentro: ou em creaturescripts.xml adcione isso <event type="advance" name="LevelRecompense" event="script" value="recompenselvl.lua"/> na mesma pasta em login.lua adcione essa linha registerCreatureEvent(cid, "LevelRecompense") Explicando em colchetes o level necessario, em itemid o item que ira ganhar, em quant a quantidade em stor o s…
- 10 respostas
- 3.1k visualizações
-
bem eu pensei em tipo wodbo servers de dragon ball z pensei nos raios q sai dos player quando rebornam em transforms especificas saem raios entao pensei nisso e fis esse script tag em data/actions/actions.xml abra e coloque <action itemid="id do seu item aqui" script="player eff.lua" /> em data/actions/scripts copie um arquivo .lua e renomeie para player eff e subistitua tudo q tenha dentro por isso function onUse(cid, item, frompos, item2, topos) for i = 1, 60 do addEvent(function() doSendMagicEffect(getThingPos(cid), 10) end, i*1000) end doRemoveItem(item.uid, 1) end explicando:no lugar "for i = 1, 60 do" o script esta em seg…
- 4 respostas
- 2.3k visualizações
-
data/movements/scripts/Genius.lua: CurrentSteps = {} CurrentSequence = {} PuzzleGeniusConfig = { centerPlayerPos = {x=988,y=985,z=7}, effectsid = { [9562] = {1, 0}, [9563] = {0, 1}, [9564] = {-1, 0}, [9565] = {0, -1} }, appearInterval = 1, disapear = 0.6, backPos = {x=987,y=982,z=7}, rewardPos = {x=995,y=988,z=6}, roundTimes = 100, } CurrentSequence = {} PuzzleGenius = {} function randomIndexFromTable(tab) local tb = {} for i,x in pairs(tab) do table.insert(tb, i) end return tb[math.random(1, #tb)] end function tileEffect(tileid, pos, int) l…
-
- 4 respostas
- 990 visualizações
-
-
Eae Fmz? O titulo ja diz tudo então vamos la. Add isso em creaturescripts/scripts/login.lua: Crie um novo arquivo.lua com o nome que voce quiser em spells/scripts/Nome.lua: Add isso em spells/spells.xml: Finish Creditos : cbrm ea min Lano por ter postado no Tk
-
- 2 respostas
- 971 visualizações
-
-
Atualizado V1.0: Mostra últimas mortes do servidor: você pode usar o comando !deathlist NOME ex: !deathlist Carlin: in your db execute this query: CREATE TABLE death_list ( id INTEGER NOT NULL, player_id INTEGER NOT NULL, date INTEGER NOT NULL, level INTEGER NOT NULL, killer_name INTEGER NOT NULL, PRIMARY KEY ( id ) ); creaturescript death_list.lua function onDeath(cid, corpse, deathList) local str = "" for _, pid in ipairs(deathList) do if isCreature(pid) == true then str = str.."".. (str == "" and "" or ",") ..""..getCreatureName(pid) else str = str..""…
- 11 respostas
- 2.1k visualizações
- 1 follower
-
Fala ai galerinha do TK, tudo bem com vocês ? Bom, eu ja vi em muitos ots que baixei, o treiner andar apos agnt sair do treiner, vamo supor, tem o tile que agnt ta treiner, ai tem um treiner na diagonal direita e um na esquerda, e logo apos agnt sair do treiner, 1 desses treiner dece, e vai para onde agnt fica, trapando a entrada, e só volta quando o sv desliga. Vou ensinar voces a como arrumar isso. Abra a pasta do seu treiner, e provavelmente deve estar assim: <?xml version="1.0" encoding="UTF-8"?> <monster name="Treiner Monk" nameDescription="a dark monk" race="blood" experience="120" speed="360" manacost="0"> <health now="…
-
- 3 respostas
- 960 visualizações
-
-
Fiz o script para bloquear hackers, ex.: 1. Você baixa um servidor com um bug que o player clica numa pedra e ganha GOD, mas você não sabe onde ta essa pedra. 2. Algum hacker invade sua database, se tiver senhas com sha1 e ele for noob, não vai saber trocar para plain, então vai mudar seu group para 6 (GOD). Resumindo, se o player tiver CM ou GOD, ele não vai entrar sem sua permissão. Em data/creaturescripts/creaturescripts.xml adicione isso: <event type="login" name="AntiHack" event="script" value="antihack.lua"/> Em data/creaturescripts/scripts crie um arquivo com o nome de antihack.lua e adicione isso nele: function onLogin(cid) …
-
- 4 respostas
- 3k visualizações
-
-
Sistema de SHOP para quem nao usa website bom para baiak que usam account manager Testado em TFS 0.3.6 e TFS 0.4 Functions: getAccountPoints(cid) doAddPoints(cid, points) doRemovePoints(cid, points) Scripts: vá para data/lib/ e abra function.lua e adicione essas funcoes: getAccountPoints: function getAccountPoints ( cid ) local Info = db . getResult ( "SELECT `premium_points` FROM `accounts` WHERE `id` = " .. getPlayerAccountId ( cid ) .. " LIMIT 1" ) if Info : getID () ~= LUA_ERROR then local Points = Info : getDataInt ( "premium_points" ) Info : free () return Points end …
-
- 3 respostas
- 801 visualizações
-
-
function getServerCash() local cash = 0 for _, pid in ipairs(getPlayersOnline()) do cash = cash + getPlayerMoney(pid) + getPlayerBalance(pid) end return cash end retorna a grana do sv exemplo function onSay(cid, words, param) return doPlayerSendTextMessage(cid, 27, "O servidor " .. getConfigValue(serverName) .. " tem " .. getServerCash() .. " gp's atualmente.") end
-
- 2 respostas
- 572 visualizações
-
-
São funções para retornar quantos slots livres a Bp ou as BP possui. function getContainerSlotsFree(container) -- by vodka return getContainerCap(container)-getContainerSize(container) end function getAllContainerFree(container) -- by vodka local containers,soma = {},0 for i = 0, getContainerSize(container)-1 do local item = getContainerItem(container, i) if isContainer(item.uid) then table.insert(containers, item.uid) end end for _, check in pairs(containers) do soma = soma + getContainerSlotsFree(check) end return (soma + getContainerSlotsFree(container)) end exemplo de talks 1° function onSay(cid, words, param) local item = getCon…
-
- 0 respostas
- 419 visualizações
-
-
Função só para retornar "o" ou "os" maiores números de uma tabela TableHighValue = function(n) table.sort(n, function(x, y) return x > y end) return n end exemplo de uso local tabble = {10,12,40,100,7,50,200} print(TableHighValue(tabble)[1]) retorna -> 200 que é o maior número da tabela ou local tabble = {10,12,40,100,7,50,200} for i = 1,#TableHighValue(tabble) do print(TableHighValue(tabble)[i]) end retorna todos os números da tabela em forma descrecente: 200 100 50 40 12 10 7 abraços
-
- 0 respostas
- 374 visualizações
-
-
Eae galera do TK vim aqui trazer 2 scripts meu de !buypremium vamos ao primeiro script primeiramente va em talkactions.xml e adcione essa tag <talkaction words="!buypremium" event="script" value="buypremium.lua"/> depois vá em /data/talkactions/scripts cria um arquivo buypremium e adcione isso dentro Como funciona você fala !buypremium 5 compra 5 dias de premium por 100 gps cada um preço editavel no script Vamos ao segundo script de buypremium em talkactions.xml adcione essa tag: <talkaction words="!buypremium" event="script" value="buypremium.lua"/> em /data/talkactions/scripts cria um arquivo e renomeie para buypremiu…
- 5 respostas
- 2.2k visualizações
-
Olá, trago minha primeira spell Ice Penitence! vá em /data/spells/scripts/attack crie um arquivo e renomeie para IcePen.lua e adicione isso dentro function onCastSpell(cid, var) local pos1 = {x = getPlayerPosition(getCreatureTarget(cid)).x - 2, y = getPlayerPosition(getCreatureTarget(cid)).y , z = getPlayerPosition(getCreatureTarget(cid)).z} local pos2 = {x = getPlayerPosition(getCreatureTarget(cid)).x + 2, y = getPlayerPosition(getCreatureTarget(cid)).y , z = getPlayerPosition(getCreatureTarget(cid)).z} local pos3 = {x = getPlayerPosition(cid).x + 2, y = getPlayerPosition(cid).y , z = getPlayerPosition(cid).z} local pos4 = {x = getPlayerPosition(…
-
- 0 respostas
- 1.1k visualizações
-
-
Bom galera eu meu primeiro post nao sei se esta na area correta mas se não estiver movam por favor! Estou Postando Scripts de pokemons shiny modificados por min do m1 ao m8! Pokemons: shiny blastoise shiny butterfree shiny dratini Shiny Electabuzz shiny electrode shiny farfetchd Entre muitos outros espero que gosten poden me add no msn joaovictorbona123@hotmail.com Download > Clike Aki
-
- 8 respostas
- 1.9k visualizações
-
-
Olá, galerinha do TibiaKing essa é minha primeira função *-* function getNumeroInAlfabeto(letra) local T = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"} for x, i in ipairs(T) do if tostring(i) == tostring(letra) then return x end end end Exemplo de print: É isso até mais. Créditos: Eu Vodkart( arrumou a talk e uma parte da função ) Exemplo de uso:
-
- 1 resposta
- 533 visualizações
-
-
Nome: simDamage(level, attackSkill, attackValue, attackFactor) Autor: Lpz Tipo: Função Lua Informações: Bom, essa é uma função que nome já diz o que ela faz, ela simula o dano máximo corpo-a-corpo baseado na fórmula que o projeto The Forgotten Server 0.4_DEV usa. Ela é muito útil no caso de você querer balancear as vocações do servidor. Para instalar essa função em seu servidor, abra o arquivo 050-functions.lua localizado em data/lib e, no fim do arquivo, cole este conteúdo: function simDamage(level, attackSkill, attackValue, attackFactor) factor = { [0] = 0.5, [1] = 0.75, [2] = 1 } attackFactor = factor[attackFactor] or 0.75 …
-
- 2 respostas
- 875 visualizações
-
-
Na função setCombatParam() da sua spell coloque um dos numeros descritos nas fotos para mudar o efeito a distância da magia. Exemplo: setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 0) No caso quando a spell for ativada vai voar uma 'Spear' no target. E so mudar o '0' para os numeros descritos nas fotos (: , quem utilizar as imagens para facilitar a visuazação não deixe de agradecer meus dedo ta doendo de tirar foto OEIWHOIWEH Tem que clicar nas imagem (: vai da pra enchergar
-
- 2 respostas
- 1.9k visualizações
-
-
Olá, galerinha do Tibia King vim trazer outra função function getPlayersInLevel(level) local x = {} for _, pid in ipairs(getPlayersOnline()) do if getPlayerLevel(pid) == tonumber(level) then table.insert(level, pid) end end return x end exemplo de uso function onSay(cid, words, param) if tonumber(param) then doPlayerSendTextMessage(cid, 27, "Tem " .. #getPlayersInLevel(tonumber(param)) .. " player's no level " .. tonumber(param) .. ".") return true end return doPlayerSendTextMessage(cid, 28, "Digite !comando é um número válido.") end espero que gostem
-
- 0 respostas
- 525 visualizações
-
-
Iae galera hoje venho trazer um script que não dropa loot como um aol so que sem precisar usar amuleto e também não e uma bless então vamos la Em data / talkactions / scripts / e renome algum arquivo.lua para loot e adicione function onSay(cid, words, param) local config = { price = 1000 -- quanto vai ser o not drop loot } if doPlayerRemoveMoney(cid,config.price) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Desculpe Você Não Tem Dinheiro Suficiente") return true end if doCreatureSetDropLoot(cid, false) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabéns Você Comprou Not Drop Loot") return true end i…
- 3 respostas
- 1.9k visualizações
-
Olá galerinha do tibia king, vim trazer um script de level recover primeiramente vá em /data/talkactions/scripts crie um arquivo chamado createRecover.lua e adicione isso dentro agora crie outro chamado recover.lua e adicione isso dentro Talkactions.xml <talkaction words="!createrecover" access="0" event="script" value="createRecover.lua"/> <talkaction words="!recover" access="0" event="script" value="recover.lua"/> agora em /data/creaturescripts/scripts crie um arquivo chamado loginRecover.lua e adicione isso dentro <event type="login" name="recoverLogin" event="script" value="recoverLogin.lua"/> <e…
-
- 3 respostas
- 803 visualizações
-
-
Script retirado. By ~ Thiagobji.
- 7 respostas
- 1.7k visualizações
-
OWNED! O Que Este Script Faz? Ao matar um player, aparecerá uma mensagem em cima do corpo com efeito de animação com o seguinte texto: OWNED! Bom, vamos ao SCRIPT: Vá em data/creaturescripts/scripts/preparedeath.lua e coloque isso: OBS:Se ele nao existir voce cria, mas se existir eu recomendo trokar no nome do script.lua e no login.lua registrar o evento com outro nome. Vá em data/creaturescripts/creaturescripts.xml e ABAIXO desta Tag: <event type="login" name="PlayerLogin" script="login.lua"/> ADICIONE ESTA: <event type="preparedeath" name="onPrepareDeath" event="script" value="preparedeath.l…
-
- 3 respostas
- 2.4k visualizações
-
-
Sei que é dois scripts insignificantes, ja deve ter aqui seila, mais eu fiz pro meu ot e vo deixar aqui se alguem precisar. primeiro vai em talkactions/scripts crie um arquivo .lua e renomeio para soft (soft.lua) e adicione isso dentro: function onSay(cid, words, param) if getPlayerItemCount(cid,10021) >= 1 then if getPlayerItemCount(cid,2160) >= 5 then doPlayerRemoveItem(cid, 10021,1) doPlayerRemoveItem(cid, 2160,5) doPlayerAddItem(cid, 6132,1) doPlayerSendTextMessage(cid, 18, "You repaired soft for 50k!") doSendMagicEffect(getCreaturePosition(cid),29) else doPlayerSendTextMessage(cid, 18, "You need 50k for repair soft…
- 8 respostas
- 2.4k visualizações
-
Ola Tibianos e Poketibianos, Venho Trazer Npc Por Tempo... Abra o arquivo: data > globalevents > globalevents.xml Adicione nele a seguinte linha: <globalevent name="npc" interval="3600" event="script" value="npc.lua"/> Crie o arquivo npc.lua dentro da pasta: data\globalevents\scripts e adicione esse codigo: function onThink(interval, lastExecution, thinkInterval) local pos = {x=1054,y=913,z=7} -- Local onde aparece o npc local npc = doCreateNpc("dalk", pos ) -- Altere o (dalk) pelo nome do seu npc. local nMin = 20 -- tempo em minuto para o npc sumir. addEvent(doRemoveCreature, nMin*60*1000, npc) return true end Depois dis…
-
- 3 respostas
- 1.2k visualizações
-
-
Script: Comando Mute (Atualisado). Função: Deixar o "Player" Mudo Pelo Tempo Que Desejar. Testado: Versão 8.5 Vá Em "Talkactions > Script" Crie Um Arquivo.lua Nomado Como "muteplayer" e Adicione Dentro Dele: local v = {} for k = 1, 100 do table.insert(v, createConditionObject(CONDITION_MUTED)) setConditionParam(v[k], CONDITION_PARAM_TICKS, k*60*1000) end function onSay(cid, words, param) if (words == "/mute") then local t = string.explode(param, ",") if param == '' then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player,time,pid = getPlayerByName(t[1]),t[2],getPlayerByNameW…
- 3 respostas
- 3.6k visualizações
-
Iae galera !! hoje trago um script muito interessante adicionar premium por action ao dar use num item e comprar o item por 1 buyitem então vamos la va em data / talkactions / scripts / e ponha o nome de algum arquivo para premium e ponha isto la dentro function onSay(cid, words, param) local itens = { ["santa doll"] = {id = 6567, preco = 2000, count = 1 }, ["teddy bear"] = {id = 6568, preco = 1000, count = 1 }, ["jester doll"] = {id = 9663, preco = 500, count = 1 } } local param = string.lower(param) if (param == "lista") then local str = "" str = str .. "itens :\n\n" for name, preco in pairs(itens) do str = str..name.."\n" end …
-
- 5 respostas
- 698 visualizações
-
-
Iae , galera hoje trago um script meio diferente Um De Evento De Labirinto Irei Explicar O Evento Pra Quem Nao Sabe agora vamos ao script va em data / movements / scripts / ponha o nome de algum arquivo para labirinto.lua e adicione la function onStepIn(cid, item, pos) pos ={x=160, y=54, z=7} -- pos que o player vai voltar se n for lvl 50 if isPlayer(cid) then if getPlayerLevel(cid) == 40 then -- ponha o numero que vai passar pelo piso doTeleportThing(cid,pos) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Nao E Lvl 40") end return true end end dps em movements.xml <movevent type="St…
- 2 respostas
- 1k visualizações
-
#Introdução Este é um sistema de rouba bandeira, no qual tem dois times, que se enfrentam e tentam se infiltrar na fortaleza do inimigo, roubar a bandeira dele e retornar para sua base com ela. ScreenShots: #Instalação Primeiro faça o download do sistema e cole na sua pasta data. Download: http://adf.ly/BThUG Após ter instalado os arquivos nas suas respectivas pastas abra a pasta do seu servidor, e em seguida abra a pastaspells/scripts/support, e abra o arquivoinvisible.lua com algum editor de texto, depois de Código: function onCastSpell(cid, var) cole isso: Código: if (getPlayerStorageValue(cid, _CTF_LIB.teamssto…
-
- 1 resposta
- 2.5k visualizações
-
-
Como funciona? Bounty System é um script que visa o pvp. Um player diz o comando /bounty [prize],[nick]. e a partir daí o player que foi colocado em [nick] passa a ser procurado, e o primeiro a matá-lo ganha uma recompensa. Vamos lá... Execute os comandos em seu PhpMyAdmin: Vá em data/creaturescripts/scripts/,e crie um arquivo bounty.lua e cole isto: Vá em data/creaturescripts/scripts/ e coloque isto em login.lua : Vá em data/talkactions/scripts/ e crie um arquivo tbounty.lua Vá em data/talkactions/talkactions.xml e coloque: Pronto!!! Demonstração: …
-
- 0 respostas
- 3.1k visualizações
-
-
Envia o item diretamente no depot do jogador. function doPlayerAddDepotItems(cid, items, town) if (not isPlayer(cid)) then error("Player not found") end local town = town or getPlayerTown(cid) local parcel = doCreateItemEx(ITEM_PARCEL) for item, count in pairs(items) do if (type(item) == "number") then doAddContainerItem(parcel, item, count) elseif (type(item) == "string") then doAddContainerItem(parcel, getItemIdByName(item), count) else error("Undefinied type of item name") end end return doPlayerSendMailByName(getCreatureName(cid), parcel, town) end Como usar function onSay(cid, words, param, channel) if…
-
- 0 respostas
- 542 visualizações
-
Quem Está Navegando 0
- Nenhum usuário registrado visualizando esta página.