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

Exura Soft

Adorius Black

Advanced OT User
Joined
Mar 31, 2020
Messages
301
Solutions
3
Reaction score
180
Boots of Life [TFS 1.4]
Vocation: Shaman, Raised Shaman

Create Pair of Soft Boots in front of you for 1 minute. Anybody can take them from ground. After 1 minute Pair of Soft Boots will disappear.

🌄 Preview: 🌄


Exura Soft.jpg

💻 Install: 💻

Put code below to data/spells/spells.xml
XML:
    <instant group="healing" spellid="159" name="Boots of Life" words="exura soft" lvl="24" mana="100" prem="0" aggressive="0" casterTargetOrDirection="1" blockwalls="1" exhaustion="120000" groupcooldown="2000" needlearn="0" script="custom/boots_of_life.lua">
        <vocation name="Shaman" />
        <vocation name="Raised Shaman" />
    </instant>

Put code below to data/spells/scripts/custom/boots_of_life.lua
Lua:
function onCastSpell(player, var)
    local pPos = getPlayerPosition(player)
    local vPos = var:getPosition()
    doSendDistanceShoot(pPos, vPos, CONST_ANI_FIRE)
    local soft = Game.createItem(6132, 1, vPos, true) -- 6132 = ID of Pair of Soft Boots
    addEvent(function()    soft:remove()    end, 60000) -- 60000 = 60 seconds
    return false
end

If you know how to make this code more easy, stable, correct or you are just bored and you have created nice modification of this code please post it here. OTLand users will be grateful. :)
 
Last edited:
Boots of Life
Vocation: Shaman, Raised Shaman

Create Pair of Soft Boots in front of you for 1 minute. Anybody can take them from ground. After 1 minute Pair of Soft Boots will disappear.

🌄 Preview: 🌄


View attachment 67911

💻 Install: 💻


XML:
    <instant group="healing" spellid="159" name="Boots of Life" words="exura soft" lvl="24" mana="100" prem="0" aggressive="0" casterTargetOrDirection="1" blockwalls="1" exhaustion="120000" groupcooldown="2000" needlearn="0" script="custom/boots_of_life.lua">
        <vocation name="Shaman" />
        <vocation name="Raised Shaman" />
    </instant>


Lua:
function onCastSpell(player, var)
    local pPos = getPlayerPosition(player)
    local vPos = var:getPosition()
    doSendDistanceShoot(pPos, vPos, CONST_ANI_FIRE)
    local soft = Game.createItem(6132, 1, vPos, true) -- 6132 = ID of Pair of Soft Boots
    addEvent(function()    soft:remove()    end, 60000) -- 60000 = 60 seconds
    return false
end

If you know how to make this code more easy, stable, correct or you just have nice modification please post it here. OTLand users will be grateful. :)

Looking at the code, It's possible that the pair of soft boots you create will last forever if the holder logs out when soft:remove() is supposed to execute and logs back in. Same thing if there is a server restart during that time.

The scheduled execution of this event should be persisted past such obstacles.
 
Looking at the code, It's possible that the pair of soft boots you create will last forever if the holder logs out when soft:remove() is supposed to execute and logs back in. Same thing if there is a server restart during that time.

The scheduled execution of this event should be persisted past such obstacles.

Also if that event triggers when player logsoff, eg the variable soft is nil, will crash the server.
 
Looking at the code, It's possible that the pair of soft boots you create will last forever if the holder logs out when soft:remove() is supposed to execute and logs back in. Same thing if there is a server restart during that time.

The scheduled execution of this event should be persisted past such obstacles.


Thank you for your answer. I am thinking about what you said... Hmmm.... Maybe I can create another copy of soft boots(called for example Shamanic Boots) in items.xml(etc...) and give them duration for 60 seconds after this time change them into Worm shamanic boots and Remove this line of code
Lua:
    addEvent(function()    soft:remove()    end, 60000) -- 60000 = 60 seconds
Add this
XML:
soul="3"
to
XML:
   <instant group="healing" spellid="159" name="Boots of Life" words="exura soft" lvl="24" mana="100" prem="0" aggressive="0" casterTargetOrDirection="1" blockwalls="1" exhaustion="120000" groupcooldown="2000" needlearn="0" script="custom/boots_of_life.lua">
        <vocation name="Shaman" />
        <vocation name="Raised Shaman" />
    </instant>

The shaman will be able to create Shamanic boots that will heal(similar like soft boots) for a minute. You can keep them in backpacks, depots etc but after 1 minute of use they will change into Worm shamanic boots. You will lose 3 soul points. People will be able change Worm shamanic boots to Shamanic Boots for 100gp by talking to NPC.

What you think about this?
Post automatically merged:

Also if that event triggers when player logsoff, eg the variable soft is nil, will crash the server.

What you think about this also?
 
Last edited:
Thank you for your answer. I am thinking about what you said... Hmmm.... Maybe I can create another copy of soft boots(called for example Shamanic Boots) in items.xml(etc...) and give them duration for 60 seconds after this time change them into Worm shamanic boots and Remove this line of code
Lua:
    addEvent(function()    soft:remove()    end, 60000) -- 60000 = 60 seconds
Add this
XML:
soul="3"
to
XML:
   <instant group="healing" spellid="159" name="Boots of Life" words="exura soft" lvl="24" mana="100" prem="0" aggressive="0" casterTargetOrDirection="1" blockwalls="1" exhaustion="120000" groupcooldown="2000" needlearn="0" script="custom/boots_of_life.lua">
        <vocation name="Shaman" />
        <vocation name="Raised Shaman" />
    </instant>

The shaman will be able to create Shamanic boots that will heal(similar like soft boots) for a minute. You can keep them in backpacks, depots etc but after 1 minute of use they will change into Worm shamanic boots. You will lose 3 soul points. People will be able change Worm shamanic boots to Shamanic Boots for 100gp by talking to NPC.

What you think about this?
Post automatically merged:



What you think about this also?

Well, yes, I think that could work, since item duration persists as an attribute saved on the item, so if you make an alternative item ID with that configuration, it should do the trick.
 
Well, yes, I think that could work, since item duration persists as an attribute saved on the item, so if you make an alternative item ID with that configuration, it should do the trick.
that sounds good.


little bit edited script:

data/spells/lib/spells.lua
AREA_SHAMANCIRCLE = {
{0, 1, 1, 1, 0},
{1, 0, 0, 0, 1},
{1, 0, 3, 0, 1},
{1, 0, 0, 0, 1},
{0, 1, 1, 1, 0}
}
XML:
    <instant group="healing" spellid="159" name="Boots of Life" words="exura soft" lvl="45" mana="1350" soul="5" prem="0" aggressive="0" casterTargetOrDirection="1" blockwalls="1" exhaustion="120000" groupcooldown="2000" needlearn="0" script="custom/boots_of_life.lua">
        <vocation name="Shaman" />
        <vocation name="Raised Shaman" />
    </instant>
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
combat:setArea(createCombatArea(AREA_SHAMANCIRCLE))

function onCastSpell(player, var)
    local vPos = var:getPosition()
    local soft = Game.createItem(6132, 1, vPos, true) -- 6132 = ID of Pair of Soft Boots
    return combat:execute(player, var)
end

Exura Soft.jpg
 
Back
Top