Ir para conteúdo

Oneshot

Marquês
  • Total de itens

    1347
  • Registro em

  • Última visita

  • Dias Ganhos

    36

Tudo que Oneshot postou

  1. Olá, - Substitua todo o conteúdo do seu arquivo ultimate healing.lua que, provavelmente, estará localizado em data\spells\scripts\healing. local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE) function onGetFormulaValues(cid, level, maglevel) local magTotal, levelTotal = maglevel, level / 4 return (magTotal * A + levelTotal * B), (magTotal * C + levelTotal * D) end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onCastSpell(cid, var) return doCombat(cid, combat, var) end A - Fator multiplicativo mínimo para magic level. B - Fator multiplicativo mínimo para level. C - Fator multiplicativo máximo para magic level. D - Fator multiplicativo máximo para level. Sendo assim, C terá que ser maior que A, e D maior que B. Quando maior o valor dos fatores, mais healing a magia fará. Até mais,
  2. Ou se mapa está "pesado" demais e seu computador não tem a RAM necessária para executá-lo, ou a compilação do executável do servidor foi feita em 32-bit. Se seu mapa ultrapassa os 30 Mb de peso, você terá que ter uma RAM considerável e um processador muito bom para executá-lo.
  3. Quando você se refere Programação OpenTibia, você diz C++, então eu não sei nada. Mas se LUA e XML estão incluídos, nestas duas linguagens, eu me considero de nível Intermediário-Avançado
  4. Bom, uma vez que você cria um servidor em uma rede compartilhada, e faz uso do Hamachi, quaisquer usuário que esteja na rede virtual que você criou, fará "parte" da rede local do seu computador, seria como eles estivessem no seu computador. Agora, se você não usa o Hamachi, então eu realmente não sei como alguém pode invadir o seu computador.
  5. Ué, se você usar o comando /attr da seguinte forma: /attr set name "NOME O nome ficará com espaços, lembrando que a sintaxe acima é normalmente usada em servidores 8.54.
  6. Parabéns a todos os selecionados para as vagas de Colaboração. Espero que abram uma vaga para Scripting
  7. No arquivo de cada monstro existem essas duas tags: <flag summonable="1"/> <flag illusionable="1"/> 1 é o valor que permite que o monstro seja invocado/"ilusionado". 0 é o valor que não permite que o monstro seja invocado/"ilusionado".
  8. <vocation id="9" name="Xennys Sorcerer" description="a Xennys Sorcerer" gaincap="15" gainhp="15" gainmana="60" gainhpticks="1.5" gainhpamount="300000" gainmanaticks="1" gainmanaamount="500000" manamultiplier="1.1" attackspeed="1500" soulmax="300" gainsoulticks="30" fromvoc="1"> <formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/> <skill id="0" multiplier="1.5"/> <skill id="1" multiplier="2.0"/> <skill id="2" multiplier="2.0"/> <skill id="3" multiplier="2.0"/> <skill id="4" multiplier="2.0"/> <skill id="5" multiplier="1.5"/> <skill id="6" multiplier="1.1"/> </vocation> <vocation id="10" name="Xennys Druid" description="a Xennys Druid" gaincap="15" gainhp="15" gainmana="60" gainhpticks="2" gainhpamount="300000" gainmanaticks="1" gainmanaamount="500000" manamultiplier="1.1" attackspeed="1500" soulmax="300" gainsoulticks="30" fromvoc="2"> <formula meleeDamage="1.0" distDamage="1.0" defense="1.0" armor="1.0"/> <skill id="0" multiplier="1.5"/> <skill id="1" multiplier="1.8"/> <skill id="2" multiplier="1.8"/> <skill id="3" multiplier="1.8"/> <skill id="4" multiplier="1.8"/> <skill id="5" multiplier="1.5"/> <skill id="6" multiplier="1.1"/> </vocation> <vocation id="11" name="Xennys Paladin" description="a Xennys Paladin" gaincap="25" gainhp="30" gainmana="30" gainhpticks="2" gainhpamount="400000" gainmanaticks="2" gainmanaamount="400000" manamultiplier="1.6" attackspeed="1500" soulmax="300" gainsoulticks="30" fromvoc="3"> <formula meleeDamage="1.0" distDamage="1.2" defense="1.0" armor="1.0"/> <skill id="0" multiplier="1.2"/> <skill id="1" multiplier="1.2"/> <skill id="2" multiplier="1.2"/> <skill id="3" multiplier="1.2"/> <skill id="4" multiplier="1.1"/> <skill id="5" multiplier="1.1"/> <skill id="6" multiplier="1.1"/> </vocation> <vocation id="12" name="Xennys Knight" description="a Xennys Knight" gaincap="30" gainhp="35" gainmana="15" gainhpticks="1" gainhpamount="500000" gainmanaticks="2" gainmanaamount="300000" manamultiplier="4.0" attackspeed="1500" soulmax="300" gainsoulticks="30" fromvoc="4"> <formula meleeDamage="1.3" distDamage="1.0" defense="1.5" armor="1.0"/> <skill id="0" multiplier="1.1"/> <skill id="1" multiplier="1.1"/> <skill id="2" multiplier="1.1"/> <skill id="3" multiplier="1.1"/> <skill id="4" multiplier="1.4"/> <skill id="5" multiplier="1.1"/> <skill id="6" multiplier="1.1"/> </vocation> O erro está no valor de fromvoc nas quatro vocações. O fromvoc deveria ser 5 para Xennys Sorcerer, 6 para Xennys Druid, 7 para Xennys Paladin, e 8 para Xennys Knight.
  9. Qual a versão do seu distro? Pode postar seu vocations.xml para eu dar uma olhada?
  10. Desculpe, Errei algo no script, tente denovo com este, function onSay(cid, words, param) if getPlayerVocation(cid) <= 8 then if doPlayerRemoveMoney(cid, 30000000) == TRUE then setPlayerPromotionLevel(cid, getPlayerPromotionLevel(cid) + 1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce comprou Xennys Promotion!") doSendMagicEffect(getPlayerPosition(cid), 30) else doPlayerSendCancel(cid, "Desculpe, voce nao tem dinheiro para a promotion!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else doPlayerSendCancel(cid, "Desculpe, voce ja esta promovido") end return TRUE end E se no seu config.lua, existe essa variável com o valor "yes", mude para "no" premiumForPromotion = "no"
  11. Oneshot

    Itens Xml

    Adicione isso ao seu movements.xml, localizado em data/movements. <moveevent type="Equip" itemid="2474" slot="head" event="function" value="onEquipItem"/> <moveevent type="DeEquip" itemid="2474" slot="head" event="function" value="onDeEquipItem"/> Antes veja se não existem tags parecidas com o mesmo ID no arquivo, para evitar quaisquer erros. Edição - Área errada, reportado.
  12. Olá, Sem querer ser o chato da história, mas se esses mapas não são disponibilizados é porque são mapas próprios, em outras palavras, feito pela equipe do Loucoserv e Heroserv.
  13. O ACC Maker que você baixou não é compatível com a versão do seu distro. Tente baixar algum compatível com TFS 0.3.6
  14. Oneshot

    [Resolvido]

    <action fromid="2086" toid="2092" event="script" value="other/doors.lua"/> Esta tag do seu actions.xml diz tudo. Qualquer ID entre 2086 e 2092 estará registrado nela, por isso que o executável acusa de Item ID duplicado, você está registrando o ID novamente colocando essa tag: <action itemid="2089" script="chave2.lua" />
  15. O seu arquivo items.xml que está fazendo com que os itens do NPC apareçam como 'furniture package' e não como o nome do item real.
  16. Olá, Troque o conteúdo do seu script por este aqui. function onSay(cid, words, param) if getPlayerVocation(cid) <= 8 then if doPlayerRemoveMoney(cid, 30000000) == TRUE then doPlayerSetPromotionLevel(cid, 2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voc\ê comprou Xennys Promotion!") doSendMagicEffect(getPlayerPosition(cid), 30) else doPlayerSendCancel(cid, "Desculpe, voc\ê n\ão tem dinheiro para a promotion!") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else doPlayerSendCancel(cid, "Desculpe, voc\ê j\á est\á promovido") end return TRUE end
  17. doItemSetAttribute(uid, description, "texto")
  18. - Crie um arquivo LUA de nome blessed wand na sua pasta weapons/scripts. Cole este conteúdo nele: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -3, -68, -3, -68, 7, 6, 4, 8) local condition = createConditionObject(CONDITION_CURSED) setConditionParam(condition, CONDITION_PARAM_DELAYED, 1) addDamageCondition(condition, 5, 2000, -60) setCombatCondition(combat, condition) function onUseWeapon(cid, var) return doCombat(cid, combat, var) end - Adicione essa linha de configuração ao seu weapons.xml. <wand id="7429" level="100" mana="50" event="script" value="blessed wand.lua"> <vocation id="1"/> <vocation id="5" showInDescription="0"/> <vocation id="2"/> <vocation id="6" showInDescription="0"/> </wand> Só vou comentar uma coisa, você mesmo poderia ter feito esse script, era só mudar: function onCastSpell(cid, var) por function onUseWeapon(cid, var).
  19. Não não, Não podemos usar nosso mapa ainda, então tivemos que quebrar o galho com este
  20. http://www.youtube.com/watch?v=QYkexkCCLVs Bom, pessoal, esse é o vídeo que mostra o Sistema de Forja do Solscian Alternative Tibia Server! Como eu não sou nada experiente com gravação de vídeos, ele ficou uma droga, assistam em Full Screen ou pelo menos tentem assistir =(
  21. Versão: 8.54 "Quatro baús em uma câmara, você só pode pegar uma Magic Sword elemental." - Vamos lá, crie um arquivo LUA de nome msquest na pasta actions/scripts. Coloque este conteúdo nele: function onUse(cid, item, fromPosition, itemEx, toPosition) local queststatus = getPlayerStorageValue(cid, 3333) if item.uid == 25801 then if queststatus == -1 then doPlayerSendTextMessage(cid, 22, "You have found a Fire Magic Sword") local item = doPlayerAddItem(cid, 2400, 1) doItemSetAttribute(item, "name", 'fire magic sword') doItemSetAttribute(item, "actionid", 6990) setPlayerStorageValue(cid, 3333, 1) else doPlayerSendTextMessage(cid, 22, "It is empty") end elseif item.uid == 25802 then if queststatus == -1 then doPlayerSendTextMessage(cid, 22, "You have found a Water Magic Sword") local item = doPlayerAddItem(cid, 2400, 1) doItemSetAttribute(item, "name", 'water magic sword') doItemSetAttribute(item, "actionid", 6991) setPlayerStorageValue(cid, 3333, 1) else doPlayerSendTextMessage(cid, 22, "It is empty") end elseif item.uid == 25803 then if queststatus == -1 then doPlayerSendTextMessage(cid, 22, "You have found an Earth Magic Sword") local item = doPlayerAddItem(cid, 2400, 1) doItemSetAttribute(item, "name", 'earth magic sword') doItemSetAttribute(item, "actionid", 6992) setPlayerStorageValue(cid, 3333, 1) else doPlayerSendTextMessage(cid, 22, "It is empty") end elseif item.uid == 25804 then if queststatus == -1 then doPlayerSendTextMessage(cid, 22, "You have found an Energy Magic Sword") local item = doPlayerAddItem(cid, 2400, 1) doItemSetAttribute(item, "name", 'energy magic sword') doItemSetAttribute(item, "actionid", 6993) setPlayerStorageValue(cid, 3333, 1) else doPlayerSendTextMessage(cid, 22, "It is empty") end end return TRUE end - Agora, crie outro arquivo LUA de nome magicsword, na sua pasta actions/scripts. Coloque este conteúdo nele. function onUse(cid, item, fromPosition, itemEx, toPosition) if item.aid == 6990 then if(table.maxn(summons) == 2) then doPlayerSendTextMessage(cid, "You already have two summons.") else doSummonMonster(cid, 'Fire Elemental') doPlayerSendTextMessage(cid, "You have summoned a Fire Elemental") end elseif item.aid == 6991 then if(table.maxn(summons) == 2) then doPlayerSendTextMessage(cid, "You already have two summons.") else doSummonMonster(cid, 'Water Elemental') doPlayerSendTextMessage(cid, "You have summoned a Water Elemental") end elseif item.aid == 6992 then if(table.maxn(summons) == 2) then doPlayerSendTextMessage(cid, "You already have two summons.") else doSummonMonster(cid, 'Earth Elemental') doPlayerSendTextMessage(cid, "You have summoned a Earth Elemental") end elseif item.aid == 6993 then if(table.maxn(summons) == 2) then doPlayerSendTextMessage(cid, "You already have two summons.") else doSummonMonster(cid, 'Energy Elemental') doPlayerSendTextMessage(cid, "You have summoned a Energy Elemental") end end return TRUE end - E finalmente, coloque essas linhas no seu arquivo actions.xml, localizado em data/actions <action uniqueid="25801" event="script" value="msquest.lua"/> <action uniqueid="25802" event="script" value="msquest.lua"/> <action uniqueid="25803" event="script" value="msquest.lua"/> <action uniqueid="25804" event="script" value="msquest.lua"/> <action actionid="6990" event="script" value="magicsword.lua"/> <action actionid="6991" event="script" value="magicsword.lua"/> <action actionid="6992" event="script" value="magicsword.lua"/> <action actionid="6993" event="script" value="magicsword.lua"/> Não testei, mas creio que irá funcionar. Não esqueça de colocar os uniqueids 25801, 25802, 25803, 25804 nos baús!
  22. if item.uid == 10500 then queststatus = getPlayerStorageValue(cid,10500) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a Steel Shield refined +15") local item1 = doPlayerAddItem(cid,2509,1) doItemSetAttribute(item1, "defense", 36) doItemSetAttribute(item1, "description", "Refinado(Def): +15.\nEste Item foi obtido por " .. getPlayerName(cid) .. ".")] setPlayerStorageValue(cid,10500,1) else doPlayerSendTextMessage(cid,22,"It is empty.") end end end
  23. O erro está no spells.xml, localizado em data/spells
  24. Então procure qualquer servidor 8.4/8.42, estes provavelmente são baseados no TFS 0.3.4
  25. http://uploadhyper.com/file/2805/cryingdamson4pl2console.7z.html Esse é o link da dev 0.3.4 do The Forgotten Server, O próprio Mock deixa claro que testou seu script nessa versão e tal funcionou perfeitamente.
  • Quem Está Navegando   0 membros estão online

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