+ Reply to Thread
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 17

Thread: Small Collection of Spells

  1. #1
    Lua/Xml Scripter | Mapper STiX's Avatar
    Join Date
    Apr 2007
    Location
    Western Australia
    Posts
    4,169

    Small Collection of Spells

    Here's a small collection of simple spells I've just started to make out of boredom.
    Aim of the game here is balance, so don't expect 8k damage in a 64x64 area and 5000 different effects going every which way.

    They are designed to not be overpowered and seamlessly fit in with other Tibian spells. You may perhaps like to make a new custom class to go with these spells.

    Pearl Wind
    "You unleash a healing gust of wind to cool burns and heal your allies."
    Code lua:
    local combat = createCombatObject()
    setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ICETORNADO)
    setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, FALSE)
    setCombatParam(combat, COMBAT_PARAM_TARGETPLAYERSORSUMMONS, TRUE)
    setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_FIRE)
     
    function onGetFormulaValues(cid, level, maglevel)
    	min = (level * 1 + maglevel * 4) * 1.8
    	max = (level * 1 + maglevel * 4) * 2.0
    	if min < 250 then
    		min = 250
    	end
    	return min, max
    end
     
    setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
     
    local area = createCombatArea(AREA_CIRCLE2X2)
    setCombatArea(combat, area)
     
    function onCastSpell(cid, var)
    	return doCombat(cid, combat, var)
    end
    Poison Breathe
    "Opening your mouth, you unleash a noxious cloud of gas that pervades the area."

    Code lua:
    local combat = createCombatObject()
    setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_GREEN_RINGS)
    setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_POISON)
    setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1496)
     
    local area = createCombatArea(AREA_WAVE4)
    setCombatArea(combat, area)
     
    function onCastSpell(cid, var)
    	return doCombat(cid, combat, var)
    end
    Spells.xml
    Code xml:
    	<!-- STiX's Spells -->
    	<conjure name="Recharge Soft Boots" words="exeta crur" lvl="80" manapercent="100" soul="65" prem="1" conjureId="6132" reagentId="6530" reagentTransform="0" exhaustion="25000" needlearn="0" function="conjureItem">
    		<vocation name="Elder Druid" />	
    	</conjure>
    	<instant name="Pearl Wind" words="exura mas vita" lvl="40" mana="120" prem="1" aggressive="0" exhaustion="1000" needlearn="0" script="custom/pearl wind.lua">
    		<vocation name="Druid"/>
    		<vocation name="Elder Druid"/>
    	</instant>
    	<instant name="Purtrid Breathe" words="exevo grav pox" lvl="35" mana="210" prem="1" direction="1" aggressive="1" exhaustion="1500" needlearn="0" script="custom/poison breathe.lua">
    		<vocation name="Druid"/>
    		<vocation name="Elder Druid"/>
    	</instant>


    I'll try to stick to the Latin spell word format, though just judging by HERE there seems to be several naming conventions I could use that would still fit the spell description, it's really up to you what you choose.

    Expect me to keep adding to the thread every week or so.


    [Edit1]
    Added pictures.
    Considering renaming 'Pearl Wind' to 'Arctic Wind', really its up to you though.
    Ignore the spell words in the picture for the soft-boots, I found the correct term.
    Found mistake in picture, they turn into soft boots FROM worn soft boots, not the other way around ^^
    Last edited by STiX; 17th March 2009 at 08:17.
    STiX
    OTFans the number one OTServ community and the home of OpenTibia!

    I VISITED THIS FORUM AND ALL I GOT WAS THIS LOUSY SIGNATURE AND AN INFRACTION.
    OTF member since 2006.
    Donator and former Global Moderator as of February 2010.


  2. #2
    Lua Madness! Ragheed's Avatar
    Join Date
    Apr 2007
    Location
    Teh Netherlands!
    Posts
    3,004
    Really nice Better then those spells for high-exp servers. You shall sticky it if it will contain a lot of spells in the future.
    Join Ramurika now!

  3. #3
    Random Dude from Hell Mindrage's Avatar
    Join Date
    Jun 2008
    Location
    Ah You knooow! ;)
    Posts
    922
    Heh, That was something new, never expected you would release spells :P, But yea i agree, the most spells posted here are overpowered and too flashy... (even thought i shouldn't say that myself :P)
    so balaced spells is exactly what we need.

    Quote Originally Posted by ragheed View Post
    Really nice Better then those spells for high-exp servers. You shall sticky it if it will contain a lot of spells in the future.
    Meh you were to fast... i wrote at the exactly same time as you O.o
    and maybe i could see if i can make some balanced spells.
    Last edited by Colandus; 15th March 2009 at 15:21.
    ::::::::::::::::::My Animated Spell Maker :::::::::: My Spell Thread

  4. #4
    Lua/Xml Scripter | Mapper STiX's Avatar
    Join Date
    Apr 2007
    Location
    Western Australia
    Posts
    4,169
    Well I've got plenty of ideas if you need them.
    In-sourcing from custom D&D material gives some great ideas.
    STiX
    OTFans the number one OTServ community and the home of OpenTibia!

    I VISITED THIS FORUM AND ALL I GOT WAS THIS LOUSY SIGNATURE AND AN INFRACTION.
    OTF member since 2006.
    Donator and former Global Moderator as of February 2010.


  5. #5
    aka Silent Reaper Silverstone's Avatar
    Join Date
    Jan 2006
    Location
    Switzerland
    Posts
    3,289
    Would be great if you posted some screenshots :P
    Nice work though , you seem to be pretty talented.

    Keep it up, buddy.

    Sqwaril

    [Links] Warning to all Tibia/OT Players! [/Links]
    If I helped you, I'd appreciate a click on the usefull post button.

  6. #6
    Lua/Xml Scripter | Mapper STiX's Avatar
    Join Date
    Apr 2007
    Location
    Western Australia
    Posts
    4,169
    Well to make these is just really stick in animation + dmg calculator
    But I do try to keep things even.

    I'll add screenies soon!
    STiX
    OTFans the number one OTServ community and the home of OpenTibia!

    I VISITED THIS FORUM AND ALL I GOT WAS THIS LOUSY SIGNATURE AND AN INFRACTION.
    OTF member since 2006.
    Donator and former Global Moderator as of February 2010.


  7. #7
    Lua Madness! Ragheed's Avatar
    Join Date
    Apr 2007
    Location
    Teh Netherlands!
    Posts
    3,004
    I like the first one alot, but the second one seems a bit normal to me. Make some more effects around it
    Join Ramurika now!

  8. #8
    Lua/Xml Scripter | Mapper STiX's Avatar
    Join Date
    Apr 2007
    Location
    Western Australia
    Posts
    4,169
    I'll make some better ones when I get a chance, though I've been to that many 18th birthdays in the past couple of months that I can barely walk straight...
    STiX
    OTFans the number one OTServ community and the home of OpenTibia!

    I VISITED THIS FORUM AND ALL I GOT WAS THIS LOUSY SIGNATURE AND AN INFRACTION.
    OTF member since 2006.
    Donator and former Global Moderator as of February 2010.


  9. #9
    Random Dude from Hell Mindrage's Avatar
    Join Date
    Jun 2008
    Location
    Ah You knooow! ;)
    Posts
    922
    Here's one i made quick.




    Solar Strike:

    Solar strike.jpg

    Code lua:
    local acombat1 = createCombatObject()
    local acombat2 = createCombatObject()
     
    local combat1 = createCombatObject()
    setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
    setCombatParam(combat1, COMBAT_PARAM_EFFECT, 36)
    setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 37)
    setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -0.8, -20, -0.8, -50)
     
    local combat2 = createCombatObject()
    setCombatParam(combat2, COMBAT_PARAM_EFFECT, 34)
     
    local combat3 = createCombatObject()
    setCombatParam(combat3, COMBAT_PARAM_EFFECT, 49)
    setCombatParam(combat3, COMBAT_PARAM_CREATEITEM, 1492)
     
    local condition = createConditionObject(CONDITION_FIRE)
    addDamageCondition(condition, 10, 1000, -15)
    setCombatCondition(combat3, condition)
     
     
    local area = createCombatArea(AREA_CROSS1X1)
    setCombatArea(acombat1, area)
    setCombatArea(acombat2, area)
     
    function onTargetTile1(cid, pos)
    	doCombat(cid,combat1,positionToVariant(pos))
    end
     
    function onTargetTile2(cid, pos)
    	doCombat(cid,combat2,positionToVariant(pos))
    end
     
    setCombatCallback(acombat1, CALLBACK_PARAM_TARGETTILE, "onTargetTile1")
    setCombatCallback(acombat2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")
     
    function onCastSpell(cid, var)
    	local cast = LUA_ERROR
    	if(doCombat(cid, acombat1, var) == LUA_NO_ERROR) and (doCombat(cid, acombat2, var) == LUA_NO_ERROR) and (doCombat(cid, combat3, var) == LUA_NO_ERROR) then
    		cast = LUA_NO_ERROR
    	end
    	return cast
    end


    Here is input of the xml

    Code xml:
    	<instant name="Solar Strike" words="exori san mort" lvl="52" mana="140" prem="1" range="5" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" script="solar strike.lua">
    		<vocation name="Paladin"/>
    		<vocation name="Royal Paladin"/>
    	</instant>









    Another one:

    Penetrating Light

    Penetrating light.jpg

    Code lua:
    local acombat1 = createCombatObject()
    local acombat2 = createCombatObject()
     
    local combat1 = createCombatObject()
    setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
    setCombatParam(combat1, COMBAT_PARAM_EFFECT, 39)
    setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 37)
    setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -0.4, -20, -2.1, -10)
     
    local combat2 = createCombatObject()
    setCombatParam(combat2, COMBAT_PARAM_EFFECT, 34)
     
     
    local area = createCombatArea(AREA_BEAM7, AREADIAGONAL_BEAM7)
    setCombatArea(acombat1, area)
    setCombatArea(acombat2, area)
     
    function onTargetTile1(cid, pos)
    	doCombat(cid,combat1,positionToVariant(pos))
    end
     
    function onTargetTile2(cid, pos)
    	doCombat(cid,combat2,positionToVariant(pos))
    end
     
    setCombatCallback(acombat1, CALLBACK_PARAM_TARGETTILE, "onTargetTile1")
    setCombatCallback(acombat2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")
     
    function onCastSpell(cid, var)
    	local cast = LUA_ERROR
    	if(doCombat(cid, acombat1, var) == LUA_NO_ERROR) and (doCombat(cid, acombat2, var) == LUA_NO_ERROR) then
    		cast = LUA_NO_ERROR
    	end
    	return cast
    end


    XML input:
    Code xml:
    	<instant name="Penetrating Light" words="exevo gran san lux" lvl="29" mana="310" direction="1" exhaustion="2000" needlearn="0" script="penetrating light.lua">
    		<vocation name="Paladin"/>
    		<vocation name="Royal Paladin"/>
    	</instant>
    Last edited by Mindrage; 19th March 2009 at 15:41.
    ::::::::::::::::::My Animated Spell Maker :::::::::: My Spell Thread

  10. #10
    Lua Madness! Ragheed's Avatar
    Join Date
    Apr 2007
    Location
    Teh Netherlands!
    Posts
    3,004
    I like the Solar Strike!
    Join Ramurika now!

+ Reply to Thread
Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts