• 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!

Lua spell infinite

alcapone

Member
Joined
Jan 13, 2021
Messages
247
Reaction score
19
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

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


good night, I edited this spells to get cured in an infinite way some more players discovered the name hehe. I'm trying to remove this condition from the players but it's not working
 
Solution
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

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

Spell

Lua:
local fix = TalkAction("!fix")



function fix.onSay(player, words, param)
 


player:removeCondition(CONDITION_REGENERATION...
If you go to check if your character's equal player name doesn't work?

Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

function onCastSpell(creature, var)
    if getPlayerName(creature) == 'XXX' then
        return combat:execute(creature, var)
    else
        doPlayerSendCancel(creature, 'This spell is for test-game')
    end
end
 
If you go to check if your character's equal player name doesn't work?

Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

function onCastSpell(creature, var)
    if getPlayerName(creature) == 'XXX' then
        return combat:execute(creature, var)
    else
        doPlayerSendCancel(creature, 'This spell is for test-game')
    end
end
the problem is that whoever used the magic has it active and as its time is 9999 would have to if something for when the player logs in removes the effect
 
If you set the ticks to -1 it will be actually infinite.

Can you show us how you are attempting to remove the condition?
 
If you set the ticks to -1 it will be actually infinite.

Can you show us how you are attempting to remove the condition?
local condition = Condition(CONDITION_REGENERATION)
player:removeCondition(condition)

I'm actually trying several things I'm finding through the forum
 
local condition = Condition(CONDITION_REGENERATION)
player:removeCondition(condition)

I'm actually trying several things I'm finding through the forum
try this
Lua:
player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, 1)
 
Can you show both the scripts you are currently using?

I'll load up my test server and figure it out.
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

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

Spell

Lua:
local fix = TalkAction("!fix")



function fix.onSay(player, words, param)
 


player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, 1)

 
    return true
end

fix:separator(" ")
fix:register()

remove test
 
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

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

Spell

Lua:
local fix = TalkAction("!fix")



function fix.onSay(player, words, param)
 


player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, 1)

 
    return true
end

fix:separator(" ")
fix:register()

remove test
Try changing player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, 1) to player:removeCondition(CONDITION_REGENERATION, CONDITIONID_COMBAT, 1)

You're adding the condition to a combat object, so the condition ID is probably CONDITIONID_COMBAT
 
Solution
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_REGENERATION)
condition:setParameter(CONDITION_PARAM_SUBID, 1)
condition:setParameter(CONDITION_PARAM_BUFF_SPELL, 1)
condition:setParameter(CONDITION_PARAM_TICKS, 1111 * 60 * 10000)
condition:setParameter(CONDITION_PARAM_HEALTHGAIN, 9990)
condition:setParameter(CONDITION_PARAM_HEALTHTICKS, 100)
combat:addCondition(condition)

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

Spell

Lua:
local fix = TalkAction("!fix")



function fix.onSay(player, words, param)
 


player:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, 1)

 
    return true
end

fix:separator(" ")
fix:register()

remove test
Thanks. Just cooking supper.
Ill edit this comment in about 30 min.

-- Edit
Solution is above. xP
 
Back
Top