|
2003-11-22 OverviewExamples/IdeasNew Spell TypesDruids could get a buff that puts up bark encrusted healing sap. In game terms, this would be a tiny rune, that morphs into a heal over time when it breaks. Pre-buffed, on-demand healing. A totally new spell type without having to write a single line of custom code.A super pet buff could morph into a 20k damage debuff when the duration expires or it gets dispelled, creating a super powered, but temporary, pet. Any spell can morph into any other kind of spell as time passes with the morph system. A spell could heal someone for several ticks, then hurt someone for several ticks. A spell might be a renewable rune, that morphs into an empty buff when the rune is used up, and each time the duration runs out, it replaces itself with a fresh version (see the implementation details for more information on how this is possible). This could even be an AA: hit the AA and it pops up an "infinite rune," that replenishes itself every so often by fading and morphing into itself with full duration, until the user dies. A spell could super-buff a player, then stun them when it wears off. A buff could build a berserker like rage on a tank by combining the Vie effect with morphing. The spell starts off with nothing but a 1%/100hp absorb. When it dissolves, it replaces itself with a 1%/100hp buff with additional stats. When it fades, it replaces itself with an even better version, etc., until ultimately the full power version is in effect, and the user is at "maximum rage." As long as the wearer keeps taking damage, the buff stays. If he stops for a while, he calms down. Sorry, this system can't paint him green :/. There are truly an unlimited number of possible new spells that this system could make possible, and all for the same coding cost. Improving Current SpellsCurrently there are some buff+rune spells that fall as soon as the rune fades, which isn't always what you want (like the bard ac+spell rune song, where a tank loses AC when hit by an AE). With this system, when the rune expires, the buff could replace itself with a new, buff only version. The player then knows the rune is gone, but still has the buff if they want it.Several existing hard coded features could instead be done with this system, reducing code base. This isn't worthwhile to do for no reason, but it could be useful if rewriting some problematic code to pull that oddball code out and put it in data. It's also illustrative of the usefulness of this system. Invisibility, levitate and illusions all have special warning systems to tell players that the buffs are going to fade soon. With morphing, the buff could go ahead and fade, then morph into a short duration extension buff with the same effect and an informative cast-on-you message. No special code needed, and easily modified. Spell Stacking HasslesUsing Pot9 is a problem right now, because it requires people to click off the Virtue a cleric already cast, then get that cleric to recast 2/3rds of Virtue on them in the form of symbol+AC buff. Beyond this, it uses up 3 buff slots instead of 1. With this morphing system, when Virtue overwrites Pot9 (or vice-versa), both buffs could morph into a new, combined Pot9+Virtue buff, that gives all the stats casting each spell individually would give, but in one combined buff. This still requires both a druid and a cleric to buff that level of hp/mana regen, and it doesn't add anything it didn't add before, but it no longer requires extra hassle or triple the buff slots.
Buff SlotsAs alluded to in the last example, this system can solve many buff slot problems. I personally use 5 different click items from Plane of Time that take up a buff slot that didn't exist before (plus another item that replaces an old one). That's 5 more buff slots I need, when I was often at the 15 buff cap before.This is a major problem now, and will only get worse in the future. Putting a ban on future click buffs solves this problem, but at a cost in subscribers as players get bored to tears with stat-only items that are no different from the items that came before them. Morphing can solve this by having click buffs that are buffs by themselves, but in the presence of another buff, morph into a combined one. For example, one of the potime click items is a 180hp buff (on Veil of the Inferno) that stacks with other hp buffs. If Brell's Stalwart Shield is up, and I click Veil of the Inferno, it could morph both buffs into a new combined buff with 180 additional hp. This gives us the same cool click item, that's still useful in all the situations it's useful in now, but doesn't take up an extra buff slot. An entire series of click buff items in an expansion could be designed such that if someone collects them all, they combine into a more powerful, long duration version. They would actually combine in pairs - collect two similar ones to get the upgraded buff they both create. Collect two pairs and get an even better buff. Thus each buff doesn't have to be strong and powerful on its own, because the end result buff will be. This adds a level of item progression that currently doesn't exist. Multiple CastersSome games have complex hard-coded systems to try to combine casting from multiple casters. This system does it with ease. The method is this:
This can easily be extended to three casters by having an intermediate buff2 created by the first two casters that does nothing until the first buff hits it again. The only trick here is the recast has to be long enough relative to the duration so that the first caster can't be one of the later casters...but then again, that may be exactly what you want.
Examples Further castings of buff1 then create a new buff2, then a second new buff2 that overwrites the first and creates a new buff3, that overwrites the first buff3 and hugely buffs the pet, or whatever special effect is desired. After a minute or so, that super pet buff would fade. Again using the morphing system, that buff could morph when it fades into a 20k hp debuff - killing the pet. A similar spell could buff a necromancer directly, turning him into a melee killing machine, by having the final buff be a huge skeleton/spectre illusion combined with massive melee buffs with built in silence. Naturally I suggest having that same 20k debuff at the end. Necromancers enjoy death, right? Disclaimer: the actual technique to use more than 2 casters may vary based on the actual implementation. I.e. buff1+buff1=buff2, but does that buff2 replace a buff1, or does it get applied as a new spell? If it replaces buff1, then there needs to be a buff1, 2, 3, 4, 5, etc., one for every expected cast. If instead the buff is re-applied, then a pyramid building format can accomplish the same thing in log2(N) spells, with N being the number of casts, as described above. Better example: Start: [no buffs] Cast buff1: buff1 Cast buff1: buff1+buff1 = buff2 Cast buff1: buff2+buff1 Cast buff1: buff2+buff1+buff1 = buff2+buff2 = buff3 Cast buff1: buff3+buff1 Cast buff1: buff3+buff1+buff1 = buff3+buff2 Cast buff1: buff3+buff2+buff1 Cast buff1: buff3+buff2+buff1+buff1 = buff3+buff2+buff2 = buff3+buff3 = buff4 etc. There's no special reason that these buffs all come from the same class either. Just like the Virtue+Pot9 buff above, two (or more) different classes could create a new buff/debuff when working together. This could not only add flavor, it could help make sub-optimal combinations viable, or make additional members of any class desired on raids.
Aggro ControlUsing multiple casters, or multiple casts, could provide a unique way of dealing with current aggro problems. For example, two enchanters may be able to cast a weaker, no aggro tash, that when combined create the full power version...but without the hate. Shamans could do the same thing with slow. Thus instead of debuffer deaths on every raid, debuffers work together to debuff without generating all that hate, while still maintaining the single group risk for debuffers that needs to be there. This too can make additional debuffers more useful than they are right now.
Level CapCurrently there is a level cap on many forms of CC that makes sense for a single group, but doesn't make much sense on raids, where we're supposed to be fighting higher level mobs. Through morphing, two enchanters could both debuff the same mob with a special high level spell, that when combined, morphs into a much higher (or unlimited) level cap mez (assuming of course the target isn't immune). The same could be done with a team of enchanters charming a higher level mob.
Augmenting Existing BuffsClerics could get a right click buff that morphs virtue into virtue+100hp on any target, improving their buffing capability. Enchanters could get a click buff that morphs vallon's into vallon's+20atk, etc.Expansion spells could do the same thing, augmenting existing buffs without replacing them. In LDoN for example, a better virtue couldn't be given because hand of virtue is already level 65. Another level 65 spell that does the same thing only better wouldn't make sense. But a level 65 spell that augments virtue would.
New ClassA new casting class could be built around this feature. Instead of using regular buffs/debuffs, this class could use repeated castings to ramp up its spellcasting power. This is like being able to select if you want to spend a little amount of mana on a little buff, or a lot of mana on a big buff.For example this class might have a group damage increase buff of some kind (haste, atk, whatever). The first cast gives +10%. The second increases it to +20%. The third, +30%, etc., until it reaches some maximum, at which point it could be kept going with only occasional casts (each cast morphing the top buff into itself at full duration). If the casts stop, then the buff falls. It could even go through the same progression as it wears out. Or perhaps the class is melee oriented, but uses proc buffs. Every proc could build power. For example, the player may proc an atk debuff. If he procs it again, the debuff is increased. Every proc makes the debuff stronger. Another proc buff may buff the party in the same way, if the player procs a lot, the party is super buffed, if he doesn't, the buffs drop down in power as they wear out, until eventually they dissipate. To the player, these are essentially new play styles, as if a new bard-like extension to the spell system were added, but the actual implementation is just this morph system plus data entry.
Implementation DetailsData StorageThe first thing is data storage. Where to put all this morphing information? There are three obvious options:
When to MorphJust saying what to morph into isn't enough, it's also important to know when to morph. Some spells will only morph when overwritten by other specific spells. Some spells will only morph when they run their full duration and end. Each morph record will need to have a field for when that rule should be used. In actual implementation, this field will likely contain a single number. If that number is over 5 or so, it's the spell that causes the morph. If it's under 5, it's one of the below special cases.
Duration Formulas
Morph RecordWe now know what kind of data we need to store for a morph record:
That's it! ConclusionThe benefits extend beyond the 15 buff limit: adding new types of character advancement, opening the door for new character classes and special abilities, and greatly increasing the options available to designers when creating any form of new content in a way that requires no additional code. The cost to implement this system is less than any recently added system I can think of. The benefits, especially in the long term, are far greater. License |