Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I don't know if there's an accepted solution to this wicked problem. I'm thinking about the design of an online PvP game. A key aspect of the game, something that is just a given, and not my choice, is that people will join the game at very different times. New players can still show up after there are already powerful players established.

How is it possible to balance such a game so that latecomers aren't immediately crushed by the powerful players? I've played several games like this, and the only way I've seen to mitigate this is to have regular restarts, where new game worlds are released periodically to give everyone a fair start. In one of my own games, I tried a protection system, where new players were immune from attack for 25 days. This worked, until the 25 days were up, whereby the crushing commenced as normal.

This scenario causes a lot of frustration with new players, and makes many of them quit right away. Are there any genius solutions that might help? One I have in mind is keeping new players more physically distant from old ones so it takes the powerful players a while to find the newbies, giving them time to defend themselves. Thoughts?

share|improve this question
2 <-- excellent course, not strictly about PvP but you'll find it interesting – o0'. Sep 19 '10 at 0:01
I actually wonder whether the "crushing" is frustrating per se, or whether it's actually good. 25 days where you can't be attacked by the active, and thus higher level, players seems like a horrible dead zone to create. Sure, ideally you shouldn't be able to be spam killed, but being killed by another player is much better than having no interaction at all with other players. Just something to keep in mind. – Kzqai Oct 22 '10 at 13:30
@Lohoris - Thank you for that excelent course! As I'm starting to develop an economy based browser game I find it an invaluable read. As a bonus it's quite entertaining. – kitsched Jul 4 '12 at 12:14

12 Answers 12

I like RuneScape's method (at least, the old method back when the wilderness was PvP).

