
Tudo que psychonaut postou
-
Max Level
Não testei, tu pode antes de chega no lvl max, diminuir a rate, tipo uns 50 leveis antes se a rate for muito alta, pela source acho que da mais certo.
-
Max Level
Não precisa ser na source, acho que ja funciona com stages. \data\XML\stages.xml <?xml version="1.0" encoding="UTF-8"?> <stages> <config enabled="0" /> <stage minlevel="1" maxlevel="8" multiplier="7" /> <stage minlevel="9" maxlevel="20" multiplier="6" /> <stage minlevel="21" maxlevel="50" multiplier="5" /> <stage minlevel="51" maxlevel="100" multiplier="4" /> <stage minlevel="MAXLEVEL" multiplier="0" /> </stages> Se quiser fazer na source tenta isso: player.h, procura por: [cpp]static uint64_t getExpForLevel(uint32_t lv){[/cpp] E coloca depois: [cpp]if(lv > 8000) return 0;[/cpp] 8000 tu muda pro max
-
(Resolvido)So x vocaçao pode usa x item
Altera a linha if vocation = 3 then Pra if vocation == 3 then Erro meu, é que to mexendo com VB, ai confundi.
-
(Resolvido)So x vocaçao pode usa x item
Tenta isso local IDHEAD = 2343 local IDARMOR = 2503 local IDLEGS = 2504 local IDFEET = 2646 local IDSHIELD = 8905 local THETEXT = "Chain" local look = 309 -- Coloque o ID do outfit local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, -1) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, 5000000) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 500) setConditionParam(condition, CONDITION_PARAM_MANAGAIN, 5000000) setConditionParam(condition, CONDITION_PARAM_MANATICKS, 500) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 150) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 150) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVELPERCENT,575) setConditionParam(condition, CONDITION_PARAM_ABSORBPERCENTALL, 575) function onDeEquip(cid, item, slot) doRemoveCondition(cid, CONDITION_OUTFIT) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have just lost the bonus for wearing a full set of equipment. please equipped the item you remove to get the bonus again.") doRemoveCondition(cid, CONDITION_ATTRIBUTES) end function onEquip(cid, item, slot) local vocation = getPlayerVocation(cid) if vocation = 3 then if getPlayerSlotItem(cid, CONST_SLOT_HEAD).itemid == IDHEAD and getPlayerSlotItem(cid, CONST_SLOT_ARMOR).itemid == IDARMOR and getPlayerSlotItem(cid, CONST_SLOT_LEGS).itemid == IDLEGS and getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid == IDFEET and getPlayerSlotItem(cid, CONST_SLOT_RIGHT).itemid == IDSHIELD then doSendAnimatedText(getCreaturePosition(cid), THETEXT, 210) doSetCreatureOutfit(cid, {lookType = look}, -1) doAddCondition(cid, condition) local spot = getThingPosition(cid) doSendDistanceShoot(spot, {x = spot.x + 3, y = spot.y + 3, z = spot.z}, CONST_ANI_HOLY) doSendDistanceShoot(spot, {x = spot.x - 3, y = spot.y - 3, z = spot.z}, CONST_ANI_HOLY) doSendDistanceShoot(spot, {x = spot.x + 3, y = spot.y - 3, z = spot.z}, CONST_ANI_HOLY) doSendDistanceShoot(spot, {x = spot.x - 3, y = spot.y + 3, z = spot.z}, CONST_ANI_HOLY) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este item e apenas para paladins.") end return true end
-
(Resolvido)So x vocaçao pode usa x item
Tem como você por o chain set.lua aqui?
- Como resolver erros no site de Notice e Warning
-
removido
Vlw! Se alguém tiver alguma sugestão ou encontrar algum bug, é só falar que eu procuro arrumar ai.
-
removido
Se eu for alterar alguma coisa, posso apenas upar no mega e atualizar com scan e tudo, ou tenho que criar outro tópico?
-
Eu esperando meu post ser aprovado
levem na brincadeira...
-
[pedido] SD que hita no maximo 10k
Tem como tu postar seu spells.xml aqui pra eu ver qual é o script da sua sd Ou tenta algo assim: local combat = Combat() combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) combat:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH) function onGetFormulaValues(player, level, maglevel) min = -1 max = -10000 return min, max end combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onCastSpell(creature, var, isHotkey) return combat:execute(creature, var) end
-
Error ao istalar website
Aperta ctrl+f e procura $char_to_copy->setPosX(0); Você tem que mudar os 3 $char_to_copy->setPosX(0); $char_to_copy->setPosY(0); $char_to_copy->setPosZ(0);
-
Error ao istalar website
Muda a posição no map editor, apertando CTRL+T, e muda no accountmanagement
-
(Resolvido)[PEDIDO] Spell que suga mana
Então, o que você pediu dando dano ta aqui, não consegui fazer porcentagem msm... com o global.lua ficaria mais facil local MIN = 30 -- minimo de drain local MAX = 100 -- max de drain local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -120.2, 1, -120.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -120.2, 1, -120.2, 1) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat3, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat4, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) arr1 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr2 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr3 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr4 = { {0, 0, 0, 0, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 400, parameters) addEvent(onCastSpell3, 800, parameters) addEvent(onCastSpell4, 1000, parameters) return true end
-
(Resolvido)[PEDIDO] Spell que suga mana
Pera, vamo tentar mais uma vez, substitui essa parte do script: if isPlayer(target) then local mana = getPlayerMaxMana(target) local remove = (mana / 100) * manaremove doTargetCombatMana(cid, target, min, max, 134) endPor essa: local mana = getPlayerMaxMana(target) local remove = (mana / 100) * manaremove doAreaCombatMana(cid, 0, area4, -remove, -remove, 134)
-
Error ao istalar website
Ve se tu colocou todas as tabelas no banco de dados.
-
(Resolvido)[PEDIDO] Spell que suga mana
Tenta isso aqui então. local manaremove = 20 -- porcentagem de drain de mana local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) arr1 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr2 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr3 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr4 = { {0, 0, 0, 0, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local target = variantToNumber(var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 400, parameters) addEvent(onCastSpell3, 800, parameters) addEvent(onCastSpell4, 1000, parameters) if isPlayer(target) then local mana = getPlayerMaxMana(target) local remove = (mana / 100) * manaremove doTargetCombatMana(cid, target, min, max, 134) end return true end
-
(Resolvido)[PEDIDO] Spell que suga mana
\forgottenserver-master\data É um xml, fica na pasta data, embaixo das pastas
-
Error ao istalar website
Vai no seu config.lua e coloca ou edita se ja tiver passwordType = "sha1"
-
(Resolvido)[PEDIDO] Spell que suga mana
Não, global.lua, logo na pasta data.
-
[pedido] SD que hita no maximo 10k
Tenta isso aqui. spells/attack/sudden death.lua talvez vai ficar mais fraca local combat = Combat() combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA) combat:setParameter(COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH) function onGetFormulaValues(player, level, maglevel) min = -((level / 5) + (maglevel * 4.3) + 32) max = -10000 return min, max end combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") function onCastSpell(creature, var, isHotkey) return combat:execute(creature, var) end
-
(Resolvido)[PEDIDO] Spell que suga mana
Ta aí, acho que vai funcionar. local manaremove = 20 -- porcentagem de drain de mana local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 134) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -60.2, 1, -63.2, 1) arr1 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr2 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr3 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr4 = { {0, 0, 0, 0, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local target = variantToNumber(var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 400, parameters) addEvent(onCastSpell3, 800, parameters) addEvent(onCastSpell4, 1000, parameters) if isPlayer(target) then doRemoveManaPercent(target,manaremove) end return true end Vai no seu global.lua, e coloca isso no final, depois de tudo: function doPlayerRemoveManaPercent(cid, percent) local mana = getPlayerMaxMana(cid) doPlayerRemoveMana(cid, (mana / 100) * percent) return TRUE end
-
(Resolvido)[PEDIDO] Spell que suga mana
Vou arrumar, já edito aqui com o script.
-
(Resolvido)[PEDIDO] Spell que suga mana
Removi efeitos que não funcionavam. local MIN = 30 -- minimo de drain local MAX = 100 -- max de drain local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat2, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat3, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN) setCombatParam(combat4, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, 0, -MIN, 0, -MAX) arr1 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr2 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr3 = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 3, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0} } arr4 = { {0, 0, 0, 0, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 100, parameters) addEvent(onCastSpell2, 400, parameters) addEvent(onCastSpell3, 800, parameters) addEvent(onCastSpell4, 1000, parameters) return true end CONST_ME_MAGIC_RED você pode mudar, alterei quando não estava funcionando, bem, testa ai se ta funfando.
-
(Resolvido)[PEDIDO] Colocar cooldown em spell.
De boa, foram só 30msgs... Se eu tivesse com a sua versão/o seu server teria sido menos, porquê quando colocava no meu para testar dava erros diferentes do seu.
-
(Resolvido)[PEDIDO] Colocar cooldown em spell.
Agora acho que vai! http://pastebin.com/GiG69Zqi Tem uma parte que ta assim: end end end setGlobalStorageValue(45000, os.time() + 5) end return true Remove o setGlobalStorageValue(45000, os.time() + 5) E coloca la em cima depois do else if getGlobalStorageValue(45000) >= os.time() then doPlayerSendCancel(cid,"Voce tem que esperar ".. getGlobalStorageValue(45000) - os.time() .." pra usar denovo.") else setGlobalStorageValue(45000, os.time() + 5) 5 É o cooldown