Chornomancy: Gather the Threads

This was Sirracco's idea but I figuring out to actually do the effect ended up taking a lot longer then anticipated. The idea was to pull power from other time lines. As much as I love Sirracco's initial idea of casting a spell, cloning the player and the bolt to reload the level, then doing it all over again, it sounded like a lot to implement. So I ended up going with a next spell cast inflicts X more damage route (I know, a bit boring but hey).

So at first I tried to use something like Martyr except having the spell hit the target again rather then hitting yourself. I ran into an infinite loop here and after a failed attempt to fix it decided to scrap that idea.

Second idea was to have this be a stacking buff that broke on cast. So the first turn you get a big bonus to damage and if you don't use it right away you can stack more damage on top of it, though in much smaller percentages. After five turns of this you'd lose the gathered damage if you hadn't used it. Casting a spell at any time would also end the effect.

So I created a time out effect and the activate/deactivate for my new timed effect and I started testing. The power on the tooltip updated as I wanted it to but the power on the character sheet never went up. At which point I realized that activate happens once (on activate) and whatever number it pulls at that time is the number it will have.

Next I tried putting the damage buff in the time out effect itself (time out effects happen everytime the timer ticks down) which led to the character ending up with +1000% damage. It was putting the value on everytime as I wanted but wasn't clearing the old values out.

After wracking my brain for awhile I remembered that on merge effects work for damage so they could probably work for this (I'd used them for stuff like damage over time effects but never anything else). I looked over a few on merge effects, specifically bloodlust and the berserker strength one (bloodrage?) then went to work modifying bloodrage for my stacking damage effect.

Here's how everything came together and the guts of what a self stacking timed effect needs.

Activate - This is your base value you want to happen the first turn.
Deactivate - To remove the effect completely at the end.
Time Out - This is your trigger for reapplying the timed effect (we're applying the exact same timed effect so our merge code can merge them.) Put whatever value you want to add or remove as the power.
On Merge - Here you need to remove the old timed effect and make sure your new timed effect gets the correct duration and updated power before it gets applied.

The rest of the talent was pretty easy once I got that out of the way so I won't go into it. I'm sure anyone that needs to deactivate a talent when another talent is used can search for stealth or lightning speed and figure it out ;)

I'm pretty happy with the end result and may update my speed control tree now that I know how to do this. A slow that starts off big but loses power every turn could be fun as would a speed effect that gave you a big boost but lost power each turn.