Most of the game world is only PvE, but up north there is a huge desolate area called the Wilderness; it's PvP. When you first cross the clearly-marked border into the wilderness, you see an icon in the corner of your screen and it reads "Level: 1". So you're in level 1 wilderness; you can attack people +/- 1 combat level from yours (combat level being your character's overall level, determined by a formula from your more specific combat-related skills).

As you keep walking further north, deeper into the wilderness, the level keeps incrementing, and at any place in the wilderness you can attack other players who are +/- the wilderness level from your combat level.

This introduces some interesting dynamics. First, a lot of wimpy people sat at the border of the wilderness, hoping to find other people that were just +/- 1 or 2 levels and then attacking and stunning them (so they can't move). Second, you have something of an incline; someone who is not so brave can stay in the lower levels of the wilderness and try to find people near their level. There were some good resources near the back of the wilderness (around level-40 wilderness); some rare mining rocks and high-level monsters for training. But of course, by going that far, you are risking that someone 40 levels higher than you can come and beat you down in a few hits. And of course, when someone does attack you, you can try to run south and retreat to a level of wilderness that is outside the "range" of your attacker's combat level.

Nowadays, they switched it so that the wilderness is also PvE, but there are dedicated PvP servers in which the entire world is PvP. The only danger in the wilderness now are ghosts which are supposed to imitate the old PKers (player killers), but most players agree that the ghosts are much more powerful and have much worse rewards than PKers, so many people were upset by the change.

I think this level system would work well in an all-PvP game, if the "wilderness level" was implemented as the distance from the nearest city's borders. So the no-man's land between cities is PvP, but cities are safe zones except for structured, agreed-upon duels in the streets. Then you can also introduce some cash sinks, by having transportation NPCs which will take you from one city to another for a price (for those players that wish to avoid PvP entirely). There should also be plenty of training zones where players can fight NPCs without the danger of PvP, again for those who don't want to participate in PvP. But really, at some point you must draw the line between players who never PvP (like myself) and players who only find fun out of PvP.

share|improve this answer
I like this solution. The only catch with my setup is that people can conquer each other's cities, so using city distance doesn't work as a wilderness metric. I'd have to come up with another measure for it. – Tesserex Sep 14 '10 at 16:11
I would like this best if there is an in-game reasoning for it, like some kind of calming enchantment in the city that gets weaker as you get further away. If you have player controlled cities you could make it an optional upgrade for them and have an unconquerable neutral city where players start that has this effect. – lathomas64 Sep 14 '10 at 21:36
Not necessarily a brilliant answer, but a create description of one approach, certainly. – acron Sep 15 '10 at 18:09

I can see a bunch of possibilities (most of them should be mentioned by now, I guess). You can use any of them, but they work best in some kind of combination:

  • Make character level / age / equipment have no meaning in respect to the PvP side. This turn your game into a player skill based MMO. An example of this would be Guild Wars - or any online FPS, really. Veterans will still have an edge over total newbies, but it won't be nearly as massive as it is with the exponential power curve most DikuMUD variants (EQ and WoW included) seem to feature.
  • Make characters expand horizontally (giving them more options) as they level up instead of vertically. UO did this to a certain extent, as does EVE Online. Free Realms and Final Fantasy XIV feature a similar system with the tons of "jobs" / "classes" they have which you can freely switch between and which you level separately, though of course they aren't PvP games. A newbie can specialise and reach the same power level as a veteran in short amount of time under such a system - but only in his specialised area, whereas the veteran will be able to change his playing style to suit his needs and fill many different roles.
  • Make the "big" things to fight over (control over areas, generally) be a group activity where lower levels have good reasons to work with the highest levels. This can be done by setting everyone's level to the same number upon start of the city sieges and similar scenarios, or simply giving the lower-level characters other important things to do while the higher-levels are on the front lines - operating artillery, ships or airships might be an example.
  • Have some very harsh negative feedback loops preventing any single group or coalition of people from dominating a significant portion of the server.
  • Have a huge world, where going out into the wilderness, disappearing for a few months with your pals to build up a small country far away from the rest of the player base, unseen and unfindable until you are ready to strike back from your hidden power base is an actual possibility.
share|improve this answer
I like the last bullet point here! I'd love to be able to do that. – lathomas64 Sep 15 '10 at 19:55

There are a lot of solutions to this, and it's up to you as the designer to choose one (or more) that are right for your game.

Making PvP strictly "opt-in" solves the problem directly. Giving temporary "newbie protection" is a lesser version.

You can put restrictions on who can fight in PvP -- for example, only allowing players to affect those within 2 levels. (Reducing rewards for bashing people lower than you and increasing rewards for attacking those who are more powerful can curtail "newbie-bashing" in Achiever-type players who are trying to rise through the ranks, but not so much with Killer-type players who have more fun by ruining someone else's day.)

Only activating PvP when players reach the level cap (and/or just shortening the time it takes to reach the cap) reduces the problem as well.

Some games (think CCG/TCG type games, FPSs, or really any kind of purely skill-based online game) don't even have level progression as a core mechanic, and a new player can have just as much a chance of winning as an experienced player, other things being equal. The danger here is that experienced players tend to be better at the game so they will win on skill grounds; this can be lessened through ranking/rating systems (which again segregate players by skill level, if designed well), creating several servers for different play styles (casual, pro, family/kid friendly, etc.), or community management (giving experienced players and community leaders incentive to teach new players, for example).

For games where players continue progressing indefinitely (a lot of Facebook games are like this), the solution I've seen is a reset of some kind. This can either be on an individual basis (when a player reaches the level cap, they're given the opportunity and incentive to restart with a new character) or a server-wide basis (monthly server resets, or a reset when some player or group of players manages to reach some kind of "win" condition, which gets them into a permanent "winners" list and causes a reset). This doesn't fix the problem immediately, but it does mean that anyone new to the game knows there will be a level playing field soon enough, and they are free to explore the game mechanics in the current cycle without worrying about screwing up too much.

share|improve this answer

Server restarts are always a very bad thing, that does not really solve the problem and also makes the game a much worst game in any case. That's lazy design.

"Noob protection" and any other kind of arbitrary limitation are also a very annoying and useless thing: again that's not really solving the problem (as you have already noticed).

If your game is so unfair that you need this kind of thing, you should fix the problem at its roots: trying to fix the symptom is pointless and will never give satisfactory results.

Don't make your game unfair. Really, you have no reason to do it:

1) design your game so that progressing means "more options" but not necessarily "more power", so that the game is still interesting as you go on, but not unbalanced

2) design it so that the actual skill of the player counts more than the power of the character, like in an FPS

3) design it so that players are surrounded by players of a similar level (such as divisions in a sport game, arenas in WoW, and I guess you can figure out something for whatever-your-game-is too)

4) make it different to attack lower players: think about the lower player as an insect and the bigger player as a human: two insects will fight against each other on the same level, but the fight between the human and the insect will be much more different, but still possible

share|improve this answer
You assume that players don't need skill to win; in this guy's case, noobs may be getting crushed as a function of their lack of skill as well as low power. – RCIX Sep 22 '10 at 11:45
@RCIX: ?? point 3 takes into account exactly that problem... – o0'. Sep 22 '10 at 12:46
I think that your item number 4 leads to: Remove all rewards for a high level attacking a low level. – Kzqai Oct 22 '10 at 14:40
@Tchalvak: no. It doesn't solve the problem (they may attack anyway just for fun), and it isn't definitely (and quite plainly, I thought) not what I meant with point 4. – o0'. Oct 23 '10 at 15:12

