Ir para conteúdo

Lucaswc15

Cavaleiro
  • Total de itens

    190
  • Registro em

  • Última visita

Tudo que Lucaswc15 postou

  1. function onSay(cid, words, param) if isVip(cid) then setPlayerStorageValue(cid, 6616, getPlayerStorageValue(cid, 6616) == -1 and 1 or -1) doPlayerSendTextMessage(cid, 25, "Auto Loot: " .. (getPlayerStorageValue(cid, 6616) == -1 and "OFF" or "ON")) end return true end Obrigado pelo Rep +
  2. Ola galera, me surgiu uma ideia e seria interessante fazer ela mas nao sei como fazer. Creio que seja em creaturescripts. Preciso que o loot de um monster seja dividido para todos os player que matarem. Exemplo: 10 player estao matando um boss, o boss morre, e cada player tem a chance de ganhar 1 ou mais itens do loot do boss. Porque assim nao fica aquele de quem conseguir catar o loot primeiro pega tudo, entendeu? É isso ae... vlw Obs: nao pode todos os players receberem o mesmo item por exemplo.
  3. Troca ve se vai funcionar: <instant name="Change Corpse" words="change corpse" lvl="LEVEL PARA USAR A MAGIA" mana="MANA PARA USAR A MAGIA" aggressive="0" needtarget="1" exhaustion="1000" needlearn="0" blockwalls="0" event="script" value="nome do seu arquivo.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> Eu nao testei, veja se funciona.
  4. Nao deu certo. 13:09 You advanced from Level 100 to Level 114.
  5. Ola, eu queria um quest de experiencia, mas essa experiencia é vinda em porcentagem. Exemplo: Player abre o baú e recebe 15% de experiencia, nem mais, nem menos. É isso ae, Obrigado.
  6. O script funciona da seguinte maneira: O player mata o Water Elemental e usa uma fishing rod no corpo do Water Elemental, assim ele consegue o loot do water elemental. Como se estivesse pescando, só que em vez de usar na agua a fishing rod, voce usa no corpo do Water Elemental.
  7. setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -4, -22, -27.4, -3) Só voce colocar os números maiores. Exemplo: -4 coloca -10, vai bater mais só que nao existe uma regra pra isso nao.
  8. Lucaswc15

    Ajuda, War System.

    Voce viu se na sua pasta mods ta Enable o war system? enabled="no"> mude pra enabled="yes">.
  9. Ou se nao ta na pasta xml/vocations.xml procura por gainhp="4000 se nao tiver esse número voce deve colocar ele
  10. Qual é o erro?
  11. Eu abri o script que voce passo que ta usando aí lá tava essa storage, mas se nao der certo aqui vai como vc falo: local stor, limit = 7575, 5 --storage, limit to add. local allow_container = false --empty! not looted with items, atleast for now. function onSay(cid, words, param) if isVip(cid) then local expl = param:explode(':') local action, rst = expl[1], expl[2] if (action:lower() == 'check') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):explode(',') end else doPlayerSendTextMessage(cid,22,"Voce precisa ser vip.") end local txt = 'Autoloot List:\n' if (#list > 0) then for k, id in ipairs(list) do id = id:gsub('_', '') if tonumber(id) then txt = txt .. getItemNameById(tonumber(id)) .. ((k < #list) and '\n' or '') end end else txt = 'Empty' end doPlayerPopupFYI(cid, txt) elseif (action:lower() == 'add') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not allow_container and isItemContainer(item) then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end local attrs = getItemInfo(item) if not attrs then return doPlayerSendCancel(cid, 'not valid item.') elseif not attrs.movable or not attrs.pickupable then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end if isInArray(list, item) then return doPlayerSendCancel(cid, 'already added.') end table.insert(list, tostring(item)) local new = '' for v, id in ipairs(list) do new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< has been added to the autoloot list.') elseif (action:lower() == 'remove') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list == 0) then return doPlayerSendCancel(cid, 'You dont have any item added.') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not isInArray(list, item) then return doPlayerSendCancel(cid, 'This item is not in the list.') end local new = '' for v, id in ipairs(list) do if (tonumber(id) ~= item) then new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< removed from the autoloot list.') end return true end
  12. Cara nao quero baixar seu arquivo. Copie o que ta escrito no items.xml e posta aqui.
  13. Posta seu items.xml Acho que pode ter script repitido, mas mesmo assim se nao tiver posta ela aí.
  14. Eu sei faze esse script, tava com um pouco de preguiça.. vlw srnight
  15. vai em data/items/items.xml e procure por steel axe, ele deve ficar assim: <item id="8601" article="a" name="steel axe"> <attribute key="weight" value="4100" /> <attribute key="defense" value="10" /> <attribute key="attack" value="21" /> <attribute key="weaponType" value="axe" /> </item> Procure por jagged sword, deve ficar assim: <item id="8602" article="a" name="jagged sword"> <attribute key="weight" value="1800" /> <attribute key="defense" value="14" /> <attribute key="attack" value="21" /> <attribute key="weaponType" value="sword" /> <attribute key="extradef" value="1" /> </item> Procure por daramanian mace, deve ficar assim: <item id="2439" article="a" name="daramanian mace"> <attribute key="weight" value="6800" /> <attribute key="defense" value="12" /> <attribute key="attack" value="21" /> <attribute key="weaponType" value="club" /> </item> É isso ae, se te ajudei REP+
  16. Ae galera preciso de um script (action) de alavanca que teleporte 10 players. Teleportar todos para 1 só posição. Aqui vai as coordenadas. Player: 1) x=669,y=259,z=8 2) x=670,y=259,z=8 3) x=671,y=259,z=8 4) x=672,y=259,z=8 5) x=674,y=259,z=8 6) x=675,y=259,z=8 7) x=676,y=259,z=8 8) x=677,y=259,z=8 9) x=678,y=259,z=8 10) x=679,y=259,z=8 POSIÇÃO PARA ONDE VAO x=672,y=222,z=7 Preciso que de o efeito de teleport. Preciso que o player puxasse a alavanca e teleportasse todos os players e daí nao desse mais para puxar a alavanca.
  17. local stor, limit = 7575, 5 --storage, limit to add. local allow_container = false --empty! not looted with items, atleast for now. function onSay(cid, words, param) if getPlayerStorageValue(15001) == 1 then local expl = param:explode(':') local action, rst = expl[1], expl[2] if (action:lower() == 'check') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):explode(',') end else doPlayerSendTextMessage(cid,22,"Voce precisa ser vip.") end local txt = 'Autoloot List:\n' if (#list > 0) then for k, id in ipairs(list) do id = id:gsub('_', '') if tonumber(id) then txt = txt .. getItemNameById(tonumber(id)) .. ((k < #list) and '\n' or '') end end else txt = 'Empty' end doPlayerPopupFYI(cid, txt) elseif (action:lower() == 'add') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not allow_container and isItemContainer(item) then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end local attrs = getItemInfo(item) if not attrs then return doPlayerSendCancel(cid, 'not valid item.') elseif not attrs.movable or not attrs.pickupable then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end if isInArray(list, item) then return doPlayerSendCancel(cid, 'already added.') end table.insert(list, tostring(item)) local new = '' for v, id in ipairs(list) do new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< has been added to the autoloot list.') elseif (action:lower() == 'remove') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list == 0) then return doPlayerSendCancel(cid, 'You dont have any item added.') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not isInArray(list, item) then return doPlayerSendCancel(cid, 'This item is not in the list.') end local new = '' for v, id in ipairs(list) do if (tonumber(id) ~= item) then new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< removed from the autoloot list.') end return true end
  18. Vai em creaturescripts.xml e procure por essa linha: <event type="look" name="repLook" event="script" value="rep/repLook.lua"/> e apague-a. Agora vá na pasta mods e procure por rep_system ou algo assim, abra e procure por enabled="yes"> e substitua por enabled="no">
  19. Ae Viilden eu não queria repetido mas valeu por tentar ajudar. Ae Jhon rep + Dúvida Sanada.
  20. Ae galerinha, vou postar aqui um script da fishing rod que se voce usar no corpo do Water Elemental você recebe o loot, igual no tibia global. Va em data/actions/actions.xml coloque isso: <action itemid="2580" event="script" value="tools/fishing.lua" allowfaruse="1"/> Agora vá em data/actions/scripts/tools/ e crie um arquivo .lua chamado fishing e coloque isso dentro: local config = { waterIds = {493, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625}, rateSkill = getConfigValue("rateSkill"), allowFromPz = false, useWorms = true } --config water elemental local find_anything = 30 -- chance para achar algo local difficulty = 15 -- 1-100 para dificuldade menor mais facil local items = { [10499] = {2226, 2152, 2376, 2509, 2168, 7588, 7589, 2152, 2146, 2167, 2169, 9811, 9808, 5929, 10220}, } function onUse(cid, item, fromPosition, itemEx, toPosition) if items[itemEx.itemid] ~= nil then if math.random(100) <= find_anything then doTransformItem(itemEx.uid, 10500) doDecayItem(itemEx.uid) doSendMagicEffect(toPosition, 53) else local geti = items[itemEx.itemid] local newId for i = 1, #items[itemEx.itemid] do local x = math.random(100) if (x < difficulty) then newId = geti[i] break elseif (i >= #items[itemEx.itemid]) then newId = geti[#items[itemEx.itemid]] end end doTransformItem(itemEx.uid, 10500) doPlayerAddItem(cid, newId, 1) doPlayerAddItem(cid, 2148, 28) doSendMagicEffect(toPosition, 53) end end if(not isInArray(config.waterIds, itemEx.itemid)) then return false end if((config.allowFromPz or not getTileInfo(getCreaturePosition(cid)).protection) and itemEx.itemid ~= 493 and math.random(1, (100 + (getPlayerSkill(cid, SKILL_FISHING) / 10))) < getPlayerSkill(cid, SKILL_FISHING) and (not config.useWorms or (getPlayerItemCount(cid, ITEM_WORM) > 0 and doPlayerRemoveItem(cid, ITEM_WORM, 1)))) then doPlayerAddItem(cid, ITEM_FISH, 1) doPlayerAddSkillTry(cid, SKILL_FISHING, config.rateSkill) end doSendMagicEffect(toPosition, CONST_ME_LOSEENERGY) return true end Se voce nao tem o monsters Water Elemental configurado certo aqui vai ele: <?xml version="1.0" encoding="UTF-8"?> <monster name="Water Elemental" nameDescription="a Water Elemental" race="undead" experience="650" species="ice" speed="280" manacost="0"> <health now="650" max="650"/> <look type="286" corpse="10499"/> <targetchange interval="20000" chance="15"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag staticattack="85"/> <flag lightlevel="0"/> <flag lightcolor="0"/> <flag targetdistance="1"/> <flag runonhealth="1"/> </flags> <attacks> <attack name="melee" interval="2000" skill="75" attack="65"/> <attack name="drown" interval="2000" chance="20" range="7" radius="2" target="1" min="-50" max="-250"> <attribute key="areaEffect" value="bluebubble"/> </attack> <attack name="physical" interval="1000" chance="10" range="6" target="1" min="0" max="-209"> <attribute key="shootEffect" value="snowball"/> </attack> <attack name="ice" interval="2000" chance="18" range="4" target="1" min="0" max="-103"> <attribute key="shootEffect" value="smallice"/> </attack> <attack name="physical" interval="1000" chance="9" range="7" radius="2" target="1" min="0" max="-100"> <attribute key="shootEffect" value="smallice"/> <attribute key="areaEffect" value="giantice"/> </attack> </attacks> <defenses armor="30" defense="30"> <defense name="healing" interval="2000" chance="15" min="90" max="150"> <attribute key="areaEffect" value="blueshimmer"/> </defense> </defenses> <elements> <element physicalPercent="70"/> <element energyPercent="-25"/> <element holyPercent="20"/> <element deathPercent="30"/> </elements> <immunities> <immunity ice="1"/> <immunity fire="1"/> <immunity poison="1"/> <immunity paralyze="1"/> <immunity invisible="1"/> </immunities> </monster>
  21. Preciso de ajuda nesse script. Tipo, o player tem que falar (/ir Nevor) pra poder teleportar e eu queria que ele pudesse dar (/ir Nevor) e (/ir nevor). function onSay(cid, words, param) local config = { pz = true, -- players precisam estar em protection zone para usar? (true or false) battle = true, -- players deve estar sem battle (true or false) custo = false, -- se os teleport irão custa (true or false) need_level = true, -- se os teleport irão precisar de level (true or false) premium = true -- se precisa ser premium account (true or false) } --[[ Config lugares]]-- local lugar = { ["Nevor"] = { pos = {x=611, y=425, z=6},level = 1,price = 0}, } --[[ Lista de Viagem (Não mexa) ]]-- if (param == "") then local str = "" str = str .. "Lugares para ir, diga /ir nome do lugar. \n\n" doShowTextDialog(cid, 7724, str) return TRUE end local a = lugar[param] if not(a) then doPlayerSendTextMessage(cid, 22, "Esse lugar não existe, verifique se digitou o nome correto. Obs: diferencie maíusculas de miníusculas!") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE elseif config.premium == true and not isPremium(cid) then doPlayerSendTextMessage(cid, 21, "Apenas players com Premium Account podem se teleportar.") return TRUE elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendTextMessage(cid, 22, "Você nao pode se teleportar com battle.") return TRUE elseif config.need_level == true and getPlayerLevel(cid) < a.level then doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) return TRUE end doSendMagicEffect(getPlayerPosition(cid), CONST_ME_BIGCLOUDS) doTeleportThing(cid, a.pos) doSendMagicEffect(a.pos, 40) doPlayerSendTextMessage(cid, 25, "\n " .. param .. "") return TRUE end
  22. Voce adiciono o item no server antes de por o script no config lua?
  23. Vai na pasta mods e cria um arquivo xml e renomeia para buypremium_command E coloque dentro <?xml version="1.0" encoding="UTF-8"?> <mod name="Buy premium command" version="1.0" author="The Forgotten Server" contact="otland.net" enabled="yes"> <config name="buypremium_config"><![CDATA[ config = { days = 30, maxDays = 360 } ]]></config> <talkaction words="!buyvip; !comprarvip" event="buffer"><![CDATA[ domodlib('buypremium_config') if(getPlayerPremiumDays(cid) > config.maxDays) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You can not buy more than " .. config.days + config.maxDays .. " days of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return end if(not doPlayerRemoveItem(cid, 12602, 1)) then doPlayerSendTextMessage(cid, 22,"Voce nao tem uma vip coin.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return end doPlayerAddPremiumDays(cid, config.days) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce recebeu 30 dias de Premium Account, porfavor, relogue sua conta.") ]]></talkaction> </mod>
  24. O bug 1 ocorre em vários servidor sim, o problema é nas sources do server, se voce nao sabe compilar aconselho a achar um executor que nao tenha esse bug. Nesse tutorial voce consegue resolver esse bug também. http://www.xtibia.co...m-bug-dos-npcs/ O bug 2 não sei resolver.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...