Ir para conteúdo

Dolera

Membro
  • Registro em

  • Última visita

Tudo que Dolera postou

  1. Dolera postou uma resposta no tópico em Suporte & Pedidos
    Tenho relatos de players que tomam kick mesmo não usando bot, atualmente estou usando packet 25. Confirma o relato em seu servidor também?
  2. Já coloquei no player.lua onMoveitem.... já tinha mudado storage também, ainda adicionei print ali e não aparece nada na screen, parece que nem ta funcionando esse script do onmove
  3. Já testei esse ai também, funciona não... não acontece nada nesse script ai (não entendi mas....) é tfs 1.2+
  4. EDIT: TFS 1.2 Galera tava tentando fazer/achar algum script pra colocar exausted no stone skin amulet e alguns rings (evitar programa WPE), porém o resultado está em 90%. Nesse script abaixo o exausted funciona, porém o SSA fica infinito (não acaba as charges), alguém saberia fixar ou nos dizer uma outra solução? OBS. diminuir packets não é legal, pois muita gente usa MB e fica tomando kicks. script: <movevent event="Equip" itemid="2197" slot="necklace" script="ssa.lua" /> <movevent event="DeEquip" itemid="2197" slot="necklace" script="ssa.lua" /> local condition = Condition(CONDITION_EXHAUST_COMBAT) condition:setParameter(CONDITION_PARAM_TICKS, 2 * 1000) function onEquip(cid, item, slot) local player = Player(cid) if(player:getCondition(CONDITION_EXHAUST_COMBAT) == nil) then return true end return false end function onDeEquip(cid, item, slot) local player = Player(cid) player:addCondition(condition) return true end
  5. Dolera postou uma resposta no tópico em Suporte & Pedidos
    Se colocar packet "corretamente" um monte de player fica tomando kick aleatorio ;S tem que fazer um script, mas ta osso
  6. Dolera postou uma resposta no tópico em Suporte & Pedidos
    ninguém sabe como bloquear o programa wpe no ot? precisamos de um expert!
  7. Se eu escrever qualquer coisa como exemplo "aoskdoajh" da esse erro: http://prntscr.com/d3lrtl
  8. Tenho um script mas ta dando error, tfs 1.2 alguem fixar? ou possui um pra passar? random_items = { {5,2112,1}, -- 0.5% to get teddy bear {20,6512,1}, -- 2% to get santa doll {40,2114,1}, -- 4% to get piggy bank {80,2111,5}, -- 8% to get 5 snowballs {80,2688,8}, -- 8% to get 8 candy canes {80,2110,1}, -- 8% to get doll {400,2674,15}, -- 40% to get 15 red apples {450,2675,10}, -- 45% to get 10 oranges {1000,2687,8} -- 100% to get 8 cookies } PRESENT_STORAGE = 54163 -- storage ID 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 function creatureSayCallback(cid, type, msg) if not npcHandler:isFocused(cid) then return false end local player = Player(cid) if msgcontains(msg, "present") and npcHandler.topic[cid] == 0 then if player:getStorageValue(PRESENT_STORAGE) == 1 then npcHandler:say('I gave you a present already.', cid) return false else npcHandler:say("Were you good this year?", cid) npcHandler.topic[cid] = 1 end elseif msgcontains(msg, "yes") and npcHandler.topic[cid] == 1 then local item = {} local reward = 0 local count = "" for i = 1, #random_items do item = random_items[i] if (math.random(0,999) < item[1]) then reward = item[2] subType = item[3] if subType > 1 then count = subType .. " " end break end end player:addItem(reward, subType) player:setStorageValue(PRESENT_STORAGE, 1) elseif msgcontains(msg, "no") then npcHandler:say('Come back when you start behaving good.', cid) else npcHandler:say("What? I can't hear you.") end return true end npcHandler:setMessage(MESSAGE_GREET, "Merry Christmas |PLAYERNAME|. I'm Santa Claus. I got {presents} for good children.") npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  9. •War Anti-Entrosa (So Precisa Configurar) configurar onde? nao vi nada... só vi o npc
  10. Dolera postou uma resposta no tópico em Suporte Tibia OTServer
    tem o php dele e o sql ?
  11. Ou alguem fera ai pode me ajudar no store system, antes do 10.92 ele funcionava normal, depois disso ocorre os debbugs deve ser por falta de bytes... vou passar o codigo aqui pra quem puder olhar e ver se falta algo!!!!!!! OBRIGADOO void ProtocolGame::parseStoreOpen() { return sendStore(); } void ProtocolGame::parseStoreSelectCategory(NetworkMessage& msg) { std::string categoryName = msg.getString(); for (auto& category : g_store->getCategories()) { if (category.getName() == categoryName) { return g_dispatcher.addTask(createTask(std::bind(&ProtocolGame::sendStoreOffers, getThis(), category))); } } } void ProtocolGame::parseStoreBuyOffer(NetworkMessage& msg) { uint32_t offerId = msg.get<uint32_t>(); StoreOfferType_t offerType = static_cast<StoreOfferType_t>(msg.getByte()); std::string param; if (offerType == STORE_OFFERTYPE_NAMECHANGE) { param = msg.getString(); } auto offer = g_store->getOfferById(offerId); if (!offer) { sendStoreError(STORE_ERROR_PURCHASE, "Offer not found. Please reopen the store and try again."); return; } if ((strcasecmp(offer->getName().c_str(), "name change") == 0) && offerType != STORE_OFFERTYPE_NAMECHANGE) { requestPurchaseData(offerId, STORE_OFFERTYPE_NAMECHANGE); return; } addGameTask(&Game::playerPurchaseStoreOffer, player->getID(), offerId, param); } void ProtocolGame::parseStoreOpenHistory(NetworkMessage& msg) { storeHistoryEntriesPerPage = msg.getByte(); g_dispatcher.addTask(createTask(std::bind(&ProtocolGame::sendStoreHistory, getThis(), 0, storeHistoryEntriesPerPage))); } void ProtocolGame::parseStoreRequestHistory(NetworkMessage& msg) { uint16_t page = msg.get<uint16_t>(); g_dispatcher.addTask(createTask(std::bind(&ProtocolGame::sendStoreHistory, getThis(), page, storeHistoryEntriesPerPage))); } void ProtocolGame::parseTransferCoins(NetworkMessage& msg) { std::string recipient = msg.getString(); uint16_t amount = msg.get<uint16_t>(); addGameTask(&Game::playerTransferCoins, player->getID(), recipient, amount); } void ProtocolGame::sendStoreError(StoreError_t errorType, const std::string& message) { NetworkMessage msg; msg.addByte(0xE0); msg.addByte(errorType); msg.addString(message); writeToOutputBuffer(msg); } void ProtocolGame::requestPurchaseData(uint32_t offerId, StoreOfferType_t offerType) { NetworkMessage msg; msg.addByte(0xE1); msg.add<uint32_t>(offerId); msg.addByte(offerType); writeToOutputBuffer(msg); } void ProtocolGame::sendCoinBalance() { NetworkMessage msg; msg.addByte(0xF2); msg.addByte(0x01); msg.addByte(0xDF); msg.addByte(0x01); msg.add<uint32_t>(player->coinBalance); //total coins msg.add<uint32_t>(player->coinBalance); //transferable coins writeToOutputBuffer(msg); } void ProtocolGame::updateCoinBalance() { NetworkMessage msg; msg.addByte(0xF2); msg.addByte(0x00); writeToOutputBuffer(msg); g_dispatcher.addTask( createTask(std::bind([](ProtocolGame_ptr client) { auto coinBalance = IOAccount::getCoinBalance(client->player->getAccount()); client->player->coinBalance = coinBalance; client->sendCoinBalance(); }, getThis())) ); } void ProtocolGame::sendStore() { NetworkMessage msg; msg.addByte(0xFB); msg.addByte(0x00); //msg.add<uint32_t>(player->coinBalance); //msg.add<uint32_t>(player->coinBalance); msg.add<uint16_t>(g_store->getCategories().size()); for (auto& category : g_store->getCategories()) { msg.addString(category.getName()); msg.addString(category.getDescription()); msg.addByte(category.getIcons().size()); for (const auto& icon : category.getIcons()) { msg.addString(icon); } msg.addString(category.getParent()); } writeToOutputBuffer(msg); updateCoinBalance(); } void ProtocolGame::sendStoreOffers(StoreCategory& category) { NetworkMessage msg; msg.addByte(0xFC); msg.addString(category.getName()); msg.add<uint16_t>(category.getOffers().size()); for (auto& offer : category.getOffers()) { msg.add<uint32_t>(offer.getId()); msg.addString(offer.getName()); msg.addString(offer.getDescription()); msg.add<uint32_t>(offer.getPrice()); msg.AddByte(0x01); msg.AddByte(time(nullptr) + 3600); // time where offer expires msg.add<uint32_t>(offer.getPrice() + 10) // base price for offer msg.AddByte(0); msg.addByte(offer.getState()); msg.addByte(!g_store->executeOnRender(player, &offer)); msg.addByte(offer.getIcons().size()); for (const auto& icon : offer.getIcons()) { msg.addString(icon); } msg.add<uint16_t>(offer.getSubOffers().size()); for (auto& subOffer : offer.getSubOffers()) { msg.addString(subOffer.getName()); msg.addString(subOffer.getDescription()); msg.addByte(subOffer.getIcons().size()); for (const auto& icon : subOffer.getIcons()) { msg.addString(icon); } msg.addString(subOffer.getParent()); //serviceType } } writeToOutputBuffer(msg); } void ProtocolGame::sendStoreHistory(uint16_t page, uint32_t entriesPerPage) { // dispatcher thread std::vector<StoreTransaction> storeHistory; g_store->getTransactionHistory(player->getAccount(), page, entriesPerPage, storeHistory); if (storeHistory.size() == 0) { return sendStoreError(STORE_ERROR_HISTORY, "No entries yet."); } NetworkMessage msg; msg.addByte(0xFD); msg.add<uint32_t>(page); msg.add<uint32_t>((storeHistory.size() > entriesPerPage) ? 0x01 : 0x00); uint8_t entries = std::min<uint8_t>(entriesPerPage, static_cast<uint32_t>(storeHistory.size())); msg.addByte(entries); size_t count = 0; for (const auto& entry : storeHistory) { if (count++ == entriesPerPage) { break; } msg.add<uint32_t>(entry.timestamp); msg.addByte(0x00); // product type msg.add<int32_t>(entry.coins); msg.addString(entry.description); } writeToOutputBuffer(msg); }
  12. Dolera postou uma resposta no tópico em Ferramentas OpenTibia
    cade o download?
  13. Oi, preciso de um programador que manja MUITO pra fixar esse cast system do djarek pra usar no tfs 1.2 tibia 10.92 Pago pelo serviço, manda seu skype!
  14. @Luanluciano @Wakon qual a lógica que voces seguem pra pegar os valores hexadecimais? E tem a 10.92 ?
  15. Dolera postou uma resposta no tópico em Suporte Tibia OTServer
    Alguém da comunidade sabe fixar o famoso debug nos clients novos daquela cast? Pago pelo serviço
  16. OIII, @Bruno Minervino você irá colocar o update 10.92 meu amigo? obrigadoo mesmo
  17. Dolera postou uma resposta no tópico em Playground (Off-topic)
    ta morrendo por que ninguem responde dúvida, ai o pessoal procura em outros foruns mais ativos
  18. Dolera postou uma resposta no tópico em Playground (Off-topic)
    forum morto ninguem responde 1 duvida... http://www.tibiaking.com/forum/topic/66612-stage-exp/
  19. Dolera postou uma resposta no tópico em Suporte Tibia OTServer
    Oi.. como faz pra stage da exp ser 1.5 igual alguns ots? exemplo <stage minlevel="301" multiplier="1.5" /> meu ta funcionando assim nao, como fazer? só ta funcionando se for <stage minlevel="301" multiplier="1" /> cade o pessoal ?

Informação Importante

Confirmação de Termo