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

Paralyze player spell is useless

Tbol

Well-Known Member
Joined
Apr 7, 2019
Messages
529
Reaction score
56
Hi,
I'm not at home but I have simple paralyze spell that I found in otland it just simple code that decrease the player speed, but it has one problem it's really useless if I have spell that gives speed it counters the paralyze spell and it takes that paralyze off which makes it useless. So does anyone have an idea how to make paralyze spell more useful like not allow to use speed spell if you are paralyzed it would have like a cooldown to use speed spell or I don't know need something that would make it more useful. If anyone could provide a code I would be grateful

TFS 1.2
 
Solution
?
Paralyze
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, 28)

local condition = Condition(CONDITION_PARALYZE)
condition:setParameter(CONDITION_PARAM_TICKS, 20000)
condition:setFormula(-0.9, 0, -0.9, 0)
combat:setCondition(condition)

local config = {
       storage = 11312,
       cooldown = 2
}

function onCastSpell(creature, variant, isHotkey)
    if not combat:execute(creature, variant) then
        setPlayerStorageValue(cid, config.storage, os.time())
        return false
    end

    return true
end
speed
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, 28)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)

local condition = Condition(CONDITION_HASTE)...
put storage to paralyze and speed spell.
when player is paralyze = storage 2002 > 1
and if player got this storage cant use speed :D
 
just add an if statment in haste spell to check if player has paralyze condition. if so then return.
 
There's many ways you can go around it but you don't really explain how you want it to be done.

Heres one example

Having paralyse with high cool down will prevent it from being abused, you will want to have it integrated so multiple ppl don't spam the same player. Once paralyse is applied you can give instant cool down on enemy haste which prevents them from using it. This can easily be achieved via condition id.

Heres another example

You add paralyse condition id which is applied to enemy, when the enemy uses haste they can use it the first time to get rid of the paralyse. You will then have a timer that check whether another paralyse has been applied. In this case they will not be able to use it for the second time within x time period
 
There's many ways you can go around it but you don't really explain how you want it to be done.

Heres one example

Having paralyse with high cool down will prevent it from being abused, you will want to have it integrated so multiple ppl don't spam the same player. Once paralyse is applied you can give instant cool down on enemy haste which prevents them from using it. This can easily be achieved via condition id.

Heres another example

You add paralyse condition id which is applied to enemy, when the enemy uses haste they can use it the first time to get rid of the paralyse. You will then have a timer that check whether another paralyse has been applied. In this case they will not be able to use it for the second time within x time period
The second idea is similar what i want. Would it be possible if you add paralyse and if player uses haste it will take of only if you try to cast haste spell like 2 times so only second haste will take it off, and it wont take paralyse off if you move you have to stand still to take it off
 
The second idea is similar what i want. Would it be possible if you add paralyse and if player uses haste it will take of only if you try to cast haste spell like 2 times so only second haste will take it off, and it wont take paralyse off if you move you have to stand still to take it off

It's possible. With movements you will be adding a little bit of complexity which might not be worth your time. Consider also other players pushing your character

With the first bit you can just add that condition id for 5 second or whatever. Player casting the spell again will have this opportunity to cast it again and eliminate paralyse.

By default, casting haste while ure under heavy paralyse movement to certain position will have no effect until you step on your target tile.. Unless you push yourself from destination tile to another? Idk
 
It's possible. With movements you will be adding a little bit of complexity which might not be worth your time. Consider also other players pushing your character

With the first bit you can just add that condition id for 5 second or whatever. Player casting the spell again will have this opportunity to cast it again and eliminate paralyse.

By default, casting haste while ure under heavy paralyse movement to certain position will have no effect until you step on your target tile.. Unless you push yourself from destination tile to another? Idk
I dont know it sounds kinda op to give like 5secs or w/e without giving a chance to take that paralyse of you cant even counter it. The perfect choice would if you could counter that paralyze but it would coast something like standing still or i dont
Post automatically merged:

I dont know it sounds kinda op to give like 5secs or w/e without giving a chance to take that paralyse of you cant even counter it. The perfect choice would if you could counter that paralyze but it would coast something like standing still or i dont. Because if you think about it if you get paralyzed you over
 
I dont know it sounds kinda op to give like 5secs or w/e without giving a chance to take that paralyse of you cant even counter it. The perfect choice would if you could counter that paralyze but it would coast something like standing still or i dont
Post automatically merged:
bump
 
here are some ideas:
1) you are paralyzed, not slowed... make the victim unable to move, maybe even speak (cast).
2) make the paralyzed duration a function of the victim stat (i.e. strength, agility, speed, w/e).
3) make the paralyze spell a focus spell- if the caster looses their concentration the effect of the paralyze is dispelled.

implementation left as an exercise to the reader dreamer 😂
 
here are some ideas:
1) you are paralyzed, not slowed... make the victim unable to move, maybe even speak (cast).
2) make the paralyzed duration a function of the victim stat (i.e. strength, agility, speed, w/e).
3) make the paralyze spell a focus spell- if the caster looses their concentration the effect of the paralyze is dispelled.

implementation left as an exercise to the reader dreamer 😂
1) So its like a stun. There is a problem in my server if you dont heal in like 2 seconds you gonna die because of big time so it makes paralyze really broken
2) It works like this now it decreases player speed but its not enough because you can take it off insta
3) Didnt understood this one
 
1) So its like a stun. There is a problem in my server if you dont heal in like 2 seconds you gonna die because of big time so it makes paralyze really broken
2) It works like this now it decreases player speed but its not enough because you can take it off insta
3) Didnt understood this one
bump
 
put storage to paralyze and speed spell.
when player is paralyze = storage 2002 > 1
and if player got this storage cant use speed :D

Do this but with time storage:

1. In your paralyze spell, add a storage to the target and store it as os.mtime() + 2000
2. In your haste spell, add check, if the storage >= os.time() then return false

Adjust the time in milliseconds for how long you want the player to be paralyzed before he can haste:
-- 500 = 0.5 seconds
-- 1000 = 1 second
-- 2000 = 2 seconds
 
Do this but with time storage:

1. In your paralyze spell, add a storage to the target and store it as os.mtime() + 2000
2. In your haste spell, add check, if the storage >= os.time() then return false

Adjust the time in milliseconds for how long you want the player to be paralyzed before he can haste:
-- 500 = 0.5 seconds
-- 1000 = 1 second
-- 2000 = 2 seconds
?
Paralyze
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, 28)

local condition = Condition(CONDITION_PARALYZE)
condition:setParameter(CONDITION_PARAM_TICKS, 20000)
condition:setFormula(-0.9, 0, -0.9, 0)
combat:setCondition(condition)

local config = {
       storage = 11312,
       cooldown = 2
}

function onCastSpell(creature, variant, isHotkey)
    if not combat:execute(creature, variant) then
        setPlayerStorageValue(cid, config.storage, os.time())
        return false
    end

    return true
end
speed
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, 28)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)

local condition = Condition(CONDITION_HASTE)
condition:setParameter(CONDITION_PARAM_SHOWICON, true)
condition:setParameter(CONDITION_PARAM_TICKS, 33000)
condition:setFormula(0.0, -0, 1.0, -56)
combat:setCondition(condition)

function onCastSpell(cid, var)
    if(os.time() - getPlayerStorageValue(cid, config.storage)) < config.cooldown then
    doPlayerSendCancel(cid, "You can use it just one time every 2 sec.")
    doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
    end
    combat:execute(cid, var)
    return false
end
 
Back
Top