Líderes
-
Adriano SwaTT
MembroPontos1645Total de itens -
-
-
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 01/20/17 em todas áreas
-
[TFS 1.x] Reedem Points
2 pontosReedem Points by vankk Basicamente esse script é você utilizar essa talkaction, e o jogador resgatar os pontos baseado no código de transação do PagSeguro. Irei explicar as configurações do script no final. Vá em data/talkactions/scripts e crie um arquivo .lua e coloque o nome de reedem_points.lua após isso, adicione esse código dentro dele; local config = { tableName = 'pagseguro_log', -- nome da tabela em sua database estructureTable = 'transacaoid', -- nome da estrutura da tabela tablePoints = 'pontos', -- nome da estrutura da tabela do pagseguro que mostra a qntidade de pontos que o jogador recebeu pointsEstructure = 'coins', -- nome da tabela de points do seu servidor } function onSay(player, words, param) local tables = {config.tableName, config.estructureTable, config.pointsEstructure, config.tablePoints} for i = 1, #tables do if not tables[i] then player:sendTextMessage(MESSAGE_EVENT_ORANGE, 'Por favor contate o Administrador do servidor, parece que ele configurou errado o script.') return false end end local tmpParam = param if not tmpParam then player:sendTextMessage(MESSAGE_EVENT_ORANGE, 'Por favor coloque o código de transação do PagSeguro.') return false end local resultId = db.storeQuery(string.format('SELECT * FROM `%s` WHERE `%s` = %s AND `reemded` = 0 ', config.tableName, config.estructureTable, db.escapeString(tmpParam))) if not resultId then player:sendTextMessage(MESSAGE_EVENT_ORANGE, 'Não existe esse código em nossa database ou então já foi resgatado.') return false end local amountPoints = result.getDataInt(resultId, config.tablePoints) result.free(resultId) db.query(string.format('UPDATE `%s` SET `reemded` = 1 WHERE `%s` = %s', config.tableName, config.estructureTable, db.escapeString(tmpParam))) db.query(string.format('UPDATE `accounts` SET `%s` = `%s` + %d WHERE `id` = %d', config.pointsEstructure, config.pointsEstructure, amountPoints, player:getAccountId())) player:sendTextMessage(MESSAGE_INFO_DESCR, string.format('Você resgatou com sucesso %d pontos utilizando o código %s.', amountPoints, tmpParam)) return false end Agora vá em data/talkactions/talkactions.xml e adicione essa tag <talkaction words="!points" separator=" " script="players/reedem_points.lua" /> Execute essa query em seu phpMyAdmin, mas antes de executar leia a explicação! ALTER TABLE `pagseguro_log` ADD `reemded` INT(1) NOT NULL DEFAULT '1'; Então vamos lá para a explicação, é bem importante que você preste atenção nessa caralha se não vai dar merda. No script eu adicionei a tabela config, no qual funciona da seguinte maneira: tableName = É o nome da tabela que fica o seu log das transações do PagSeguro estructureTable = É o nome da estrutura que fica dentro do log da transação do pagSeguro no qual guarda o código de transação tablePoints = É o nome da estrutura que fica dentro do log da transaçÃo do pagSeguro no qual guarda quantos pontos o jogador recebeu pointsEstructure = É o nome da estrutura que fica dentro da tabela accounts que guarda os pontos dos jogadores. Agora que você já sabe o que é o tableName, na query na qual eu falei acima você precisará mudar para o nome da sua tabela do log do PagSeguro. Por exemplo, caso o nome da sua tabela seja pagseguro_transactions, você muda para a parte pagseguro_log para pagseguro_transactions. Lembrando que não dou suporte então, caso não entendeu, leia novamente o tópico até entender, porque está de uma maneira bem explicada. Atenciosamente, vankk.2 pontos
-
Sistema: Cassino Slots.
Sistema: Cassino Slots.
JcA reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoBoa noite galera, após um pedido aqui no fórum sobre um sistema de Cassino, decidi então criar este e disponibilizar para vocês. Introdução: Bom, este script simula a máquina de Cassino conhecida como Cassino Slots, pra quem não conhece é a máquina que se encontra no spoiler abaixo: Como funciona? O jogador precisa escolher 1 (um) dos 10 (dez) itens disponíveis (da para configurar a quantidade de itens) como seu Item da Sorte, e após feito isso, terá que girar a alavanca e torcer para que a máquina sorteie 3 itens repetidos igual ao que o jogador em questão escolheu. Para tornar um pouco mais fácil de vencer, criei para que a máquina dê pequenos brindes à quem acertar 1 ou 2 itens dos sorteados (configurável). Como jogar? Para jogar é simples, como desenvolvi todo script em apenas um arquivo, para facilitar na criação, na instalação e até mesmo na jogabilidade, o jogo se baseia na posição em que o jogador está para identificar qual ação executar. Selecionar Item da Sorte: com seu personagem virado para baixo (sul), clique na alavanca e automaticamente o item da sorte aparecerá na mesa configurada no script, caso queira outro item, basta ir usando a alavanca até encontrar o item desejado. Como Jogar: Após ter selecionado seu item da sorte, que deve estar à mostra em cima da mesa própria, basta virar seu personagem para cima (norte) e clicar novamente na alavanca. E se virar esquerda ou direita?: Nada acontecerá, apenas uma mensagem ensinando como jogar será enviada para que o jogador se oriente. Dicas de instalação! Sugiro que quando for criar o mapa para o evento, não faça como do vídeo, pois os itens criados nas mesas não estão com atributos para que não possam ser movidos, sendo assim é provável que jogadores de má fé venham a roubar itens... Faça como a imagem abaixo: Instalando: Basta criar um arquivo na pasta “data/actions/scripts” chamado “cassino_slots.lua” e adicionar o código abaixo dentro: Agora em “actions.xml” adicione a tag abaixo: Agora basta configurar de acordo com as informações disponíveis no início do script. Vejam o vídeo demonstrativo do Sistema em funcionamento. Criado por: Adriano Swatt'1 ponto -
[MOD] Sistema de Auto Loot
1 pontoPara 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 •1 ponto
-
Armas com efeitos
Armas com efeitos
samuel.show reagiu a Mathias Kenfi por uma resposta no tópico
1 pontoFala galera do TK, hoje vim trazer 1 script de arma com efeito mostrado abaixo: Quando não sabe editar, parece ser muito complicado, mas depois que aprende é tao simples quanto fazer uma spell qualquer. Passarei o script e ensinarei a editar. Siga os passos e você logo logo aprenderá a editar a seu gosto. Simples o dano é normal basta editar. Pois o que nos interessa agora é os efeitos que se localiza aqui. Como editar a posição e tals? Pow é só mecher nos números. Não entendeu? Leia denovo, ou pegue os efeitos e edite você mesmo. AJUDEI? REP+1 ponto -
(Resolvido)Task System 8.60[HELP]
(Resolvido)Task System 8.60[HELP]
Vagnerasdas reagiu a soma007 por uma resposta no tópico
1 ponto:D1 ponto -
(Resolvido)Task System 8.60[HELP]
(Resolvido)Task System 8.60[HELP]
soma007 reagiu a Vagnerasdas por uma resposta no tópico
1 pontoPegou vlw!!!1 ponto -
(Resolvido)Task System 8.60[HELP]
(Resolvido)Task System 8.60[HELP]
Vagnerasdas reagiu a soma007 por uma resposta no tópico
1 pontoTenta Essa Se der certo da Rep+ ai :D <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Simple Task" version="4.0" author="Vodkart" contact="tibiaking.com" enabled="yes"> <config name="task_func"><![CDATA[ task_sys = { [1] = {name = "Trolls", start = 176201, monsters_list = {"Troll","Troll champion"}, level = 8, count = 40, points = 0, items = {}, reward = {}, exp = 2000, money = 2000}, [2] = {name = "rotworms", start = 176202, monsters_list = {"rotworm","carrion worm","Rotworm Queen"}, level = 12, count = 50, points = 0, items = {}, reward = {}, exp = 2500, money = 3000}, [3] = {name = "cyclops", start = 176203, monsters_list = {"cyclops","cyclops smith","cyclops drone"}, level = 19, count = 60, points = 0, items = {}, reward = {}, exp = 3000, money = 3000}, [4] = {name = "Green Djinn", start = 176204, monsters_list = {"Green Djinn","Efreet"}, level = 23, count = 80, points = 1, items = {}, reward = {}, exp = 10000, money = 5000}, [5] = {name = "Blue Djinn", start = 176205, monsters_list = {"Blue Djinn","Marid"}, level = 25, count = 80, points = 1, items = {}, reward = {}, exp = 10000, money = 5000}, [6] = {name = "pirates", start = 176206, monsters_list = {"Pirate Marauder","Pirate Cutthroat","Pirate Buccaneer","Pirate Corsair"}, level = 30, count = 120, points = 2, items = {}, reward = {}, exp = 10000, money = 5000}, [7] = {name = "Stone Golems", start = 176207, monsters_list = {"Stone Golem"}, level = 33, count = 130, points = 3, items = {}, reward = {}, exp = 12000, money = 7000}, [8] = {name = "Carniphilas", start = 176208, monsters_list = {"carniphila"}, level = 36, count = 135, points = 3, items = {}, reward = {}, exp = 8000, money = 8000}, [9] = {name = "Ice Golems", start = 176209, monsters_list = {"ice golem"}, level = 40, count = 150, points = 2, items = {}, reward = {}, exp = 12000, money = 8200}, [10] = {name = "Wailing Widows", start = 176210, monsters_list = {"Wailing Widow"}, level = 42, count = 150, points = 3, items = {}, reward = {}, exp = 0, money = 0}, [11] = {name = "Mutated Rats", start = 176211, monsters_list = {"Mutated Rat"}, level = 46, count = 170, points = 2, items = {}, reward = {}, exp = 8000, money = 8500}, [12] = {name = "Dragons", start = 176212, monsters_list = {"dragon"}, level = 50, count = 120, points = 1, items = {}, reward = {}, exp = 9000, money = 9000}, [13] = {name = "Necromancer" ,start = 176213, monsters_list = {"Necromancer"}, level = 60, count = 200, points = 3, items = {}, reward = {}, exp = 20000, money = 15000}, [14] = {name = "Crystal Spiders" ,start = 176214, monsters_list = {"Crystal Spider"}, level = 63, count = 250, points = 3, items = {}, reward = {}, exp = 25000, money = 11000}, [15] = {name = "Giant Spider" ,start = 176215, monsters_list = {"Giant Spider","The old widow"}, level = 80, count = 500, points = 0, items = {}, reward = {}, exp = 20000, money = 32000}, [16] = {name = "Underwater Quaras" ,start = 176216, monsters_list = {"quara predator","quara constrictor","quara hydromancer","quara mantassin","quara pincher"}, level = 82, count = 550, points = 3, items = {}, reward = {}, exp = 22000, money = 15000}, [17] = {name = "Underwater Quaras Scout" ,start = 176217, monsters_list = {"quara predator scout","quara constrictor scout","quara hydromancer scout","quara mantassin scout","quara pincher scout"}, level = 83, count = 600, points = 3, items = {}, reward = {}, exp = 25000, money = 18000}, [18] = {name = "Hellspawn" ,start = 176218, monsters_list = {"Hellspawn"}, level = 85, count = 600, points = 4, items = {}, reward = {}, exp = 28000, money = 26000}, [19] = {name = "Dragon Lords" ,start = 176219, monsters_list = {"Dragon lord"}, level = 88, count = 650, points = 3, items = {}, reward = {}, exp = 30000, money = 35000}, [20] = {name = "Lizard Dragons" ,start = 176220, monsters_list = {"Lizard Chosen","Lizard Dragon Priest","Lizard High Guard","Lizard Legionnaire", "Lizard Zaogun"}, level = 90, count = 600, points = 4, items = {}, reward = {}, exp = 28000, money = 26000}, [21] = {name = "Nightmare" ,start = 176221, monsters_list = {"Nightmare","nightmare scion"}, level = 95, count = 650, points = 2, items = {}, reward = {}, exp = 30000, money = 35000}, [22] = {name = "Hydras" ,start = 176222, monsters_list = {"Hydra"}, level = 100, count = 700, points = 3, items = {}, reward = {}, exp = 40000, money = 40000}, [23] = {name = "Serpent Spawn" ,start = 176223, monsters_list = {"Serpent Spawn"}, level = 103, count = 720, points = 4, items = {}, reward = {}, exp = 50000, money = 45000}, [24] = {name = "Hellhounds" ,start = 176224, monsters_list = {"Hellhound"}, level = 107, count = 650, points = 2, items = {}, reward = {}, exp = 30000, money = 35000}, [25] = {name = "Demons" ,start = 176225, monsters_list = {"Demon"}, level = 110, count = 666, points = 4, items = {}, reward = {}, exp = 66600, money = 66000} } daily_task = { [1] = {name = "Orcs" ,monsters_list = {"Orc Berserker","Orc Rider","Orc Leader","Orc Warlord"}, count = 100, points = 0, reward = {}, exp = 5000, money = 10000}, [2] = {name = "TarantulaS" ,monsters_list = {"Tarantula"}, count = 120, points = 1, reward = {}, exp = 9000, money = 12000}, [3] = {name = "Wyvern" ,monsters_list = {"Wyvern"}, count = 125, points = 2, reward = {}, exp = 9000, money = 15000}, [4] = {name = "Dragons" ,monsters_list = {"Dragon","Dragon Hatchling"}, count = 150, points = 0, reward = {}, exp = 2000, money = 10000}, [5] = {name = "Wailing Widows" ,monsters_list = {"Wailing Widows"}, count = 200, points = 1, reward = {}, exp = 20000, money = 25000}, [6] = {name = "Ancient Scarabs" ,monsters_list = {"Ancient Scarab"}, count = 180, points = 5, reward = {}, exp = 22000, money = 18000}, [7] = {name = "High Class Lizards" ,monsters_list = {"Corrupted Soul","Eternal Guardian","Lizard Chosen","Lizard Dragon Priest","Lizard High Guard","Lizard Legionnaire","Lizard Magistratus","Lizard Noble","Lizard Zaogun"}, count = 300, points = 3, reward = {}, exp = 50000, money = 60000}, [8] = {name = "Mutated BatS" ,monsters_list = {"Mutated Bat"}, count = 260, points = 2, reward = {}, exp = 40000, money = 55000}, [9] = {name = "Giant Spiders" ,monsters_list = {"Giant Spider"}, count = 350, points = 3, reward = {}, exp = 60000, money = 70000}, [10] = {name = "Undead Dragons" ,monsters_list = {"Undead Dragon"}, count = 500, points = 3, reward = {{2173,1}}, exp = 90000, money = 120000}, [11] = {name = "HydraS" ,monsters_list = {"Hydra"}, count = 600, points = 3, reward = {{2173,1}}, exp = 100000, money = 160000}, [12] = {name = "Ghastly Dragons" ,monsters_list = {"Ghastly Dragon"}, count = 700, points = 3, reward = {{2173,1}}, exp = 130000, money = 200000} } task_sys_storages = {176601, 176602, 176603, 176604, 176605, 176606, 176607, 176608} -- task, points, count, daily task, daily count, daily time , daily start, contador function getTaskMission(cid) return getPlayerStorageValue(cid,task_sys_storages[1]) < 0 and 1 or getPlayerStorageValue(cid,task_sys_storages[1]) end function getDailyTaskMission(cid) return getPlayerStorageValue(cid,task_sys_storages[4]) < 0 and 1 or getPlayerStorageValue(cid,task_sys_storages[4]) end function getTaskPoints(cid) return getPlayerStorageValue(cid,task_sys_storages[2]) < 0 and 0 or getPlayerStorageValue(cid,task_sys_storages[2]) end function doRandomDailyTask(cid) local t = { [{6,49}] = {1,3}, [{50,79}] = {4,6}, [{80,129}] = {7,9}, [{130,math.huge}] = {10,12} } for a , b in pairs(t) do if getPlayerLevel(cid) >= a[1] and getPlayerLevel(cid) <= a[2] then return math.random(b[1], b[2]) end end return 0 end function GetRankTask(cid) local ranks = { [{1, 20}] = "Huntsman", [{21, 50}] = "Ranger", [{51, 100}] = "Big Game Hunter", [{101, 200}] = "Trophy Hunter", [{201, math.huge}] = "Elite Hunter" } for v , r in pairs(ranks) do if getTaskPoints(cid) >= v[1] and getTaskPoints(cid) <= v[2] then return r end end return 0 end function getItemsFromList(items) local str = '' if table.maxn(items) > 0 then for i = 1, table.maxn(items) do str = str .. items[2] .. ' ' .. getItemNameById(items[1]) if i ~= table.maxn(items) then str = str .. ', ' end end end return str end function doRemoveItemsFromList(cid,items) local count = 0 if table.maxn(items) > 0 then for i = 1, table.maxn(items) do if getPlayerItemCount(cid,items[1]) >= items[2] then count = count + 1 end end end if count == table.maxn(items) then for i = 1, table.maxn(items) do doPlayerRemoveItem(cid,items[1],items[2]) end else return false end return true end function getMonsterFromList(monster) local str = '' if #monster > 0 then for i = 1, #monster do str = str .. monster if i ~= #monster then str = str .. ', ' end end end return str end function GiveRewardsTask(cid, items) local backpack = doPlayerAddItem(cid, 1999, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end end end function isSummon(cid) if(not isCreature(cid)) then return false end return getCreatureMaster(cid) ~= cid end ]]></config> <event type="login" name="TaskLogin" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "KillTask") registerCreatureEvent(cid, "TaskLook") return true end]]></event> <talkaction words="/task;!task" event="buffer"><![CDATA[ domodlib('task_func') param,task,daily = param:lower(), getTaskMission(cid), getDailyTaskMission(cid) if isInArray({"counter","contador"},param) then setPlayerStorageValue(cid, task_sys_storages[8], getPlayerStorageValue(cid, task_sys_storages[8]) <= 0 and 1 or 0) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"[Task System] O contador foi "..(getPlayerStorageValue(cid, task_sys_storages[8]) <= 0 and "ativado" or "desativado")..".") return true elseif isInArray({"daily","diaria"},param) then if not daily_task[daily] or getPlayerStorageValue(cid, task_sys_storages[7]) <= 0 then doPlayerSendCancel(cid, "Desculpe, Mas você não está em nenhuma Daily Task.") return true elseif getPlayerStorageValue(cid, task_sys_storages[6]) - os.time() <= 0 and getPlayerStorageValue(cid, task_sys_storages[5]) < daily_task[daily].count then doPlayerSendCancel(cid,"Desculpe, Mas Você não terminou a Daily Task a tempo! Por favor volte ao npc e comece uma nova Daily Task!") return true end return doShowTextDialog(cid, 8983, "[->] CURRENT DAILY TASK INFO [<-]\n\nNome: "..daily_task[daily].name.."\nProgresso: ["..(getPlayerStorageValue(cid, task_sys_storages[5]) < 0 and 0 or getPlayerStorageValue(cid, task_sys_storages[5])).."/"..daily_task[daily].count.."]\nPrazo para entrega: "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,task_sys_storages[6])).."\nMonstros para caçar: "..getMonsterFromList(daily_task[daily].monsters_list).."\n\n[->] CURRENT TASK REWARDS [<-]\n\nMoney: "..(daily_task[daily].money > 0 and daily_task[daily].money or 0).."\nExperiencia: "..(daily_task[daily].exp > 0 and daily_task[daily].exp or 0).."\nTask Points: "..daily_task[daily].points.."\nItems: "..(#daily_task[daily].reward > 0 and getItemsFromList(daily_task[daily].reward) or "Nenhum item de recompensa")..".") end if not task_sys[task] or getPlayerStorageValue(cid, task_sys[task].start) <= 0 then doPlayerSendCancel(cid, "você não está em nenhuma task.") return true end return doShowTextDialog(cid, 8983, "-> CURRENT TASK ["..getTaskMission(cid).."/"..#task_sys.."] <-\n\nTask Name: "..task_sys[task].name.."\nTask Level: "..task_sys[task].level.."\nTask Progress: ["..(getPlayerStorageValue(cid, task_sys_storages[3]) < 0 and 0 or getPlayerStorageValue(cid, task_sys_storages[3])).."/"..task_sys[task].count.."]\nMonster To Hunt: "..getMonsterFromList(task_sys[task].monsters_list)..".\nItens Para Entrega: "..(#task_sys[task].items > 0 and getItemsFromList(task_sys[task].items) or "Nenhum")..".\n\n[->] CURRENT TASK REWARDS [<-]\n\nReward Money: "..(task_sys[task].money > 0 and task_sys[task].money or 0).."\nReward Experiencia: "..(task_sys[task].exp > 0 and task_sys[task].exp or 0).."\nReward Points: "..task_sys[task].points.."\nRedward Items: "..(#task_sys[task].reward > 0 and getItemsFromList(task_sys[task].reward) or "Nenhum item de recompensa")..".") ]]></talkaction> <event type="look" name="TaskLook" event="script"><![CDATA[ domodlib('task_func') function onLook(cid, thing, position, lookDistance) if isPlayer(thing.uid) and getTaskPoints(thing.uid) > 0 then doPlayerSetSpecialDescription(thing.uid, "\n"..(getPlayerSex(thing.uid) == 0 and "She" or "He").. " is a "..GetRankTask(thing.uid)) end return true end]]></event> <event type="kill" name="KillTask" event="script"><![CDATA[ domodlib('task_func') function onKill(cid, target) if isPlayer(cid) and isMonster(target) then local t,daily = task_sys[getTaskMission(cid)], daily_task[getDailyTaskMission(cid)] if t and getPlayerStorageValue(cid, t.start) > 0 and isInArray(t.monsters_list, getCreatureName(target):lower()) and getPlayerStorageValue(cid, task_sys_storages[3]) < t.count then setPlayerStorageValue(cid, task_sys_storages[3], getPlayerStorageValue(cid, task_sys_storages[3]) < 0 and 1 or (getPlayerStorageValue(cid, task_sys_storages[3])+1)) if getPlayerStorageValue(cid, task_sys_storages[8]) <= 0 and getPlayerStorageValue(cid, task_sys_storages[3]) < t.count then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,"[Task System] defeated Total [" .. getPlayerStorageValue(cid, task_sys_storages[3]) .. "/" .. t.count .. "] da Task do " .. t.name .. ".") end if getPlayerStorageValue(cid, task_sys_storages[3]) >= t.count then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,"[Task System] Parabéns! Você terminou a Task do "..t.name..", volte ao npc parece receber sua recompensa.") end end if daily and getPlayerStorageValue(cid, task_sys_storages[7]) > 0 and getPlayerStorageValue(cid, task_sys_storages[6]) - os.time() >= 0 and isInArray(daily.monsters_list, getCreatureName(target):lower()) and getPlayerStorageValue(cid, task_sys_storages[5]) < daily.count then setPlayerStorageValue(cid, task_sys_storages[5], getPlayerStorageValue(cid, task_sys_storages[5]) < 0 and 1 or (getPlayerStorageValue(cid, task_sys_storages[5])+1)) if getPlayerStorageValue(cid, task_sys_storages[8]) <= 0 and getPlayerStorageValue(cid, task_sys_storages[5]) < daily.count then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"[Daily Task System] defeated Total [" .. getPlayerStorageValue(cid, task_sys_storages[5]) .. "/" .. daily.count .. "] da Task do " .. daily.name .. ".") end if getPlayerStorageValue(cid, task_sys_storages[5]) >= daily.count then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,"[Daily Task System] Parabéns! Você terminou a Task do "..daily.name..", volte ao npc parece receber sua recompensa.") end end end return true end]]></event> </mod>1 ponto -
(Resolvido)Task System 8.60[HELP]
(Resolvido)Task System 8.60[HELP]
Vagnerasdas reagiu a soma007 por uma resposta no tópico
1 pontoEu tb estava com esse Error q vc mais resolvi :D Posta seu xml do mods ai q vo ajuda vc nesse error d n mostra os monstros q ja foi mortos !1 ponto -
(Resolvido)Modificar Reset System
(Resolvido)Modificar Reset System
Sekk reagiu a xWhiteWolf por uma resposta no tópico
1 pontoo problema é no return que tá encerrando o callback antes de executar o reset. Vou modificar. o problema é no return que tá encerrando o callback antes de executar o reset. Vou modificar. o problema é no return que tá encerrando o callback antes de executar o reset. Vou modificar.1 ponto -
(Resolvido)Critical E Dodge no LOOK
(Resolvido)Critical E Dodge no LOOK
Black Fenix reagiu a MaTTch por uma resposta no tópico
1 ponto1 ponto- (Resolvido)Modificar Reset System
(Resolvido)Modificar Reset System
Sekk reagiu a Fir3element por uma resposta no tópico
1 pontofiz em 5 min aq, nem testei local config = { minlevel = 150, --- level inical para resetar price = 10000, --- preço inicial para resetar newlevel = 20, --- level após reset priceByReset = 0, --- preço acrescentado por reset percent = 100, ---- porcentagem da vida/mana que você terá ao resetar (em relação à sua antiga vida total) maxresets = 50, levelbyreset = 0 --- quanto de level vai precisar a mais no próximo reset } --- end config local function getResets(uid) local resets = getPlayerStorageValue(uid, 378378) if resets < 0 then resets = 0 end return resets end local function addReset(cid) local resets = getResets(cid) setPlayerStorageValue(cid, 378378, resets+1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) local hp = getCreatureMaxHealth(cid) local resethp = hp*(config.percent/100) setCreatureMaxHealth(cid, resethp) local differencehp = (hp - resethp) doCreatureAddHealth(cid, -differencehp) local mana = getCreatureMaxMana(cid) local resetmana = mana*(config.percent/100) setCreatureMaxMana(cid, resetmana) local differencemana = (mana - resetmana) doCreatureAddMana(cid, -differencemana) local guid = getPlayerGUID(cid) doRemoveCreature(cid) local description = resets+1 db.executeQuery("UPDATE `players` SET `description` = ' [Reset: "..description.."]' WHERE `players`.`id`= ".. guid) db.executeQuery("UPDATE `players` SET `level`="..config.newlevel..",`experience`= 0 WHERE `players`.`id`= ".. guid) return true end function onSay(cid, words, param, channel) local newPrice = config.price + (getResets(cid) * config.priceByReset) local newminlevel = config.minlevel + (getResets(cid) * config.levelbyreset) if param == "quantity" then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'You have a total of '..getResets(cid)..' reset(s).') end if getResets(cid) < config.maxresets then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'You want to reset your character? It will cost '..newPrice..' gp\'s!') elseif getPlayerMoney(cid) < newPrice then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'Its necessary to have at least '..newPrice..' gp\'s for reseting!') elseif getPlayerLevel(cid) < newminlevel then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,'The minimum level for reseting is '..newminlevel..'!') end doPlayerRemoveMoney(cid,newPrice) addEvent(function() if isPlayer(cid) then addReset(cid) end end, 3000) local number = getResets(cid)+1 local msg ="---[Reset: "..number.."]-- You have reseted! You'll be disconnected in 3 seconds." doPlayerPopupFYI(cid, msg) return true end1 ponto- (Resolvido)Critical E Dodge no LOOK
(Resolvido)Critical E Dodge no LOOK
Yago Blind. reagiu a MaTTch por uma resposta no tópico
1 pontoManda seu script de look dos frags pra gente poder alterar.1 ponto- [Pokemon] Catch System Por Skill
1 pontoEae Galera Tudo na Paz? [+] Hoje Vou Postar um Script de Catch Por Skill Configurado No "Sword Fighting" do Seu Old Client Intao vamos La: -Resumo: Quanto Maior o Skill "Catching" Maior a chance de Captura do Pokemon! [+] OBS: Eu nao Vou Postar o Script Completo Pois de Cada (PDA) ou (PDA - COM PokeLevel) é Diferente um do Outro, Eu So vou Ensinar a Voces a como Adicionar o Sistema em Seus Servidores! [+] Servidor Testado: - Pokemon Dash Advanced [+] Primeiro Vai em Data/Lib/catchsystem.lua e Procure por essa Funçao: [+] Na Parte aonde manda a MSG de que Voce "capturou um Pokemon" e "Capturou um Pokemon e Foi para o CP" add Isso Abaixo dessas Msg: - Resumo: doPlayerAddSkillTry(cid,2,10) --- Quando Capturar um Pokemon vai Ganhar 10% de Skill "2". - Obs: No meu Client o Skill Catching Esta no Skill "Sword Fighting" [+] Bom Logo Apos Voce vai em data/actions/catch.lua e no Começo do Script add isso: [+] Agora Procure essa Funçao: local catchinfo = {} - E Troca por Isso: -OBS: O Script é Bem Basico. Dar Para adicionar varios Coisas Como (Ganhar EXP Dependendo do Skill/Almentar Chance de Catch para Premium Account e etc...) [+] Imagens: [+] OBS: So vai ganhar Skill se Voce Capturar o Pokemon e Recomendo voces Deixar o Catch BAIXO! Por que o Script faz a Soma de Rate um Exemplo: Pokeball Rate: 50 Skill Cathing Rate (com 25 de Skill Cathing) : 100 Somar: 50+100 = 150 de Rate o Jogador vai ter [script Atualizado Dia 25/01/2015] [+] Creditos: NextBR1 ponto- (Pedido) Como fazer aria pvp em poketibia (Urgente)
(Pedido) Como fazer aria pvp em poketibia (Urgente)
drakyom reagiu a Mauro Sérgio por uma resposta no tópico
1 pontoNão Só Vai Atacar Na Area PVP Deixe Seu Seu .Lua Assim: -- Battle -- NOTE: showHealingDamageForMonsters inheritates from showHealingDamage. -- loginProtectionPeriod is the famous Tibia anti-magebomb system. -- deathLostPercent set to nil enables manual mode. worldType = "pvp-enforced" protectionLevel = 1 pvpTileIgnoreLevelAndVocationProtection = true pzLocked = 60 * 1000 huntingDuration = 1 * 60 criticalHitChance = 7 criticalHitMultiplier = 1 displayCriticalHitNotify = false Prestou? Rep+ Happy New Year.1 ponto- [DxP] Exclusivo Poketibia OpenSource+Cliente+Site+DB
Se Algem Ja Percebeu, Apos Um Jogador For Falar Com Algum Npc Ex: Mark, Não Aparece Oque Ele Fala , Se Algem Souber Resolver Isso Ajuda Aii ?!! '-'1 ponto- [EVENTO] SNOWBALLL
[EVENTO] SNOWBALLL
Weslley Kiyo reagiu a Reds por uma resposta no tópico
1 pontohttp://pastebin.com/NsfJeAqa tinham postado aqui no forum essa semana1 ponto- Help BAN
Help BAN
maiconhuca reagiu a Caronte por uma resposta no tópico
1 pontoMeu OT de teste não tinha, então eu fiz. ban.lua function onSay(cid, words, param, channel) local param = string.explode(param, ",") local bantypes = { ["ip"] = function() doAddIpBanishment(getIpByName(param[2]) ) return true end,--, mask[, length[, reason[, comment[, admin[, statement]]]]]]), ["name"] = function() doAddPlayerBanishment(param[2]) return true end,--}, type[, length[, reason[, action[, comment[, admin[, statement]]]]]]]), ["account"] = function() doAddAccountBanishment(getAccountIdByName(param[2]) ) return true end,--, playerId[, length[, reason[, action[, comment[, admin[, statement]]]]]]]), } --[[ doRemoveIpBanishment(ip[, mask]) doRemovePlayerBanishment(name/guid, type) doRemoveAccountBanishment(accountId[, playerId]) ]] for i, j in pairs(bantypes) do if words == "/ban" then if (string.lower(param[1]) == i) then doRemoveCreature(getCreatureByName(param[2]), true) return j() and doBroadcastMessage(" [BAN ADVISE]--> O Staff: ["..getCreatureName(cid).."] Baniu o player ["..param[2].."] por "..i..".", MESSAGE_STATUS_WARNING) end end if param[2] == "info" or "bans" or "/types" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You can use: /ban + "..i..", playername .") end end return true end talkactions.xml <talkaction log="yes" access="5" words="/ban" event="script" value="ban.lua"/> /ban info /ban bans /ban /types mostra como usar o comando.1 ponto- [Ajuda] Vida e Mana em Porcentagem
[Ajuda] Vida e Mana em Porcentagem
gordim031 reagiu a Fir3element por uma resposta no tópico
1 pontohttp://hastebin.com/raw/esawoqogel1 ponto- Sistema: Cassino Slots.
Sistema: Cassino Slots.
Kramer reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoCada vez que o player jogar ele paga a taxa, não há outras chances. Sobre ganhar brinde por acertar 1 ou 2 itens, basta desativar no script. Use este: Boa sorte.1 ponto- [Aula 1] Introdução
[Aula 1] Introdução
maixmilion12 reagiu a 3visan por uma resposta no tópico
1 pontoIntrodução Aula 1 O que é scripting? Do modo mais simples possível: scripting é o ato de programar. O nome scripting vem do nome "script". O que é um script? De um modo geral, um script é um bloco de Código escrito em uma linguagem de programação interpretada, ou seja, ele precisa que alguma coisa leia ele e possa "traduzir" seu conteúdo. Lembre-se de que "script" não é um termo específico de Open Tibia Servers. O que é uma linguagem de programação interpretada? Os brasileiros falam português, ingleses falam inglês e chineses falam mandarim, e com isso o mundo é composto por várias línguas. No mundo da programação não é diferente. Existem várias línguas que podem ser usadas, cada uma com uma característica e modo de escrever diferente (Assim como o português é diferente do inglês). Entre estas linguagens, existem 2 tipos: as linguagens interpretadas e as linguagens compiladas (Não-interpretadas). Podemos fazer uma comparação tosca com a vida real: o português seria uma linguagem interpretada (Nosso cérebro precisa "traduzir" a mensagem), e os desenhos seriam a língua compilada (Nosso cérebro reconhece automaticamente a "mensagem" do desenho). As linguagens compiladas são aquelas que não precisam ser lidas por nenhum programa, pois "conversam" diretamente com o computador, enquando a linguagem interpretada não consegue se comunicar com o computador, então a linguagem compilada recebe a mensagem do codigo interpretado e traduz numa linguagem que o computador entenda, dai a linguagem interpretada pode conversar com o computador (Desde que alguém traduza suas mensagens). Voltando para a parte de Open Tibia Servers, a linguagem compilada é a linguagem usada no seu servidor: o .exe no Windows, por exemplo, e a linguagem interpretada são os scripts .lua. O seu servidor compilado vai ler os scripts .lua e traduzir o conteúdo deles para que o computador possa executar o que o script manda. Se os scripts são escritos em linguagens interpretadas, qual é a linguagem dos script usados nos Open Tibia Servers? Os Open Tibia Servers usam uma linguagem de programação (Interpretada) chamada Lua, que foi feita aqui no Brasil mesmo. Características da linguagem de programação Lua: Linguagem de Programação Interpretada Linguagem de Programação Imperativa ou Programação Procedural Linguagem de Scripts ou Linguagem de Extensão Pequena, Fácil, Leve e Eficiente " Lua foi criada por um time de desenvolvedores do Tecgraf da PUC-Rio, a princípio, para ser usada em um projeto da Petrobras. Devido à sua eficiência, clareza e facilidade de aprendizado, passou a ser usada em diversos ramos da programação, como no desenvolvimento de jogos (a LucasArts, por exemplo, usou a linguagem no jogo Escape from Monkey Island), controle de robôs, processamento de texto, etc. Também é freqüentemente usada como uma linguagem de propósito geral. " Wikipédia - Lua (Linguagem de Programação) O que eu preciso para aprender Lua e começar a produzir meus scripts? Paciência (Embora seja de fácil aprendizado, você vai levar algum tempo para aprender a linguagem) Humildade (Nunca se sinta o melhor, nem ridicularize aqueles que tiverem um conhecimento menor que o seu) Vontade (Não adianta fazer as coisas sem o menor interesse, você não chegará a lugar nenhum sem vontade) Criatividade (O principal para produzir um script é ter a idéia do que você vai fazer) Conhecer a Lógica da Programação (Não se preocupe, eu vou ensinar a Lógica da Programação nas próximas aulas.) Interpretador Lua (Para testar seus scripts, claro. Você pode usar o seu OTServer para testar, e ainda usar um interpretador Lua para testar seus scripts simples fora do OTServer) Editor Lua (Não é realmente necessário, uma vez que você pode usar um editor de textos qualquer, como o bloco de notas, mas ter um Editor Lua vai ajudar muito, e alguns até vêm com um Interpretador Lua junto!) Pagar uma taxa de R$ 700,00, afinal, não estou escrevendo estas aulas de graça! (OK, não precisa pagar nada, mas no mínimo poste seus scripts aqui e ajude a seção a crescer ) Onde posso encontrar um Interpretador e/ou Editor Lua? Como interpretador (No caso de produzir scripts para Open Tibia Servers) você deve usar um servidor próprio, pessoal somente para testar os scripts que você fez, e pode usar também um Interpretador Lua geral, para testar seus scripts fora dos OTServers. Como Editor Lua você pode usar qualquer editor de textos, mas eu recomendo usar um editor que seja próprio para a linguagem Lua. Existem dois editores que já vem com um Interpretador Lua "embutido". São eles: OTScript Live! [Download] e SciTE (Scintilla) [Removido]. Exercício-Tarefa: Pesquise mais na internet sobre a linguagem Lua, Scripts, etc... Creditos: 99%: Skyen Hasus 1% Vittu #Aula 2 Logica da Programação1 ponto- Erro xamp
Fala galera do tibiaking, bom estou com um poblema aqui no xamp na criação do site do meu otserv que aparece um erro quando executo o comando 'localhost'. Esse erro aqui. Error occured! Error ID: #C-2 More info: ERROR: #C-2 : Class::ConfigLUA - LUA config file doesn't exist. Path: C:/otserv/config.lua File: C:\xampp\htdocs\classes/configlua.php Line: 24 File: C:\xampp\htdocs\classes/configlua.php Line: 12 File: C:\xampp\htdocs\system/load.init.php Line: 42 File: C:\xampp\htdocs/index.php Line: 18 Ai quando executo o outro comando 'localhost/install.php Aparecesse esse outro erro. Fatal error: Call to a member function query() on a non-object in C:\xampp\htdocs\install.php on line 4 Bom, já tentei de tudo, estou com uma dúvida que esteja com algum poblema na minha database. Se alguem poder me ajudar a resolver esse erro dou rep++++-1 pontosLíderes está configurado para São Paulo/GMT-03:00 - (Resolvido)Modificar Reset System
Informação Importante
Confirmação de Termo