User:RavynousHunter/GW2 Infinite Levels

= How To Make An Infinite Level System Workable In GW2 = I've heard people talking a lot recently about how the possibility of an infinite leveling system would be "nigh-impossible." Discussed herein is how I would work such a system into a balanced, interesting game.

PvE
This part of the game wouldn't be too hard to rebalance with this system. Let's start off with the variables we'd need:


 * Area Difficulty (AD): This is used to describe what level is recommended for players to be at before taking on the monsters in this area.
 * Effective Level (EL) of Party: The EL of the party is determined by the average of the levels of the players in that party.  Players lower than a certain number of levels below the Area Difficulty aren't included in this calculation.
 * Monster Challenge Rating (CR): Describes how hard a particular monster is to kill; primarily derived from the base level of the monster in question, but shifted depending on skill set and attributes.

To provide an appropriate experience, the DC of both Areas and Monsters can only be shifted upwards, this is to prevent low-level & high-level players who might happen to be in an area unbefitting their level from throwing the difficulty of the encounters off. Monsters should be spawned as such:

if ( monster.CR > ( AD + abs( AD - EL ) ) || monster.CR < ( AD + abs( AD - EL ) ) ) {   Spawn( monster, ( party.Length / 4 ), ( abs( AD - EL ) / 2 ) ); }

// Spawn( monster, count, CR_upshift )

The above pseudo-code is assuming that the average party size is similar to that of GW1, though this could work for a higher average party size.

To be excluded from the EL calculation:

if ( player.level < ( AD - 2 ) || player.level > ( AD + 2 ) ) {   discard_from_EL_calculation( player ); }

PvP
Using some of the variables from the PvE calculations, excluding AD and monster CR, you can make PvP balanced with a bit of work. Matching should be done as such:

if ( party1.EL > ( party2.EL + 2 ) || party1.EL < ( party2.EL ) ) {   // Look further down the list for another party and repeat until an appropriate match is found. }

Now, again, to prevent low-level & high-level characters from throwing off a party's EL off significantly, all new joins must have their levels compared with the party's current EL, if they're level is more than 2-3 levels off from the party's current EL, they can't join that party, giving them an appropriate error message.