This is a re-visitation of an idea that I’ve had for spell customization a while back,
I figured that the original post was a bit lacking, but I’m not quite ready to give up on it yet
Here is the original post for those that are curious
So starting off, each spell you make will have a customization point limit, which determines how powerful or complex you can make a spell.
As you grow stronger with your magic, you’ll get more customization points for your spells, to keep it simple, you could just get 2-5 points every time your spell goes up a tier.
Having a spell set as an ultimate art could double your customization point limit, but would also put a hefty cooldown on the spell.
Some options for your spells should be free and not cost any customization points, mainly the visual options like casting animation or name.
Every spell will have some basic stat options that can be adjusted as you see fit.
to keep it from being overwhelming, these options can be locked until 5-10 levels after you learn it.
These stats can be raised with customization points, or lowered to use their customization points elsewhere.
Every offensive spell will probably have these stats:
Amount, Damage, Speed, Size, Casting Speed, and Cost.
These stats will have point requirements to raise, with Amount requiring 5 points to raise, damage requiring 3 points to raise, and the rest requiring 1 point to raise.
Being able to lower a spells stats in exchange for another might make all the magics feel samey though, so an alternative option would be to just give the player more customization points, but remove the ability to bring basic stats lower then their initial value.
Advanced Options are a bit more complex, being additional effects or bigger changes to a spells mechanics.
Due to these options being so complex, they should be locked until you hit tier 3 with a spell.
These options have to be learned before they can be used in a spell, and depending on the option, will cost customization points to be put into a spell.
These advanced options are split into 2 groups, Casting Effects, and Impact Effects.
Each spell can be equipped with 1 casting effect, and up to 3 impact effects.
Each Effect comes with a few customization options of their own, which take customization points to raise.
Customization options from effects should not be able to be brought down lower then their initial values.
Not all customization options should have a cost, especially if it’s visual.
Casting effects are effects that activate when a spell is cast or are options that change the spell itself.
Casting effects usually are just effects that activate when a spell is cast, effects that change how casting works, or effects that change how a spell is cast.
Here are some Casting Effect Ideas
I don’t feel like coming up for customization point costs for these, but each of them should have their own cost
Spread - Causes a blast or beam spell to fire multiple projectiles at once, independent from amount
customization options: spread shape (plus-shaped spread, vertical spread, horizontal spread, conic spread), spread amount
Dashing - Causes player to dash towards their cursor or another direction after casting is finished (idea from a fan made wom game)
customization options: dash speed, dash direction
Barrage - Modifies Blast or Beam spells to fire off projectiles quickly, which then converge on the mouse cursor
customization options: Barrage count, Barrage Accuracy
Guided - Causes a blast spell to curve towards enemy targets or the mouse cursor
customization options: Turn Angle, Turn Speed, Guiding Target (mouse or target)
Constant - Turns a beam into a consistent beam of damage, amount cannot be changed with this effect on. Impact effects only activate on every 5th damage tick
customization options: Beam Duration (in damage ticks, in intervals of 5), Beam Speed (delay between damage ticks)
Advancing - Causes an explosion spell to move towards the mouse cursor with each explosion
customization options: Advancement Speed
Placed - Causes an explosion spell to be placed at the mouse cursor rather then on yourself, but with lower casting speed and damage
customization options: Casting Range
Meteor - Causes a blast or beam attack to be dropped from the sky instead of shot from the player, gives more customization points
customization options: Meteor Height
Charged - Causes any spell to be delayed, but gives the spell more customization points
customization options: Spell Delay
Mobile - Allows you to move while casting, but at a slower speed
customization options: Movement speed
Impact effects are effects that activate when an offensive spell explodes, or effects that change their projectiles.
Impact effects can be things like the default explosion aoe from a blast, to scattering more projectiles, or maybe changing the way that a projectile functions.
Each spell created must have at least one impact effect, otherwise you’d basically just be launching duds at people.
Here are some Impact Effect Ideas
I don’t feel like coming up for customization point costs for these, but each of them should have their own cost (except for default explosion)
Default - Default explosion, causes damage in an area, has no customization cost
customization options: Explosion Size
Lingering - Creates a lingering area of magical energy that deals damage
customization options: Duration, Lingering Damage (deals a % of base spell damage)
Piercing - Projectiles pass through terrain and objects, up to a limit
customization options: Piercing Limit
Locking - Projectile latches onto targets or objects, and activate impact effects every second
customization options: Duration, Locking Damage (deals a % of base spell damage)
Repeating - Causes an explosion on impact, the explosion then repeats multiple times
customization options: Repeat count, Repeat Delay, Repeat Damage (deals a % of base spell damage)
Splashing - Causes several small explosions on impact, overlapping explosions can damage the same target multiple times
customization options: Splash Count, Splash Size, Splash Damage (deals a % of base spell damage)
Bouncing - Projectile bounces off of terrain or objects, towards your cursor or a target
customization options: Bounce Count
Splitting - Projectile splits into more projectiles mid-flight
customization options: Split Count, Split Delay, Split Damage (deals a % of base spell damage)
Growing - Projectile grows in size the further it travels
customization options: Grow Speed, Grow Limit
Firing - Projectile shoots smaller versions of it at enemies as it travels
customization options: Fire Rate, Firing Damage (deals a % of base spell damage)
The reason I’ve come up with this suggestion and that the reason that I revisited it is because I absolutely feel like the customization was going to be a core aspect of the game, but it turned out more lackluster then I’d like it to be.
I feel like at the very least, having the ability to edit your spells stats individually would have made customization a lot better.
I wanted to include bits from Inferno’s Spell Aspect system because I absolutely love the idea behind it.
I also figured that having the ability to adjust spell stats would help with all the issues with magic balancing and instead shift it to what type of spell is the best spell, since magic stats won’t matter as much with this system.
Though, the magics with no effects or lackluster synergies would probably need some stat buffs or effects to give them a reason to be picked.