Ir para conteúdo

Ohko

Membro
  • Registro em

  • Última visita

Tudo que Ohko postou

  1. 1>------ Build started: Project: theforgottenserver, Configuration: Debug x64 ------ 1> otpch.cpp 1> Unknown compiler version - please run the configure tests and report the results 1> actions.cpp 1> ban.cpp 1> baseevents.cpp 1> bed.cpp 1> chat.cpp 1> combat.cpp 1> commands.cpp 1> condition.cpp 1> configmanager.cpp 1> connection.cpp 1> container.cpp 1> creature.cpp 1> creatureevent.cpp 1> cylinder.cpp 1> database.cpp 1> databasemanager.cpp 1> databasetasks.cpp 1> depotchest.cpp 1> depotlocker.cpp 1> events.cpp 1> fileloader.cpp 1> game.cpp 1> globalevent.cpp 1> groups.cpp 1> guild.cpp 1> house.cpp 1> housetile.cpp 1> inbox.cpp 1> ioguild.cpp 1> iologindata.cpp 1> iomap.cpp 1> iomapserialize.cpp 1> iomarket.cpp 1> item.cpp 1> items.cpp 1> luascript.cpp 1> mailbox.cpp 1> map.cpp 1> monster.cpp 1> monsters.cpp 1> mounts.cpp 1> movement.cpp 1> networkmessage.cpp 1> npc.cpp 1> otserv.cpp 1> outfit.cpp 1> outputmessage.cpp 1> party.cpp 1> player.cpp 1> position.cpp 1> protocol.cpp 1> protocolgame.cpp 1> protocollogin.cpp 1> protocolold.cpp 1>C:\local\boost_1_57_0\boost/lockfree/stack.hpp(139): error C2280: 'std::atomic<boost::lockfree::detail::tagged_index>::atomic(void) noexcept': attempting to reference a deleted function (compiling source file ..\src\outputmessage.cpp) 1> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\atomic(662): note: see declaration of 'std::atomic<boost::lockfree::detail::tagged_index>::atomic' (compiling source file ..\src\outputmessage.cpp) 1> C:\local\boost_1_57_0\boost/lockfree/stack.hpp(137): note: while compiling class template member function 'boost::lockfree::stack<T *,boost::lockfree::capacity<2048>,boost::parameter::void_,boost::parameter::void_>::stack(void)' 1> with 1> [ 1> T=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> c:\users\user\downloads\vanaheim-master\src\lockfree.h(53): note: see reference to function template instantiation 'boost::lockfree::stack<T *,boost::lockfree::capacity<2048>,boost::parameter::void_,boost::parameter::void_>::stack(void)' being compiled 1> with 1> [ 1> T=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> c:\users\user\downloads\vanaheim-master\src\lockfree.h(43): note: see reference to class template instantiation 'boost::lockfree::stack<T *,boost::lockfree::capacity<2048>,boost::parameter::void_,boost::parameter::void_>' being compiled 1> with 1> [ 1> T=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> c:\users\user\downloads\vanaheim-master\src\lockfree.h(42): note: while compiling class template member function 'void LockfreePoolingAllocator<U,2048>::deallocate(T *,size_t) const' 1> with 1> [ 1> U=_Refoa, 1> T=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xmemory0(909): note: see reference to function template instantiation 'void LockfreePoolingAllocator<U,2048>::deallocate(T *,size_t) const' being compiled 1> with 1> [ 1> U=_Refoa, 1> T=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\xmemory0(799): note: see reference to class template instantiation 'LockfreePoolingAllocator<U,2048>' being compiled 1> with 1> [ 1> U=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\memory(987): note: see reference to class template instantiation 'std::_Wrap_alloc<LockfreePoolingAllocator<U,2048>>' being compiled 1> with 1> [ 1> U=_Refoa 1> ] (compiling source file ..\src\outputmessage.cpp) 1> ..\src\outputmessage.cpp(81): note: see reference to function template instantiation 'std::shared_ptr<OutputMessage> std::allocate_shared<OutputMessage,OutputMessageAllocator,>(const _Alloc &)' being compiled 1> with 1> [ 1> _Alloc=OutputMessageAllocator 1> ] 1> C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\chrono(813): note: see reference to class template instantiation 'std::chrono::duration<__int64,std::milli>' being compiled (compiling source file ..\src\outputmessage.cpp) 1> quests.cpp 1> raids.cpp 1> rsa.cpp 1> scheduler.cpp 1> scriptmanager.cpp 1> server.cpp 1> spawn.cpp 1> spells.cpp 1> protocolstatus.cpp 1> talkaction.cpp 1> tasks.cpp 1> teleport.cpp 1> thing.cpp 1> tile.cpp 1> tools.cpp 1> trashholder.cpp 1> vocation.cpp 1> waitlist.cpp 1> weapons.cpp 1> wildcardtree.cpp ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Tentei compilar aparece esse erro. O que devo fazer?
  2. Oblinez, Verifique este link - > http://www.tibiaking.com/forum/topic/59578-como-resolver-configlua-lua-config-file-doesnt-exist-path-otserv/#comment-346853 Se te ajudei, deixe um Rep+ :D
  3. Segui os passos acima porém apresentou este erro > event on modal window not found < será que é porque meu TFS 1.0? 10.78? Grato.
  4. Se for possivel posta uma imagem desta sprite, dentro do jogo.
  5. Ohko respondeu ao post em um tópico de kamus9629 em Suporte Tibia OTServer
    poste os scripting, shop.lua, items.xml e a database que você usa no XAMPP, além de informar por exemplo qual item é comprado e que não chega para os players.
  6. Esta tentando criar pelo site ou pelo phpmyadmin?
  7. Instalando Xampp na hospedagem.
  8. Usou a mesma ID do baú? Quando clica no baú aparece algum erro no log do server?
  9. hmm...penso que a pergunta foi respondida, porém, e os spawns, npcs,actions...etc Isto também tem que mudar não?!
  10. Juan, já resolveu o seu problema?
  11. Agora funcionou, você é 10! Não respondi antes pois estava viajando. Obrigado meu caro mais uma vez.
  12. Lukz, bom dia. (now 8:00) Continua sem funfar, no caso é mage, dai alterei o text de "You lose (.+) hitpoints due to an attack by a zurik cyclops.", para "You lose (.+) mana hitpoints due to an attack by a zurik cyclops.", devido o dano ser na mana, mais o bot continua ignorando o dano. No caso não da "Walker Stop" será que é isto? "You lose (.+) hitpoints due to an attack by a stalker." Desde já agradeço.
  13. Caros colegas, Como fazer o Xenobot atacar monstro invisível ? Quando o monstro fica invisível ele o ignora e segue o [Walker], lembro que tinha um bot que revelava o monstro invisível (agente que escolhia a outfit), e em seguida atacava o mesmo. Agradeço antecipadamente.
  14. Ohko respondeu ao post em um tópico de Ohko em Xeno Bot
    ADM - Pode encerrar este tópico (Parcialmente resolvido).
  15. Ohko respondeu ao post em um tópico de Ohko em Xeno Bot
    Caro Lukz, Obrigado pelo script, resolveu parte do problema, agora o char pelo menos abre o corpo e pega o item, mais mesmo assim não abre todos.Ex: Quando ele mata mais de um, respawn com dois. Sim. É o caso.. Sim já fiz isso, e também dava um reboot no tibia e no Xenobot, mais não funciona. Desde já agradeço.
  16. Ohko respondeu ao post em um tópico de Ohko em Xeno Bot
    Quando morre aperece, (15:29 You see a dead sea serpent (Vol:20). [ID 951]). Se alguém souber o scripting eu agradeço.
  17. Caso vocês souberem quem criou o scripting, por favor me informar o créditos para eu editar. while (true) do cID_cName = { [1] = "3478", } cID_ID = { [1] = {3031, 3059, 3265, 3282, 3285, 3409}, } function itemFix(item) return 0 end if (type(getItemCost) == "nil") then print("XenoBot: You are using an old version that does not support Item.GetCost(). Therefore the function was replaced.") Item.GetCost = itemFix end if (type(getItemValue) == "nil") then print("XenoBot: You are using an old version that does not support Item.GetValue(). Therefore the function was replaced.") Item.GetValue = itemFix end --- Get monsterid from name. -- Returns the monsterid by providing it's name -- @class Creature -- @param creature the monster's name -- @return number the monsterid function Creature.GetMonsterID(creature) for id, name in pairs(cID_cName) do if (name:lower() == creature:lower()) then return id end end return 0 end Settings = {} --- Create deposit list -- Prints a list for stackable and non-stackable items used for the Self.DepositItems() function -- @class Settings -- @param minvalue the minimum value of an item to be added to the list -- @param stackbp the backpack index where stackable items should go to -- @param nonstackbp the backpack index where non-stackable items should go to -- @param creatures a table or single creature which you want to get the loot of -- @return nothing function Settings.CreateDepositList(minvalue, stackbp, nonstackbp, creatures, ch) minvalue = minvalue or -1 stackbp = stackbp or 0 nonstackbp = nonstackbp or 0 local stackables = {} local nonstackables = {} if (type(creatures) == "table") then for _, name in ipairs(creatures) do local creatureID = Creature.GetMonsterID(name) if (creatureID ~= 0) then for _, item in ipairs(cID_iID[creatureID]) do if (Item.GetCost(item) >= minvalue or Item.GetValue(item) >= minvalue) then if (Item.isStackable(item) and not table.contains(stackables, item)) then stackables[#stackables+1] = "{" .. item .. ", " .. stackbp .. "}" elseif (not Item.isStackable(item) and not table.contains(nonstackables, item)) then nonstackables[#nonstackables+1] = "{" .. item .. ", " .. nonstackbp .. "}" end end end else ch:SendOrangeMessage("XenoBot", "Could not find creature with name '" .. name .. "'.") end end else local creatureID = Creature.GetMonsterID(creatures) if (creatureID ~= 0) then for _, item in ipairs(cID_iID[creatureID]) do if (Item.GetCost(item) >= minvalue or Item.GetValue(item) >= minvalue) then if (Item.isStackable(item) and not table.contains(stackables, item)) then stackables[#stackables+1] = "{" .. item .. ", " .. stackbp .. "}" elseif (not Item.isStackable(item) and not table.contains(nonstackables, item)) then nonstackables[#nonstackables+1] = "{" .. item .. ", " .. nonstackbp .. "}" end end end end end local depositlist = {} for i = 1, #nonstackables do depositlist[#depositlist+1] = nonstackables[i] end for i = 1, #stackables do depositlist[#depositlist+1] = stackables[i] end ch:SendOrangeMessage("XenoBot", "Self.DepositItems(" .. table.concat(depositlist, ", ") .. ")") end --- Create loot list -- Creates a lootlist and additionally a file in your Settings folder named XenoBot - Lootlist.xbst -- @class Settings -- @param minvalue the minimum value of an item to be added to the list -- @param stackbp the backpack number where stackable items should go to -- @param nonstackbp the backpack number where non-stackable items should go to -- @param creatures a table or single creature which you want to get the loot of -- @return boolean true or false function Settings.CreateLootList(minvalue, stackbp, nonstackbp, creatures, ch) minvalue = minvalue or -1 stackbp = stackbp or 0 nonstackbp = nonstackbp or 0 local function tSort(t) table.sort(t) return pairs(t) end local function iName(i) local n = Item.GetName(i) if (n ~= "unknown") then return n end return "?" end local function wFile(n, t) local f = io.open("..\\Settings\\"..n..".xbst", "a") f:write(t.."\n") f:close() end local fname = "XenoBot - Lootlist" local lootlist = {} local lootvalue = {} if (type(creatures) == "table") then header = "<!-- Creatures: "..table.concat(creatures, ", ").." -->" for _, name in ipairs(creatures) do local creatureID = Creature.GetMonsterID(name) if (creatureID ~= 0) then for _, item in ipairs(cID_iID[creatureID]) do if (not table.contains(lootlist, item) and (Item.GetCost(item) >= minvalue or Item.GetValue(item) >= minvalue)) then if (Item.GetValue(item) > 0) then lootvalue[#lootvalue+1] = Item.GetValue(item) else lootvalue[#lootvalue+1] = 0 end lootlist[#lootlist+1] = item end end else ch:SendOrangeMessage("XenoBot", "Could not find creature with name '" .. name .. "'.") end end else header = "<!-- Creatures: "..creatures.." -->" local creatureID = Creature.GetMonsterID(creatures) if (creatureID ~= 0) then for _, item in ipairs(cID_iID[creatureID]) do if (not table.contains(lootlist, item) and (Item.GetCost(item) >= minvalue or Item.GetValue(item) >= minvalue)) then if (Item.GetValue(item) > 0) then lootvalue[#lootvalue+1] = Item.GetValue(item) else lootvalue[#lootvalue+1] = 0 end lootlist[#lootlist+1] = item end end end end if (#lootlist > 0) then local f = io.open("..\\Settings\\"..fname..".xbst", "w") f:close() wFile(fname, header) wFile(fname, "<panel name=\"Looter\">") wFile(fname, " <control name=\"LootList\" first=\"0\" unlisted=\"0\">") local val = {} for k, v in tSort(lootvalue) do if (not table.contains(val, v)) then val[#val+1] = v end end local i = #val while (i > 0) do for j = 1, #lootlist do if (Item.GetValue(lootlist[j]) == val[i]) then if (Item.isStackable(lootlist[j])) then wFile(fname, " <item ID=\""..lootlist[j].."\" action=\"" .. stackbp-1 .. "\"/> <!-- "..iName(lootlist[j]).." -->") else wFile(fname, " <item ID=\""..lootlist[j].."\" action=\"" .. nonstackbp-1 .. "\"/> <!-- "..iName(lootlist[j]).." -->") end end end i = i - 1 end wFile(fname, " </control>") wFile(fname, "</panel>") loadSettings(fname, "All") ch:SendOrangeMessage("XenoBot", "Created lootlist successfully.") return true end return false end function explode(div, str) if (div == '') then return false end local pos, arr = 0, {} for st, sp in function() return string.find(str, div, pos, true) end do table.insert(arr, string.sub(str, pos, st - 1)) pos = sp + 1 end table.insert(arr, string.sub(str, pos)) for i = 1, #arr do arr[i] = arr[i]:trim() end return arr end local lootlist = false local depositlist = false local loads = false local list = false function onSpeak(ch, cmd) ch:SendYellowMessage(Self.Name(), cmd) cmd = cmd:lower() if (cmd == "loot" and not lootlist and not depositlist) then lootlist = true ch:SendOrangeMessage("XenoBot", "Please type 'load' if you want to load the creature list from a XenoBot Settings's Targeting list.") ch:SendOrangeMessage("XenoBot", "Please type 'enter' if you want to enter the creature list yourself.") elseif (cmd == "deposit" and not depositlist and not lootlist) then depositlist = true ch:SendOrangeMessage("XenoBot", "Please type 'load' if you want to load the creature list from a XenoBot Settings's Targeting list.") ch:SendOrangeMessage("XenoBot", "Please type 'enter' if you want to enter the creature list yourself.") elseif (cmd == "load" and (lootlist or depositlist) and not loads and not list) then loads = true ch:SendOrangeMessage("XenoBot", "Please type the name of the Settings file.") elseif (cmd == "enter" and (lootlist or depositlist) and not list and not loads) then list = true ch:SendOrangeMessage("XenoBot", "Please type every creature name separated by a comma.") else if (cmd == "restart") then lootlist = false depositlist = false loads = false list = false ch:SendOrangeMessage("XenoBot", "Please type 'loot' to create your own list for XenoBot's Looter.") ch:SendOrangeMessage("XenoBot", "Please type 'deposit' to create your own list for XenoBot's Self.DepositItems() function.") elseif (cmd:find(".xbst") and loads and (lootlist or depositlist)) then if (lootlist) then xpcall( function() local file = io.open("..\\Settings\\".. cmd, "r") local data = file:read("*all") file:close() creatureTable = {} for k, v in string.gmatch(data, '<item type="(.-)"') do creatureTable[#creatureTable+1] = k end Settings.CreateLootList(-1, 1, 2, creatureTable, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "The file could not be found. Please check if you have spelled the name correctly.") end ) elseif (depositlist) then xpcall( function() local file = io.open("..\\Settings\\".. cmd, "r") local data = file:read("*all") file:close() creatureTable = {} for k, v in string.gmatch(data, '<item type="(.-)"') do creatureTable[#creatureTable+1] = k end Settings.CreateDepositList(-1, 1, 2, creatureTable, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "The file could not be found. Please check if you have spelled the name correctly.") end ) end elseif (cmd:find(",") and list and (lootlist or depositlist)) then if (lootlist) then xpcall( function() creatureTable = explode(",", cmd) Settings.CreateLootList(-1, 1, 2, creatureTable, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "Your list could not be recognised. Please check if you have separated every name with a comma") end ) elseif (depositlist) then xpcall( function() creatureTable = explode(",", cmd) Settings.CreateDepositList(-1, 1, 2, creatureTable, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "Your list could not be recognised. Please check if you have separated every name with a comma") end ) end elseif (list and (lootlist or depositlist)) then if (lootlist) then xpcall( function() Settings.CreateLootList(-1, 1, 2, cmd, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "Your list could not be recognised. Please check if you have separated every name with a comma") end ) elseif (depositlist) then xpcall( function() Settings.CreateDepositList(-1, 1, 2, cmd, ch) end, function(err) ch:SendOrangeMessage("XenoBot", "Your list could not be recognised. Please check if you have separated every name with a comma") end ) end else ch:SendOrangeMessage("XenoBot", "Your command could not be recognized. Please read the instructions carefully.") end end end function onClose(ch) print(ch:Name() .. " has been closed. \nPlease re-execute to continue.") end local ch = Channel.New("Loot Functions", onSpeak, onClose) ch:SendOrangeMessage("XenoBot", "Welcome to the Loot / Deposit List Creator!") ch:SendOrangeMessage("XenoBot", "Please type 'loot' to create your own list for XenoBot's Looter.") ch:SendOrangeMessage("XenoBot", "Please type 'deposit' to create your own list for XenoBot's Self.DepositItems() function.") ch:SendOrangeMessage("XenoBot", "Type 'restart' to go back to the start.") Desde já agradeço a colaboração de todos. lootFunctions.lua
  18. Ohko respondeu ao post em um tópico de Dorpix em Xeno Bot
    Encontrei este scripting (abaixo), ai você edita => local responses = {"?", "chinese?", "me understand no"} Fonte: http://forums.xenobot.net/showthread.php?33566-Auto-Responder-Request&highlight=auto+responder Originally Posted by shepius local logMsgs = true local respondLocal = true local respondPrivate = true local responseTime = 1500 local responses = {"?", "chinese?", "me understand no"} local channel = Channel.New("MsgLogger") function localProxy(proxy, msgType, speaker, lvl, text) if msgType == "say" then if logMsgs then channel:SendOrangeMessage(speaker .. " [" .. lvl .. "]", text) end if respondLocal and speaker ~= Self.Name() then wait(responseTime * 0.8, responseTime * 1.2) Self.Say(responses[math.random(1, #responses)]) end end end LocalSpeechProxy.OnReceive("Local Message Proxy", localProxy) function privateProxy(proxy, speaker, level, text) if logMsgs then channel:SendOrangeMessage(speaker .. " [" .. level .. "]", text) end if respondPrivate then wait(responseTime * 0.8, responseTime * 1.2) local yourResponse = responses[math.random(1, #responses)] Self.PrivateMessage(speaker, yourResponse) channel:SendYellowMessage(Self.Name() .. " [" .. Self.Level() .. "]", yourResponse .. " (To: " .. speaker .. " [" .. level .. "])") end end PrivateMessageProxy.OnReceive("Private Message Proxy", privateProxy) Testei, funcionou certinho.
  19. Ohko postou uma resposta no tópico em Xeno Bot
    Prezados, Xenobot não abre os corpos de alguns monstros no otserv, como adicionar ou fazer com que ele reconheça? Ele mata o monstro, mais não cata o looting, ID cadastrada tudo certinho. ID de uns dos monstros, ID 919. Desde já agradeço.

Informação Importante

Confirmação de Termo