Warfare Ranking

  • Good day everyone,

    Rejoice for we live in peaceful times. Too peaceful in the opinion of this one.

    I would like to propose the development of a third ranking system meant for players seeking achievement in the art of war. A chance for further development of tactics, strategies and technologies of war.

    The difficult question is how to compute this rank. I do not have a concrete formula, but I do have some suggested principles which should underpin the rank:

    1. a successful defense against a determined attacker should be rewarded
    2. the successful breach of a RCL8 room should be rewarded significantly
    3. the GCL of the attacker/defender should factor into the reward (attacking a veteran successfully should be greatly rewarded)
    4. harassing opposing mining/harvesting operations should come with a minor reward
    5. some minimal protection against farming/abusing the ranking between friends should be considered


    PS: I remember proposing something similar about 2 years ago. It's probably buried somewhere in the forum.

  • I made a similar suggestion earlier this month: https://screeps.com/forum/topic/2305/a-third-leaderboard

    I think it's a challenge to come up with something measurable, not farmable, and not overly complicated. Reserving and signing both could be used as a measure of capabilities, though I think signing would have to be restricted to signs created in the last 24 hours as many people don't clear signs on their controllers.

    Part of the problem with other systems is that the game isn't a 1v1 game. Assigning credit for is hard and it's not going to be simple. Personally I feel that trying to track combat is at odds with the current leaderboards and we need to come up with something a lot simpler.

  • Oh!

    I hadn't noticed that. My bad. Should probably have bumped that one.

    I must admit, @Pundemonium is very close to my own perception of how this ranking should be built. Probably having both been through a number of conflicts together has helped shape our opinion.

    I think the key to avoiding farm/abuse is by making the generation of this ranking so costly that it's not really worth to farm.

    Simplicity is also key as you well mentioned.

    Probably focusing on the attackController action is the best option for a simple starting computation.

    What I would suggest is a starting ranking along these lines:

    1. When a controller downgrades, the player who "caused" the downgrade receives CONTROLLER_LEVELS[new level]/1000 rounded down
    2. Causality is determined by who did the most controller damage for that level (a bit of capture the flag)
    3. The "causality" is reset when the controller downgrades or has its downgrade timer fully reversed
    4. To avoid abuse, the awarded points will be subtracted from the defender (capped at 0)

    This is a simple system that awards breaching high RCL rooms and cannot be bounced between 2 friendly players.

    The problem with this system is that:

    1. Does not take into account GCL (something to consider for later?)
    2. Does not award defenders (too complicated?)

    Although lack of offensive combat is the problem atm, so point 2 is not relevant yet imho.

  • @Atavus I feel like tombstones offers a great way to handle defense scoring. The number of enemy creep tombstones generated in your room as a result of attack actions is a good start. Basically anything where one player kills another player's creeps is worthy of some points, with modifiers based on the creep killed and the situation (neutral < killing creep in your room < killing creep in enemy room imo).

    Given the ranking has no game value, people farming wouldn't get any reward beside street cred, and if people notice a ranking rising quickly without actual battles that cred will turn to shame if they are farming, easily determined with replays (and the exploits can be fixed).

  • FWIW I don't think attack controller is a very good metric - yes it's costly to do but it's not that well correlated with winning combat. For example I've wiped out 9 rooms inhabited by NCPs in the last week, and spent a fair amount of minerals, energy and CPU to do this. But I've not attacked any controllers.

    Not only is it not always correlated to combat sucess, it's fairly farmable. I would co-ordinate with someone and have them claim a room in a bad room next to one of my bases (ideally with the distance between my spawn and the adjacent room's controller as short as possible). I would then spawn attack controller creeps which would walk out to the controller, attack it, then return to my spawn for recycling. Or perhaps just suicide themselves. Either way, this is pretty farmable and it would be extremely easy to rise high on the ranking for this without ever engaging in combat.

    Like I said in the other thread, it seems like any proposed measure on this ranking, is either easy to measure but not well correlated to military success, or well correlated to military success but hard to measure. IMO attack controller falls firmly into the first category.

  • SUN

    @atavus said in Warfare Ranking:

    1. To avoid abuse, the awarded points will be subtracted from the defender (capped at 0)

    This also rewards the defender in a round about way since they don't lose points. While rewarding defence is a good idea I feel that other ways to reward defence are going to be problematic for one reason or another. I especially like it because the highest ranked players will effectively have a bounty on their heads while also making the ranking dramatically more dynamic (want to be on top as #2? attack #1!)

    In any case subtracting points seems like a good means to prevent abuse / weaker players being hunted. It does make me think that this ranking shouldn't be entirely monthly either but have a partial carry over from the previous month.

    That said there is a potential for abuse for this scheme: unclaiming a controller when the walls fall so as to not lose points. The question is will it be worth it to give up a (for example) RCL 8 room (and the energy cost to upgrade it) that easily?

    Finally a key point for why I lean towards a more complicated 'key structures destroyed' system along with 'driven to rcl 0' rather than anything based on attackController() is because it
    a) often isn't practical to get a short lived claim creep to where it needs to be.
    b) encourages/measures making it as hard to stand a room up again as possible; this is war not a slap fight.

  • I don't understand how this capped at 0 thing would work to avoid abuse. If everyone starts at 0, and no-one can be sent below 0, then no-one can win any points from anyone and we don't have a ranking. Otherwise if you can win points from someone it's possible to abuse it, by finding someone who doesn't care about the ranking, or finding zombies to mess with.

    What about "damage to structures and creeps in controlled rooms" (not self-owned) as a metric? That would directly reward you for attacking other people's rooms, which is what you want to see more of. And it would be simple to track and well correlated with military combat.

  • SUN

    @wtfrank said in Warfare Ranking:

    I don't understand how this capped at 0 thing would work to avoid abuse. If everyone starts at 0, and no-one can be sent below 0,

    As an example: Everyone starts with (assuming killing a rooms is worth at most 1000 points) GCL*500 + 10% of their ranking last month. Done; Players not actively participating are only worth a fraction of their empire (but can't opt out entirely) while those who participate are on the hit list for the others that do participate.

    finding someone who doesn't care about the ranking

    I'm sure they will care about you coming and kicking over their rooms though.

    or finding zombies to mess with.

    You can only kill a zombie once.

    "damage to structures and creeps in controlled rooms"

    does not always correlate damage done to an empire (just energy spent) while RCL damage is directly correlated to wasted potential due to less spawns, less labs and yes, energy spent on that RCL.

    And it would be simple to track and well correlated with military combat.

    Do we want to track throwing stones ineffectually at one another or do we want to track murder? Anybody can throw a few creeps at a room. I want a warfare ranking to measure as close as possible the damage done to another players empire. Not energy, not creeps, not structures empire

    You can't truly hurt an empire by killing a few creeps. You hurt an empire by razing a room to the ground while optionally signing their controller with profanities.

  • You can only kill a zombie once.

    Under @Atavus scheme where points are awarded each level a controller is downgraded you can downgrade a zombie's rooms all the way to 1 every month and let them build it back up. Zombie farming.

    With your scheme of awarding points each month regardless of activity, any zombies that aren't being farmed are getting participation points each month for doing absolutely nothing. Is this desirable?

    Do we want to track throwing stones ineffectually at one another or do we want to track murder? Anybody can throw a few creeps at a room. I want a warfare ranking to measure as close as possible the damage done to another players empire. Not energy, not creeps, not structures empire

    I agree that is what we want to measure - I'm not convinced that controller damage is a good proxy though! Like I said in an earlier post, in the last week, I've wiped out 9 rooms and killed off 2 NCP empires, but I've not once touched their controllers. I would get no points for this, despite having destroyed 2 empires which is literally the maximum possible damage that can be inflicted on those empires.

    On the other hand, if this leaderboard was in place, I would have gone into these rooms, wiped them out apart from 1 spawn in 1 room, took the GCL in each room down to 1, and let each empire rebuild, then come back in a week and done it again. In this instance, I would have failed to wipe out any empires, yet I would have been awarded infinitely more points than in the example where I actually destroyed those empires. Worse, I would have been engaged in some very artificial behaviour, because I was responding to a poor metric.

    Basically, if you measure downgrading activity of a room, then you specifically incentivise downgrading an empire, but not destroying an empire, nor fighting tough opponents, nor fighting active players that put up a defence. Aren't those pretty important parts of military prowess?

    It all comes back to what I've said before - military success is multi-faceted and nebulous. Anything that's easy to measure is poorly correlated with it and either incentivises silly things (such as signing rooms) or worse is vulnerable to farming.

    You could imagine a metric that combines downgrading with structure and creep damage... but then you have to weight structures vs creeps vs downgrading. And it would still lead to people farming structures and/or creeps and/or downgrading.

    Don't get me wrong, I would like there to be a military leaderboard.... but I haven't seen any viable suggestion for a metric that is non-farmable, non-abusable, well-correlated with military success and easy to measure.

    An aside about advancement in screeps

    If you look at the 2 metrics we already have - energy/power - these are the fundamental core advancement mechanics of the game (or will be in the future), and every system of the game is set up to support these. The game is literally about efficiently converting a constant trickle of energy into GCL. On the other hand military prowess is kind of a side-quest - it can support your conversion of a constant trickle of energy into GCL, or it can be a fun diversion, but none of the core advancement mechanics of the game involve military activity. This may mean that it will never be possible to find a good, non-farmable, non-abusable measure of military prowess. Maybe this could change with the advent of strongholds?

  • Thank you everyone for the active contributions to this topic.

    @wtfrank some excellent points. I do believe we don't need to find the perfect metric for warfare in order for this to make sense.

    I also believe the following is actually a significant issue:

    On the other hand military prowess is kind of a side-quest

    Economy is the foundation of the game and a necessary challenge to tackle. However, the economic challenge is "limited" in scope. If the game's sole focus is energy/power you end up with players like Dissi, Hernanduer, Stybbe etc who have "solved" the game and come back to ask for more. They need greater challenges or go inactive. However, the greatest challenge is already in the game warfare, just people are treating it as a "side quest". There's so much untapped potential in the warfare part of the game. People have barely scratched the surface of what you can do.

    I've had some more time to think and I have to say I'm quite excited by the avenue of attackController. Yes, it's not perfect, but it does reflect a core aspect of warfare (the destruction of an enemy room). Here's an adjusted formula I would propose to propose.

    1. When a controller downgrades, the player who "caused" the downgrade receives CONTROLLER_LEVELS[new level] * (owner GCL)
    2. Causality is determined by who did the most controller damage for that level (capture the flag)
    3. The "causality" is reset when the controller downgrades or has its downgrade timer fully reversed
    4. When a controller downgrades, the room owner loses from his warfare rank CONTROLLER_LEVELS[new level] * (owner GCL) capped at 0
    5. Warfare rank should behave like power rank. It accumulates on your account (if you can maintain it) and there's a leaderboard showing who gained the most in the current month.

    A few important effects of these changes:

    1. It's easier to lose rank then gain because you always lose when your controller downgrades, but only gain rank when you have "tagged" the enemy controller with at least 1 attackController
    2. Since the reward scales with GCL there's little to gain from attacking new players and big rewards for managing to take down an old veteran

    This method is far from perfect, but I think it's a simple formula and a good place to start. It's not easy to farm this since you need to take down high RCL, high GCL rooms. More importantly, if someone attempts to farm this, it's highly likely he will receive a mysterious visit to cut his rank down to size.

    As @Pundemonium said, one of the problems is that most of us don't actually use attackController in warfare. Normally, you just consistently wipe the rooms and most of those rooms are out of the range of a claim unit. I'm not sure how much of a problem this would be in practice, but it's something that can be balanced later imho.

    PS: Just to clarify, in the original proposal (as well as this one) the player gaining rank was never meant to be limited by the guy losing rank. That's where points are "generated".

  • I like the idea of using attackController, however it is very easy to farm if one player is willing to take the hit. I can downgrade an RCL 8 room to RCL 1, you can then pop it back up to RCL 7 in a few ticks and I can repeat. There is a lot of individual downgrades that can be farmed out of one RCL 8 room.

    I think maybe our worries of farming are overblown though. It's not like the energy and power ranks don't have the same problems with sub token PTW.

  • Also, be aware that in this mechanic. The player willing to take a hit, would end up with rank 0.

    I'm not sure how many players are willing to sacrifice RCL8 rooms and their warfare rank(if any) for another player.

    And if someone notices that, it's not hard to whack whomever was doing this farming and effectively wipe his rank.

  • @artch there's been a pretty active discussion/debate these past days surrounding the concept of warfare/pvp ranking.

    One thing that I've realized is that it would not be particularly difficult for me to implement the latest proposal in this thread in the screeps engine.

    If it would help in your decision to implement such a thing, I'd be willing to provide a PR which effectively calculates the rank for each player and would be accessible via the API.

    It would be up to you to actually implement any UI representation of this or monthly leaderboards.

    What do you think?

  • @atavus Could try a couple of the mentioned options, and people can vote on which one's results they feel most accurately represented a good warfare ranking. Nothing like watching it in practice after all.

    Algo 1 board vs Algo 2 board type thing

  • The discussion on slack came up with a simple change to prevent farming. It has the other nice effect of encouraging the most bloodthirsty players to attack each other rather than farm noobs.

    When you attack the controller of another player you get some PvP points, but not 1:1. Instead the points are scaled based on the players' relative PvP rank. The scaling function should limit points when attacking down and boost points when attacking up.

    As further protection for noobs the scaling should round down so that high level PvP players get 0 PvP points when attacking a passive player.

    Up for debate is whether PvP points should be zero sum; does getting attacked lower your PvP points? I think this will encourage strong defense instead of just offense. It also futher encourages PvP players to attack their peers rather than players much lower on the leaderboard.

    There a pseudo code example of what I'm describing:

    t = highest pvp points in the world + 1 (updated by a cron if this is expensive to compute).
    a = attacker pvp points
    d = defender pvp points
    n = attackController damage
    a_relative = a/t
    d_relative = d/t
    scale = 1 + (d_relative - a_relative)
    a += floor(n * scale)
    d -= ceil(50% n * scale)
    t = max(t, a, d) // attempt to avoid stale t

  • IMO it doesn't need to zerosum. Warfare is already a large expenditure of resources, if two players are having a fierce battle all month they should both end up with lots of points.

    If players "farm" it by having glorious showdowns with each other then I count it as a win. Weighting it with a bit of GCL and current ranking seems like a good idea but I feel like putting up a good show on defense should reward you too.

  • @Davaned agreed. someone just sending an attack and someone else defending should not affect their scores. we would need to identify a successful attack or defense to adjust the scores. perhaps a surviving defender would get an increase in PvP points, just not as much as a successful attack... also, if it resets monthly, like the other leaderboards, i do not see the issue of 0 sum adjustments like @deft-code's being critical.

  • I still think that a leaderboard similar to what i suggested in this post (https://screeps.com/forum/topic/257/npc-strongholds) would be a decent way of doing a combat related leaderboard.

    If the NPC strongholds get stronger and stronger every time they are defeated until resetting after a certain amount of time undefeated then a leaderboard could track the highest level of stronghold that you have defeated. High enough levels may even require cooperation with other players.

    This would reset (every month?) just like the other leaderboards so that you have to be attacking every month to keep your "battle" ranking high. The NPC strongholds would have to have good enough rewards to make it worth it as well.

    Something like this would not be very "abusable" because it is not quantity based, but difficulty based, and if the difficulty scaled a lot then it would could also give bored players something else to work at or a reason to work together with other players in an attempt to beat them.

  • Also i believe something like this would encourage battle, even if it did not necessarily show how good at combat you are: https://screeps.com/forum/topic/2338/survival-leaderboard-time-w-o-respawn

  • The big problem with attack controller that doesn't seem to have occurred to anybody so far is that you can only attack controllers at a maximum of 500 squares away from your spawn. But you can wipe out a player that is approaching 1500 squares from one of your spawns. This means the ranking is arbitrarily ignoring maybe half (at a guess) of all battles - somewhat problematic! So it's not so much a "warfare ranking" as an "arbitrary subset of warfare ranking".

    In fact it's not ranking warfare at all, it's ranking a side-event almost entirely unrelated to warfare (except that the side-event is spawned after warfare has taken place). There is no guarantee that the person who knocked down 100 million hits worth of ramparts ever gets ranked. Instead, the person who gets ranked is the person who sees that a room has fallen, and sends in claim creeps to attack the controller. This may of course sometimes be the person that knocked down 100m of ramparts, but often it could be any nearby opportunist. In fact the optimal way to play this leaderboard is to observe nearby battles, and only when the work has been done and the controller is safely reachable, send in a few combat troops and claim troops to get enough controller attacks in to win the downgrade. Ideally, the optimal way to rise in the warfare ranking would be by engaging in warfare. Stealing the meat hunted by lion is what jackals do, so this ranking shouldn't be called "warfare ranking", it shouldn't even be called "arbitrary subset of warfare ranking", it should be called "jackal ranking"!

    Any useful "warfare ranking" somehow has to reflect the effort that goes into, or the result of, warfare.