Feature #1155

Add Prestige to encourage XP reset

Added by Spyhawk over 1 year ago. Updated about 1 month ago.

Status:Feedback% Done:

90%

Priority:Normal
Assignee:-
Category:Mod generic
Target version:2.77
OS: Arch:

Description

With the latest release, we’ve taken several steps to discourage and eventually get rid of XP Save (see Why XP Save is a bad idea in the first place).

  • we’re displaying differential XPs only (XPs earned during current map/campaign), never total XPs;
  • we’ve introduced Skill Rating (#403), to better reflect skill of players and get a similar "loyalty program" given by total XP so players come back to a same server;
  • we’ve tied ranks on Skill Rating, rather than skill levels. Nobody knows if you farm XPs, but everybody knows if you contribute positively to the success of your team.

However, skill levels are still tied to collected XP, so XPSave is still useful to keep skill levels permamently.

For this last missing step, introducing the idea of CoD-style Prestige might just be what we’re looking for:

  • When all skill levels are reached, propose to the player at start of map/connection or end of map to reset XPs to earn "Prestige points"
  • A prestige counter is increased, and stored in DB
  • A third Scoreboard with prestige earned could be easily implemented

See below for some possible implementation details:

```
<aeth> Hopefully I’ll have time in the next month or so to work on a fun mod[...], and when max level you can do a CoD-style reset so you’re never maxed out so you don’t have full skills all the time)

<aeth> CoD-style reset, at least as I’ve seen it in mods for other FPSes (haven’t played CoD in many, many years) means XP save, except you’re encouraged to reset to the start again when you’re at max level. Not sure when/where they did/do this, but it’s called "Prestige" and it’s in the CoD 4: Modern Warfare description on Wikipedia so it started at least back in 2007, if not earlier.
<aeth> So it’s kind of a middle ground between no XP save (starting fresh periodically) and XP save (basically playing maxed out for days 3-900 of playing on the server).
<aeth> It basically always puts you some place in the middle of the skill tree, as I’ve seen it in other mods, e.g. in Garry’s Mod game modes, because when you’re at the max you reset and when you’re at the beginning leveling up is easy.
<aeth> Naturally, you’d also have to rebalance leveling up, too. You’d probably have to get battle sense and light weapons to progress much more slowly than the other skills so you finish them all around the same time instead of sitting at max light weapons and battle sense early. Alternatively, more tiers in those than in the class-specific ones.
<aeth> I’ll have to take a look at the Lua API this weekend or so, but it would ideally (if feasible) work something like this: (1) when you reach maximum level in a skill you no longer gain XP in that skill (to discourage not taking the reset option) and (2) when you reach maximum level in all skills (and this would encourage playing more than just medic) you reset back to 0 XP and increment a number.
<aeth> This number would show up in the status screens (TAB, /scores, end of games, etc.) and would be much, much lower than the ridiculous numbers that players on XP save servers can get (and people wouldn’t always have maxed out skills, unlike with XP save). There would also need to be some minor benefit, maybe e.g. alternate weapon textures or something.
<aeth> Oh, and skill progression would also have to be slowed down so it takes 40-80 hours on that server to increment the number so even triple digits would be very, very rare.
```

Another potential idea to encourage XP reset:
  • Add a big popup in game when prestige point can be earned, after the last level has been reached (done)
  • Add an in-game popup to track partial prestige point, f.e. when a class has reached full rank and/or just before the end of match. (done)
  • Add a "Most prestigious" award (done)
  • Tie ranks to prestige instead of Skill Rating (is that necessary?) (not needed)
  • Display prestige rank in scoreboard, crosshair info, .. (done)
  • Server broadcast when players increase prestige (voluntary reset), maybe debriefing screen notification?
  • Some levels of Prestige points could be used to unlock small, cosmetic features only (new faces, minor skim variation, etc.)
  • Use ribbons to visually display the prestige level (scoreboard, limbo menu where campaign medals usually are, debriefing, ...)
  • See ET-Headquarter mod, where "coins" could be used to get personalized equipment (see videos - while I don’t like the mess that the provided HQ faces and skins allow on server, the underlying idea is great).
Also:
  • Disable prestige feature if XPsave like features (XP save, or custom skill_levels) are enabled. This should give an extra incentive to play the game with its intended balance. (not needed)
  • Link prestige to the dynamic campaign feature (#1252) somehow, for example when all levels are reached in a campaign. (prestige isn’t enabled in campaign for obvious reason, #1252 is the perfect improvement for that game type)
  • add streak tracker, so we know how many time a fully levelled up player without reseting. This might help in ensuring the feature is incentive enough. (done)

Related issues

Related to ET: Legacy Development - Feature #403: Add bayesian skill rating Fixed 23.12.2018
Related to ET: Legacy Development - Feature #1139: Add promotion announcement with Skill Rating Invalid 23.12.2018
Related to ET: Legacy Development - Feature #1252: Add dynamic campaign mode New 18.04.2019
Related to ET: Legacy Development - Task #1376: Add SQL database traps New 24.12.2019

Associated revisions

Revision f67a9c2d
Added by Spyhawk about 1 month ago

mod: added foundation for prestige tracking feature, refs #1155

Add underlying support:
  • additional session var
  • additional scoreboard
  • info window stats
  • end of game stats
  • debriefing screen
  • cmake enabling macro

Revision 2aff1e3b
Added by Spyhawk about 1 month ago

game: added skill points read/write in database, refs #1155

Revision 93296c5a
Added by Spyhawk about 1 month ago

mod: display differential and total XP in stats window, refs #1155

Revision a681337d
Added by Spyhawk about 1 month ago

mod: added prestige point progression popup, refs #1155

Revision e035d24f
Added by Spyhawk about 1 month ago

cgame: added prestige display in debriefing, refs #1155

Revision 69e25cb8
Added by Spyhawk about 1 month ago

mod: added prestige collect button, refs #1155

Revision 7b4c7d65
Added by Spyhawk about 1 month ago

mod: added most prestigious player award, refs #1155

Revision 89246b08
Added by Spyhawk about 1 month ago

game: ignore bots when handling prestige data, refs #1155

Revision c1c0eb9d
Added by Spyhawk about 1 month ago

cgame: added completed skills tracker on limbo panel, refs #1155

Revision 3b05c134
Added by Spyhawk about 1 month ago

mod: made prestige take skill cvars into account, refs #1155

Revision b1e84286
Added by Spyhawk about 1 month ago

mod: added prestige in userinfo, refs #1155

Revision 8f0e07e3
Added by Spyhawk about 1 month ago

cgame: use prestige icon in scoreboard, refs #1155

Revision b8dea36e
Added by Spyhawk about 1 month ago

cgame: added prestige as crosshair info option, refs #1155

Revision 9533ff32
Added by Spyhawk about 1 month ago

ui: added prestige as crosshair info option, refs #1155

Revision 10ada5bf
Added by Spyhawk about 1 month ago

game: added prestige streak counter, refs #1155

Revision 57fd7af9
Added by Spyhawk about 1 month ago

mod: hide gametype dependent stats in info window, debriefing and statsdump, refs #403 #1155

Revision c5bafa46
Added by Spyhawk about 1 month ago

cgame: do not display prestige popups in incompatible gametypes, refs #1155

Revision d6926d59
Added by Spyhawk about 1 month ago

game: fixed prestige button and maxed skills visible after reset, refs #1155

Revision 2ab2ee12
Added by Spyhawk about 1 month ago

game: fixed broken prestige record in database, refs #1155

The previous fix in d6926d59e911a8f968334120b1c26a126d322692
prevented the new value to be correctly recorded.

Revision 07d1843f
Added by Spyhawk about 1 month ago

game: fixed initial declaration not allowed in c99, refs #1155

Revision 8af552e4
Added by Spyhawk about 1 month ago

cgame: display prestige value on limbo panel, refs #1155

Revision 48469161
Added by Spyhawk about 1 month ago

game: fixed scoreboard not sorted by differential XPs, refs #1155

Revision 67ec74dd
Added by Spyhawk about 1 month ago

cgame: display note when collecting prestige points, refs #1155

Revision 034c0dcd
Added by Spyhawk about 1 month ago

game: fixed prestige streak increased in GS_PLAYING on disconnect, refs #1155

Revision 36135382
Added by Spyhawk about 1 month ago

cgame: use multiline for prestige note on debriefing, refs #1155

Revision 04282f2d
Added by Spyhawk about 1 month ago

game: fixed possible uninitialized prestige streak value, refs #1155

Revision 65b3167f
Added by Spyhawk about 1 month ago

game: fixed prestige recorded even with no new skillpoints, refs #1155

Revision 68e7b644
Added by Spyhawk about 1 month ago

game: fixed prestige collection with no XPs on current map, refs #1155

Revision 5fda4156
Added by Spyhawk 24 days ago

cgame: adjusted prestige skill tracker opacity on limbo panel, refs #1155

Revision a3a83da7
Added by Spyhawk 23 days ago

cgame: fixed collection note not displayed for self only, refs #1155

Revision 5819ed2a
Added by Spyhawk 23 days ago

mod: fixed stats reset when collecting prestige point, refs #1155

Revision 569a0e0a
Added by Spyhawk 20 days ago

cgame: hide prestige value on limbo panel for shoutcaster, refs #1155 #1292

Revision 1300ff44
Added by Spyhawk 20 days ago

cgame: fixed crosshair info display of disguised covops, refs #1155

Revision b3e6cef0
Added by Spyhawk 9 days ago

cgame: minor prestige popup cleanup, refs #1155

Revision 7d80f472
Added by Spyhawk 8 days ago

cgame: added prestige popups filter, refs #1155 #805

History

#1 Updated by Spyhawk over 1 year ago

#2 Updated by Spyhawk over 1 year ago

  • Related to Feature #1139: Add promotion announcement with Skill Rating added

#3 Updated by Spyhawk over 1 year ago

  • Description updated (diff)

#4 Updated by Spyhawk over 1 year ago

  • Description updated (diff)

#5 Updated by Spyhawk about 1 year ago

  • Target version changed from 2.78 to 2.77

#6 Updated by Spyhawk about 1 year ago

  • Target version changed from 2.77 to 2.78

#7 Updated by Spyhawk 12 months ago

  • Description updated (diff)

#8 Updated by Spyhawk 12 months ago

  • Description updated (diff)

#9 Updated by Spyhawk 12 months ago

  • Description updated (diff)

#10 Updated by Spyhawk 11 months ago

  • Description updated (diff)

#11 Updated by Spyhawk 5 months ago

  • Target version changed from 2.78 to 2.77

#12 Updated by Spyhawk 4 months ago

#13 Updated by Spyhawk 4 months ago

  • Description updated (diff)

#14 Updated by Spyhawk 4 months ago

  • Description updated (diff)

#15 Updated by Spyhawk 3 months ago

  • Related to Task #1376: Add SQL database traps added

#16 Updated by Spyhawk 3 months ago

  • Description updated (diff)

#17 Updated by Spyhawk 2 months ago

  • Description updated (diff)
  • % Done changed from 0 to 20

#18 Updated by Spyhawk 2 months ago

  • Description updated (diff)

#19 Updated by Spyhawk about 1 month ago

  • Description updated (diff)
  • % Done changed from 20 to 70

#20 Updated by Spyhawk about 1 month ago

  • Description updated (diff)
  • % Done changed from 70 to 90

#21 Updated by Spyhawk about 1 month ago

  • Status changed from New to Feedback

Also available in: Atom PDF