Ir para conteúdo

Frenesy

Membro
  • Registro em

  • Última visita

Tudo que Frenesy postou

  1. Você é o Cara! Obrigado!
  2. Quero remover um NPC que esta na posição x=507, y=500, z=5, como faz? Pode ser por Movements.
  3. Entendi. Até o momento só o mapa mesmo. Nisso eu estou tranquilo. Meu mapa é bem pequeno e meus scripts estão rodando perfeitamente. Esse negocio de Itens no chão pesar o servidor eu não sabia. Isso é um fato ou você esta apenas supondo isso?
  4. Fique sem saber onde fazer esse tópico. Espero que eu esteja no lugar certo. Então, queria saber o que poderia deixar um OTserv mais pesado. Scripts contribui para isso? Tipo, meu servidor tem muitas quests, portanto, criei muitos scripts, cheio de functions, addevent e coisas do tipo. Queria saber se isso influencia em alguma coisa. Mesmo com todas as quests instaladas meu servidor ta rodando normal. Mas penso que isso poderia ser porque ainda não esta online. Não sei. Quero uma resposta de vocês. Muitos Scripts deixam o servidor pesado? O que necessariamente deixa o servidor pesado? O Mapa? meu mapa é pequeno, tem apenas 14MB. Faço a pergunta não porque meu servidor esta pesado. E sim para me prevenir sobre o que não fazer futuramente.
  5. Funcionou perfeitamente! Obrigado.
  6. O Player passa por um tile e fica Mute por X tempo ou até eu desfazer. No Aguardo!
  7. Exatamente! Coloque essa tag no monstro.
  8. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Items.xml <attribute key="reflectpercentall" value="100"/> <attribute key="reflectchanceall" value="50"/> Coloque essas duas tags no Item que você quer que reflita o dano. 1º - % do dano que será refletido. 2º - Change de refletir esse dano.
  9. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    eu retiro o item e adiciono outro no lugar.
  10. Isso deve ser coisa da própria animação da magia que vem em seu OTserv. A Magia ta configurada pra ir no alvo. Se ao fazer isso a animação da magia aparece torta, isso deve ser coisa da sua animação mesmo. Na magia não há como mudar isso. Só pra fazer um teste rápido, tente mudar o efeito. Tire esse efeito que esta aparecendo torto e adicione outro que você considera normal. Se ao mudar o efeito ficar normal - ou seja, não ficar torto - então o problema é na animação (efeito) dessa magia. Coisa que não pode ser consertada por script .LUA
  11. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 31) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 31) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1.0, -100, -1.1, -150) -- Formula do Dano local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var, combat1 = combat1 } doCreatureAddHealth(cid, -100) -- Quantidade de HP que você irá perder ao usar a Magia doSendAnimatedText(getPlayerPosition(cid), "-100", TEXTCOLOR_RED) doSendMagicEffect(getPlayerPosition(cid), 13) -- Aqui muda o Efeito que aparece em você. addEvent(onCastSpell1, 1, parameters) return true end
  12. Cara, eu acho que isso esta certo. Quando se trata de móveis, a grande maioria vem nessas caixas com esses nomes mesmo. A diferença esta quando você da look nelas. Acho que é isso.
  13. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    E como esse Teleport iria aparecer no Tile? Você colocaria ele pelo Map Editor ou você tem algum script para isso?
  14. local STORAGE = 5021 -- Storage necessária local ITEM = 0000 -- ID Do Item local REWARD = 0000 -- ID Do Item que irá ganhar local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg:lower()) end function onThink() npcHandler:onThink() end local talkState = {} function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, "Trocar") then selfSay("Você deseja trocar o Item X por outro item comigo?", cid) talkState[talkUser] = 1 elseif msgcontains(msg, "yes") and talkState[talkUser] == 1 then if getPlayerStorageValue(cid, STORAGE) > 0 then if getPlayerItemCount(cid, ITEM) > 0 then selfSay("Aí está!", cid) doPlayerRemoveItem(cid, ITEM, 1) -- Remove Item doPlayerAddItem(cid,REWARD, 1) -- Adiciona Item doSendMagicEffect(getThingPos(cid), 10) npcHandler:releaseFocus(cid) else selfSay("Desculpe, mas você não tem o Item que eu quero.", cid) talkState[talkUser] = 0 end else selfSay("Desculpe, mas você não é digno de realizar trocas comigo.", cid) talkState[talkUser] = 0 end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  15. Movements/Script: -- < Script by Frenesy > -- function onStepIn(cid, item, position, fromPosition) -- Nao sei quantas vocations tem em seu OT. Configurei as principais abaixo.-- local v = { Knight = {lookType = 268, lookHead = 79, lookBody = 91, lookLegs = 91, lookFeet = 91, lookTypeEx = 0, lookAddons = 3}, Sorcerer = {lookType = 130, lookHead = 79, lookBody = 91, lookLegs = 91, lookFeet = 91, lookTypeEx = 0, lookAddons = 3}, Druid = {lookType = 144, lookHead = 79, lookBody = 91, lookLegs = 91, lookFeet = 91, lookTypeEx = 0, lookAddons = 3}, Paladin = {lookType = 129, lookHead = 79, lookBody = 91, lookLegs = 91, lookFeet = 91, lookTypeEx = 0, lookAddons = 3} } if isPlayer(cid) then if getPlayerVocation(cid) == 1 then -- Knight doSetCreatureOutfit(cid, v.Knight, -1) addEvent(AddHp, 2000, cid) elseif getPlayerVocation(cid) == 2 then -- Sorcerer doSetCreatureOutfit(cid, v.Sorcerer, -1) addEvent(AddHp, 2000, cid) elseif getPlayerVocation(cid) == 3 then -- Druid doSetCreatureOutfit(cid, v.Druid, -1) addEvent(AddHp, 2000, cid) elseif getPlayerVocation(cid) == 4 then -- Paladin doSetCreatureOutfit(cid, v.Paladin, -1) addEvent(AddHp, 2000, cid) end end return TRUE end function onStepOut(cid, item, position, fromPosition) doRemoveCondition(cid, CONDITION_OUTFIT) return true end function AddHp(cid) local pos = {x=500, y=501, z=5} -- Posição do Tile local player = getTopCreature(pos).uid if isPlayer(player) then if getPlayerLevel(cid) >= 1 and getPlayerLevel(cid) < 50 then addEvent(doCreatureAddMana, 500, cid, 500) doSendMagicEffect(getPlayerPosition(cid), 12) addEvent(AddHp, 2000, cid) elseif getPlayerLevel(cid) >= 51 and getPlayerLevel(cid) < 100 then addEvent(doCreatureAddMana, 500, cid, 1000) doSendMagicEffect(getPlayerPosition(cid), 12) addEvent(AddHp, 2000, cid) elseif getPlayerLevel(cid) >= 101 then addEvent(doCreatureAddMana, 500, cid, 1500) doSendMagicEffect(getPlayerPosition(cid), 12) addEvent(AddHp, 2000, cid) end end return true end Movements.xml <movevent type="StepIn" actionid="15432" event="script" value="NomeDoArquivo.lua"/> <movevent type="StepOut" actionid="15432" event="script" value="NomeDoArquivo.lua"/> Pelo Map Editor, coloque ActionID do Tile: 15432.
  16. Disponha! REP+ se ajudei
  17. Na pasta do seu OTserv. fica em data/items. Copie o Item.otb dessa pasta e leva para a pasta do seu Remeres Map Editor. Que fica em: C:\Program Files\Remere's Map Editor\data\VersãoDoSeuOT
  18. Precisa colocar o item.otb que você modificou na pasta do seu Map Editor.
  19. Nessas parte do Script: local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_STUN) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_SLEEP) Fica os Efeitos. Veja, no "combat1" tem essa linha: setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_STUN) Para mudar o efeito, você deve apagar o "CONST_ME_STUN" e colocar o número do efeito desejado: setCombatParam(combat1, COMBAT_PARAM_EFFECT, 25) Em "combat2" a mesma coisa. Na linha: setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_SLEEP) Apague "CONST_ME_SLEEP" e adicione o número do efeito desejado. setCombatParam(combat2, COMBAT_PARAM_EFFECT, 13) ~~ Lista de Efeitos. Cada efeito tem um número. Modifique seu Script ao seu Gosto.
  20. "Melhor Resposta" caso o pedido tenha sido atendido corretamente.
  21. Primeiro testa a Spells, depois nos preocupamos com os detalhes menores.
  22. Tá, tenta esse: local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_STUN) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_SLEEP) local condition1 = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition1, CONDITION_PARAM_TICKS, 10000) setConditionParam(condition1, CONDITION_PARAM_SPEED, -350) setConditionFormula(condition1, -0.9, 0, -0.9, 0) setCombatCondition(combat1, condition1) arr1 = { {0, 3, 0} } arr2 = { {0, 3, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) setCombatArea(combat1, area1) setCombatArea(combat2, area2) local function onCastSpell1(parameters) doCombat(parameters.cid, parameters.combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, parameters.combat2, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2 } addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 200, parameters) return true end Não sei se funciona, só tenho 8.60 aqui. Testa aí!
  23. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Sempre a Disposição Abraços!
  24. Basta modificar a formula da velocidade nesta parte do script: setConditionFormula(conditionspeed, 1.0, -86, 1.0, -86)

Informação Importante

Confirmação de Termo