A New Mechanic to Breathe Value Back into Ranged and Casters (and Mele)
The Problem
It sucks to be any kind of ranged job, and it sucks range-squared to be a caster.
The moment the damage is boss centric, or the speed crosses a certain threshold for arena wide patterns, your job design has about as much use as a cooldown on a passive ability.
If the damage is boss centric the further away you are, the further you have to move, the harder it is to doge, and your weaker than mele to boot. Dash abilities don't cut it.
Since the game engine is so limited, as content gets harder, if its not boss centric damage, then its still arena wide damage with 'incredibly' tight solution times.
Now I accept that this latter option is never going away, and perhaps shouldn't but from ranged/casters perspective your ice cream now comes in only two flavours: plain, and vanilla.
If you want proof of this, just look at how alliance raids all turn into every job just standing around the bosses hit box together (among the experienced players). If the boss suddenly cleaves 180 or even 90, or spins, and your far off... your F'd! Give up immediately and remain where you are. Push that defensive, which in the most cases only mele have. >:-/
The Solution (at least something of one)
DAMAGE PROPORTIONAL TO DISTANCE FROM SOME POINT
(the game already has this I should add, but hardly ever uses them, one ability raid wide used twice in any fight for only one out of four instances)
Imagine, there is an attack type that:
- has a focal point of that attack.
- that focal point can be point, or it can be a point-circle/hoop/circumference.
- that focal point can be placed anywhere: at the bosses own feet for wedge/arc shaped cleave aoe attacks; on the bosses hit-box boundary to circle aoes, or even out in the area.
- where you are standing relative to that focal point, distance wise, proportionally affects how much damage you take.
What this means positives:
- If you now have a 'majority' of 'boss-centric' abilities that work like this:
-- Then there is once again an advantage to be ranged standing off in the distance. Yes its easier for them, but that's how they choose to play. On the counter side ranged/caster have lower hp. On the counter side caster (should) have far less mobility, so they will be taking some damage, rather than mele who can dodge completely.
-- you can vary the proportionality. So some boss abilities distance will save you, and its only mele who have to worry. Others, the drop off is less and ranged will have to book it out of there as well.
- It will add variety to the boss actions. Because some actions will be non-distance-proportional 'puddles', and look more like a cast, or a big hammer, or foot, or fist, or tentacle, or other appendage (have at it you degenerate modders), that smooshes you or doesn't.
- it will be variety for mele too. Because you can really make the risk they take to be closer, and the mobility they have to dodge thanks to being close to the bosses compas, really mean something.
The extended benefits: (if additional limited snapshotting can be engineered)
- now imagine giving this to 'just 1-2' player abilities for all jobs.
-- imagine mele have a point blank ability, that occasionally pulls them right in or a kick ability that pushes them a little out, to optimise damage. Instead or just the boring cardinals which disappeared because they were incompatible with DDR.
-- bard that has a fixed distance barrage ability to draw them a little in, or out from where ever.
-- Caster with a crescendo cast that acts the same.
-- RDM can have a fixed distance lunge, if they are too far, they hit less. Too close, and now they are in point blank mele proximity.
Who loses out?
- The people who love to spreadsheet entire fights, and allocate DPS, as the be-all and end-all solution. The margins in variability will make that 'less' standalone impactful.
- The members of the dev team who want to create difficulty by tuning fights to 'zero' margin for error, perfect play.
The arguably goods, the arguably bads
- DPS will variations will swing massively compared to now if you give distance proportional abilities to players
- to get enough skill levels through the fight, the parties who can 'ace' their distances will suddenly breeze DPS checks and enrages.
- Boss DPS will also swing massively. Again, you are going to need higher margins to get enough skill levels through the fight. Skilled players will suddenly breeze fights.
- This has another up side though... to make a tighter difficulty level... all you have to do is vary the 'rate' of those damage drop offs. Great for quantum.
The implementation
Now for the love of hydaeln... DO NOT START CALCULATING SQUARE ROOTS or even radii squares IN GAME!
Think:
- approximate linear vs min vs max distances, octagons.
- even Manhattan
- make sure your bound boxing for anything really, really, really targeting only DPS, or doughnut. (can be Manhattan)
- use lookup tables, pre-calculate and hardcode into the instance.
- you can use this to implement simplified exponential damage to distance proportionalities
- Think bit shifts, addition, multiplication
- Make sure your using Single Instruction Multiple Data (SSE/AVX). Don't transform one player, transform four. (It sounds like everything has been coded from assmbly so I hope thats already being done anyway)
- and if your bottle neck is memory, then the whole of the above is irrelevant and knock yourselves out with division, square roots, cmath, and cml.
Snapshotting player-boss position *for player attacks* also, that's the hardest problem. The game can barely keep up with boss attack snapshots already. But its the boss's attacks that are the main benefit here.
The octagon/Manhattan/approximations have an implication for presentation though. You can either present that a perfect octagon or grid/diamond projection of the approximation boundaries (not recommended) or you can pretend this is a fantasy game 'world' and just present it as a fuzzy circle, and a game that has margins and variability (like crit? anyone heard of that) and not a dry square dance laid out in a spreadsheet. (Again the modders will love turning that into a pixel perfect projection of where the approximation boundaries occur)