- Joined
- Jan 28, 2012
- Messages
- 266
Optionaly Paired System Contest
Contestants must create a system that supports the random generation of spells in game, points will be awarded for the variety of spells it can generate. An Ideal Spell Generator would support a variety of "delivery types"(ie missiles, instant etc..) a variety of effects(DoTs, Straight damage, summoning, as well as being easy to add new effects to it) and would be able to support more effects.
Recommended Systems/Helpful Libraries
JASS:
library sfx initializer Init
// this is just a Compilation of all of Warcraft III's Built in effects, catogorized by apearance
globals
public constant integer MAGIC_EFFECTS = 0
public constant integer LIFE_EFFECTS = 1
public constant integer DEATH_EFFECTS = 2
public constant integer NATURE_EFFECTS = 3
// elemental spells
public constant integer FIRE_EFFECTS = 4
public constant integer WATER_EFFECTS = 5
public constant integer EARTH_EFFECTS = 6
public constant integer AIR_EFFECTS = 7
private string array EFFECTS
public integer array spellCount
private constant integer SIZE = 100
private constant integer HEIGHT = 50
endglobals
private function AddEffect takes integer whattype, integer IsProj, string path returns integer//expects a 0 or 1 for missile
local integer x = whattype*2+IsProj
local integer current = spellCount[x]+1
set spellCount[x] = current
set EFFECTS[whattype*SIZE + IsProj*HEIGHT + current] = path
return current
endfunction
function GetSFX takes integer whatType, integer isProj, integer whichone returns string
return EFFECTS[whatType*SIZE + isProj*HEIGHT + whichone]
endfunction
function GetRandomSFX takes integer whatType, integer isProj returns string
return EFFECTS[whatType*SIZE + isProj*HEIGHT + GetRandomInt(1,spellCount[whatType*2+isProj])]
endfunction
function Init takes nothing returns nothing
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Undead\\AbsorbMana\\AbsorbManaBirthMissile.mdl" )
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Human\\Avatar\\AvatarCaster.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\NightElf\\Blink\\BlinkTarget.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Other\\Charm\\CharmTarget.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Undead\\DevourMagic\\DevourMagicBirthMissile.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Items\\OrbCorruption\\OrbCorruptionMissile.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Items\\AIil\\AIilTarget.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Items\\AIre\\AIreTarget.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Undead\\OrbOfDeath\\AnnihilationMissile.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Items\\SpellShieldAmulet\\SpellShieldCaster.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Undead\\ReplenishMana\\ReplenishManaCasterOverhead.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Items\\TomeOfRetraining\\TomeOfRetrainingCaster.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceBirthMissile.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Spells\\Undead\\OrbOfDeath\\OrbOfDeathMissile.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Weapons\\WingedSerpentMissile\\WingedSerpentMissile.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Weapons\\DragonHawkMissile\\DragonHawkMissile.mdl")
call AddEffect(MAGIC_EFFECTS,1,"Abilities\\Weapons\\DruidoftheTalonMissile\\DruidoftheTalonMissile.mdl")
call AddEffect(MAGIC_EFFECTS,0,"Abilities\\Spells\\Undead\\OrbOfDeath\\OrbOfDeathMissile.mdl")
// LIFE effects next
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Weapons\\FaerieDragonMissile\\FaerieDragonMissile.mdl")
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Spells\\NightElf\\FaerieFire\\FaerieFireTarget.mdl")
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Spells\\Other\\HealingSpray\\HealBottleMissile.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Orc\\HealingWave\\HealingWaveTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Items\\AIem\\AIemTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Items\\AIim\\AIimTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Items\\AIsm\\AIsmTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Items\\AIda\\AIdaCaster.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Other\\Levelup\\LevelupCaster.mdl")
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Weapons\\ProcMissile\\ProcMissile.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl")
call AddEffect(LIFE_EFFECTS,0,"Abilities\\Spells\\Human\\ReviveHuman\\ReviveHuman.mdl")
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl")
call AddEffect(LIFE_EFFECTS,1,"Abilities\\Weapons\\SorceressMissile\\SorceressMissile.mdl")
//DEATH
call AddEffect(DEATH_EFFECTS,1,"Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilMissile.mdl")
call AddEffect(DEATH_EFFECTS,1,"Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Demon\\DarkPortal\\DarkPortalTarget.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualTarget.mdl")
call AddEffect(DEATH_EFFECTS,1,"Abilities\\Spells\\Undead\\DarkSummoning\\DarkSummonMissile.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Undead\\Darksummoning\\DarkSummonTarget.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl")
call AddEffect(DEATH_EFFECTS,0,"Abilities\\Spells\\Other\\HowlOfTerror\\HowlCaster.mdl")
call AddEffect(DEATH_EFFECTS,1,"Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl")
call AddEffect(DEATH_EFFECTS,0,"Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl")
call AddEffect(DEATH_EFFECTS,0,"Objects\\Spawnmodels\\Undead\\UndeadDissipate\\UndeadDissipate.mdl")
//Nature
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Spells\\NightElf\\FanOfKnives\\FanOfKnivesMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Spells\\NightElf\\TargetArtLumber\\TargetArtLumber.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Spells\\Undead\\PlagueCloud\\PlagueCloudCaster.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Spells\\Items\\OrbVenom\\OrbVenomMissile.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Weapons\\BansheeMissile\\BansheeMissile.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl")
call AddEffect(NATURE_EFFECTS,1,"Abilities\\Weapons\\snapMissile\\snapMissile.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\NightElf\\CorrosiveBreath\\ChimaeraAcidTargetArt.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\NightElf\\EntanglingRoots\\EntanglingRootsTarget.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\NightElf\\EntanglingRoots\\EntanglingRootsTarget.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\NightElf\\EntanglingRoots\\EntanglingRootsTarget.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\Undead\\Sleep\\SleepSpecialArt.mdl")
call AddEffect(NATURE_EFFECTS,0,"Abilities\\Spells\\Undead\\Web\\WebTarget.mdl")
//Fire
call AddEffect(FIRE_EFFECTS,0,"Abilities\\Weapons\\DemolisherFireMissile\\DemolisherFireMissile.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl")
call AddEffect(FIRE_EFFECTS,0,"Abilities\\Spells\\Human\\FlameStrike\\FlameStrike1.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\LordofFlameMissile\\LordofFlameMissile.mdl")
call AddEffect(FIRE_EFFECTS,0,"Abilities\\Spells\\Items\\AIfb\\AIfbSpecialArt.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\LavaSpawnMissile\\LavaSpawnMissile.mdl")
call AddEffect(FIRE_EFFECTS,0,"Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\WitchDoctorMissile\\WitchDoctorMissile.mdl")
call AddEffect(FIRE_EFFECTS,0,"Abilities\\Spells\\Other\\Doom\\DoomDeath.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Spells\\Human\\MarkOfChaos\\MarkOfChaosTarget.mdl")
call AddEffect(FIRE_EFFECTS,1,"Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile_mini.mdl")
// Water Effects
call AddEffect(WATER_EFFECTS,1,"Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveMissile.mdl")
call AddEffect(WATER_EFFECTS,0,"Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveDamage.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Spells\\Undead\\FreezingBreath\\FreezingBreathMissile.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Weapons\\ZigguratFrostMissile\\ZigguratFrostMissile.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Spells\\Other\\FrostBolt\\FrostBoltMissile.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl")
call AddEffect(WATER_EFFECTS,0,"Abilities\\Spells\\Undead\\FrostNova\\FrostNovaTarget.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Weapons\\LichMissile\\LichMissile.mdl")
call AddEffect(WATER_EFFECTS,0,"Abilities\\Spells\\NightElf\\MoonWell\\MoonWellTarget.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Weapons\\SeaElementalMissile\\SeaElementalMissile.mdl")
call AddEffect(WATER_EFFECTS,1,"Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl")
call AddEffect(WATER_EFFECTS,1,"Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl")
call AddEffect(WATER_EFFECTS,0,"Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl")
call AddEffect(WATER_EFFECTS,0,"Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl")
call AddEffect(WATER_EFFECTS,0,"Doodads\\Cinematic\\FrostTrapUp\\FrostTrapUp")
// Earth Effects
call AddEffect(EARTH_EFFECTS,0,"Abilities\\Spells\\Orc\\EarthQuake\\EarthQuakeTarget.mdl")
call AddEffect(EARTH_EFFECTS,0,"Abilities\\Spells\\Undead\\Impale\\ImpaleHitTarget.mdl")
call AddEffect(EARTH_EFFECTS,0,"Abilities\\Spells\\Other\\Volcano\\VolcanoDeath.mdl")
call AddEffect(EARTH_EFFECTS,1,"Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl")
call AddEffect(EARTH_EFFECTS,0,"Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl")
call AddEffect(EARTH_EFFECTS,1,"abilities\\weapons\\catapult\\catapultmissile.mdl")
call AddEffect(EARTH_EFFECTS,0,"Objects\\Spawnmodels\\Undead\\ImpaleTargetDust\\ImpaleTargetDust.mdl")
call AddEffect(EARTH_EFFECTS,0,"Abilities\\Spells\\Undead\\Impale\\ImpaleMissTarget.mdl")
//Air effects
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Orc\\LightningBolt\\LightningBoltMissile.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Orc\\LightningBolt\\LightningBoltMissile.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Weapons\\Bolt\\BoltImpact.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Items\\AIlb\\AIlbSpecialArt.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Human\\Thunderclap\\ThunderClapCaster.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Human\\CloudOfFog\\CloudOfFog.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Undead\\Cripple\\CrippleTarget.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\NightElf\\Cyclone\\CycloneTarget.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Orc\\LightningShield\\LightningShieldTarget.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Other\\Monsoon\\MonsoonBoltTarget.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Other\\Tornado\\Tornado_Target.mdl")
call AddEffect(AIR_EFFECTS,1,"Abilities\\Spells\\Other\\Tornado\\TornadoElementalSmall.mdl")
call AddEffect(AIR_EFFECTS,0,"Abilities\\Spells\\Other\\Tornado\\TornadoElementalSmall.mdl")
endfunction
endlibrary
Missile By Dirac
Gui Projectile System by Kingz
- No submission may violate any of the site rules.
- If a submission does not follow the spell submission rules the creator will be disqualified.
- Your submission must be posted before the deadline. The post containing your final submission must also contain the following:
- An in game screenshot showing your submission in action.
- The file in the appropriate format.
- You must show at least one unfinished preview of your submission, before the deadline, as proof that it’s yours.
- Your submission may not be started/made before the official launch of the contest.
- Judges may not participate.
- Your final submission must be bug free.
- Imports are discourged
- Either GUI or JASS may be used to create your spell; you will not be penalized if you use GUI over JASS. in fact if you make it with Gui I will be in awe of you
- Generated Spells must be at least MUI
- Third party editors may be used in the creation of your spell, but you must clearly state which editor you used to create the map. If a third party editor is necessary to use your spell, add a link, along with your spell submission, to download the editor.
Examples of third party editors are:- World Editor Unlimited
- JassNewGenPack (or Grimoire)
- UMSWE
- You may use any system on the hiveworkshop, including but not limited to Missile Systems, Damage detection systems, Nova Systems etc... It is recommended that you support multiple effects per spell.
- First Place: 50 reputation points and your entry on the award icon
- Second Place: 35 reputation points and an award icon
- Third Place: 25 reputation points and an award icon
Functional entry 10 rep
- To be anounced
EfficiencyIs it Leakless? /10
Special effectsHow do the generated spells look?, do the effects add up? /5
DeliveryWhat different delivery methods does it support, is it easy to add more ones?(examples of delivery methods, Meteor, Meteor shower, Missile, Mrv,Multiple Missiles, /25
Targetswhat types of targets does it support, does it support AoE, single target, or multiple targets? /10
EffectsWhat effects does it support? /25
- 80% of the winner shall be determined by the contest's appointed judge(s).
- 20 % of the winner shall be determined by the results of a public poll.
- The contest shall begin on Date and conclude on Date, GMT
Last edited: