• 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!
  • 2026 staff recruitment is open! Check it out and consider applying!

Experience Ring :O

  • Thread starter Thread starter Deleted member 49793
  • Start date Start date
D

Deleted member 49793

Guest
Hey i once made a script like this but i lost it awhile back :(

Basicly a ring that when you wear it, it increases your exp you get by 10% (lasts for 2 hours) then disapears.

Can Someone script me this please :)? will rep ++.
 
add movements.xml
Code:
<movevent type="Equip" itemid="6301" slot="ring" event="function" value="onEquipItem"/>
<movevent type="Equip" itemid="6300" slot="ring" event="script" value="script.lua"/>
<movevent type="DeEquip" itemid="6301" slot="ring" event="script" value="script.lua"/>

script.lua (data/movements/scripts)
Code:
local config = {
 
        rate            = 2.0,  -- 2.0 = 2x faster than normal.
        un_equip        = 6300, -- Item ID of the UN-Equipped ring.
        equip           = 6301 -- Item ID of the Equipped ring.
 
}
 
function onDeEquip(cid, item, slot)
        doPlayerSetExperienceRate(cid, 1.0)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your extra experience rate has ended.")
        doTransformItem(item.uid, config.un_equip)
        return true
end
 
function onEquip(cid, item, slot)
        if getConfigValue("experienceStages") == "yes" then
           doPlayerSetExperienceRate(cid, getExperienceStage(getPlayerLevel(cid))*2)
        else
           doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*2)
        end
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your extra experience rate has been activated! It is now: " .. config.rate .. "x doubled your former experience rate.")
        doTransformItem(item.uid, config.equip)
        doDecayItem(item.uid)
        return true
end
 
So that ring (Ring of death or w.e) Removes 10 shielding when you put it on, Which stays off when you remove ring, (but sets back to original when you relog) Is there a way to remove the ring from removing the shielding?
 
So that ring (Ring of death or w.e) Removes 10 shielding when you put it on, Which stays off when you remove ring, (but sets back to original when you relog) Is there a way to remove the ring from removing the shielding?

Remove:
Code:
		<attribute key="skillShield" value="-10" />
 
The script is giving me 5x exp insead of 1.5x exp, can anyone tell help me out I've tried playing with the formula a bunch of times.

Thanks,
~Justin

I'm using staged exp..
LUA:
local config = {
 
        rate            = 1.50,  -- 2.0 = 2x faster than normal.
        un_equip        = 6300, -- Item ID of the UN-Equipped ring.
        equip           = 6301 -- Item ID of the Equipped ring.
 
}
 
function onDeEquip(cid, item, slot)
        doPlayerSetExperienceRate(cid, 1.0)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your extra experience rate has ended.")
        doTransformItem(item.uid, config.un_equip)
        return true
end
 
function onEquip(cid, item, slot)
        if getConfigValue("experienceStages") == "yes" then
           doPlayerSetExperienceRate(cid, getExperienceStage(getPlayerLevel(cid))*1.50)
        else
           doPlayerSetExperienceRate(cid, getConfigValue("rateExperience")*1)
        end
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your extra experience rate has been activated! It is now: " .. config.rate .. "x doubled your former experience rate.")
        doTransformItem(item.uid, config.equip)
        doDecayItem(item.uid)
        return true
end
 
Back
Top