Ir para conteúdo

Vanberk

Membro
  • Registro em

  • Última visita

Tudo que Vanberk postou

  1. Vanberk postou uma resposta no tópico em Portal
    Em primeiro lugar, você aí da equipe que baniu o Absolute está de parabéns, chega de baderneiros no fórum. Nunca ví um cara tão cínico igual aquele cara, ele vem aqui se fazer de santo, mas adorava uma bela de uma treta, seja no PlayGround ou fóra dele. REP+ pra quem o baniu.
  2. Sinto que surtiu efeito essa sua recomendação, pois depois que eu passei horas e horas fazendo combinações de valores diferentes, não chegou aonde eu queria. Mas já esses valores 1, 1 aparenta ser o mais coêrente pelo o que eu vi. Antes tava 1, 10000 na configuração do script, ai toda hora a arma voltava pro +4 facilmente, sendo que a porcentagem de sucesso da arma ser refinada até o +4 é de 70%, mas achei estranho a arma lá no +7~8 voltar tanto pro +4 desse jeito.. E tipo, se fosse no 50% aí tudo bem, pois é meio-a-meio de chance de sucesso. REP+ Tópico resolvido.
  3. Vanberk postou uma resposta no tópico em Ferramentas OpenTibia
    REP+, até que um mini toturialzinho não seria mal. Vlw's.
  4. Vanberk postou uma resposta no tópico em Ferramentas OpenTibia
    Aqui está dando um maldito erro, e isso que eu executei o programa como administrador e usando o Tibia 8.60 disponibilizado do site do Remere's. Alguém me ensina a usar esse programa, na boa? Consegui só fazer os efeitos mágicos e tal, agora o dano tá foda. Em vez de hitar no alvo a magia tá healando ele. ¬¬' E isso que eu nem marquei pra healar o alvo..
  5. Então use a barrinha de pesquisa alí em cima amigo, a mão não cai.
  6. -- citizen (done) local outfit_node = keywordHandler:addKeyword({'first citizen addon'}, playerBuyAddonNPC, {premium = true, cost = 10000, items = {}, items = {}, outfit_female = 136, outfit_male = 128, addon = 1, storageID = 10001}) Básta você substituir o ID do Citizen Outfit pelo ID da Outfit que você criou em XML/Outfits.xml Dê um CTRL+F no seu editor de scripts e procure por outfit_male = 128 e troque aquele 128 pelo ID da sua nova Outfit, já o nome da Outfit, é só ir trocando tudo que você ver de "Citizen" no script do npc pelo nome da sua nova Outfit.
  7. Esse tópico pode ser útil, dê uma olhada. Link
  8. Olá gente, o seguinte script que eu vou postar abaixo se trata de um sistema de refinar itens (armas, armaduras e escudos).. Eu gostária que o processo do item regredir para um nível de refinamento anterior seja de 100% de chance, mas onde é que se configura isso? Script: --[[ PERFECT UPGRADE SYSTEM 2.0 Criado por Oneshot É proibido a venda ou a cópia sem os devidos créditos desse script. ]]-- UpgradeHandler = { levels = { [1] = {100, true, false}, [2] = {90, true, false}, [3] = {80, true, false}, [4] = {70, true, false}, [5] = {60, true, false}, [6] = {50, true, false}, [7] = {40, true, false}, [8] = {30, true, false}, [9] = {20, true, false}, [10] = {10, true, false}, [11] = {8, true, false}, [12] = {6, true, false}, [13] = {4, true, false}, [14] = {2, true, true}, [15] = {1, true, true} }, broadcast = 7, attributes = { ["attack"] = 2, ["defense"] = 2, ["armor"] = 1 }, message = { console = "Trying to refine %s to level +%s with %s%% success rate.", success = "You have upgraded %s to level +%s", fail = "You have failed in upgrade of %s to level +%s", downgrade = "The upgrade level of %s has downgraded to +%s", erase = "The upgrade level of %s has been erased.", maxlevel = "The targeted %s is already on max upgrade level.", notupgradeable = "This item is not upgradeable.", broadcast = "The player %s was successful in upgrading %s to level +%s.\nCongratulations!!", invalidtool = "This is not a valid upgrade tool.", toolrange = "This upgrade tool can only be used in items with level between +%s and +%s" }, tools = { [8306] = {range = {0, 15}, info = {chance = 0, removeable = true}}, [8300] = {range = {6, 15}, info = {chance = 10, removeable = true}} }, isEquipment = function(self) local weaponType = self:getItemWeaponType() return ((weaponType > 0 and weaponType < 7) or self.item.armor ~= 0) end, setItemName = function(self, name) return doItemSetAttribute(self.item.uid, "name", name) end, chance = function(self) local chances = {} chances.upgrade = (self.levels[self.item.level + 1][1] or 100) chances.downgrade = (self.item.level * 5) chances.erase = (self.item.level * 3) return chances end } function UpgradeHandler:new(item) local obj, ret = {} obj.item = {} obj.item.level = 0 obj.item.uid = item.uid for key, value in pairs(getItemInfo(item.itemid)) do obj.item[key] = value end ret = setmetatable(obj, {__index = function(self, index) if _G[index] then return (setmetatable({callback = _G[index]}, {__call = function(self, ...) return self.callback(item.uid, ...) end})) else return UpgradeHandler[index] end end}) if ret:isEquipment() then ret:update() return ret end return false end function UpgradeHandler:update() self.item.level = (tonumber(self:getItemName():match("%+(%d+)")) or 0) end function UpgradeHandler:refine(uid, item) if not self.item then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.notupgradeable) return "miss" end local tool = self.tools[item.itemid] if(tool == nil) then doPlayerSendTextMessage(uid, MESSAGE_EVENT_DEFAULT, self.message.invalidtool) return "miss" end if(self.item.level > #self.levels) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.maxlevel:format(self.item.name)) return "miss" end if(self.item.level < tool.range[1] or self.item.level >= tool.range[2]) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.toolrange:format(unpack(tool.range))) return "miss" end local chance = (self:chance().upgrade + tool.info.chance) doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, self.message.console:format(self.item.name, (self.item.level + 1), math.min(100, chance))) if(tool.info.removeable == true) then doRemoveItem(item.uid, 1) end if chance * 100 > math.random(1, 10000) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_ORANGE, self.message.success:format(self.item.name, (self.item.level + 1))) if (self.item.level + 1) >= self.broadcast then doBroadcastMessage(self.message.broadcast:format(getCreatureName(uid), self.item.name, (self.item.level + 1))) end self:setItemName((self.item.level > 0 and self:getItemName():gsub("%+(%d+)", "+".. (self.item.level + 1)) or (self:getItemName() .." +1"))) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, (self.item.level > 0 and getItemAttribute(self.item.uid, key) or self.item[key]) + value) end end return "success" else if(self.levels[self.item.level][3] == true and (self:chance().erase * 100) > math.random(1, 10000)) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.erase:format(self.item.name)) self:setItemName(self.item.name) for key, value in pairs(self.attributes) do if self.item[key] > 0 then doItemSetAttribute(self.item.uid, key, self.item[key]) end end elseif(self.levels[self.item.level][2] == true and (self:chance().downgrade * 100) > math.random(1, 10000)) then doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.downgrade:format(self.item.name, (self.item.level - 1))) self:setItemName((self.item.level == 1 and self.item.name or self:getItemName():gsub("%+(%d+)", "+".. (self.item.level - 1)))) for key, value in pairs(self.attributes) do if getItemAttribute(self.item.uid, key) ~= nil or self.item[key] ~= 0 then doItemSetAttribute(self.item.uid, key, (self.item[key] + value * (self.item.level - 1))) end end else doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_RED, self.message.fail:format(self.item.name, (self.item.level + 1))) end return "fail" end end Obrigado, estou no aguardo. #UP! #UP!

Informação Importante

Confirmação de Termo