
Tudo que luangop postou
-
Como fazer o i parar
Por favor, poste o script completo para que eu possa ajudá-lo melhor.
-
É possivel adicionar script 0.4 para 0.5?
Provavelmente deve funcionar sim. Por via de dúvidas faça backup dos arquivos modificados antes e teste. Uma dúvida: Onde você arrumou esse tfs 0.5X?
-
(Resolvido)script pra explorar 100% do mapa
Manda pra mim por favor rsrs
-
[Pedido] Usar x item e ganhar outfit
man n manjo nada de tfs 1.x infelizmente n vou saber te ajudar.. até estou tentando aprender mas até agr n consegui nem compilar
-
ElfBot - Bypass auto-target
Manoo c tem dll fix para windos 10 sem ser essa pra burlar anti-elf? Só o elf normal msm podendo minimizar Manooo vc tem pra postar somente o fix do windows 10? Sem ser bypass pra usar em ot normal e poder minimizar
- Alfa-Baiak mapa completo
-
[Pedido] Usar x item e ganhar outfit
esse script é pra tfs 0.x não vai ser compatível na tfs 1.3
- Alfa-Baiak mapa completo
-
[8.60] Phoenix OT - Rebirth System - Pet System e Mais!
Consegue disponibilizar a source? esse .exe ai ta cheio de vírus
-
Alterar money para 64bits
Eu uso tfs 0.3.6 .. Mas mesmo assim obrigado vou dar uma estudada nela.
-
Alterar money para 64bits
Eu uso otclient, n o problema é com o servidor mesmo mano, as funções estão como int32 não reconhecendo assim valor maior que 2,147,483,648 ----EDIT Acho que vc entendeu mal o problema, não me refiro a janela de trade do npc, me refiro a função doPlayerRemoveMoney mesmo, que ao usar se o player tiver mais que 2,147,483,648 de money na bag buga e remove muito mais do que deveria.
-
Alterar money para 64bits
Estou usando tfs 0.3.6, tibia 8.54 (poketibia mas não interfere) Meu servidor é high exp e portanto os players acumulam altos valores de gold, para equilibrar tenho NPC's que vendem items a preços igualmente elevados. A questão é, na source as funções getPlayerMoney, doPlayerRemoveMoney e doPlayerAddMoney estão em 32 bits. Sendo assim se o player tiver mais de 2 bilhoes em dinheiro (worth, valor das notas no items.xml) na bag e fala com algum npc ou qualquer coisa que 'retire' 'dinheiro' da bag, buga e acaba removendo muito mais que deveria. Já tentei passar por conta as funções para 64bits mas não obtive sucesso. Alguém já mexeu com isso antes para me dar uma luz?
-
Monstros Focando Summons
@vyctor17 Primeiramente desculpe reviver o tópico... eu estou tentando fazer um sistema de guardian, ou cards como alguns chamam.. E neste sistema preciso que o summon que tenha a tag [GUARDIAN] no seu nome seja 'ignorado' pelas criaturas. Tipo com esse sistema o player vai ter 2 summons. O poke normal e o guardian. Se o player estiver usando seu poke normal e o guardian, o monstro deve focar somente no poke normal e ignorar o guardian. Se o player estiver sem o poke normal, usando apenas o guardian, o monstro deve focar no player ignorando completamente o guardian. Consegue me ajudar?
-
[Poketibia] Como alterar a EXP.
Uma ajuda para o tópico... Ao invés de usar uma nova função (totalmente desnecessária, pesando na memória ram do servidor) para mostrar números inteiros, utilize uma função padrão da linguagem lua.. exemplo: playerAddExp(pk, math.floor(expTotal / 10)) ou playerAddExp(pk, math.ceil(expTotal / 10)) Explicação: math.floor vai retornar um número inteiro menor ou igual ao resultado da equação. math.ceil vai retornar um número inteiro maior ou igual ao resultado da equação.
-
Erro no otclient Tela Preta e++
Up Alguém conseguiu resolver? Estou com o mesmo problema no meu OT de pokemon.
-
(Resolvido)Npc não funciona da maneira certa
Entendi.. Vou te ensinar a pescar nos 2 primeiros, o resto vc pesca sozinho. elseif msgcontains(msg, "shenron") or msgcontains(msg, "SHENRON") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then doPlayerSetVocation(cid, XXX) -- Vocation rebornada. selfSay("Parabens, voce virou um Shenron Reborn.", cid) else doPlayerSetVocation(cid, 376) -- Vocation normal. selfSay("Parabens, voce virou um Shenron.", cid) end elseif msgcontains(msg, "vegetto") or msgcontains(msg, "VEGETTO") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then doPlayerSetVocation(cid, XXX) -- Vocation rebornada. selfSay("Parabens, voce virou um Vegetto Reborn.", cid) else doPlayerSetVocation(cid, 388) -- Vocation normal. selfSay("Parabens, voce virou um Veggeto.", cid) end
-
Parou de funcionar...
Relacionado as portas, dependendo do seu provedor de internet eles tem que liberar no sistema deles. (Comigo foi assim) Sobre mudar de sqlite para mysql. Quando se faz uma mudança dessa tem que modificar as querys nos scripts. Todos os sistemas que pararam de funcionar devem ter sido programados apenas com query sqlite.
-
Arma editada só fica no chão
Você precisa editar seu items.otb, ele que está restringindo.
-
[Pedido] Usar x item e ganhar outfit
local outfit = XXXX -- Storage da outfit no outfits.xml function onUse(cid, item) if doPlayerRemoveItem(cid, item.itemid, 1) setPlayerStorageValue(cid, outfit, 1) return true end end E você precisa configurar a outfit em data/xml/outfits.xml da seguinte forma: <outfit id="47" quest="181644"> <list gender="0" lookType="1414" name="Nome da outfit"/> <list gender="1" lookType="1413" name="Nome da outfit"/> </outfit> Em outfit id="47" <~~ vc olha qual e a ultima outfit do seu xml, e aumenta 1. em quest="181644' <~~ vc coloca uma storage que vc ainda não utiliza no servidor, esta mesma storage vai la no outro script.
-
(Resolvido)Npc não funciona da maneira certa
E oque tem que acontecer? se for reborn tem que perder o reborn? Se for, isso vai resolver \/ local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local choose = {} local cancel = {} local available = {} function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_PRIVATE and 0 or cid if(msgcontains(msg, "vocacao")) then selfSay("Qual dessas vocacoes voce quer se tornar? Shenron(VIP), Vegetto(VIP), Tapion(FREE), Kame(VIP), King Vegeta(VIP), Kagome(VIP), Zaiko(VIP), Chilled(Free), C8(VIP), Bills(VIP), Whiss(VIP), Super Broly(VIP), Champa(VIP), Paikuhan(VIP), Botamo(Free), Jiren(VIP), Yamcha(Free), Zamasu(VIP), Goku Black(VIP).", cid) talkState[talkUser] = 1 elseif msgcontains(msg, "shenron") or msgcontains(msg, "SHENRON") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 376) selfSay("Parabens, voce virou um Shenron", cid) elseif msgcontains(msg, "vegetto") or msgcontains(msg, "VEGETTO") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 388) selfSay("Parabens, voce virou um Vegetto", cid) elseif msgcontains(msg, "tapion") or msgcontains(msg, "TAPION") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 400) selfSay("Parabens, voce virou um Tapion", cid) elseif msgcontains(msg, "kame") or msgcontains(msg, "KAME") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 413) selfSay("Parabens, voce virou um Kame", cid) elseif msgcontains(msg, "king vegeta") or msgcontains(msg, "KING VEGETA") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 425) selfSay("Parabens, voce virou um King Vegeta", cid) elseif msgcontains(msg, "kagome") or msgcontains(msg, "KAGOME") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 437) selfSay("Parabens, voce virou um Kagome", cid) elseif msgcontains(msg, "zaiko") or msgcontains(msg, "ZAIKO") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 449) selfSay("Parabens, voce virou um Zaiko", cid) elseif msgcontains(msg, "chilled") or msgcontains(msg, "CHILLED") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 461) selfSay("Parabens, voce virou um Chilled", cid) elseif msgcontains(msg, "c8") or msgcontains(msg, "C8") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 478) selfSay("Parabens, voce virou um C8", cid) elseif msgcontains(msg, "bills") or msgcontains(msg, "BILLS") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 552) selfSay("Parabens, voce virou um Bills", cid) elseif msgcontains(msg, "whiss") or msgcontains(msg, "WHISS") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 572) selfSay("Parabens, voce virou um Whiss", cid) elseif msgcontains(msg, "super broly") or msgcontains(msg, "SUPER BROLY") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 587) selfSay("Parabens, voce virou um Super Broly", cid) elseif msgcontains(msg, "champa") or msgcontains(msg, "CHAMPA") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 602) selfSay("Parabens, voce virou um Champa", cid) elseif msgcontains(msg, "paikuhan") or msgcontains(msg, "PAIKUHAN") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 615) selfSay("Parabens, voce virou um Paikuhan", cid) elseif msgcontains(msg, "botamo") or msgcontains(msg, "BOTAMO") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 627) selfSay("Parabens, voce virou um Botamo", cid) elseif msgcontains(msg, "jiren") or msgcontains(msg, "JIREN") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 640) selfSay("Parabens, voce virou um Jiren", cid) elseif msgcontains(msg, "yamcha") or msgcontains(msg, "YAMCHA") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 653) selfSay("Parabens, voce virou um Yamcha", cid) elseif msgcontains(msg, "zamasu") or msgcontains(msg, "ZAMASU") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 667) selfSay("Parabens, voce virou um Zamasu", cid) elseif msgcontains(msg, "goku black") or msgcontains(msg, "GOKU BLACK") and talk_state == 1 then if getPlayerStorageValue(cid, 30023) >= 1 then setPlayerStorageValue(cid, 30023, -1) end doPlayerSetVocation(cid, 681) selfSay("Parabens, voce virou um Goku Black", cid) elseif(msgcontains(msg, "bye") or msgcontains(msg, "goodbye") or msgcontains(msg, "cya")) then selfSay("cya!", cid, TRUE) closeShopWindow(cid) removeFocus(cid) end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
- Launcher AutoUpdate C#
-
Ajuda com query mysql na source tfs 0.4
tá no tópico ... No caso originalmente está assim na source: msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_LEVEL)); Neste msg->put.. preciso por o valor que se encontra na minha database, na tabela reset. Tentei assim mas não deu> Database* db = Database::getInstance(); DBQuery query; query << "SELECT `reset` FROM `players` WHERE `id` = " << player->getGUID(); DBResult* result; std::string resets; resets = result->getDataInt("reset"); int32_t resetes = atoi(resets.c_str()); msg->put<uint16_t>(resetes); Eu não sei fazer a query mysql e o code pra extrair a informação como int (número)
-
Ajuda com query mysql na source tfs 0.4
A qual parte se refere ser impossivel? eu já consegui alterar a informação que o servidor envia ao client, já está aparecendo meu level no lugar da exp, e resets no lugar do level quando uso o script de resets por storage, só não consigo fazer a query correta pra puxar a informação da database. Segue prints: prints
-
Ajuda com query mysql na source tfs 0.4
.Qual servidor ou website você utiliza como base? TFS 0.4 rev 3777 Qual o motivo deste tópico? Estou a dias tentando fazer uma função na source e não consigo, sou leigo. Este sistema é para um servidor exp alta, já consegui fazer o level do player aparecer no lugar da experiencia no client, pois no lugar do level buga quando chega em um número muito alto, para tal simplesmente fiz isso: uint64_t experience = player->getPlayerInfo(PLAYERINFO_LEVEL); msg->put<uint32_t>(experience); E como o servidor tem sistema de resets, eu queria fazer aparecer no lugar do level, o reset do player.. primeiramente meu sistema de resets era com storage, e eu consegui fazer isso da seguinte maneira: std::string value; player->getStorage(378378, value); int32_t resets = atoi(value.c_str()); msg->put<uint16_t>(resets); Mas por motivos de praticidade para incluir informações e sistemas no site, mudei meu sistema de reset para registrar os resets na database. no caso o nome da coluna ficou 'reset'. Então tentei fazer aparecer os resets no client com uma query mysql mas como não tenho conhecimento de mysql em C++ deu errado kk Vou postar como eu tentei: Database* db = Database::getInstance(); DBQuery query; query << "SELECT `reset` FROM `players` WHERE `id` = " << player->getGUID(); DBResult* result; std::string resets; resets = result->getDataInt("reset"); int32_t resetes = atoi(resets.c_str()); msg->put<uint16_t>(resetes);
-
Stack Item
Já vi ot com stack ate 999, mas creio que seja algo meio complicado de fazer.