• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Haste - Heal exhaust 8.6

bybbzan

mapper
Joined
Aug 4, 2012
Messages
809
Solutions
2
Reaction score
135
Location
Sweden
Hi guys.

I'm using 8.6 (1.3 engine] and bumped into a problem.
When i haste (utani hur, utani gran hur) and try to heal i get exhausted for like 2 sec.
It should work immediately after eachother.
Attack spell and heal works like a charm.

How to solve that?
 
Perhaps healing spells and haste spells are declared as the same group ID. Try switching one of them.
 
Couldn't find anything wrong there, could you perhaps post haste.lua and light_healing.lua?

haste.lua
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)

local condition = Condition(CONDITION_HASTE)
condition:setParameter(CONDITION_PARAM_TICKS, 33000)
condition:setFormula(0.3, -24, 0.3, -24)
combat:addCondition(condition)

function onCastSpell(creature, variant)
    return combat:execute(creature, variant)
end

light_healing.lua
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_HEALING)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
combat:setParameter(COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)

function onGetFormulaValues(player, level, magicLevel)
    local min = (level / 5) + (magicLevel * 1.4) + 8
    local max = (level / 5) + (magicLevel * 1.8) + 11
    return min, max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(creature, variant)
    return combat:execute(creature, variant)
end

I think its something to change in sources, but i have no idea what it is, or how to do it.
 
Yes I think you are correct, I forgot that they are actually supposed to have an exhaust between cast.
I think you might have to edit ConditionSpellCooldown in condition.cpp.
 
Is no one else experiencing this issue?
I have no idea what i should edit in condition.cpp, i took a look but its way to complicated to me.
 
I've yet come across a solution to this issue, and there are a lot of other users who have the similar issue unsolved for them.

I have been searching a bit in spells.cpp and in condition.cpp, but unfortunately I am not capable of helping you further with this issue.
Couldn't really comprehend nor find what part of the code that handles just the correlation of shared exhausts between the instant spell groups Support and Healing.

I would also be interested in seeing the solution to this, just to be enlightened.
 
I've yet come across a solution to this issue, and there are a lot of other users who have the similar issue unsolved for them.

I have been searching a bit in spells.cpp and in condition.cpp, but unfortunately I am not capable of helping you further with this issue.
Couldn't really comprehend nor find what part of the code that handles just the correlation of shared exhausts between the instant spell groups Support and Healing.

I would also be interested in seeing the solution to this, just to be enlightened.

Okay i see. Thank you for trying atleast, lets hope someone could find the solution to get rid of this problem.
 
An aggressive spell applies an attack exhaustion to your character while a non-aggressive spell applies a common exhaustion meant for both healing & support spells (hence why you are unable to cast a support spell such as Haste and Light Healing at the same time). What you could do is add a 3rd exhaustion type based on the existing two, and check the spell's nature to determine whether to apply heal or support exhaustion.

See nekiro/forgottenserver-1.3-8.6 (https://github.com/nekiro/forgottenserver-1.3-8.6/blob/f2bec828e9a35150e7eb62efa17e7f398ef0453c/src/spells.cpp#L710-L714) for more information.
 
An aggressive spell applies an attack exhaustion to your character while a non-aggressive spell applies a common exhaustion meant for both healing & support spells (hence why you are unable to cast a support spell such as Haste and Light Healing at the same time). What you could do is add a 3rd exhaustion type based on the existing two, and check the spell's nature to determine whether to apply heal or support exhaustion.

See nekiro/forgottenserver-1.3-8.6 (https://github.com/nekiro/forgottenserver-1.3-8.6/blob/f2bec828e9a35150e7eb62efa17e7f398ef0453c/src/spells.cpp#L710-L714) for more information.

Thanks for the information Ninja. Is there a step by step tutorial to do this kind of edit?
Or could you help me set this up?
 
Back
Top