Líderes
-
-
Adriano SwaTT
MembroPontos1645Total de itens -
-
arthurmgoncalves
MembroPontos51Total de itens
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/15/17 em todas áreas
-
Tutorial, Acertando Fuso Horário
1 pontoAcertando o Fuso Horário Boa tarde, resolvi fazer esse tutorial, pois eu tive esse probleminha que foi facilmente resolvido. Estou compartilhando caso alguém esteja passando ou passe pelo mesmo problema ache a solução aqui no Tibia King. Nível: Fácil Objetivo: Deixar o fuso horário do servidor Linux, que normalmente é fora do Brasil, igual ao nosso. Sistema Operacional Testado: Ubuntu 14.04 1º Passo - Vamos conectar ao nosso servidor Linux via SSH. 2º Passo - Até agora foi fácil né? Agora vamos digitar o comando date para verificar se o horário do servidor está diferente do nosso. 3º Passo - Agora vamos ajustar o fuso horário, para começar digite o comando sudo dpkg-reconfigure tzdata . Nessa primeira tela vamos selecionar o nosso continente. 4º Passo - Selecionado o nosso continente, vai pedir que selecione a nossa Time Zone , no meu caso vou selecionar a cidade de São Paulo, que é o lugar mais próximo de onde moro. 5º Passo - Pronto, depois disso vai aparecer a mensagem mostrando da nova Time Zone que foi escolhida. 6º Passo - Mas já não tinha acabado? É, já acabou, só vamos confirmar se o horário digitando o comando date novamente. Antes que alguém fale.. Porra! Turanoh, mas ficou uns minutos de diferença? Isso é o meu relógio que ta meio errado mesmo, e outra pode ser que tenha uma pequena diferença, qualquer coisa ajuste também o relógio do seu PC, veja se a Time Zone dele é a mesma que foi selecionada no seu servidor, só assim eles ficarão sincronizados. Pequena Conclusão, agora pelo menos vai me facilitar muito na hora de configurar meu servidor, por exemplo escolhendo o horário do save server, horário de eventos, raids automáticas, entre outras coisinhas. Espero que facilite sua vida também, para quem leio o tópico todo, obrigado pela atenção! Agora, enfim acabamos! Espero de alguma forma ter te ajudado, valeu.1 ponto
-
[8.6] Gesior 2012 versão 2017
[8.6] Gesior 2012 versão 2017
marley5 reagiu a Elitondesouza por uma resposta no tópico
1 pontoOlá meus companheiros, Estou aqui para dividir com vocês meu projeto Gesior 2012 Editado !!! Ele foi utilizado para versão 8.60, com banco de dados dessa versão. Porém o Layout pode ser aproveitado em qualquer versão, basta saber utilizar. Bom, todos sabem o que conseguimos no fórum com sites já prontos, sendo assim irei apenas comentar as novidades da minha versão. Dei uma boa editada no menu, com um estilo degradê quando colocamos o mouse encima. Coloquei um "CASTLE" que se utilizar algum script de Castle 48h, você facilmente consegue rodar um comando para funcionar 100% com o site. Coloquei um "NEXT EVENTS" que existe um contador em arquivo javascript, que você pode colocar determinadas horas para os eventos, facilmente editável também. Coloquei Outfits que se movimentam no nosso "Top Level". Fora as várias melhorias no layout e afins com referências do game "World Of Warcraft". Segue imagem: Download: Download Link Scan: Scan Link Espero que façam bom uso e aproveitem !! Att, Eliton de Souza.1 ponto -
[GESIOR] Shop Addons & Mounts
[GESIOR] Shop Addons & Mounts
amora murder reagiu a Sekk por uma resposta no tópico
1 pontoEae galera, esses dias eu tive vontade de começar um server de tibia 10.90, porém, comecei no site. Fui mexendo e tals, ai vi que não funcionava o shop, pra enviar mounts e addons para os players, ai fui atrás de correção. Vi que aqui mesmo no TK, o membro Summ postou um script para tibia 10.53 desse shop, para TFS 1.x. Como o script dele não era atualizado desde janeiro(quando ele criou), eu resolvi atualizar(por eu mesmo precisar), e agora venho trazer a "atualização" pra vocês UAHUEHEUAH Bora la: Primeiro, na pasta do seu server, em creaturescripts/scripts adicione um arquivo chamado addonmount.lua e adicione o seguinte dentro: Ai está com a atualização 10.90 do tibia. Em creaturescripts.xml adicione a tag: Agora em Globalevents/scripts, substitua seu shop.lua por esse: E em globalevents.xml adicione a tag: Agora vamos para a pasta do site. Em config/config.php localize a linha Em cima dessa linha, adicione o seguinte: Agora na pasta pages, substitua seus arquivos shopadmin.php e shopsystem.php por esses: shopadmin.php shopsystem.php Agora, deixo um arquivo em .rar em anexo, extrai o conteúdo(pasta addons e mounts) para a pasta images do seu site. Quando você for adicionar alguma mount ou addon no seu shop, faça assim: Obs.: Muito importante, quando for adicionar a oferta de mount ou addon no shop, ao invés de colocar o ID do mesmo, adicione o número de storage, que está no arquivo addonmount.lua em creaturescripts do seu server. Escolha o que quiser. Obs.2: As imagens dos addons e mounts são adicionadas automaticamente no shop. images.rar Créditos: @dezon - Shopadmin Summ Scan: https://www.virustotal.com/pt/file/1a60771d653b96224740ef9d5b4b8748dc4b216bfb7b581f5706a8ea14d4aeb7/analysis/1452534742/1 ponto -
[MYSQL] Backup_points Resetando e devolvendo os points automático.
[MYSQL] Backup_points Resetando e devolvendo os points automático.
Lurk reagiu a Natanael Beckman por uma resposta no tópico
1 pontoBoa galera estamos mais uma vez trazendo o que a de melhor pra todos e esse sistema é muito top pra qualquer administrador de OTserver. Um parceiro meu Felipe Funck administrador do ImperialOT chegou pra mim com essa ideia de fazer um backup de point me explicou como deveria ser, achei uma ideia muito interessante e fui atrás de fazer o sistema. Esse sistema tem a função de registrar todos os pontos adquiridos por uma ACC em outras palavras ele faz um backup de todos os pontos que essa ACC recebe, sim mais e dai? As vezes temos a obrigação de resetar a database e eu confesso não tem nada mais chato do que devolver os pontos, simplesmente porque é muito trabalhoso você devolver pontos. Veja abaixo como adicionar o sistema no seu server: Acesse sua database e na tabela accounts execute está query: ALTER TABLE `accounts` ADD `backup_points` INT NOT NULL AFTER `premium_points`; Feito né? Essa query é a coluna backup_points nela vai ficar registrado todos os pontos que serão adicionados na ACC. Agora abra o seu retpagseguro.php e na linha 151 vai ter esse code: mysql_query("UPDATE accounts SET premium_points = premium_points + '$NumItens' WHERE name = '".htmlspecialchars($accname)."'"); Adicione abaixo o seguinte code: mysql_query("UPDATE accounts SET backup_points = backup_points + '$NumItens' WHERE name = '".htmlspecialchars($accname)."'"); Quem não tiver o sistema de pagseguro automático veja esse TUTORIAL. Cuidado a você que utiliza o double points pra não esquecer da multiplicação * 2. Certo, pra você que ainda não utiliza o sistema pagseguro utilize este shopadmin abaixo que já está configurado pra adicionar os pontos nas duas colunas. shopadmin.php Serve para todos os Gesior ACC. Pronto dessa forma todos os pontos adicionados em premium_points vai ficar registrado em backup_points. Bom galera o sistema está feito, beleza, quando você for resetar você vai executar a query abaixo. Mais qual a função dela? A função dessa query é limpar a coluna premium_points e leva os pontos que tiverem na coluna backup_points pra coluna premium_points, assim todos os pontos que entraram naquela ACC estaram de volta e corretamente. Nunca apague os registros do backup_points. Cuidado antes de usa a query faça um backup da sua database, só pra precaver nada de mais! UPDATE `accounts` SET `premium_points` = `accounts`.`backup_points` WHERE `backup_points` > 0; Query feita por, Raphael Luiz. Galera quem gostar clica em GOSTEI e valeu!1 ponto -
NÃO CONSIGO ACESSAR MEU OTSERV POR OUTRO COMPUTADOR A NÃO SER O MEU
NÃO CONSIGO ACESSAR MEU OTSERV POR OUTRO COMPUTADOR A NÃO SER O MEU
NAM reagiu a psychonaut por uma resposta no tópico
1 pontoContata o suporte do VPS pra ver se as portas 7171 e 7172 podem ser abertas. No firewall tb se tiver.1 ponto -
SCRIPT de colocar No nomes dos pokes Shinys "Shiny"
SCRIPT de colocar No nomes dos pokes Shinys "Shiny"
DarkRed reagiu a arthurmgoncalves por uma resposta no tópico
1 pontoAh man, tem nada haver com isso ai não, tem haver com o level system msm, vai em level system da ctrl+f procura por if string.find(tostring(nick), "Shiny") then nick = tostring(nick):match("Shiny (.*)") end e apaga e salva o arquivo só isso1 ponto -
Pedido [descer da bike ao usar desbugar]
Pedido [descer da bike ao usar desbugar]
Radamanthys Wov reagiu a x1zy por uma resposta no tópico
1 pontobem, pelo que esta no script, ele simplesmente teleport o player para x pos. ele não muda outfit de bike nem nada disso. recomendo você descobrir qual o script que remove outfit de bike, e procurar a função, estou falando de apenas uma linha. e também descobrir o ID da storage da BIKE. local storage = 985432 function onSay(cid, words, param) doPlayerSendTextMessage(cid, 25, "Personagem Desbugado!") setPlayerStorageValue(cid, storage, 0) doSendMagicEffect(getCreaturePosition(cid),3) -- ADICIONAR FUNÇÃO QUE MUDA OUTFIT return true end1 ponto -
(Resolvido)Action com erro, e pedido talk
local cfg = {item = 2423, ammount = 1} function onUse(cid, item, fromPosition, item2, toPosisition) local rskulls = {green = SKULL_GREEN, red = SKULL_RED, black = SKULL_BLACK} if not isInArray(rskulls, getPlayerSkullType(cid)) then doPlayerSendCancel(cid,"You dont have skulls") return true end if not doPlayerRemoveItem(cid, cfg.item, cfg.ammount) then doPlayerSendCancel(cid,"You need ".. cfg.ammount .. "x " .. getItemNameById(cfg.item) .. ".") return true end doCreatureSetSkullType(cid, 0) doCreatureSay(cid, "Your frags and skulls is cleaned!", 19) player = getPlayerGUID(cid) doRemoveCreature(cid, true) db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. player .. ")") return true end1 ponto
-
(Resolvido)Action com erro, e pedido talk
tem que kickar o player antes de chamar DB! não testei. local price = 20000000 function onSay(cid, words, param, channel) local rskulls = {green = SKULL_GREEN, red = SKULL_RED, black = SKULL_BLACK} if not isInArray(rskulls, getPlayerSkullType(cid)) then doPlayerSendCancel(cid,"You dont have skulls") return true end if not doPlayerRemoveMoney(cid, price) then doPlayerSendCancel(cid,"You need " .. price .. " cash.") return true end doCreatureSetSkullType(cid, 0) doCreatureSay(cid, "Your frags and skulls is cleaned!", 19) player = getPlayerGUID(cid) doRemoveCreature(cid, true) db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. player .. ")") return true end1 ponto
-
(Resolvido)Alguem me ajuda nessa action
(Resolvido)Alguem me ajuda nessa action
StormsHard reagiu a x1zy por uma resposta no tópico
1 pontoBem, vou te ajudar a pescar, saca? 1º antes de: setPlayerStorageValue(cid, 18392, getCreatureSpeed(cid)) por: local chance = math.random(1, 6) -- chance 1 em 6 if not chance == 1 then doPlayerSendCancel(cid, "Não foi possivel roubar o carro.") return true end 2º no globalEvents, descobre qual o ficheiro lua do seu logout, e coloca isso: if getPlayerStorageValue(cid, 18391) == 1 then doPlayerSendCancel(cid, "Você está num veículo.") return false end 3° basta adicionar actionID nos tiles na frente do "depot" e configurar um onMoviment e checar a storage, se sim chama o codigo que remove o outfit/speed de carro. 4º mais uma vez, não tem no codigo a parte que ele desce do carro.1 ponto -
[TFS 1.2] Criatura não atacavel somente atingida por itens no chão
[TFS 1.2] Criatura não atacavel somente atingida por itens no chão
FlavioHulk reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoExato, então tem que definir isso no cod.. Vou fazer. ##EDIT: -- ######################################################## -- ########### Developed by Adriano Swatt' ########## -- ######################################################## local monster = {start = "Monk", final = "Dark Monk"} local trapList = { [2160] = {dmg = {100, 200}, eff = 6, txtcolor = 180}, -- dmg Dano{min, max}, eff = Efeito ao Pisar, txtcolor = Cor da Mensagem do Dano } function onStepIn(cid, item, position, fromPosition) if isMonster(cid) then getInfo = trapList[item.itemid] if getInfo then doRemoveItem(item.uid, 1) dano = math.random(getInfo.dmg[1], getInfo.dmg[2]) pos = getThingPos(cid) if getCreatureHealth(cid) > dano then doCreatureAddHealth(cid, -dano) else if getCreatureName(cid):lower() == monster.start:lower() then doRemoveCreature(cid) doSummonCreature(newMonster, pos) elseif getCreatureName(cid):lower() == monster.final:lower() then return true end end doSendAnimatedText(pos, ""..dano.."", getInfo.txtcolor) doSendMagicEffect(pos, getInfo.eff) end end return true end E registre no Movements.xml a tag abaixo: <movevent type="StepIn" itemid="2160" event="script" value="Armadilha.lua"/> Lembrando de mudar a ID do item /\ conforme sua intenção. Para adicionar mais itens à tag, use: 2160;2152;etc... e lembre-se de declarar também no script seguindo o modelo. Abraços e boa sorte.1 ponto -
Dailly Quest
Dailly Quest
Mateus Lagasse reagiu a carlinhosvrb por uma resposta no tópico
1 ponto1 ponto- script de shiny stone e boost stone
script de shiny stone e boost stone
arthurmgoncalves reagiu a luangop por uma resposta no tópico
1 pontoBoost stone: function onUse(cid, item, topos, item2, frompos) local myball = getPlayerSlotItem(cid, 8) local boost = getItemAttribute(myball.uid, "boost") or 0 local boosts = 0 local summon = getCreatureSummons(cid)[1] local lvfalha = 5 local chancefail = 50 if boost >= 50 then return doPlayerSendCancel(cid, "[BOOST VIP] Seu Pokemon Esta No Boost Maximo!.") end if #getCreatureSummons(cid) >= 1 then if boost > lvfalha then local qqq = math.random(1, 100) if qqq > chancefail then doSendAnimatedText(getThingPos(summon), "Fail!", 215) doPlayerSendTextMessage(cid, 27, "Sua boost stone falhou! [".. qqq .."/50]") doRemoveItem(item.uid, 1) return true end end boosts = boosts + 1 ----- Testar Ainda local pokemon = getItemAttribute(myball.uid, "poke") local off = pokes[pokemon].offense * boost_rate * boosts local def = pokes[pokemon].defense * boost_rate * boosts local agi = pokes[pokemon].agility * boosts local spatk = pokes[pokemon].specialattack * boost_rate * boosts local vit = pokes[pokemon].vitality * boost_rate * boosts doSetItemAttribute(myball.uid, "boost", boost + boosts) doItemSetAttribute(myball.uid, "offense", getItemAttribute(myball.uid, "offense") + off) doItemSetAttribute(myball.uid, "defense", getItemAttribute(myball.uid, "defense") + def) doItemSetAttribute(myball.uid, "speed", getItemAttribute(myball.uid, "speed") + agi) doItemSetAttribute(myball.uid, "specialattack", getItemAttribute(myball.uid, "specialattack") + spatk) doItemSetAttribute(myball.uid, "vitality", getItemAttribute(myball.uid, "vitality") + vit) doRemoveItem(item.uid, 1) doSendFlareEffect(getThingPos(cid)) doSendFlareEffect(getThingPos(summon)) doSendAnimatedText(getThingPos(summon), "Boost UP!", 215) doPlayerSendTextMessage(cid, 27, "[BOOST VIP] Parabens, Seu Pokemon "..pokemon..", Foi Boostado .") doPlayerSendTextMessage(cid, 27, "[BOOST VIP] Agora Seu Pokemon "..pokemon.." Esta com o Boost +["..boosts + boost.."].") else return doPlayerSendCancel(cid, "[BOOST VIP] So Pode Usar em Seus Pokemons!.") end return true end Poste o script da sua shiny stone!1 ponto- Remeres Map Editor - Nao exibe Sprites (Tela Preta) (RESOLVIDO, seguida de solução)
Bom pessoal, preferi não editar a postagem para que se entenda que solução foi encontrada posteriormente. Para aqueles que estiverem tendo um problema semelhante ao meu, depois de muitas tentativas, descobri uma solução, não sei se é a ideal, mas funcionou comigo. Utilizei uma versão estendida/extended encontrada aqui no forum mesmo, funcionou como uma luva. Segue o link para a correção deste "BUG", e talvez vale lembrar como informação adicional, que utilizo Windows 10. Abraço a todos1 ponto- [Pedido] Scripts Tibia Coin
[Pedido] Scripts Tibia Coin
Sh1br4nk4 reagiu a igorlabanca por uma resposta no tópico
1 pontoVai em actions.xml e adiciona <action itemid="24774" script="other/tibiacoin.lua"/> Vai na pasta actions/scripts/other e cria um arquivo tibiacoin.lua function onUse(player, item, fromPosition, target, toPosition, isHotkey) local points = 10 --aqui você bota a quantidade de coins que o item vai dar db.query("UPDATE `accounts` SET `coins` = `coins` + '" .. points .. "' WHERE `id` = '" .. player:getAccountId() .. "';") player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Você recebeu "..points.." coins") item:remove(1) return true end Testei em tfs 1.2 e funcionou1 ponto- Novos comandos para Guild: war, invite, broadcast
Testado no: TFS 0.4 Bom, esse script adiciona alguns comandos para auxiliar principalmente lideres de guildas, eu coloquei dois comandos padrões, porém se você tiver alguma ideia de comando, você pode adicionar na tabela. /guild - Mostra a lista de comandos. A lista de comandos aparece em um popup: O comando /guild mensagem é o broadcast, caso você desative-o nas configurações, ele irá sumir da lista de comandos. O preço também é configurável e caso você desative-o nas configurações, ele irá sumir da lista de comandos. - Instalação - Na pasta "OT/Data/Talkactions/Scripts", copie e cole um arquivo.LUA, renomeie para guildHelp.lua, apague tudo e cole: local config = { keys = { ["war"] = {msg = " está procurando por uma guerra", info = "Procurar por uma guerra."}, ["invite"] = {msg = " está procurando por membros", info = "Procurar por membros para sua guilda."}, }, needMoney = {on = true, price = 15000}, -- Ativar custo para usar comando. broadcast = true, -- Ativar mensagem livre, exemplo: /guild mensagem livre storage = 43095, -- Só altere caso seja necessário permission = {3, 2}, -- Permissões: 3 = Leader, 2 = Vice-Leader, 1 = Member cooldown = 5 -- Em minutos. } function onSay(cid, words, param) local key, inf = config.keys[param], '' for wa, kon in pairs(config.keys) do inf = inf ..words.. " " ..wa.. " - " .. kon.info .."\n" end if config.broadcast then inf = inf .. words .. " mensagem - Mensagem livre." end if config.needMoney.on == true then inf = inf .. "\n\nPreço: " .. config.needMoney.price end if not isInArray(config.permission, getPlayerGuildLevel(cid)) then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não tem permissão para usar esse comando.") and true elseif (param == "") then return doPlayerPopupFYI(cid, "Comandos:\n" ..inf) and true elseif getPlayerStorageValue(cid, config.storage) > os.time() then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde ".. math.ceil(getPlayerStorageValue(cid, config.storage) - os.time()) .." segundos para usar novamente.") and true elseif config.needMoney.on == true then if doPlayerRemoveMoney(cid, config.needMoney.price) == false then return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não tem ".. config.needMoney.price .." gold coins.") end end if key then doBroadcastMessage("O jogador [".. getCreatureName(cid) .."] da guild [".. getPlayerGuildName(cid) .."]".. key.msg ..".") setPlayerStorageValue(cid, config.storage, os.time() + config.cooldown * 60) elseif not key and config.broadcast == true then doBroadcastMessage("Player[".. getCreatureName(cid) .."] Guild(".. getPlayerGuildName(cid) .."): ".. param) setPlayerStorageValue(cid, config.storage, os.time() + config.cooldown * 60) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Comando inválido, digite apenas '.. words ..' para ver a lista de comandos.') end return true end Agora em "OT/Data/Talkactions", abra o arquivo talkaction.xml e adicione: <talkaction words="!guild;/guild" script="guildHelp.lua"/> É isso, caso tenha alguma sugestão ou encontre algum erro, me avise. Créditos: @Wakon1 ponto- [Pedido] Vip Effect
[Pedido] Vip Effect
Carlos Henrique II reagiu a CarlosHenrique7457 por uma resposta no tópico
1 pontoVlw Funcionou direitinho Vai em data\creaturescripts\scripts cria um arquivo com nome vipeffects.lua e cola o script dele la ae vc vai em na msm pasta data\creaturescripts\scripts procura por login.lua e cola isso la dentro Depis vai em data\creaturescripts e abre o creaturescripts.xml e cola isso la dentro1 ponto- Como Add Outfit
1 pontoTem como adicionar mais q o Outfit 25? Eu adicionei alguns outfits novos, mas quando eu passo do 25 Ele na reconhece, soh vai até o 25, tem como mudar isso?1 ponto- [PEDIDO] Server Poketibia Estilo PxG
[PEDIDO] Server Poketibia Estilo PxG
augustomedeiros28 reagiu a dodoby por uma resposta no tópico
1 pontoCara Acredito que não tenha nenhum estilo 100% PxG mais esse pode te ajudar --> http://www.tibiaking.com/forum/topic/27903-nova-vers%C3%A3opokemon-xrainpda-by-malconte/ AJUDEI?? De REP + nesse TOpico no tibiaking aki n conta --> Link removido by Comedinha1 ponto- Dat Editor [8.54~8.60]
Dat Editor [8.54~8.60]
Rian LHP reagiu a Adriano SwaTT por uma resposta no tópico
1 pontoBom dia. Faça o download deste "DatEditor", clicando no nome do mesmo. (Link direto do forum, postado por Vittu) Link do Scan. E na hora de abrir seus arquivos "Tibia.dat" e "Tibia.spr" da versão 8.60, estou postando essa observação que provavelmente solucionará seu problema. (funcionou comigo) Ao abrir o Dat Editor e clicar em "Open" ou "Ctrl + O" ... Abrirá uma janela como a da imagem abaixo: Carregue seu arquivo Tibia.dat e Tibia.spr do Tibia 8.60 e onde está "780" ao lado do botão "Open", marque a opção "760". Ou seja, quando selecionado a opção 760 é para versões recentes do Tibia, e quando marcado 780 é para versões abaixo de 8.5x' Creio que funcionará, caso dê algum erro... contacte-me' Abraços & Boa sorte.1 pontoLíderes está configurado para São Paulo/GMT-03:00 - script de shiny stone e boost stone
Informação Importante
Confirmação de Termo