
-
-
Compilar TFS 1.3 Vcpkg
Para o caso de alguém ainda hoje esteja tentando ver esse tópico e esteja passando por isso, a solução é inverter o / por \ .\bootstrap-vcpkg.bat .\vcpkg install --triplet x64-windows boost-iostreams boost-asio boost-system boost-filesystem boost-variant boost-lockfree luajit libmariadb pugixml cryptopp
-
Imbuement Dano elemental afeta magia de cura
E pude perceber outra coisa, tanto a magia de cura quanto a UH elas estão tendo relaçao com o "onCombat", talvez por isso estão tendo problema com o heal. Já as potions não interferem e funcionam normalmente. Eu percebi porque eu coloquei um script no events/players.lua e quando eu to usando exura ou uh, ele da a mensagem do script. Uma gambiarra que aparentemente funcionou aqui: events/players.lua logo no início adicione em Player:onCombat : if primaryType and primaryType == 128 then return primaryDamage, primaryType, secondaryDamage, secondaryType end percebi que as magias de cura tem o primaryType 128 sendo assim, coloquei para ao identificar que o onCombat está tendo primaryType como 128, ele retorna a formula padrão sem passar pelo script do imbuiment que é o causador do problema. aqui funcionou desta forma.
-
Imbuement Dano elemental afeta magia de cura
Os danos em 22:02 foram com uma bright sword equipada com nv 2 de imbuiment elemental de 50% de damage convert. Os danos em 22:03 foram sem a bright equipada. Da pra perceber a redução na cura. Aqui no meu servidor, eu tentei fazer uma parada diferente e converter 100% do dano. Porém fazendo isso, com 100% de convert, se o cara mandar exura vita, ao invés de curar bem menos o cara simplesmente toma um hit. Ao inves do cara se curar ele perde vida.
-
Imbuement Dano elemental afeta magia de cura
Em 2023 esse bug ainda persiste e também não achei nenhum lugar com essa solução, estou com um TFS aqui e to tentando descobrir nesse exato momento também. Relacionado a imbuiment elemental, também existe o problema do imbuiment se colocado no Bow ou Xbow ele também não tem efeito, porque o script que criaram ele leva em consideração o "item" que ataca, e no caso do weapon de paladin é os arcos que atacam. Então como o imbuiment está no arco e o que ataca é a flecha, o imbuiment elemenal não funciona. Eu adicionei isso em events/player.lua Depois de: if not item or not target then return primaryDamage, primaryType, secondaryDamage, secondaryType end Adicionei: local armaL = self:getSlotItem(CONST_SLOT_LEFT) local armaR = self:getSlotItem(CONST_SLOT_RIGHT) local itemType = ItemType(item.itemid) if itemType:getWeaponType() == 7 then if armaL then item = armaL elseif armaR then item = armaR end end Não sei se é a melhor solução, mas é funcional. Quando eu descobrir o motivo do heal ser afetado pelo imbuiment elemental eu compartilho aqui pra pesquisas futuras.
-
Dupe/clone de items TFS 1.3
.Qual servidor ou website você utiliza como base? TFS 1.3 (Alkurius) Qual o motivo deste tópico? Dupe de Items Está surgindo algum erro? Se sim coloque-o aqui. Você tem o código disponível? Se tiver publique-o aqui: Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.
-
Global 8.6 com varias atualizações do 12
Experimenta reduzir a quantidade de outfits na lista. Verifica se vai continuar o debug.. deixa só uns 8 outfits e vê se vai debugar.
-
tvrzerah começou a seguir GamerGoiano
-
-
-
-
Global 8.6 com varias atualizações do 12
Na Source, no arquivo protocolgame.cpp altere TODA essa função void ProtocolGame::sendOutfitWindow() Para: void ProtocolGame::sendOutfitWindow() { NetworkMessage msg; msg.addByte(0xC8); Outfit_t currentOutfit = player->getDefaultOutfit(); AddOutfit(msg, currentOutfit); std::vector<ProtocolOutfit> protocolOutfits; if (player->isAccessPlayer()) { static const std::string gamemasterOutfitName = "Gamemaster"; protocolOutfits.emplace_back(gamemasterOutfitName, 75, 0); } const auto& outfits = Outfits::getInstance().getOutfits(player->getSex()); protocolOutfits.reserve(outfits.size()); for (const Outfit& outfit : outfits) { uint8_t addons; if (!player->getOutfitAddons(outfit, addons)) { continue; } protocolOutfits.emplace_back(outfit.name, outfit.lookType, addons); if (protocolOutfits.size() == 100) { // Game client doesn't allow more than 50 outfits break; } } msg.addByte(protocolOutfits.size()); for (const ProtocolOutfit& outfit : protocolOutfits) { msg.add<uint16_t>(outfit.lookType); msg.addString(outfit.name); msg.addByte(outfit.addons); } writeToOutputBuffer(msg); } Espero ter ajudado, me reportem todos os demais problemas que eu tentarei solucionar.
-
-
Global 8.6 com varias atualizações do 12
O problema do outfit eu acho que consegui resolver, vou só recompilar aqui. Só falta listarem melhor esses bugs ai que falaram que o servidor tem, pra eu trabalhar em cima e trazer uma versão melhor e mais útil pra comunidade.
-
Global 8.6 com varias atualizações do 12
E você consegue dizer mais sobre esses problemas? Eu consigo resolver todos eles, se a galera se ajudar da pra repostar de uma forma bem melhor. Agora se cada um ficar guardando pra si, não faz sentido ter um forum pra galera compartilhar informações e servidores. Se você conseguir listar melhor ai em que ocasiões cada situações como as que você citou, acontecem, já me ajudaria a começar a corrigir e futuramente trazer uma versão melhor aqui.
-
Global 8.6 com varias atualizações do 12
Também me deparei com esse problema. O client da cipsoft funciona normalmente, porém o OTClient nenhum funciona a parte de trocar outfit.
-
Global 8.6 com varias atualizações do 12
Isso dai foi tu que fez ou já ta nesse pack ai que o amigo compartilhou? E alguém já conseguiu compilar essa source?
-
-
Global 8.6 com varias atualizações do 12
Só pra mim que deu inúmeros erros na hora de iniciar o servidor? Monstros faltando Functions faltando e dando erro no console Erro no creaturescripts/login.lua entre outros
-
Porta da house não aparece nome e valor
Bom dia galera, Estou tendo um problema no meu mapa que gostaria de saber se alguém já passou por isso e consegue me auxiliar em como solucionar esse problema. A porta das houses no meu mapa não está tendo a função de uma porta de house, ela só aparece "closed door" porém as pessoas conseguem comprar a casa e os pisos realmente funcionam como uma house, apenas a porta não tem sua função. Eu peguei um mapa qualquer pra testar, troquei apenas os arquivos da world, a porta possui o mesmo id (1221) e com o novo mapa funcionou normalmente. Gostaria de entender o que pode ser? Imagens dos testes no meu mapa: No mapa teste:
-
Roshamuul full para tibia 8.60!!! (O mais completo para a versão, com prision, rosha lower, bones e boss room)
Se você não quer ter que editar o client e deixar de ter seu servidor como 8.60, você vai ter que utilizar de sprites de monstros já existes e ignorar os novos itens. Pois qualquer alteração que seja, para inserir algo que não existia no servidor, seja a sprite do monstro ou os itens dar versões mais atuais, seu servidor vai deixar de ser 8.60 praticamente. Então o que você pode fazer é pegar um servidor mais atualizado que tenham esses monstros, copie os arquivos deles, altere o look do monstro para um monstro existente que você ache parecido e em relação aos itens, delete os itens que não existia nessa versão.
-
-
Sumir Vial ao usar Mana Fluid
Experimente esse código local drunk = Condition(CONDITION_DRUNK) drunk:setParameter(CONDITION_PARAM_TICKS, 60000) local poison = Condition(CONDITION_POISON) poison:addDamage(1, 4000, -0) poison:addDamage(1, 4000, -10) poison:addDamage(2, 4000, -9) poison:addDamage(2, 4000, -8) poison:addDamage(3, 4000, -7) poison:addDamage(3, 4000, -6) poison:addDamage(4, 4000, -5) poison:addDamage(4, 4000, -4) poison:addDamage(6, 4000, -3) poison:addDamage(10, 4000, -2) poison:addDamage(10, 4000, -1) poison:addDamage(10, 4000, -1) poison:addDamage(10, 4000, -1) poison:addDamage(8, 3950, -1) poison:addDamage(1, 3940, -1) local messages = { [FLUID_WATER] = "Gulp.", [FLUID_WINE] = "Aah...", [FLUID_BEER] = "Aah...", [FLUID_MUD] = "Gulp.", [FLUID_BLOOD] = "Gulp.", [FLUID_SLIME] = "Urgh!", [FLUID_OIL] = "Gulp.", [FLUID_URINE] = "Urgh!", [FLUID_MILK] = "Mmmh.", [FLUID_MANAFLUID] = "Aaaah...", [FLUID_LIFEFLUID] = "Ooooh...", [FLUID_LEMONADE] = "Mmmh." } function onUse(player, item, fromPosition, target, toPosition, isHotkey) local targetItemType = ItemType(target.itemid) if targetItemType and targetItemType:isFluidContainer() then if target.type == 0 and item.type ~= 0 then target:transform(target:getId(), item.type) item:transform(item:getId(), 0) return true elseif target.type ~= 0 and item.type == 0 then target:transform(target:getId(), 0) item:transform(item:getId(), target.type) return true end end if target.itemid == 1 then if item.type == 0 then player:sendTextMessage(MESSAGE_STATUS_SMALL, "It is empty.") elseif target.uid == player.uid then if table.contains({3, 15}, item.type) then player:addCondition(drunk) elseif item.type == 4 then player:addCondition(poison) elseif item.type == 7 then player:addMana(math.random(50, 150)) fromPosition:sendMagicEffect(CONST_ME_MAGIC_BLUE) elseif item.type == 2 then player:addHealth(60) fromPosition:sendMagicEffect(CONST_ME_MAGIC_BLUE) end player:say(fluidMessage[item.type] or "Gulp.", TALKTYPE_MONSTER_SAY) item:transform(item:getId(), 0) else Game.createItem(2016, item.type, toPosition):decay() item:transform(item:getId(), 0) end else local fluidSource = targetItemType and targetItemType:getFluidSource() or 0 if fluidSource ~= 0 then item:transform(item:getId(), fluidSource) elseif item.type == 0 then player:sendTextMessage(MESSAGE_STATUS_SMALL, "It is empty.") else if toPosition.x == CONTAINER_POSITION then toPosition = player:getPosition() end Game.createItem(2016, item.type, toPosition):decay() item:transform(item:getId(), 0) end end return true end Alterei algumas linhas na sua funcion:onUse Testa e me diz se funcionou.