Ir para conteúdo

WooX

Héroi
  • Registro em

  • Última visita

Tudo que WooX postou

  1. Poucas aplicações hoje em dia utilizam todos os cores de um CPU, as que utilizam usam porque é necessário redução no tempo de processamento, compiladores, renderizadores de vídeo, renderizadores de modelagem 3D, etc. Hoje em dia é possivel adquirir um processador com 6+ cores a um preço muito acessível, mas mesmo os games mais pesados não utilizam todos os cores de um CPU no seu máximo. Mas porque? Você deve estar se perguntando. Simples, porque é caro e nem sempre é necessário. Para fazer com que o TFS utilize todos os núcleos disponíveis ao seu máximo, seria necessário rescrevê-lo dos pés a cabeça, não seria uma tarefa fácil e muito menos barata. Se empresas com milhões de dólares não investem nisso, porque isso seria viável para o TFS? O que pode ser feito é otimizar as funções mais pesadas e utilizadas pelo TFS e colocar para rodar em um thread separado, mas isso para funções muito especificas mesmo, é inviável fazer isso para todo o código, chegaria em um ponto que o custo x beneficio seria minimo.
  2. Este tópico foi movido para a área correta. Esta é uma mensagem automática! Pedimos que leia as regras do fórum!
  3. Sistema top, muito útil.
  4. Esse erro não tem nada a ver com o código, mas sim com uma lib.
  5. Certo, dei uma lida no código e este tutorial deve funcionar pra você, mas caso dê algum erro só postar aqui que te ajudo.
  6. WooX postou uma resposta no tópico em Suporte Tibia OTServer
    config.lua allowFightback = false
  7. Tem certeza que foi neste datapack? não há nenhum trainer com porta no servidor.
  8. Edita o post e posta como código, é tortura ler assim.
  9. WooX postou uma resposta no tópico em Outros Clients
    Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.
  10. Já instalou os módulos mysql pro php?
  11. Que versão do php e mysql você instalou? e qual versão e distro linux está usando?
  12. Bom, você especificamente disse o seguinte no tópico: E esse erro ai é de php, não tem nada a ver com a distro ou source.
  13. Sem os erros fica difícil te ajudar amigo.
  14. Eu não sei te dizer, eu não uso Xampp, testo tudo que preciso direto no linux. Mas de qualquer forma aqui não é o lugar pra perguntar isso, crie um tópico na área de suporte.
  15. Config.lua skipItemsVersionCheck = true
  16. Eu acabei postando uma informação incorreta no tópico, a source é na verdade a TFS exclusive edition e não OTX2, por isso muitos estavam tendo problemas para compilar pro windows, atualizei o tópico e adicionei download das distros compiladas para 32 e 64bits.
  17. --<talkaction words="/depot;!depot" event="script" value="depot.lua"/>-- local sendToDepot = false local depotIDs = {2589, 2590, 2591, 2592} -- South, West, North and East local middleItems = {1643, 1645} -- Eixo Y, Eixo X function onSay(cid, words, param, channel) if not getPosition(getThingPos(cid)).depot then doPlayerSendCancel(cid, "You're not on the depot.") return true end param = string.lower(param) if (param == "clean") then doCleanTile(getPosition(getThingPos(cid)).depot) doCleanTile(getPosition(getThingPos(cid)).middle) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "The depot and its surrounding were cleaned.") elseif (param == "collect") then local pos = getPosition(getThingPos(cid)).depot while getThingFromPos(pos).itemid > 0 do pos.stackpos = pos.stackpos + 1 if (pos.stackpos > 2) and (isInArray(depotIDs, getThingFromPos(pos).itemid)) then pos.stackpos = pos.stackpos - 1 break elseif (getThingFromPos(pos).itemid == 0) then break end end local toAdd = getThingFromPos(pos) if toAdd.itemid > 0 then if sendToDepot then doRemoveItem(toAdd.uid) local parcel = doCreateItemEx(ITEM_PARCEL) doAddContainerItem(parcel, toAdd.itemid, toAdd.type) doPlayerSendMailByName(getPlayerName(cid), parcel, getPlayerTown(cid)) local itemArticle = isItemStackable(toAdd.itemid) and toAdd.type or getItemArticleById(toAdd.itemid) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You just received "..itemArticle.." "..getItemNameById(toAdd.itemid).." in your depot.") else doRemoveItem(toAdd.uid) doPlayerAddItem(cid, toAdd.itemid, toAdd.type) local itemArticle = isItemStackable(toAdd.itemid) and toAdd.type or getItemArticleById(toAdd.itemid) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.upper(itemArticle).." "..getItemNameById(toAdd.itemid).." was added to your inventory.") end else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "There's no item to be collected on your depot.") end else doPlayerSendCancel(cid, "Use the parameters clean or collect.") end return true end function getPosition(playerPos) local position = {} local crossDir = {{0, -1}, {1, 0}, {0, 1}, {-1, 0}} local depotPos, middleItemPos for i = 1, #depotIDs do for k, v in pairs(crossDir) do depotPos = {x = playerPos.x, y = playerPos.y, z = playerPos.z, stackpos = playerPos.stackpos} depotPos.x = depotPos.x + v[1] depotPos.y = depotPos.y + v[2] local depot = getTileItemById(depotPos, depotIDs[i]) if depot.itemid == depotIDs[i] then depotPos.stackpos = 2 position.depot = {x = depotPos.x, y = depotPos.y, z = depotPos.z, stackpos = depotPos.stackpos} middleItemPos = {x = depotPos.x, y = depotPos.y, z = depotPos.z, stackpos = depotPos.stackpos} if playerPos.y ~= depotPos.y then middleItemPos.x = middleItemPos.x - 1 if getTileItemById(middleItemPos, middleItems[1]).itemid ~= middleItems[1] then middleItemPos.x = middleItemPos.x + 2 end elseif playerPos.x ~= depotPos.x then middleItemPos.y = middleItemPos.y - 1 if getTileItemById(middleItemPos, middleItems[2]).itemid ~= middleItems[2] then middleItemPos.y = middleItemPos.y + 2 end end position.middle = {x = middleItemPos.x, y = middleItemPos.y, z = middleItemPos.z, stackpos = middleItemPos.stackpos} break end end end return position end
  18. Limpar as bancadas ao redor eu não acho uma boa ideia, tem certeza que é assim? Por primeiro item você quer dizer o que está em baixo?
  19. WooX postou uma resposta no tópico em Sprites
    Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.
  20. WooX postou uma resposta no tópico em Sprites
    Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.
  21. WooX postou uma resposta no tópico em Sprites
    Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.
  22. Se não me engano o TFS 0.4 editado pelo Fir3Element já tem isso e tem aqui no fórum, da uma procurada.
  23. Database* db = Database::getInstance(); DBResult* result; DBQuery query; query << "SELECT `reset` FROM `players` WHERE `id` = '" << player->getGUID() << "'"; if(result = db->storeQuery(query.str())) { int16_t resets = result->getDataInt("reset"); msg->put<uint16_t>(resets); result->free(); }

Informação Importante

Confirmação de Termo