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
-
Introdução: O script serve para você mandar broadcast message para determinado player em vez de ser para todo o ot. Vá em \data\talkactions\scripts, crie o arquivo broadcastprivate.lua: function onSay(cid, words, param) t = string.explode(param, ",") if not t[2] then doPlayerSendCancel(cid, "Opa! Comando errado.") elseif not getPlayerByName(t[1]) then doPlayerSendCancel(cid, "Esse player não está online.") end doPlayerSendTextMessage(getPlayerByName(t[1]), MESSAGE_STATUS_WARNING, t[2]) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Mensagem enviada para "..getCreatureName(getPlayerByName(t[1]))..".") return true end Em \data\talkactions, abra talkactio…
-
- 1 resposta
- 560 visualizações
-
-
é um script que muda de mapa a cada X horas(ou minutos) na pasta mods crie um arquivo.xml e renomeie para ChangeMap.xml <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="ChangeMap" version="2.0" author="Vodkart" contact="none.com" enabled="yes"> <config name="map_func"><![CDATA[ info = { [0] = 1, [1] = 3, [2] = 4 } storage = 789520 ]]></config> <event type="login" name="Check Map" event="script"><![CDATA[ domodlib('map_func') function onLogin(cid) if getGlobalStorageValue(storage) == -1 then setGlobalStorageValue(storage, 0) end doTeleportThing(cid, getTownTemplePosition(info[getGlobalStorageValue…
- 6 respostas
- 2.2k visualizações
-
Hiho Guys estou disponibilizando um script muito antigo meu creio que nem faço mais isso postei em outro fórum quando fiz e pelo que procurei aqui ninguém Ripo, essa é a nova versão da máquina de summon. Agora ela está 100% igual ao RadBR. A mudança foi que agora você pode usar 4 items e cada um tem a chance de sumonar um de 4 monstros e tudo isso na mesma alavanca. Requisitos: Conhecimento básico para instalação; Download da sala; (opicional) Download: MaqSummon.otbm (4SHARED) DOWNLOAD SCAN FOTO Vá em data/actions/scripts e crie um arquivo chamado MaqSummon.lua e adicione o seguinte dentro: function onUse(cid, item, fromPos, itemEx, toPos) -- [[INICIO CONFIG …
-
- 0 respostas
- 726 visualizações
-
-
Nome: Married System Versão: 8.70 Executavel testado: Crystal server V1.0 Bem, esse script eu fiz no meu projeto, arrumei ele completo para funcionar perfeitamente sem nenhum bug no 8.70, claro que consegui. Em data/npc crie um arquivo .xml e adicione: <?xml version="1.0" encoding="UTF-8"?> <npc name="Priest" script="data/npc/scripts/NOME_SCRIPT_NO_LUA.lua" walkinterval="0" floorchange="0"> <health now="200" max="200"/> <look type="57" head="20" body="30" legs="40" feet="50"/> </npc> Agora em data/npc/scripts crie um arquivo .lua e adicione: local keywordHandler = KeywordHandler:new(…
- 8 respostas
- 2.5k visualizações
-
Fala galera, hoje vim trazer um script bem simples que eu criei faz um tempo mas vejo que muita gente procura algo do gênero e não encontra então decidi postar. Explicação: É um script de uma spell semelhante às poções do League of Legends, você usa e ela fica recuperando vida por um tempo. Realmente muito útil quando você está caçando e não quer ficar usando exura toda hora. Por ser bem simples eu vou deixar as explicações dentro do próprio script: local config = { cooldown = 15, -- tempo entre uma magia e outra tempo = 10, -- tempo em segundos que ficará healando percent = 5, --- porcentagem da vida que cura storage = 45382, effect = 12 --- efeito que vai sair } …
- 25 respostas
- 3.8k visualizações
- 3 followers
-
Ola, estava conversando com meu amigo vodkart, e ele me falou que era mod aqui no tibiaking então resolvi vim pro forum! Como de custume quando sou novo no forum gosto de entrar apresentando algum script, estava sem ideia e sem tempo então fiz esse bem rapido e um script noob mais ta valendo! O player so ira ganhar 1 item, so ira ganhar outro se o servidor cair cada player ganha 1 item apenas! Data/Creaturescript/Crie um arquivo lua com qualqer nome e adicione: monster = { ["Nomedomonstro"] = {itemid = ID_DO_ITEM, count = QUANTIDADE_DE_ITEM} } function onKill(cid, target, lastHit) if monster[getCreatureName(target)] then monster = monster …
-
- 0 respostas
- 1.5k visualizações
-
-
Eis que trago mais uma função à biblioteca matemática de Lua, a math.percent. Sendo objetivo, ela calcula o percentual de um valor numérico, independentemente desse valor ser um inteiro ou decimal. math.percent = function (value, percentage) -- Developed by Wise ~ TibiaKing.com return tonumber(value) and tonumber(percentage) and math.abs(tonumber(string.format('%.f', tostring(percentage * (value/100))))) or nil end Exemplo de um cálculo: Mensagem maldita "Você atingiu 80% da sua franquia diária de 30MB. Ao atingir 100%, sua navegação será bloqueada." E agora, brother? Quantos MB eu usei? math.percent(30, 80) -- (valor númerico, %) 24 Enfim, se…
- 5 respostas
- 987 visualizações
-
-
Pensei em fazer esta função há um tempo. Alguns membros, que também programam, tentaram desenvolve-la quando comentei sobre ela em um grupo do skype. math.round reconhece, automaticamente, se o número é um inteiro ou decimal e o arredonda para cima ou para baixo, seguindo a condição >= ou < do que 5, respectivamente. Eu preferi fazer para que o arredondamento sempre resulte em um inteiro não-negativo e não-nulo. Ao meu ver, a função tem mais utilidade desse modo e, já que o resultado de n segue essa regra, não é possível utilizar números negativos ou nulos. Se utilizados, nil é retornado. Sem mais delongas, adicione a qualquer arquivo com extensão Lua da library…
-
- 2 respostas
- 557 visualizações
-
-
Como funciona? O meu código faz o seguinte, ele registra a quantidade de players online em tal hora no dia (configurável) em um bloco de notas.. Para que eu vou usar isso? Ai vai da sua criatividade, eu mesmo uso para identificar quais são os horários de picos e também para saber se tem um crescimento de players ao passar dos dias. Aqui vai um exemplo de como ele registra os players: http://prntscr.com/2vb4zt Vamos ao script: Em globalevents.xml coloque essa tag: <globalevent name="Monitor_Online" interval="60000" event="script" value="monitoronline.lua"/> Em interval se o seu tfs não for 0.4, coloque 60 Agora na pasta scripts crie um arquiv…
-
- 2 respostas
- 1k visualizações
-
-
Oi. Antes de tudo, este sistema foi escrito para o servidor PDA by Slicer, versão 1.9. A adaptação para outras bases pode ser bem simples, dependendo do seu conhecimento em Lua (que na verdade nem precisa ser grande). Resolvi escrever este simples sistema porque me deu um certo desgosto ver vários servidores onde a mega evolução é literalmente uma evolução (inclusive o que estive jogando, onde alguns jogadores também concordaram com minha opinião). Quero dizer, o pokémon fica transformado direto, para sempre, forever, algo que contraria a ideia original. Optei por fazer o sistema igual (ou semelhante, já que me baseei apenas nas informações disponíveis no …
-
- 10 respostas
- 4.7k visualizações
-
-
Hoje eu vim trazer um sistema de mega evolução (v1.0) Em data/actions/scripts crie uma pasta chamada Megas Lá dentro crie um Arquivo chamado CharizardX.lua e cole dentro: local level = LVL local megaout = Outfit Mega local vida = 10000 local megaeffe = Effect Mega local meganame = "Mega Charizard X" --Nome do pokémon evoluido, no Caso Mega Charizard X local megadesc = "Um Charizard em sua forma superior" -- Descrição local megaoldname = "Charizard" --Nome do Pokémon, no caso Charizard function onUse(cid, item, frompos, item2, topos) if not isMonster(item2.uid) or not isSummon(item2.uid) or #getCreatureSummons(cid) > 1 then return true end if getPokemonLeve…
-
- 11 respostas
- 2.9k visualizações
- 1 follower
-
-
Introdução: Aparecer uma mensagem no Broadcast quando player atingisse x level. Créditos: LuckOake Crie um arquivo chamado broadcastlevel.lua em creaturescripts\scripts function isInteger(n) return math.floor(n) == n and true or false end function onAdvance(cid, skill, oldLevel, newLevel) if isInteger(newLevel/100) then broadcastMessage("O jogador "..getCreatureName(cid).." atingiu o level "..newLevel..".") end return true end login.lua (antes do último return true): registerCreatureEvent(cid, "BroadcastLevel") creaturescripts.xml: <event type="advance" name="BroadcastLevel" script="broadcastlevel.lua"/> Abraços!
-
- 2 respostas
- 917 visualizações
-
-
Eaii Galerinha, hj estou trazendo pra vcs um script bem comum mais bem útil para servidores que querem explicar tudo para o jogador quando ele entra pela primeira vez, esse script foi feito por um amigo de outro forum ele é iniciante ainda. Muitos vão falar que da para fazer pelo Login.Lua creaturescripts/scripts/firstmessage.lua function onLogin(cid) local storage = 2522 if getPlayerStorageValue(cid, storage) == -1 then doPlayerSendTextMessage(cid, 22, "Hello "..getPlayerName(cid).." this is your first visit to YOURSERVNAME. go kill some rotworms until level 20 then go to cyclops!") setPlayerStorageValue(cid, storage, 1) else doPlayerSendTextMessage(cid, 22, "Welc…
- 6 respostas
- 2.1k visualizações
- 1 follower
-
Meteor Rain Criado por Lpz, flwflw! Testado em The Forgotten Server 0.3.6 Fala aê, manolagem. Estava eu aqui, brincando com o Pesquisar do computador, quando achei esse arquivo milenar no meu computador. É uma magia, que um dia eu criei me baseando num servidor que nunca saiu. Kingdom Age, falo mermo Bom, sem mais enrolação, tá aê. INSTALANDO 1. Crie um arquivo chamado meteor rain.lua na pasta data/spells/scripts. local spellConfig = { {effect = CONST_ME_FIREATTACK, area = createCombatArea({ {1, 0, 1}, {0, 2, 0}, {0, 1, 0}}) }, {effect = CONST_ME_FIREAREA, area = createCombatArea({ {0, 1, 0, 0, 0}, …
-
- 7 respostas
- 2.8k visualizações
-
-
Preview Script data/spells/spells.xml <instant name="Mind Poison" words="exana tera" lvl="60" mana="200" prem="1" exhaustion="2000" selftarget="1" needlearn="0" script="attack/mind poison.lua"/> data/spells/scripts/mind poison.lua local acombat1 = createCombatObject() local acombat2 = createCombatObject() local acombat3 = createCombatObject() local acombat4 = createCombatObject() local acombat5 = createCombatObject() local acombat6 = createCombatObject() local acombat7 = createCombatObject() local acombat8 = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)…
-
- 0 respostas
- 704 visualizações
-
-
Olá TK Fans. Vá na pasta data/actions/script, copie e cole um arquivo e renomeie para mineracao.lua em seguida apague tudo o que está dentre e cole isso : Spoiler local chance = { chance_gold = 30, -- chance de 1 a 100 para conseguir o item (Quanto menor o numero mais dificil) chance_platinum = 15, -- chance de 1 a 100 para conseguir o item (Quanto menor o numero mais dificil) chance_crystal = 5 -- chance de 1 a 100 para conseguir o item (Quanto menor o numero mais dificil) } local itens = { interval = 20, -- Intervalo para ser criada a pedra em SEGUNDOS.. reward_1 = 2148, -- recompensa 1 reward…
- 5 respostas
- 1k visualizações
- 1 follower
-
Hoje vou trazer um script que desenvolvi com ajuda de todos aqui do fórum, é meu primeiro tutorial e espero não estar fazendo nada de errado. O script é bem simples, mas funciona sem erros, pelo menos aqui. O que faz? -Você usa uma ferramenta para minerar em determinada pedra, de acordo com as chances você consegue extrair dela um minério como "iron ore" por exemplo. Lembrando que o item que você vai usar para minerar, tem de ser um item que você pode usar em outros, como a pick, shovel e outros... Utilidade? -Vai depender de você, em servidores com sistema de forja pode ser interessante, que é o meu caso. Script Em data/actions/scripts/ crie um ar…
- 5 respostas
- 4.2k visualizações
-
NPC Mission Servidor testado: TFS Autor: kawon Primeiro crie um arquivo npc_mission.xml dentro da pasta data/npc/. E coloque isso: Em seguida crie um arquivo mission.lua na pasta /data/npc/scripts/ E adicione isso: Transcrições: PLAYER: hi NPC: Hello |PLAYERNAME|. You can started 'quest'? PLAYER: quest NPC: Ok, you can started "first mission"? PLAYER: first mission NPC: Please bring me 10 "meat" PLAYER: meat When player finish this mission NPC: You finished this mission. When player do first once NPC: Thank you! You can started "second mission".. (you received 1000 points of experience) …
-
- 0 respostas
- 752 visualizações
-
-
Bom Fiz uma modificações no script desse evento pra funcionar em TFS 1.0. É um evento muito legal pra por no servidor. Você faz um duelo de Summons Aleatorios, no qual o nivel do player não intervem. Somente o poder dos monstros mesmo. Bem aqui esta os Scripts: OBS.: Criem monstros que possam ser sumonados. Action.xml O id você poe na Alavanca que levara a arena. Mude o item de recompensa e a quantidade de acordo com sua vontade. monsterarena.lua creaturescripts.xml monsterarenadeath.lua Imagens: Alavanca você poe o id que escolhe no actions.xml Os Dois Players sobem nos pisos e acionam a alavanca, o duelo começa. Quando o monstro morrer, os dois players são te…
-
A pedido do usuário Vyctor17 (da OTBR) fiz uma função para multiplicar o dano dos monstros: Primeiro, em luascripts.cpp deverá ser adicionado, logo após: registerMethod("Monster", "isMonster", LuaScriptInterface::luaMonsterIsMonster); Isso: registerMethod("Monster", "multiplyDamage", LuaScriptInterface::luaMonsterMultiplyDamage); Logo abaixo de: int32_t LuaScriptInterface::luaMonsterIsMonster(lua_State* L) { // monster:isMonster() const Monster* monster = getUserdata<const Monster>(L, 1); pushBoolean(L, monster != nullptr); return 1; } Isso: int32_t LuaScriptInterface::luaMonsterMultiplyDamage(lua_State* L) { //…
-
- 2 respostas
- 610 visualizações
-
-
Meu primeiro post no tibiaking... Monsters Link: http://www.mediafire...8jf73nb64px7qw0 Npcs Link: http://www.mediafire...at2h2uomw0rqb2s SCAN: https://www.virustotal.com/pt-br/file/5f85b67db83647237bcb5971c7eb42f1919332623b0a53fed57a70d2cf37c8d8/analysis/1361193436/ Montado por min... Espero ter ajudado
-
- 3 respostas
- 997 visualizações
-
-
Monstro morre e aparece teleport! TFS 1.0 1º - Vai na pasta creaturescripts e add isso quer está aqui em baixo. 2º - Na pasta creaturescripts vai em scripts copia e colar qual quer arquivo .lua e depois renomeá para tpmonster depois bota isso quer está aqui em baixo no tpmonster.lua Tutorial COR: LIME = Nome do Mostro RED = A onde vai fica o portal Verde = Para onde o players vai 3º - Agora vai na pastar monster procura o bicho quer você vai por e adicionar isso quer está aqui em baixo antes do </monster> da pasta lua do bicho. Só isso qual quer duvida ou report só avisar aqui, espero quer eu acho quer eu aju…
-
- 8 respostas
- 2.9k visualizações
- 1 follower
-
-
Screenshot Como se usa Use !exp nomedomonstro E então aparecerá: Instalando monster.lua function onSay(cid, words, param, channel) local exp = getConfigValue('rateExperience') local time = 60 -- EM SEGUNDOS if param == "" then doPlayerSendCancel(cid, "Param Needed(For Ex:!exp rotworm)") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) return true end if not getMonsterInfo(param) then doPlayerSendCancel(cid, "Monster Name Is Incorrect") return true end if exhaustion.check(cid, 1023) then doPlayerSendCancel(cid, "You Need To Wait "..math.floor(exh…
-
- 2 respostas
- 1k visualizações
-
-
Bom galera, encontrei esse conteúdo na Internet e resolvi trazer pra voces. Looktype 100% Loots 97% Corpses 100% (TFS Items.otb) Hits 90% http://www.mediafire.com/?d99z3wtxj8bxm65 Créditos: Alisson
-
- 3 respostas
- 707 visualizações
-
-
Atualização de Monstros e Items. Estarei atualizando essa lista conforme eu for mudando meus items, e monstros.(a antiga estava bem cagada). Estou usando como fonte o tibiawiki, e o wikia, porém algumas criaturas não tem os detalhes certos, como ataque, loot. E outras usam script, a parte de level(movements), de quem ou oque vai usar o item, não irei postar pois cada pessoa acha melhor como vai usar esse items, deixarei um download e sua respectiva scan no final do tópico, se encontrarem algo errado e só dizer que arrumo, e claro se quiserem contribuir com algo que ainda não tenha... A p…
- 15 respostas
- 3.5k visualizações
-
Boa noite! Requerido TFS 1.x http://www.tibiaking.com/forum/topic/60768-monster-onselecttargetself-target/ Segue dois códigos de monstro passivo: Monstro que ataca ao ser atacado: function onSelectTarget(self, target) if target:getTarget() == self then return true end return false end Monstro que só atacam jogadores fortes: function onSelectTarget(self, target) if target:getLevel() >= 100 then return true end return false end Coloque um desses códigos em um arquivo lua em data/monster/scripts Abra o xml do monstro e insira após manacost: script="arquivo.lua" Abraço!
-
- 1 resposta
- 1k visualizações
-
-
Esse sistema faz com que existam monstros que não atacam você, se você não atacar ou usar magias antes. Então vamos ao passo-a-passo. Encontre em luascript.cpp: registerMethod("MonsterType", "isHostile", LuaScriptInterface::luaMonsterTypeIsHostile); Coloque abaixo: registerMethod("MonsterType", "isHostileOnAttack", LuaScriptInterface::luaMonsterTypeIsHostileOnAttack); Encontre em luascript.cpp: int LuaScriptInterface::luaMonsterTypeIsHostile(lua_State* L) { // monsterType:isHostile() MonsterType* monsterType = getUserdata<MonsterType>(L, 1); if (monsterType) { pushBoolean(L, monsterType->isHostile); } else { …
- 4 respostas
- 1.4k visualizações
- 1 follower
-
Eu postei no lugar errado algum moderador poderia mover? Bom, eu estou com um projeto global meu mesmo, então eu estou fazendo algumas quests, e scripts e conforme for dando vou postando aqui, esse script foi uma das formas que encontrei de deixar os scripts rodando de uma forma limpa, eu não sou nenhum bom programador mais isso foi aonde conseguir chegar... function onStepIn(cid, item, pos) local table = { [30025] = {townid = 2 , nome = Carlin, pos = {x=32360,y=31782,z=7}}, [30022] = {townid = 3 , nome = Thais, pos = {x=32369,y=32241,z=7}}, [30223] = {townid = 4 , nome = Venore, pos = {x=32957,y=32241,z=7}}, [30224] = {townid = 5 , nome = AbDendriel,…
-
- 4 respostas
- 812 visualizações
- 1 follower
-
-
Blz ? Hoje vou trazer uma script simples , mas que vai ajudar muita gente Ela funciona assim , caso você morra , não irá perder item , apenas XP Vá em creaturescripts/script e crie um arquivo chamado nloot.lua e cole isso dentro Spoiler function onDeath(cid) if isPlayer == 1 then doCreatureSetDropLoot(cid, false) return true end end Vá em creaturescripts/creaturescript.xml e cole isso la Spoiler <event type="death" name="NlooT" event="script" value="nloot.lua"/> Depois , vá em creaturescripts/scritps e abra o arquivo login.lua Registre o evento , colocando a tag …
-
- 4 respostas
- 1.5k visualizações
-
-
Nome: Mortes no Broadcast Versão: 8.4x Tipo do script: creaturescript Servidor Testado: TFS 0.2 (') Autor: Alguém da equipe criadora do TFS e eu por editar. Comentario: Script editado; Original é o que vem com o tfs. ---------------------------------------------------------------------- Falae; Preview: Como não vi nenhum tópico sobre o assunto por aqui, resolvi criar o script, ou melhor, editar o playerdeath.lua '-' Primeiramente, abra a pasta data/creaturescripts/scripts e crie um arquivo playerdeath.lua Depois salve e pronto, está implantado o sistema de anúncio de mortes no broadcast; é simples, porém algumas pessoas n…
-
- 6 respostas
- 2.1k visualizações
-
-
TESTADO EM TFS 0.4 E 0.6, PEÇO PARA QUE TESTEM EM OUTRAS VERSÕES, POR FAVOR. Prévia; Crie um arquivo KillsandDeath.lua function onLook(cid, thing, position, lookDistance) function getDeathsAndKills(cid, type) -- by vodka local query,d = db.getResult("SELECT `player_id` FROM "..(tostring(type) == "kill" and "`player_killers`" or "`player_deaths`").." WHERE `player_id` = "..getPlayerGUID(cid)),0 if (query:getID() ~= -1) then repeat d = d+1 until not query:next() query:free() end return d end if isPlayer(thing.uid) then doPlayerSetSpecialDescription(thing.uid, "\n"..(getPlayerSex(thing.uid) == 0 and "She" or "He").." has Killed: ["..getDeathsAndKills(thing.uid,…
- 8 respostas
- 3.3k visualizações
- 1 follower
-
Eae 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 = …
- 42 respostas
- 10.4k visualizações
- 1 follower
-
olá galera Gostaria de uma ajudinha,como faço para por este item 9785,é um cristal pillar(uma estatua),como outfit de um monstro ? se tiver no local errado perdão
- 7 respostas
- 1.2k visualizações
-
Está proibido postar em outros fóruns Informação: 1. Sistema de Alugar montaria via NPC 1.0. Opções por apenas VIP , PREMIUM E FREE 1.1.0. Caso opte por VIP (Exemplo) a montaria não aparecerá para os demais jogadores. 2. Configurável o tempo, tipo da montaria, level e o preço da montaria. 2.1. Acabou o tempo automaticamente remove a montaria. 3.1 Totalmente limpo e fácil de configuração. Instalação: LIB: mount_rent.lua MOUNT_H = { ["war horse"] = {price = 10000, hours = 2, mountid = 17, level = 10, vip = false, premium = false, storage = 500561}, ["fire war …
-
- 6 respostas
- 1.2k visualizações
-
Quem Está Navegando 0
- Nenhum usuário registrado visualizando esta página.