I find the most interesting method of player vs. player protection to be one that somewhat models itself after reality.

IRL, it is the threat of inevitable and pervasive society reprisal that keeps violent elements of society calm.

In game, it's great fun to have a system where npcs around the pcs react to unsanctioned violence by attacking the aggressor. So if you provide strong npcs in the general area of safe location, e.g. town guards in a starting city, that attack people who initiate pvp. The system isn't foolproof (there are a lot of chaotic effects that can occur: players can initiate attacks with full knowledge of the backlash, bystanders can be drawn into fights, for two example) but it's much more interesting and vibrant than any kind of mathematical "you are level 5, so you cannot attack a level 1" system.

Non-cities become wild places where attacks can happen, and population centers generally become safe-zones. Pretty realistic result.

share|improve this answer
While what you say sounds good, to make it work you have to actually build your game around it. For example it's pointless to do that and then require the player to leave the city: if they have to leave the city, who cares if they are protected while inside? You're not solving anything if you do that. – o0'. Oct 23 '10 at 15:18
@Lohoris It's not too hard to "build the game around it", so to speak. You just have to make your "cities" or "guarded areas" interesting and compelling, and allow them to gain power first within the city before they choose to venture outside of it. – Kzqai Sep 12 '15 at 17:48

I think one way to deal with this is to make it so it does not take very long to reach a competitive level in PvP. In Ultima Online, players had a "skill cap" of 700 at the start, and a 225 stat cap (if I remember correctly). It did not take too long to reach the skill/stat cap if you were active enough.

In other games like Darkfall Online, there are no caps on how many skills you can have and the stats take over 6-12 months if you don't use scripts to train them, so the gap between new players/veterans is massive.

If your game is level based then you could separate people into different regions depending on their levels. The biggest thing is the difference between power gamers and casual gamers. You must find a way to cater to both. If you can't do that then I would think catering to casual gamers would be more important if you are trying to reach high populations.

share|improve this answer

In MUDs it was common to physically disallow PvP between characters who aren't of a similar level. +/- 5 levels was a common range (in games which normally had 50 or 60 levels).

A more subtle approach is to not block this behaviour but punish it. Your reputation could drop if you prey on weaker players, bounties could be put on your head, etc.

share|improve this answer
lazy design. Actually fixing the problem is much better than this. – o0'. Oct 23 '10 at 15:19
Not really, just different. Your solutions (which I voted up, as it happens) are not good for all games and would damage the gameplay in most MUDs which depends on large power differentials and players sharing the same area. In those games PvP was not the primary objective however. – Kylotan Oct 25 '10 at 10:29

Eve Online actually has several different solutions, all intermixed nicely.

First off, while your character gets "more powerful", it's not really getting all that much more powerful over time. The first few weeks of training (which, keep in mind, happens offline) give you access to most of the basic cheap powerful ships. You can pump months into some specialty niche topics, giving you more powerful ships, but those more powerful ships are far, far more expensive.

Second, Eve Online supports and strongly encourages group play, and groups are vastly stronger than solo fighters. Ten players with hundred-million-isk ships ("isk" is the game currency) can easily take down someone in a billion-isk ship. In fact, ten players in ten-million-isk ships can probably take down a billion-isk ship. Goonswarm, one of the most powerful alliances in-game for some time, got its start and its military backbone with sheer untrained numbers.

Third, you don't have to gamble a lot on PvP if you don't want to. Those low-tech easily-trained ships won't cause you to lose much if you get blown up. The later high-tech ships will cause you to lose huge amounts, but nobody's forcing you to use them, you can keep on using the cheap less-powerful ships. While your skills definitely give you significant edges in combat, with a lot of 10-20%'s here and there that add up quickly, the second biggest determiner of your combat abilities is the hull and gear you're using, so a six-year-trained pilot in a cheap ship will still rapidly lose to a six-month-trained pilot in a pricey ship.

(The biggest determiner is the player skill, of course - sheer character skill points comes as a rather distant third.)

I haven't seen any attempt to import these mechanics into a conventional fantasy MMORPG, but I think doing so could be extremely fun and interesting.

