Ir para conteúdo
Banner com Efeitos

Vitoxy

Membro
  • Registro em

  • Última visita

  1. The Forgotten Server 0.4, Versão: 8.6, Ubuntu 16.04 Nao estou conseguindo compilar as sources REV 3996 postado pelo Yan Liima: Surgem os seguintes erros: Segue imagem: Alguem pode me ajudar ? Agradeço desde ja.
  2. Vitoxy reagiu a uma resposta no tópico: Area pz
  3. Vitoxy reagiu a uma resposta no tópico: Novo Sistema de Trainer [0.36~0.4]
  4. Olá galera do Tibia King. Sou um ADM de tibia de outras épocas. Fiquei longe disso por 6 anos, e ultimamente tem me dado uma vontade de abrir um novo servidor. Juntei um amigo, e estamos criando algo do zero, mapa próprio, muitos scripts que reforçam o RPG que estão no Tibia King, baseado em outros jogos com muito RPG, exemplo Black Desert, Metin, e o próprio World of Warcraft... Mas não vim divulgar meu servidor, só quero criar um contexto. Com muito tempo ausente desse mundo de script e ot server, perdi algumas habilidades com script, já que sou da área de biológicas... Ainda manjo, mas existem problemas que estão fora do meu alcance. Venho tendo problema com um sistema, até então funcional, porém com algumas desvantagens para algumas vocações. Pretendo manter o server bem balanceado, bem igualado para todas as vocações, logicamente sem tirar a peculiaridade e especialidade de cada uma... O sistema de Upgrade do Mock refina Attack, Armor, Defense, certo ? Porém, não está refinando escudos, e pior, está adicionando Attack aos escudos, e aos Bows não faz nada... Só adiciona level e nada mais. Uma grande desvantagem para magos e paladins. Magos poderiam se beneficiar do Defense em Spellbooks. Estava pensando que podia ser adicionado atributos como hitchance, attackspeed, range, para beneficiar magos e paladinos, pois quem tira proveito desse sistema é apenas o Knight.} Reformulando: -Escudos não ganham defesa, e estão ganhando ataque, -Bows não ganham nada, só refin level, Segue o script da forma que estou usando: Segue prints do problema: Peço encarecidamente a ajuda de vocês, o plano é um servidor revitalizado, com RPG bem reforçado, onde a galera vai gastar muito bem o tempo, se divertindo, coletando itens, refinando, vendendo no market mundial, e por ai vai. Obrigado desde já.
  5. Vitoxy reagiu a uma resposta no tópico: (Resolvido)Perfect Upgrade System by OneShot
  6. @luangop Script do Mock: --- Perfect refine system by Mock the bear (MTB). --- Email: [email][email protected][/email] local gain = { gainArmor='&p+1',loseArmor='&p-1', gainShield='&s+#',loseShield='&s-(#+1)', gainAttack='&a+(1*(#))',loseAttack='&a-(1*(#+1))', gainDefense='&d+(1*(#))',loseDefense='&d-(1*(#+1))', chance='100', --chance='100/((#*(0/(@/0)))*(@/0))', -- Eu fiz essa equação para variar de +0 a +7 o item --- Essa equação deve retornar em % a chance do item se refinar (0-100) 100 = sempre, 0 = nunca maxlvl = 9, blocked_ids = {2488,8881} } -- &a = weapon attack -- &d = weapon defense -- &s = shield defense -- &p = armor defense -- # = nivel do item -- @ = max level if not setItemName then function setItemName(uid,name) return doItemSetAttribute(uid,'name',name) end function setItemArmor(uid,name) return doItemSetAttribute(uid,'armor',name) end function setItemDefense(uid,name) return doItemSetAttribute(uid,'defense',name) end function setItemAttack(uid,name) return doItemSetAttribute(uid,'attack',name) end function getItemAttack(uid) return getItemAttribute(uid,'attack') end function getItemDefense(uid) return getItemAttribute(uid,'defense') end function getItemArmor(uid) if type(uid) == 'number' then return getItemAttribute(uid,'armor') else return getItemInfo(uid.itemid).armor end end end function isArmor(uid) -- Function by Mock the bear. if (getItemArmor(uid) and getItemArmor(uid) ~= 0 and not getItemInfo(uid.itemid,'attack') and not getItemInfo(uid.itemid,'defense') and getItemWeaponType(uid.uid) == 0) then return true end return false end function isWeapon(uid) -- Function by Mock the bear. uid = uid or 0 local f = getItemWeaponType(uid) if f == 1 or f == 2 or f == 3 then return TRUE end return FALSE end function isShield(uid) -- Function by Mock the bear. uid = uid or 0 if getItemWeaponType(uid) == 4 then return TRUE end return FALSE end function getWeaponLevel(uid) -- Function by Mock the bear. uid = uid or 0 local name = getItemName(uid) local lvl = string.match(name,'+(%d)') return tonumber(lvl) or 0 end function doTransform(s,i) -- Function by Mock the bear. local c = string.gsub(s,'@',gain.maxlvl) local c = string.gsub(c,'&a',getItemAttack(i.uid) or getItemInfo(i.itemid).attack) local c = string.gsub(c,'&d',getItemDefense(i.uid) or getItemInfo(i.itemid).defense) local c = string.gsub(c,'&s',getItemDefense(i.uid) or getItemInfo(i.itemid).defense) local c = string.gsub(c,'&p',getItemArmor(i.uid) or getItemInfo(i.itemid).armor) local c = string.gsub(c,'#',getWeaponLevel(i.uid)) local q,err = loadstring('return '..c) assert(q,err) return assert(q()) end function onUse(cid, item, fromPosition, itemEx, toPosition) toPosition.stackpos = 255 if isInArray(gain.blocked_ids, itemEx.itemid) == TRUE or getItemWeaponType(itemEx.uid) > 4 or (getItemWeaponType(itemEx.uid) == 0 and isArmor(itemEx) == FALSE) or itemEx.itemid == 0 then doPlayerSendTextMessage(cid, 24,"You cant refine this item.") return TRUE end if isCreature(itemEx.uid) == TRUE then return FALSE end local level = getWeaponLevel(itemEx.uid) local chance = doTransform(gain.chance,itemEx) if chance >= math.random(0,100) or item.actionid >= 1000 or (item.actionid == 500 and math.random(0,100) <= 25) then if level+1 > gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level+1)) doPlayerSendTextMessage(cid, 24,"Your item has been upgrated to +"..(level+1)..".") doSendMagicEffect(toPosition, 12) if isArmor(itemEx) == TRUE then local get = doTransform(gain.gainArmor,itemEx) setItemArmor(itemEx.uid,get) elseif isWeapon(itemEx.uid) == TRUE then setItemAttack(itemEx.uid, doTransform(gain.gainAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.gainDefense,itemEx)) elseif isShield(itemEx.uid) == TRUE then setItemDefense(itemEx.uid, doTransform(gain.gainShield,itemEx)) end end else if level == 0 then doPlayerSendTextMessage(cid, 24,"No effect.") doSendMagicEffect(toPosition, 2) elseif level == gain.maxlvl then doSendMagicEffect(toPosition, 2) return doPlayerSendTextMessage(cid, 24,"Your item is on max level, you can't upgrade it.") elseif level > 0 then if level == 1 then setItemName(itemEx.uid, getItemNameById(itemEx.itemid)) doPlayerSendTextMessage(cid, 24,"Your item back to normal.") else setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level-1)) doPlayerSendTextMessage(cid, 24,"Your item back to +"..(level-1)..".") end if isArmor(itemEx) == TRUE then setItemArmor(itemEx.uid,doTransform(gain.loseArmor ,itemEx)) elseif isWeapon(itemEx.uid) == TRUE then setItemAttack(itemEx.uid, doTransform(gain.loseAttack,itemEx)) setItemDefense(itemEx.uid, doTransform(gain.loseDefense,itemEx)) elseif isShield(itemEx.uid) == TRUE then setItemDefense(itemEx.uid, doTransform(gain.loseShield,itemEx)) end end doSendMagicEffect(toPosition, 9) end doRemoveItem(item.uid,1) return TRUE end @matheusjp2 Vou testar e já te aviso amigo. EDIT- @matheusjp2 O erro persiste amigo:
  7. Vitoxy reagiu a uma resposta no tópico: New Library v. 1.2
  8. @luangop Exatamente por isso vim no suporte de script amigo... Por que não sei como converter. Seus dois posts são óbvios, até agora só me apresentou o que eu já sei. Se você quer mesmo me ajudar, no minimo me diga quais funções substituir e quais por no lugar, não precisa fazer pra mim. Se não quer ajudar, continue postando coisas óbvias, e nada mais. Obrigado pela atenção.
  9. @luangop Ai que ta, no do mock não da pra colocar o que tem nesse script, por exemplo a falha no script do mock desce um level do item, e não quero isso. E no do mock não da pra por chance por level do item, a chance é a mesma sempre. Precisava muito desse script ai, mas não faço ideia de como passa-lo para TFS 0.4.
  10. ZoR reagiu a uma resposta no tópico: (Resolvido)Monster que sumona outros monsters
  11. .Foxxy reagiu a uma resposta no tópico: (Resolvido)[[[ Save Player ]]]]
  12. Salva o server todo incluindo os players... Mas existe uma talkaction individual que também faz isso, entretando cada player tem que se salvar sozinho. talkactions/scripts/ save.lua function onSay(cid, words, param, channel) local config = { s = 11548, -- n mexa exhau = 30 -- tempo em seegundos para salvar denovo } if (getPlayerStorageValue(cid, config.s) <= os.time()) then doPlayerSave(cid) setPlayerStorageValue(cid,config.s,os.time()+config.exhau) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Seu Personagem foi salvo com sucesso!!.") else doPlayerSendCancel(cid, "Você tem que esperar " .. config.exhau .. " segundos para salvar novamente.") end return TRUE end talkactions.XML <talkaction words="!save" event="script" value="save.lua"/> @XandimH
  13. <?xml version="1.0" encoding="UTF-8"?> <monster name="Kakuzu" nameDescription="Kakuzu" race="blood" experience="0" speed="650" manacost="0"> <health now="9065000" max="9065000"/> <look type="998" head="0" body="94" legs="79" feet="79" corpse="0"/> <targetchange interval="5000" chance="50"/> <strategy attack="90" defense="20"/> <flags> <flag summonable="1"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="1"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="1"/> <flag staticattack="65"/> <flag runonhealth="0"/> </flags> <script> </script> <attacks> <attack name="melee" interval="800" min="-550" max="-640"/> <attack name="manadrain" interval="1000" chance="10" range="7" min="-760" max="-815"> <attribute key="areaEffect" value="redshimmer"/> </attack> <attack name="Katon Dragon Furie" interval="2000" chance="100" radius="4" target="1" min="-14340" max="-5600"> </attack> <attack name="Doton Dragon Furie" interval="2200" chance="100" target="1" min="-14440" max="-5100"> </attack> </attacks> <defenses armor="80" defense="80"> <defense name="healing" interval="4000" chance="40" min="300" max="300"> <attribute key="areaEffect" value="blueshimmer"/> </defense> <defense name="speed" interval="4000" chance="40" speedchange="600" duration="4000"> <attribute key="areaEffect" value="redshimmer"/> </defense> </defenses> <elements> <element physicalPercent="20"/> <element icePercent="10"/> <element holyPercent="-15"/> <element deathPercent="35"/> </elements> <!--------> <summons maxSummons="4"> <summon name="demon" interval="1000" chance="10" max="4"/> </summons> <!-------> <immunities> <immunity poison="1"/> <immunity lifedrain="1"/> <immunity outfit="1"/> <immunity drunk="1"/> <immunity invisible="1"/> </immunities> <voices interval="5000" chance="10"> <voice sentence=".." yell="1"/> </voices> <loot> </loot> </monster> Na tag 'summons', onde está demarcado: Maxsummons - quantidade maxima do mosntro que ele vai summonar. Name: nome do mosntro que será summonado. Interval: Intervalo de tempo em que os monstros são summonados. Chance: A chance do monstro possivelmente summonar. Max: Maximo do mosntro denominado na area 'Name' que será summonado.
  14. Save.lua function onThink(interval, lastExecution, thinkInterval) doBroadcastMessage("Salvando") doSaveServer() return TRUE end globalevent.XML <globalevent name="save" interval="3600000" event="script" value="save.lua"/>
  15. Vitoxy alterou sua foto pessoal
  16. Galera, estou com um problema neste script: Perfect Upgrade System by OneShot O problema é o seguinte: Acontece que, já desfrutei do script de upgrade do Mock, onde tem a mesma função e sempre funcionou normalmente, porém o maximo de level do item é +9, então optei pelo do OneShot, entretanto quando uso a pedra acontece isso: Conforme vou usando o item no equipamento, ele não upa de level, e vai aparecendo o erro lá de cima no distro. Tibia 8.60, TFS 0.4 Agradeço desde já.
  17. Estou com um probleminha... Minha duvida é, eu tenho o sistema de upgrade do Mock, onde tem a mesma função, não sei por que neste a funcão não é reconhecida. Achei este sistema muito melhor, e preciso muito dele. Agradecido desde já. Tibia 8.60, TFS 0.4

Informação Importante

Confirmação de Termo