Ir para conteúdo
  • advertisement_alt
  • advertisement_alt
  • advertisement_alt

Nolangg

Membro
  • Registro em

  • Última visita

Tudo que Nolangg postou

  1. E aí, Gilson. É só compilar a source "king" que eu deixei em anexo no primeiro post, aí vai resolver isso e possivelmente alguns outros erros (faz muito tempo que não mexo mais com OT, então não sei se irá resolver todos os erros) E aí, Sboy. Estranho isso... a database está no primeiro post normalmente... é só clicar para baixar.... E aí, Igor. Não mexi nessa parte do servidor, então... provavelmente pode ser que tenha um limite sim. todavia, não sei te dizer por não ter mexido nessa parte.
  2. já está no tópico. Primeiro tire a marcação da opção "Check File Signatures" em "File/Preferences/Client Version" e coloque o client que está disponível no post na opção 8.60. Segundo, coloque o items.otb, items.xml da pasta "data/items" no seu RME em: "rme/data/860/" assim, possivelmente já estará resolvido. qual problema? Pelo que reparei que o pessoal anda falando está com alguns, todavia é bem fácil resolver.
  3. como abrir o mapa usando o rme? tentei usando várias maneiras e nenhuma corresponde
  4. tenta assim agora: function onCastSpell(cid, var) local storage = 55512 local storage2 = 55513 -- Exhaust local waittimes = {30, 30, 40, 50, 60} local waittime3 = 310 if not isCreature(cid) or exhaustion.check(cid, storage2) then doPlayerSendCancel(cid, "Aguarde " .. (exhaustion.get(cid, storage2) or 0) .. " segundos para usar a spell novamente.") return false end if getPlayerStorageValue(cid, storage) > 0 then doPlayerSendCancel(cid, "Você já está sob o efeito da spell.") return false end setPlayerStorageValue(cid, storage, 1) exhaustion.set(cid, storage2, waittime3) OpenGate(cid, Select_Stages(getCreatureOutfit(cid).lookType), 1) local function advanceStage() if not isCreature(cid) then return false end local stage = getPlayerStorageValue(cid, storage) if stage and stage < #waittimes then stage = stage + 1 setPlayerStorageValue(cid, storage, stage) addEvent(advanceStage, waittimes[stage] * 1000) else setPlayerStorageValue(cid, storage, -1) -- Reseta a storage ao final dos estágios end end addEvent(advanceStage, waittimes[1] * 1000) addEvent(function() if isCreature(cid) then setPlayerStorageValue(cid, storage, -1) end end, (waittimes[#waittimes] + waittimes[1]) * 1000) return true end caso apareça algum erro retorne aqui.
  5. O que o rapaz acima falou pode ser usado também. mas, teste assim também: function onCastSpell(cid, var) local storage = 55512 local storage2 = 55513 -- Exhaust local waittimes = {30, 30, 40, 50, 60} local waittime3 = 310 if not isCreature(cid) or exhaustion.check(cid, storage2) then doPlayerSendCancel(cid, "Aguarde " .. (exhaustion.get(cid, storage2) or 0) .. " segundos para usar a spell novamente.") return false end if getPlayerStorageValue(cid, storage) > 0 then doPlayerSendCancel(cid, "Você já está sob o efeito da spell.") return false end setPlayerStorageValue(cid, storage, 1) exhaustion.set(cid, storage2, waittime3) OpenGate(cid, Select_Stages(getCreatureOutfit(cid).lookType), 1) local function advanceStage() if not isCreature(cid) then return false end local stage = getPlayerStorageValue(cid, storage) if stage < #waittimes then stage = stage + 1 setPlayerStorageValue(cid, storage, stage) addEvent(advanceStage, waittimes[stage] * 1000) else setPlayerStorageValue(cid, storage, -1) -- Reseta a storage ao final dos estágios end end addEvent(advanceStage, waittimes[1] * 1000) addEvent(function() if isCreature(cid) then setPlayerStorageValue(cid, storage, -1) end end, waittimes[1] * 1000) return true end
  6. Regards, Procure pela pasta do seu XAMPP e em HTDOCS procure por CONFIG... clique em config.php e abra com algum editor de texto. lá no arquivo procure por "$config['site']['serverPath'] = " e você muda para o local que o seu servidor está no seu disco local (mais precisamente onde o arquivo CONFIG.LUA estará)
  7. Uma dúvida, o que seria essas atualizações do github que foi feita "Wings & Auras", caso use client 8.6 default ele será ignorado ou dará debug? Seria necessário um client específico ou ele é ignorado pelo default e usado no OTC? (não tô atualizado nos ots atuais, mas... fiquei curioso sobre isso e os requisitos para ser usado)
  8. nova versão https://github.com/thetibiaking/ttk-otx2/tree/main/source
  9. neste caso é selecionado um monstro que é setado na lib... e aumenta uma característica (todos os dias ou toda vez que reiniciar a distro) apesar de ter feito na source também tem uma parte em lib que é configurável... dá pra usar em conjunto do monster boost creio que fique mais interessante com duas oportunidades diferentes de up *-*
  10. brabo! idéia: outro sistema que pode ser colocado... dmonster (daily monster) há o sistema todo feito aqui: porém se quiser otimizar etc, aí é com você kkk
  11. function getRespawnDivider() local multiplier = 1 local size = #getPlayersOnline() if size >= 100 and size < 199 then multiplier = 2 elseif size >= 200 and size < 299 then multiplier = 3 elseif size >= 300 then multiplier = 4 end return multiplier end tem o .lua tbm *(global.lua)
  12. dúvida: Spy Cast não é o sistema feito por @Lyu? o da roleta (ex: "SetCreatureSpeed" that's appear on first post ) *os dois aparecem no hyper, porém são feitos por ele hh e pelo Igor Souza; -- apenas uma observação!! pedido: SpawnDivider para você não precisar procurar game.cpp at the final uint32_t Game::spawnDivider(MonsterType* mType) { uint32_t multiplier = 1; if (mType && !mType->ignoreSpawnBoost) { uint32_t size = getPlayersOnline(); if (size >= 100 && size < 199) { multiplier = 2; } else if (size >= 200 && size < 299) { multiplier = 3; } else if (size >= 300) { multiplier = 4; } } return multiplier; } game.h under whatever public function uint32_t spawnDivider(MonsterType* mType = nullptr);
  13. Para todos que estão com problemas desse tipo há casos e casos pra isso acontecer, para conseguir identificar o que está acontecendo: vá até index.php no seu site e troque: error_reporting(0); por: error_reporting(E_ALL ^ E_STRICT ^ E_NOTICE); take care!
  14. e é por isso que eu disse pra pegar o VCXPROJ de algum outro projeto equivalente e adaptar...
  15. não precisa pagar por isso é coisa simples no windows: é só copiar o msvc de outra datapack (de preferência que seja a mesma versão de tfs/otx) procure o arquivo TheForgottenServer.VCXPROJ (ou equivalente "que tenha a extensão vcxproj) e compare os arquivos .cpp e .h da source dentro do arquivo após isso é só abrir pelo arquivo sln no visual studio... agora no ubuntu (GNU) usando a mesma idéia acima só que com o makefile só abrir o makefile e comparar os arquivos .cpp/.h e depois usar o "make clean" e "make" acho que é só isso. então... se cuida! um beijo e um queijo.
  16. Uma ótima idéia pra comunidade, ward demais... Vou ver o que eu consigo de valioso aqui pra compartilhar lá também !!!
  17. ajustado: https://www.mediafire.com/file/vacu76zusyk4ubr/king.rar/file vt: https://www.virustotal.com/gui/file/2a5cbca6a6acc028c9809448151836e68250f49abbc7e804a696e2a7eb1dac6f?nocache=1 estou evitando responder perguntas bobas, por isso demoro um pouco. e sim! realmente estou sem tempo para verificar as coisas, mas... continuarei fazendo o melhor. o erro de offline na otservlist não tinha aqui na src, não sei o que pode ser aí no seu... aqui funciona correctamente. enfim, tente usar essa nova distro. está arrumado para Ubuntu (sem a pasta objects) e o status ajustado //era uma proteção da otservlist que talvez poderia ser o "Offline"
  18. Obrigado pela confiança e compartilhamento! Este servidor ficou aberto um tempo, mas, infelizmente eu não tive prole pra continuar ele. É uma boa base "fusion".
  19. verifique se está dessa forma: std::stringstream ss; for(AutoList<Player>::iterator it = Player::autoList.begin(); it != Player::autoList.end(); ++it) { if(it->second->isRemoved() || it->second->isGhost()) continue; if(!ss.str().empty()) ss << ";"; ss << it->second->getName() << "," << it->second->getVocationId() << "," << it->second->getLevel(); } xmlNodeSetContent(p, (const xmlChar*)ss.str().c_str()); sprintf(buffer, "%d", g_game.getUniquePlayersOnline()); xmlSetProp(p, (const xmlChar*)"unique_players", (const xmlChar*)buffer);
  20. teste assim em Creature.cpp procure: void Creature::onCreatureMove(const Creature* creature, const Tile* newTile, const Position& newPos, const Tile* oldTile, const Position& oldPos, bool teleport) dentro do código em: if(!teleport) { if(oldPos.z != newPos.z) lastStepCost = 2; else if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; } else stopEventWalk(); mude para: if(!teleport) { if(std::abs(newPos.x - oldPos.x) >= 1 && std::abs(newPos.y - oldPos.y) >= 1) lastStepCost = 3; } else stopEventWalk(); caso não tenha efeito me de uma resposta que eu verificarei.
  21. tente mudar de: if(sendPlayers) { std::stringstream ss; for(AutoList<Player>::iterator it = Player::autoList.begin(); it != Player::autoList.end(); ++it) { if(it->second->isRemoved() || it->second->isGhost()) continue; if(!ss.str().empty()) ss << ";"; ss << it->second->getName() << "," << it->second->getVocationId() << "," << it->second->getLevel(); } xmlNodeSetContent(p, (const xmlChar*)ss.str().c_str()); } para: std::stringstream ss; for(AutoList<Player>::iterator it = Player::autoList.begin(); it != Player::autoList.end(); ++it) { if(it->second->isRemoved() || it->second->isGhost()) continue; if(!ss.str().empty()) ss << ";"; ss << it->second->getName() << "," << it->second->getVocationId() << "," << it->second->getLevel(); } xmlNodeSetContent(p, (const xmlChar*)ss.str().c_str()); boa, mas cuidado com flood!
  22. Nolangg respondeu ao post em um tópico de Fiapets em Suporte Tibia OTServer
    Olá, se for ISP (provedor) da sua casa saiba que alguns proíbem o acesso da porta 80 por "intrusos" (os players). o que poderia ser feito é você usar uma vps ou uma VPN (claro, que tenha a opção de abrir portas).
  23. Olá, neste caso o GNU retornou erro do mutex do boost, algumas versões do boost vem com ele incompatível com várias coisas (1.62+) refaça o teste usando uma versão anterior do boost e me retorne o que acontecer.
  24. Olá, tente assim: no terminal mesmo digite: apt-get install libcrypto++-dev ou com o sudo sudo apt-get install libcrypto++-dev (este comando instala a biblioteca do cryptopp). caso não funcionar tente dar um apt-get update
  • advertisement_alt
  • advertisement_alt
  • advertisement_alt

Informação Importante

Confirmação de Termo