share|improve this answer
While this seems interesting at first, it still have a huge problem: consider the "group" as an individual. The bigger group wins. I.e. that's the same broken mechanic of "the bigger guy wins", but applied to the group instead of the single player. Unless the skill counts so much that it allows a single expert player to escape or fight a horde of newbies. – o0'. Sep 22 '10 at 12:53
Recruit more players to help you out if you're having trouble getting jumped by swarms :) Eve is a very multiplayer game, and it's strongly intended for you to do things in groups. Yes, more players tends to win, but at least that means the majority of your playerbase is having fun. – ZorbaTHut Sep 23 '10 at 16:40

Regular Restarts is absolutely not the answer. If you have regular restarts, everybody is going to quit. Thats the exact OPPOSITE of the point of an MMORPG, which is all about character development and time investment. And if you're talking about a more traditional competative online PvP system, then what do you mean restarts? Are you talking about an RPG with character development? Then again, you don't want to undo people's advancement. Are you talking about a skill based game? Then you CANT erase people's skill. So what?

If you're talking about games like WoW, which regularly releases expansion packs to keep the game interesting, you are misunderstanding the game design involved. Thats not a restart.

The way they balance the game is not with character restarts, but with a "levels" system. Players who have played longer are more powerful, but they are higher level. Higher level players move on to higher level areas, and as such are not near the low level players.

To keep someone who has been playing the game since it came out non-stop from being unstoppable, nearly every successful MMORPG has implemented level caps. So once you hit the highest level, your character cannot gain stats any further. Furthermore characters cannot usually challenge characters who are X levels lower than them, or at least receive a penalty for doing so.

You can't force high level characters to be far away from low level characters, thats just not fair. Players need to have control. However, like I said, if you have proper level design that takes into account character progression, then high level players will have moved on to higher level content, and will naturally be farther away. But this does not prevent them from running back to the low level areas, and gank low level players. And this definitely happens all the time.

If, however, you're not talking about an open-world persistant MMO, then I don't see what your problem is. If you're just talking about a traditional online pvp game, then you're just talking about a matchmaking system.

Record a skill level for each player, and then increase or decrease that skill level after each "game" they play pvp, with increase for a win and decrease for a loss, and the amount being based upon the difference between the players' skill levels. See ELHO.

So you just match up the high level players to fight each other, and the low level players to fight each other. See: Halo, Warcraft3, League of Legends, etc. etc. etc.

share|improve this answer
+1, mostly for the first paragraph – o0'. Oct 25 '10 at 18:16

It seems like the only real "solution" to this is to make PvP an opt-in experience only. Something similar to PvE servers in WoW combined with level-capped Arenas.

share|improve this answer
of course not!! There are tons of possible ways of making pvp intresting anyway. – o0'. Sep 22 '10 at 12:48
that doesn't really solve the problem just lets some players avoid it. – lathomas64 Oct 22 '10 at 15:05

The example I refer to, OGame, is a real time building type game, but I'm pretty sure you could adapt it to PvP in MMOs or similar.

All the time, PvP went on; you couldn't 'opt-out' of the chance of someone raiding your planet. However, the way it worked I found was very nice: (You gained points for having resources, building structures, building ships, etc)

  • If you had less than 5,000 points - which is about a month or so of being fairly active - you could only attack or get attacked by people with under 5,000 points and who had +/- 25% of your score. So your little 250 point planet couldn't be attacked by veterans or even 4,900 point planets which would easily overwhelm you.
  • If you had between 5,000 and 25,000 points - this is a good few months of solid playing - again you could only be attacked by people in that boundary, but (IIRC) the boundary went up to +/- 50%.
  • Over 25,000 points - you could be attacked by anyone over 25,000 points.

Obviously you wouldn't have points, but some skill calculations maybe?

share|improve this answer
That's exactly what he said he did and didn't work. Read more carefull, please. – o0'. Sep 22 '10 at 12:54
No, it is not. He said there was a 25 day protection, time-based. I'm suggesting a XXXX points protection, score based. Therefore you're protected from the crushing. I'm not sure if I phrased it badly. – The Communist Duck Sep 22 '10 at 16:10
This won't help if points can go up to infinite: people will be crushed anyway by people with so much more points. Very very very slightly better than the time-based one, fine, but so slightly it hardly matters. – o0'. Sep 23 '10 at 20:16

You could always have a flag that allows the player to be involved in PVP. This can't be set or turned off only during timed intervals of logged time. By default it should be off. This makes it the players choice.

You can also set it up so that anybody who actually PK's will not be to set it off so easily (extra penalty on ability to set the flag)

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.