Ir para conteúdo
  • Cadastre-se

Líderes

Conteúdo Popular

Mostrando conteúdo com a maior reputação desde 03/16/24 em

  1. function onStepIn(creature, item, position, fromPosition) local skillToTrain = SKILL_SWORD -- Substitua SKILL_SWORD pela habilidade que você deseja treinar local minSkill = 10 -- Substitua 10 pelo valor mínimo da habilidade para começar a treinar local gainChance = 50 -- Chance de ganhar skill, em porcentagem local requiredItemID = 1234 -- Substitua 1234 pelo ID do item necessário para treinar if creature:isPlayer() then local player = creature:getPlayer() -- Verifica se o jogador está equipado com o item necessário if player:getSlotItem(CO
    2 pontos
  2. Ok, fácil então... Procure essa linha function Player:onLook(thing, position, distance) É só prosseguir com cuidado, ok? function Player:onLook(thing, position, distance) local description = 'You see ' if thing:isItem() then if thing.actionid == 5640 then description = description .. 'a honeyflower patch.' elseif thing.actionid == 5641 then description = description .. 'a banana palm.' else description = description .. thing:getDescription(distance) end local itemType = thing:getType() if (i
    2 pontos
  3. PokeFans é um servidor feito em cima base disponibilizada pelo @pota. No inicio era um projeto para estudar a TFS 1.2, visto que sempre trabalhei com 0.3.6. Fiquei maravilhado com a simplicidade e as possibilidades quase infinitas da base. Comecei a me dedicar mais e eventualmente nos tornamos um servidor sério. O PokeFans possui diversos sistemas novos que foram implementados em cima da base POTA, muitos mesmos, seria incapaz de nomear todos neste post, então deixo o link do https://trello.com/b/ELrkzeTi/pokefans O servidor era muito popular por um tempo, atingind
    2 pontos
  4. i marge lasted changes on OTX repo OTX Server 2.16 :: Version "Opportunity" https://github.com/mattyx14/otxserver/commit/df20b073f84f539971725943b59a6be8033c3be4 LOG https://github.com/mattyx14/otxserver/blob/otxserv2/CHANGELOG#L37-L94
    2 pontos
  5. Em vez de contar a exp quando a pessoa morrer e depois novamente quando logar, usando 3 storages pra isso, acredito que seria melhor anotar o level na morte e simplesmente o npc conferir se o level atual é menor que o anterior salvo. Ainda dá pra melhorar algumas coisas, mas isso aqui funcionou pra mim: creaturescripts.xml: <event type="preparedeath" name="Exp_P" event="script" value="exp_buy.lua"/> login.lua: registerCreatureEvent(cid, "Exp_P") exp_buy.lua function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) setPlayerStorage
    2 pontos
  6. Geralmente associado com má configuração do app no mercado pago, cerifique-se seguir todos os passos para testar a sua conexão no próprio mercadopago.
    1 ponto
  7. local storage = 55512 -- Storage para controlar a spell local stage = getPlayerStorageValue(cid, storage) if stage and stage > 0 then local waittimes = {20, 30, 40, 50} -- Tempos de espera para cada estágio em segundos local remainingTime = (waittimes[stage] - (os.time() - getPlayerStorageValue(cid, storage .. "time"))) -- Tempo restante em segundos if remainingTime > 0 then addEvent(function() doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você está sob o efeito do estágio " .. stage .. " da spell.") end, 1000
    1 ponto
  8. function onCastSpell(cid, var) local storage = 55512 -- Storage para controlar a spell local stage = getPlayerStorageValue(cid, storage) or 0 -- Obtém o estágio atual da spell, se não houver nenhum, assume 0 local waittimes = {20, 30, 40} -- Tempos de espera para cada estágio em segundos if stage > 0 then doPlayerSendCancel(cid, "Você já está sob o efeito da spell.") return false end if not isCreature(cid) then return false end -- Definir o estágio inicial da spell setPlayerStorageValue(cid, storage, 1) stage = 1
    1 ponto
  9. function onCastSpell(cid, var) local waittime = 310 -- Tempo de exhaustion local storage = 55512 -- Storage para controlar a spell -- Verificar se o jogador já usou a spell if getPlayerStorageValue(cid, storage) > 0 then if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") end return false end if not isCreature(cid) then return false end exhaustion.set(cid, storage, waittime) setPlayerStorageValue(cid, storage,
    1 ponto
  10. sobre o script, tipo eu queria q depois q acabasse a spell voltasse pra -1 ou para 0 a storage pode ser qualquer um dos dois 0 ou -1, não sei se teria como. é uma spell de buff. vejo q você sempre esta ajudando aqui no TK inclusive ja me ajudou muito, não vejo ninguem mais ajudando alem de voce. vou deixar meu rep+ pra voce, sempre ta online ajudando a comunidade, vc é minha esperança.
    1 ponto
  11. function onCastSpell(cid, var) local waittime = 310 -- Tempo de exhaustion local storage = 55512 -- Storage para controlar a spell -- Verificar se o jogador já usou a spell if getPlayerStorageValue(cid, storage) > 0 then if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") end return false end if (not isCreature(cid)) then return false end exhaustion.set(cid, storage, waittime) setPlayerStorageValue(cid
    1 ponto
  12. Não jogar itens pelo teleportes C++ Bom.. o nome já diz, qualquer um que jogar itens nos teleportes do seu otserv, o mesmo será removido, como aquelas lixeiras, porem esse sistema é pela source, descartando scripts .LUA. Em teleporte.cpp ache: void Teleport::__addThing(Creature* actor, int32_t, Thing* thing) { if(!thing || thing->isRemoved()) return; Tile* destTile = g_game.getTile(destination); if(!destTile) return; if(Creature* creature = thing->getCreature()) { g_game.addMagicEffect(creature->getPo
    1 ponto
  13. precisa ter um moveitem instalado no seu servidor OU Tente algo como isso void Teleport::__addThing(Creature* actor, int32_t, Thing* thing) { if (!thing || thing->isRemoved()) return; Tile* destTile = g_game.getTile(destination); if (!destTile) return; if (Creature* creature = thing->getCreature()) { g_game.addMagicEffect(creature->getPosition(), MAGIC_EFFECT_TELEPORT, creature->isGhost()); creature->getTile()->moveCreature(actor, creature, destTile); g_game.addMagicEffect(destTile->g
    1 ponto
  14. Bom dia, Teria como colocar para bloquear de jogar o item em cima de teleports com storage ? E esse seu em vez de remover o item teria como bloquear também?
    1 ponto
  15. Adorei amigo muito bom
    1 ponto
  16. Underewar

    NPCS YALAHAR (.npc)

    Não existe tal ferramenta você vai ter que fazer um a um, ou criar um bot para converter os scripts.
    1 ponto
  17. 1 ponto
  18. Fala Luan, como sempre tu arrebenta em kkkkkk, parabéns pelo trampo irmão , deu certo desta vez. Obrigado Fala Luan, como sempre tu arrebenta em kkkkkk, parabéns pelo trampo irmão , deu certo desta vez. Obrigado
    1 ponto
  19. procure a opção de OldProtocol no config.lua e deixe true, depois só logar pelo otc na versão 11
    1 ponto
  20. É um tutorial ou você precisa de suporte sobre o mesmo, eu nao entendi??
    1 ponto
  21. Isso?? local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH) function damage(cid, level, maglevel, targetPosition) local min = 1000000000 local max = 1000000000 return -min, -max, getDirectionTo(targetPosition) -- Retorna também a direção para o alvo end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "damage") function onCastSpell(cid, var) local target = variantToPosition(va
    1 ponto
  22. x64.rar para quem precisa das soucers compilada esta ai
    1 ponto
  23. Meio q pausa o console, parece tipo aquele negócio de segundo plano, tente ver na propriedade do console algo que bloqueia ao minimizar saca?
    1 ponto
  24. Toni Reinbold

    AutoRestarter Windows

    Bom, fiz esse Autorestarter para Windows. Ele faz pausas de 3 segundos entre as verificações se o programa esta aberto ou não. Feito por mim! Edit: O programa deve ficar na mesma pasta do seu servidor, junto com sua engine. Download: https://www.mediafire.com/file/d55ejj28rfjr9yc/Restarter.exe/file Scan: https://www.virustotal.com/gui/url/850a7bf16843c85320da7470399d0d267a8a884dcf262c796fcf88a35ac62b58/detection
    1 ponto
  25. Para aqueles que estão interessados em adotar a base do Nekiro, gostaria de anunciar que as montarias e a modal widow agora estão disponíveis. Se você deseja implementar sistemas como o de crafting com modal e outros recursos, sinta-se à vontade para fazer o download e testar. É importante observar que o Nekiro não incluiu mapas nesta versão. Portanto, será necessário migrar seus próprios mapas para o TFS 1.5 8.6. Alternativamente, você pode considerar utilizar a base do Luciano, conhecida como STYLLER OT. Após realizar testes, posso confirmar que essa é uma opção bastante interessante. E
    1 ponto
  26. great contribution, there are still some cool ones, like for example, "monster cal walk on fields" putting assets in config.lua, I will make some changes and make necessary PR's, these changes (there were many), are certainly a great contribution to the community
    1 ponto
  27. <vocation id="2" name="Mage" <vocation id="3" name="Paladin" <vocation id="4" name="Knight" <vocation id="6" name="[VIP] Mage" <vocation id="7" name="[VIP] Paladin" <vocation id="8" name="[VIP] Knight" QUERO QUE O SCRIPT FUNCIONE QUANDO USA GEMA NO JOGO E QUANDO DESLOGA E LOGA FICA COM EFEITO. creatuescript .logingema.lua function onLogin(cid) setPlayerStorageValue(cid, 47112120, 2) local voc = getPlayerVocation(cid) if getPlayerStorageValue(cid, gems.storage[getPlayerVocation(cid)]) > 0 then sendGemEffect(cid, gems.st
    1 ponto
  28. Olá galera, é com muita dedicação que trago para este forum uma exclusividade que só eu tinha. Mapa Dragonsouls 11x 99%, tem alguns detalhes de sqm ou borda que você possa precisar fazer, Dragonsouls é um servidor ATS Custom, baseado em senhor dos aneis. via muita gente perguntando por esse mapa e eu tinha a muitos anos, resolvi converter. mas ele está 99% pronto para uso. Esse mapa é 100% compativel para rodar na Datapack Otg Server 11, Otg Server é um projeto que trabalha com varias datapacks de tibia rl e ATS Custom. Github: https://github.co
    1 ponto
  29. Servidor testado 0.3.6 8.60 - Podendo funcionar em 0.4 Primeiro vou explicar um pouco sobre ele é base do script do @xWhiteWolf e modificado para escalar com skill pelo @BangxD e agora modificado novamente para não só funcionar com players mas também com todos os monstros. Instalação Se ja tem instalado siga as instruções abaixo para instalar o script basta remover o registro do login.lua, alterar a tag XML pela nova fornecida Caso não tenha instalado basta instalar normalmente criando o arquivo critical.lua e adicionando as tag no XML Tag XML
    1 ponto
  30. Hoje vim trazer como trocar o nome das skills na source!! eu estava procurando como fazer isso mas nunca tinha achado então resolvi eu mesmo mexer e consegui achar e estou trazendo para vocês! já que eu consegui e vi vários querendo e não conseguem vim trazer a solução do tal You advanced to ou You advanced from Versão para TFS 0.4 Abra seu Dev C++ source e vá em Player.cpp e procure por! char advMsg[50]; sprintf(advMsg, "You advanced to magic level %d.", magLevel); sendTextMessage(MSG_EVENT_ADVANCE, advMsg); substitua por: ou do jeito que vocês pr
    1 ponto
  31. @FearWar data\creaturescripts\scripts crie um arquivo chamado reflectStone.lua e adicione isso nele: local lvldodge = 48903 local percent = 0.5 function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS and isCreature(attacker) then if (getPlayerStorageValue(cid, lvldodge)*3) >= math.random (0,1000) then value = math.ceil(value*(percent)) doCreatureAddHealth(attacker, -value) doSendAnimatedText(getCreaturePos(cid), "Reflected!", 6) return false end end return true end creaturescripts.xml: <
    1 ponto
  32. Alguem tendo esse problema? Ja tentei aumentar os thread-stacks para 256k, e nada de funcionar
    1 ponto
  33. to com erro na hora de criar a conta . Error. Can't create character. Probably problem with database. Try again or contact with admin. alguem sabe resolver?
    1 ponto
  34. @OrientalzVai no arquivo que te falei e substitui: function generate_recovery_key() { $this->load->helper("form"); $ide = new IDE; $ide->requireLogin(); $this->load->model("Account_model"); POR: function generate_recovery_key() { $this->load->helper("form"); $ide = new IDE; $ide->requireLogin(); $this->load->model("Account_model"); if($this->Account_model->getRecoveryKey($_SESSION['name'])) { alert("<b>You can't generate a new KEY</b>"); return false; }
    1 ponto
  35. BangxD

    System Elo

    desculpe pow nao ter mandado o link, pensei que voces ja tinha kkk. é só baixa esse servidor que ja vai ter um sistema de kage. tudo que voce falou no link ai em cima tem mano. só falta alguns ajuste pra ficar parecido com nto ultimate.
    1 ponto
  36. Mask Ghoul

    System Elo

    Uhum, Eu tenho interessante , Vou criar o sistema elo instalação OTX e TFS 0.4. Me apoie :D
    1 ponto
  37. Em game.cpp procure por abaixo em "sprintf(buffer, "%d", damage);" mude para "sprintf(buffer, "-%d", damage);"
    1 ponto
  38. Ola, Bom dia ! Segue a baixo V Primeiro Baixe o DEV C++ 64Bits: http://www.mediafire.com/file/b33rgfnouskvq23/Stian's+Repack+Dev-Cpp+0.2%2C+64bit.7z Scan: https://www.virustotal.com/pt/file/b1143cce369f8475360bc5b9affe071e20fb2e6648e85b1d0a3f005032ed7109/analysis/1429025130/ 32Bits: http://www.mediafire.com/file/1bh07udi3ke05rv/Stian's+Repack+Dev-Cpp.rar Scan: https://www.virustotal.com/pt/file/60eb7813187561235eb33d4a452865c5de5a46ee95b29181a923100164a2ea9c/analysis/1429025468/ extrai DEV C++ no Disco C e REV 3884 em Documentos.
    1 ponto
  39. J.L

    Mudar nome do cliente otc

    Para mudar o titulo do OTC vá em modules > Client > Client.lua & procure por g_window.setTitle Do lado será o titulo do OTC. Para mudar a outra parte vai em modules > client_background > background.lua & procure por clientVersionLabel, lá estará onde quer editar !
    1 ponto
  40. KotZletY

    STUN (PARALYZE)

    @xdas não cara, você pegou o errado, você deve esperar minha resposta carregar 100%, você voltou para a primeira pagina e pegou o script errado:
    1 ponto
  41. O Nome das skills dá pra mudar em Data/locales. E para deixar (nome do seu servidor".exe") é só muda em modules/client g_window.setTitle('OTClient')
    1 ponto
  42. Ei amigo! Só passando pra informar que finalizei a primeira parte do seu pedido. Peço desculpas pela demora, conforme lhe expliquei, minha faculdade é realmente puxada, agora mesmo estou virando a noite estudando, mas dei uma pausa e resolvi trabalhar no que você pediu pra esfriar a cabeça. Enfim, fiz a parte sobre o summon seguir o jogador. Vamos lá. Vá na pasta data/globalevents/scripts e crie um novo arquivo chamado summonseguir.lua e cole o seguinte conteúdo nele: function onThink(cid, interval) for _, pid in ipairs(getPlayersOnline()) do local distmax = 3
    1 ponto
  43. Estive com o mesmo problema a alguns dias, procurei uma solução e encontrei este tópico. Após conseguir solucionar meu problema resolvi postar aqui caso alguém tenha o mesmo problema.. Se o char não está salvando as skills é porque provavelmente não existem os registros em players_skills, então vamos adicionar. 1º) Vamos achar o ID do player: Em seu banco de dados vá até a tabela players e clique em pesquisar, localizado na parte superior da pagina (IMAGEM DE UMA LUPA). No bloco "name" digite o nome do player bugado e aperte enter pra executar.
    1 ponto
  44. Olha oq eu fiz: local bars = {2160} --ID do itens em quantidade local meat = {2666} --ID do itens em quantidade local naruto = {1999, 7436, 2665, 2417, 2427, 7387, 2545} -- itens soh pra sorc local sasuke = {1999, 7436, 2665, 2417, 2427, 7387, 2545} -- itens soh pra sasukea local lee = {1999, 7436, 2665, 2417, 2427, 7387, 2545} -- itens soh pra paladim local sakura = {1999, 7436, 2665, 2417, 2427, 7387, 2545} -- itens soh pra sakura function onLogin(cid) if getPlayerLastLoginSaved(cid) == 0 then doPlayerSendTextMessage(cid,22,"Voce acabou de conseguir os Items Iniciais!") if getPlayer
    1 ponto
  45. Qual a versão do seu TFS #Edit, Tem que ter algum item no que tem em comum, ou apaga as linhas local firstItems = {2665, 2417, 2427, 2379, 2545, 7387, 7436, 2666} --ID dos itens EM COMUMe for i = 1, #firstItems do player:addItem(firstItems[i], 1) endSe tu for colocar uma bolsa por exemplo, faz assim:
    1 ponto
  46. faz as duas numa só igual eu falei e ao invés de colocar retorn = tal coisa vc coloca só todos os combats local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, parameters.combat3, parameters.var) end local function onCastSpell4(parameters) doCombat(parameters.cid, parameters.xcombat1, parameters.var) end local function onCastSpell5(parameters) doCombat(parameters.cid
    1 ponto
  47. `OT` é o nome da database... se vc usar esse comando irá colocar todos os player lvl 8. UPDATE `ot`.`players` SET `level` = '8', `health` = '180', `healthmax` = '180', `experience` = '4200', `mana` = '35', `manamax` = '35', `cap` = '400' UPDATE `ot`.`players_skills` SET `value` = '10'
    1 ponto
  48. Você pode fazer uma condição na busca, caso o resultado seja os samples vai dizer que a busca é inválida se não for os samples a busca continua normal, é claro que você terá que conhecer sobre php para fazer.. Mais é um jeito de não mostrar as informações sobre eles, acho que pela database é meio difícil. O higthscore com o tempo eles vão sair da página pode ser fazer o mesmo..
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo