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
-
Galera é um script muito simples, porém pra mim é muito ÚTIL. Abra a pasta data/globalevents/scripts crie um arquivo .lua com o nome GlobalSave.lua, em seguida adicone o code: function prepareShutdown(minutes) if(minutes <= 0) then doSetGameState(GAMESTATE_SHUTDOWN) return false end if(minutes == 1) then doBroadcastMessage("Server is going down in " .. minutes .. " minute for global save, please log out now!") elseif(minutes <= 3) then doBroadcastMessage("Server is going down in " .. minutes .. " minutes for global save, please log out.") else …
- 28 respostas
- 11.5k visualizações
- 1 follower
-
me confundi só por causa do nome do script alguem porfavor move para actions. Bem pessoal esse era um sistema de lenhador, mas eu dei uma modificada eu transformei ele ne um script de mining, antes de falarem qualquer coisa, eu tive autorização do autor para modificar o script. Nivel Máximo Padrão = 100 - Ganhos Por Nivel- Esse sistema conta com mensagem de avanço de nivel ou seja, você passou do nivel 10 pro 11 mostra o seguinte: "You advanced from level 10 to level 11 in mining." Delay, esse delay(atraso) funciona da seguinte forma, ao quebrar a rocha ela se torna um "destroço de pedra" e ao passar 480 segundos(pode ser modificado) …
- 13 respostas
- 6.7k visualizações
-
Tá ai galera sem muita enrolação, é meu primeiro tutorial, duvidas em relação a poketiba só mandar mensagem que gravo um vídeo explicando. Caso esteja no local errado por favor coloquem no local certo, nunca criei tópico desse tipo.
-
- 2 respostas
- 657 visualizações
-
-
Esse sistema consiste em criar um log .txt em data/logs/trades mostrando quais itens foram passados entre os jogadores dentro do seu servidor! Em data/creaturescripts/scripts/ crie um arquivo .lua chamado: checktrades.lua e dentro coloque: local servers = {[0] = 'server1', [1] = 'server2', [2] = 'server3'} local function getType(item) return (item.type > 0) and item.type or 1 end Log = {} Log.__index = Log function Log.create() local t = {} setmetatable(t, Log) t.file = servers[getConfigValue("worldId")] .. "/" .. os.date("%B-%d-%Y", os.time()) .. ".txt" t.str, t.cstr, t.con = '', '', 0 return t end function Log:write() local f…
-
- 4 respostas
- 1.5k visualizações
-
-
Informações Gerais Nome: Sistema de futebol Autor: Zathao Testado em: The Forgotten Server 0.3.6 Versão Tibia: 8.54 Sistema O sistema se resume em uma partida completa de futebol entre 2 jogadores, sendo controlada por um juiz e apoiada por uma torcida para cada player. Juiz: Da informações referentes ao placar, ao tempo de espera para iniciar o lance e informa quando é gol. Torcida: Apoia os jogadores. Cada jogador tem uma torcida fanática que não para de dar forças, apoiando com isentivos e comemorando loucamente um gol! Ao termino do jogo, o vencedor recebe um troféu com o nome do ganhador e do vencedor! …
- 23 respostas
- 5.9k visualizações
-
Bom galera, estou trazendo um script de fusão que funciona assim: Explicação: É necessário de 7 itens, na qual você coloca em tal coordenada e aperte a alavanca, sendo assim formando um item na qual você deseja em tal lugar configurado. Exemplo: Você pode fazer 7 bosses na qual dropa tals itens "Parecidos" e formando um item raro de sua escolha, ou como preferir.. Vamos ao script! Em Data/Actions/Scripts crie um arquivo chamado fusaoitens.lua e adicione isto dentro: Spoiler function onUse(cid, item, frompos, item2, topos) local cfg = { firstItemId = 2335, -- ID do primeiro item …
-
- 3 respostas
- 2.8k visualizações
-
-
Olá pessoal, dando uma vasculhada nas sources do TFS 1.0 e sabendo que não existe o comando "/reload all", resolvi fazer essa modificação para ajudar a muitos ... É bem simples, abra o arquivo o commands.cpp e procure pela linha: player.sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Reloaded global.lua."); Abaixo adicione os códigos: } else if (tmpParam == "all") { g_actions->reload(); // reload actions g_config.reload(); // reload config reload(); // reload commands g_creatureEvents->reload(); // reload creaturescripts g_moveEvents->reload(); // reload movements Npcs::reload(); // reload npcs Raids::getInstance()->reload(); // rel…
- 9 respostas
- 2.8k visualizações
- 1 follower
-
Yo boyz, cá estou novamente. Eu estava procurando um Addon System funcional e vi que todos tinham bugs, então eu peguei um aqui no fórum mesmo, corrigi os bugs e fiz para que o sistema funcione com fly, ride, surf, look e que o addon suma quando o pokémon evoluir. Também é possível substituir um addon por outro, sem que o pokémon fique com o addon antigo. São muitos arquivos envolvidos, então, se eu esquecer algo e o sistema não esteja 100%, por favor, me fale. Deixei alguns exemplos no código para caso você esteja com preguiça e queira testar, além de comentar como adicionar novos addons. OBS: Eu testei apenas em PDA PokexCyan (TFS 1.0). …
- 8 respostas
- 2.3k visualizações
-
Opah galera.. Tranquilo ?!.. Então, eu criei esse evento para meu WODBO, mas resolvi compartilhar com vocês.. Então, sem mais enrolação, como funciona: 1• O evento é iniciado por um administrador manualmente. 2• O DoubleExp dura X tempo (Determinado pelo administrador) 3• O DoubleExp irá continuar durante o tempo que o player estiver offline, ou seja, irá acabar no tempo determinado pelo administrador. Sem exceções. 4• O administrador irá determinar a quantia de exp dobrada. 5• O evento pode ser cancelado em qualquer momento pelo administrador. 6• O DoubleExp só se aplica aos jogadores online 7• O Ganho de Exp Padrão é alterado para 0.5 8• O…
-
- 7 respostas
- 2.1k visualizações
- 1 follower
-
-
Tudo bem ? Venho trazer um sistema de poketibia que são no caso as roupinhas de Pokémon's Vamos á instalação ? Na parte onde fica actions.xml adicione á seguinte tag : Onde está 1234 vai ser o id do item que vai dar á addon AGORA VOCE VAI ADICIONAR O SCRIPT : Crie um arquivo e renomei para addons.lua abra-o e coloque isso dentro : Spoiler function onUse(cid, item, fromPosition, itemEx, toPosition) local addons = { [xxxx] = {pokemon= "Scyther" , looktype = 510}, --xxxx = id do item do addon --- "Scyther" = nome do pokemon --- looktype = 1 é o looktype do pokemon com …
- 27 respostas
- 7.6k visualizações
-
Olá pessoal tudo bem? Eu tava mexendo numas pastas aqui e achei esse script de boost stone muito simples. Ele boosta seu pokemon mas depois de tantos boost ele pode falhar é um pouco parecido com o do otpokemon. data/actions/scripts/boost stone.lua Tag em data/actions/actions.xml Foi testado em PDA sem level! Bom espero que tenham gostado e bom proveito!
- 18 respostas
- 5.1k visualizações
-
Esse é um script RPG que eu fiz a um bom tempo com base em outro script do global, cuja sua função é remover uma pedra que está em seu caminho, você usa o item na pedra para quebrá-la e ganha uma small stone, e após um certo tempo a pedra volta ao normal, é bem parecido bom a machete, abre caminho para passar, mas nesse caso a pedra pode estar em uma passagem na montanha por exemplo. DATA/Actions/scripts -> rockshovel.lua function onUse(cid, item, fromPosition, itemEx, toPosition) if itemEx.itemid == 1285 then doTransformItem(itemEx.uid, 3610) doDecayItem(itemEx.uid) doPlayerAddItem(cid, 1294, 1) return TRUE end return destroyItem(cid, itemEx, toPosition) end DA…
- 13 respostas
- 2.6k visualizações
-
Em data/talkactions/script Crie um Arquivo com o nome playerchangename.lua Cole isto: Spoiler function doCorrectString(text) if type(text) == "number" then return "" end local str = text:explode(" ") local finish = {} for _, s in ipairs(str) do table.insert(finish, s:sub(1, 1):upper()..s:sub(2, #s):lower()) end return table.concat(finish, (str[2] and " " or "")) end function doKickPlayer(cid) if not isCreature(cid) then return end doRemoveCreature(cid, true) end function onSay(cid, words, param) local maxLen = 20 -- tamanho maximo do nome local itemid = 5958 ------ Numero do Item que será removido local prohibited = {"!","@","*"} -- sim…
- 5 respostas
- 925 visualizações
-
Resumo: Para quem já jogou league of legends, o sistema é "parecido" com o Invite Friends, e para quem não jogou irei dar uma breve descrição sobre o sistema. Descrição: O sistema oferece algumas premiações como: Itens, Premium Days, Premium Points(para site) e Outfits. Claro que isso tudo é configurável. A ideia principal do sistema foi que essas premiações fossem exclusivas do sistema, digamos, que os jogadores só fossem recompensados e tivessem certas outfits se ele atingisse num número "X" de pontos por ter ajudado seu servidor a crescer! Como todo mundo almeja algo exclusivo e difícil de ser obtido, iria instigar os jogadores a usar o sistema e convidar seus …
- 41 respostas
- 4k visualizações
- 1 follower
-
Fala galera do TK, trago hoje a vocês um sistema chamado Bounty Hunters, porém traduzido e pouco modificado. Como funciona? O Player irá executar !hunt, VALOR,NICK Com este comando ele estará oferecendo uma recompensa para que matar o jogador de NICK que ele colocou. Ao player que dar o golpe final no jogador huntado receberá automaticamente o prêmio em sua backpack (Oferecido pelo solicitante do hunted) Sem mimimi vamos ao que interessa: Em data/talkactions/scripts crie um arquivo com o nome de busque.lua e dentro adicione o conteúdo: function onSay(cid, words, param) if(param == "") then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOL…
- 27 respostas
- 4.5k visualizações
- 1 follower
-
Ola tks hoje vou compartilhar 1 sistema de addon para pokemon Va em Actions criei 1 script renomeia para addon e cole isso dentro Em name = o nome do pokemon Nas Barras [] O id do item do addon Oufit = o id da sprite no seu client do pokemon com seu addon ID addon 1 2 3 etc.. Random Todos os numeros dos addons Numerados Depois em Actions.xml coloque a tag Creditos Meus por postar se estiver faltando alguem comente no chat Testado apenas em Pda Obs pókexcyan nao funcionou Comigo
- 16 respostas
- 6.4k visualizações
-
Nos últimos dias tive problemas para ler os dados de funções que retornam tabelas (não tinha acesso a source da função no momento para ir checar quais eram os dados presentes) então resolvi fazer essa função bem simples para printar os dados das tabelas no console. Ela faz basicamente a mesma coisa que a função print_r do PHP só que é um pouquinho menos organizada. Enfim, se souber a estrutura de uma tabela, vai entender o output dessa função e vai ser bem útil. function print_r(tabela) if type(tabela) ~= "table" then return tabela end local result = "{" for ind, x in pairs(tabela) do x = (type(x) == "table") and print_r(x) or x..(ind==#tabela and …
-
- 1 resposta
- 583 visualizações
-
-
Oque a Script faz ? Essa script faz o seguinte: Cria uma animação para staffs com uma frase de sua escolha,e cor. no caso essa é frase 'staff' de cor branca. Vamos ao Script ! Foto: http://joxi.ru/vAWbykxiklKvR2 Em creaturescripts/scripts crie um arquivo: staffeffect.lua Dentro do arquivo cole isto: local t = {access = 3, -- acesso mínimo para sair o efeito text = "STAFF", textcolor = COLOR_ORANGE, effect = CONST_ME_FIREWORK_YELLOW, interval = 10} function onLogin(cid) if getPlayerAccess(cid) >= t.access then SendEffect(cid, t.effect, t.text, t.interval, t.textcolor) end …
- 8 respostas
- 824 visualizações
-
data/movements/Script Crie um Arquivo Chamado tilekill.lua Cola isto Dentro: function onStepIn(cid, item, position, fromPosition) if(not(isPlayer(cid)) and (not(isSummon(cid))) and (not(isNPC(cid)))) or (isMonster(cid) and isSummon(cid) and (not(isPlayer(getCreatureMaster(cid))))) then return false end doCreatureAddHealth(cid, -getCreatureHealth(cid)) doSendMagicEffect(position, CONST_ME_DRAWBLOOD) return true end Em data/movements.xml Adicione isto <movevent type="StepIn" actionid="XXXX,(ID que vai por no Piso)" event="script" value="tilekill.lua"/>
- 2 respostas
- 494 visualizações
-
Fala galera do TK a alguns dias atrás me pediram uma spell que tinha em alguns servidores baiak's e derivados, porém agora que me sobrou um tempinho resolvi fazer rapidamente e compartilhar com a comunidade. É uma magia nova chamada voa frigo que há um dano um pouco maior e uma animação super legal e inovadora =) Vamos ao que interessa! Em spells.xml adicione: <instant name="Absolute Frigo" words="voa frigo" lvl="300" mana="600" prem="1" range="7" needtarget="1" blockwalls="1" exhaustion="1300" groups="1,1500" needlearn="0" script="Absolute Frigo.lua"> <vocation id="2"/> <vocation…
-
- 6 respostas
- 2k visualizações
-
-
preciso de um script que ao morrer player perde X level
- 6 respostas
- 1.9k visualizações
-
Eae Galera Do Tibiaking Bom Esse é o Meu Primeiro Post De Um Conteudo Pra Vocês, Bom Como Esse Sistema Funciona ? O Player Vai Digitar o Comando !fly e em Seguinda ele Fala Fly up Pra Subir Pra Descer é o Fly Down Vá em Data/lib e Crie um Arquivo Chamando 075-fly.lua e Cole Isso Dentro Spoiler FLY_STORAGE = getConfigValue("flyStorage") flyBlackSQM = false nonFlyableBorder = {7576, 7577} changeSpeed = true flySpeed = 800 waterSpeed = 150 ITEM_FLYTILE = 460 ITEM_WATERTILE = 4625 FLY_OUTFIT = {lookType = 239, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0} WATER = {4…
-
- 8 respostas
- 2.8k visualizações
-
-
Bom, esse script limita uma quantidade de MC logados por IP, podendo evitar várias coisas, como por exemplo o magebomb. Basta criar um arquivo em creaturescript/scripts/ com o nome anti-magebomb.lua e coloque esse código dentro: -- <event type="login" name="Anti-Magebomb" script="anti-magebomb.lua"/> local AccPorIp = 2 function onLogin(player) local mc = 0 for _, verificar in ipairs(Game.getPlayers()) do if player:getIp() == verificar:getIp() then mc = mc + 1 if mc > AccPorIp then return false end end end return true end A tag do creaturescript.xml já esta como comentário no script, é só copiar. É isso, espero ter ajudado.
- 12 respostas
- 3.4k visualizações
- 1 follower
-
Olá, galerinha do tibia king vi esse sistema em 1 site e eles estavam vendendo por 9,90 então resolvi fazer e postar de graça primeiramente va em data/talkactions/scripts crie um arquivo chamando wand.lua e coloque isso dentro em talkactions.xml <talkaction words="!wand" event="script" value="wand.lua"/> agora em data/weapons/scripts crie um arquivo e renomeie para wand1.lua e adicione isso dentro: <wand id="xxx" level="50" mana="13" min="0" max="0" type="earth" event="script" value="wand1.lua"> <!-- wand of effects --> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/…
-
- 10 respostas
- 6.1k visualizações
-
-
Fala meus lindos! Há alguns dias diversos servidores grandes como: Shadowcores, Fortera, Dolera, Inflame, Forsaken entre demais proprietários de servidores que conversaram comigo, me disseram o ocorrido e fui investigar o que realmente estava ocorrendo. Um engraçadinho descobriu a FALHA no TFS e estava realizando em todos os servidores pedindo dinheiro para revelar o bug, mas não sabia a solução. Então com permissão, tomei posse a servidor de um cliente INFLAME-GLOBAL para junto com ele ADM Henrique achar o temível bug que causava um crash no servidor, investigamos e ACHAMOS! Então resolvi conversar com meu amigo @Bruno Mine…
- 31 respostas
- 8.4k visualizações
-
Olá rapaziada! Esse é um script bem simples, que consiste em você se healar sempre que bater em um outro player, você pode configurar o script para as vocações que você quiser e quantos % do dano que ele deu ele vai conseguir se curar. \data\creaturescripts\scripts\lifesteal.lua local config = { weapons = { -- [ID] = LIFE STEAL %, [8602] = 10, }, -- Vocations number -- 1, 5 = Druid, Elder Druid -- 2, 6 = Sorcerer, Master Sorcerer -- 3, 7 = Paladin, Royal Paladin -- 4, 8 = Knight, Elite Knight -- others vocations = {4, 8}, } function onLogin(cid) registerCreatureEvent(cid, "LifeSteal") return true…
-
- 13 respostas
- 2.5k visualizações
- 1 follower
-
-
Olá, este é um script que adiciona todas as bless em jogadores que tiverem o level menor que o configurado em creaturescripts/scripts crie um arquivo chamado autoBless.lua e cole isso: local blessings = {1, 2, 3, 4, 5} local level = 150 function onLogin(cid) if getPlayerLevel(cid) <= level then for cont = 1, table.maxn(blessings) do doPlayerAddBlessing(cid, blessings[cont]) end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você recebeu todas as blessings por causa que é nivel menor que "..level.."!") end end em creaturescripts.xml adicione a seguinte tag: <event type="death" name="autoBless…
-
- 9 respostas
- 2k visualizações
- 2 followers
-
-
Olá, hoje eu vim postar a função creature:soltaMagia("nomedamagia") Para o TFS 1.X. Bom, eu estou fazendo um Poketibia com base no TFS 1.3 e vou postar essa função para quem quiser seguir o mesmo. Segue um exemplo de uso: Spoiler function onSay(player, words, param) poke = player:getSummons()[1] poke:soltaMagia(pokes[poke:getName()][1].name) player:say(poke:getName().."use "..pokes[poke:getName()][1].name, TALKTYPE_ORANGE_1) end Em LUASCRIPT.CPP Abaixo de registerMethod("Player", "addExperience", LuaScriptInterface::luaPlayerAddExperience); Adicione: registerMethod("Crea…
-
- 1 resposta
- 860 visualizações
-
-
Olá pessoal, fiz uma pvp arena para meu servidor (alunia) e resolvi postar aqui ... é aquena arena rustica, onde qualquer um entra, e podem se matar lá dentro que não perde nada! Creaturescript: Spoiler -- <!-- PVP Arena --> -- <event type="login" name="Arena-Login" script="pvp_arena.lua"/> -- <event type="logout" name="Arena-Logout" script="pvp_arena.lua"/> -- <event type="preparedeath" name="Arena-Death" script="pvp_arena.lua"/> local exit = Position(125, 31, 9) local storage = 7000 function onLogin(player) if player:getStorageValue(storage) > 0 then player:setStorageValue(storage, 0) end return true end function o…
-
- 2 respostas
- 1.5k visualizações
- 1 follower
-
-
Para quem não sabe como funciona : É um sistema onde o player pode digitar um comando para adicionar ou remover um item ao auto loot,que no caso é para coletar o item automaticamente. • Adicionando o script • Em "data/mods/autoloot.xml" : • Comandos • • Configurando •
- 26 respostas
- 15.1k visualizações
- 1 follower
-
Venho trazer pra vocês npc pra custom map, ou até mesmo global.. o Script foi testado tfs 1.2, mas creio eu que funcione tfs 1.0+ etc. Basicamente ele marca o map com icones. configurável local marks = { {mark = 5, pos = {x = 160, y = 51, z = 7}, desc = "Enigma City Temple"}, {mark = 10, pos = {x = 130, y = 52, z = 7}, desc = "Depot with bank"}, {mark = 13, pos = {x = 146, y = 44, z = 7}, desc = "Food store"}, {mark = 8, pos = {x = 278, y = 236, z = 7}, desc = "Smithery"}, {mark = 8, pos = {x = 130, y = 56, z = 7}, desc = "Distance weapons shop"}, {mark = 13, pos = {x = 268, y = 241, z = 7}, desc = "Jewelry, magic store and mu…
-
- 2 respostas
- 595 visualizações
-
-
Versão: 0.3.6pl1 TFS Função: Adiciona a velocidade de ataque de acordo com uma determinada skill e/ou arma. Aviso: A unidade que usamos aqui é o milissegundo (ms). 1ms = 0,001s 1s = 1000ms Instalação em player.cpp, procure a função: uint32_t Player::getAttackSpeed() e substitua ela inteira por: uint32_t Player::getAttackSpeed() { int32_t weaponAttackSpeed = 0; int32_t minimumAttackSpeed = 500; Item* weapon = getWeapon(); if(weapon && weapon->getAttackSpeed() != 0) weaponAttackSpeed = floor ((int)weapon->getAttackSpeed()); // FORMULA int32_t attackSpeed = vocation->getAttackSpeed() - (getSkill(SKILL_CLUB, SKILL_LEVE…
- 9 respostas
- 3k visualizações
-
Salve carai! Então, tenho estudado um pouco de lua e acabei fazendo um script, simples, mas que pode vir a ser útil para alguns servidores... O que o script faz? É simples, ele te deixa tirar a "pele" de um animal ainda vivo, como a obsidian knife faz com os mortos. PS: Você pode configurar os mobs e suas respectivas "peles" no script, você só precisar tem um mínimo de conhecimento em lua. PS²: Script feito em um TFS 1.2 recém baixado. actions.xml: (PS: Não esqueça de definir o ID do item a ser usado) <action itemid="ID DO ITEM" script="skinning.lua" /> Observação: A Sintaxe em lua nos codes do fórum está aparentement…
-
- 2 respostas
- 606 visualizações
-
-
Salve galera, mais um script para quem está precisando dar aquela limpada no banco de dados e otimizar o Servidor. Crie um script chamado cleandatabase.lua na pasta globalevents/scripts e cole isso dentro dele. -- Especificações -- -- TFS 1.1+ -- Objetivo é limpar as contas inativas/vazias e os players juntamente, assim removendo os usuários que estão inativos e ocupando espaço no banco de dados, isso é útil pela questão do processamento e comunicação do Servidor com o banco de dados, quanto mais clean, mais rápido será as operações. --[[ Clean Database by Cjaker ]]-- local inactiveMonths = 3 local createdMonths = 1 local function clearInactivePlayers() lo…
- 12 respostas
- 2.5k visualizações
- 3 followers
-
Olá a todos do TK, venho aqui disponibilizar o famoso War anti Entrosa que uma "empresa" ai vende. Saliento que o script tem um bug que quando o player morre na cidade da war ele nasce no templo da cidade principal do server e pode voltar para a cidade da war, porém ao digitar o comando /citywar exit dá a mensagem que ele não está em war. A quem conhece programção e puder fixar o bug , todos nós do TK agradecemos> Vou postar o sistema todo, inclusive com mapas e instrução de instalação em formato rar, pois não sei formatar o tópico. Créditos: Não sei o autor, achei na WEB e disponibilizei https://www.sendspace.com/file/2l6id9 Spoiler http…
-
- 7 respostas
- 3.7k visualizações
-
Quem Está Navegando 0
- Nenhum usuário registrado visualizando esta página.