Score Victory (idle theorycrafting)

mycophobia

Chieftain
Joined
Oct 14, 2017
Messages
96
I was watching Sullla's early Civ 7 review and he mentioned that the eras system of that game is a rather clumsy way to solve the snowball problem that's been historically present in Civ, which makes for boring and grindy endgames leading many players to just not finish most of their games. He goes on to say that a better way to solve it is to just have victory conditions that can occur earlier, obtainable by a player who has a big, insurmountable runaway lead.

In Civ 4 terms, Warlords actually introduced this with vassals so you don't have to literally wipe every enemy city off the map to get conquest, and then BtS introduced the AP. Personally I don't like vassals at all as it adds asymmetry between the capabilities of the AI and the human players (the player can't vassal to an AI, because of course, why would they want to, and so, why should the AI want to?), and I'm not sure anybody likes AP victories. You can also just play on smaller maps with less civs too, of course.

But I had the idea of a simple score threshold victory, like first player to reach x score just wins the game. There's actually a mechanism for this in the game already, but it doesn't come into play in standard single player games and might just be for scenarios or something. From what I understand the score scales fairly elegantly with map size and difficulty settings so a flat value threshold should be possible; my thinking is that 4000 points would be a reasonable goal, based on scanning various videos of Civ 4 endgames.

Would that be just as cheesy though? Score is heavily weighted toward population so would the player just cram a bunch of cities together and spam farms forever or something? Would this result in any less tedious of an endgame? What do y'all think?

If you wanna mess around with a score threshold victory you can go to "Assets > Python > CvEventManager.py", find the function definition "def onBeginGameTurn", and on the first available blank line below it paste "CyGame().setTargetScore(4000)". Change 4000 to whatever score threshold you'd want.
 
Another way to lean into the "runaway lead" aspect of such a score victory would be to set a minimum threshold, say, 2000. Then if the score of the player in second place multiplied by 2 exceeds 2000, that becomes the new threshold. So basically if 1st place has a score of 2000 or more and that score is at least double the score of 2nd place, they automatically win. I think this is probably more cheesable than a flat threshold though, and it pretty much removes conquest and probably domination from possible victory conditions as you'd likely trip the score threshold in the process.
 
I'm near the end of a Noble game with this condition active, though I implemented it a pretty good ways into it so I'm not sure if I would've tripped it earlier while I was taking then-second-place Egypt apart. I still have continental neighbors who are way behind so I reckon I could just roll somebody and win...

Here's some code to implement this, for interested readers. You may want to take a copy of "Assets > Python > CvEventManager.py", either from the main game files or whatever mod you're using if applicable, and put it in "Documents > My Games > [civ folder] > CustomAssets > Python". Find the function definition "def onBeginGameTurn" and on the first available blank line insert this on the same indentation level:

Code:
        score_list = [] 
        numPlayers = CyGame().countCivTeamsEverAlive() 
        for i in range(0, numPlayers+1): 
            score_list.append(CyGame().getPlayerScore(i)) 
        score_list.sort(reverse=True) 
        target_score = score_list[1]*2 
        if target_score < 2000: 
            target_score = 2000 
        CyGame().setTargetScore(target_score)

This will make "Score Victory" show up in the Victory screen so you can see what the threshold is from turn to turn.
 
I was watching Sullla's early Civ 7 review and he mentioned that the eras system of that game is a rather clumsy way to solve the snowball problem that's been historically present in Civ, which makes for boring and grindy endgames leading many players to just not finish most of their games. He goes on to say that a better way to solve it is to just have victory conditions that can occur earlier, obtainable by a player who has a big, insurmountable runaway lead.

I think that's a different problem that what Civ 7 was trying to solve. They don't want you to win earlier, but instead they were trying to make the later eras more interesting and less tedious, instead of having an rapidly increasing number of micro decisions (move that unit, improve that tile) that don't really matter as much as the early game decisions (which is in essence the snowball problem). I agree that essentially splitting the game in 3 with a soft reset and different systems is not elegant though.
 
I think that's a different problem that what Civ 7 was trying to solve. They don't want you to win earlier, but instead they were trying to make the later eras more interesting and less tedious, instead of having an rapidly increasing number of micro decisions (move that unit, improve that tile) that don't really matter as much as the early game decisions (which is in essence the snowball problem). I agree that essentially splitting the game in 3 with a soft reset and different systems is not elegant though.
I think those problems are more or less one and the same. An endgame isn't going to be boring and grindy if it's neck-and-neck and you're really having to pay attention to achieving a particular objective instead of rote clicking through to the victory screen. Any meaningless micro in the case of a close Civ 4 endgame can be automated away so you can focus on what you do need to be micro-ing. It's just the cases where you're very clearly going to build a spaceship well before anyone else, or where it's obvious you're going to tear through the 3 remaining civs on the map like wet tissue, that an "okay yeah you definitely won" condition 100 turns before having to do all that would be welcome.

Basically if you're at a point in the game where you're out of meaningful decisions, it's because the win is inevitable or because the loss is inevitable. In the latter case it makes sense to abandon the game but not the former. Like yeah, Civ 7 isn't aiming to allow earlier victories, it wants the player to experience the full scope of the game every game, but that kind of necessitates the game becoming a lot more railroaded and artificial than emergent. The ideal is to have the game recognize when a player has run out of interesting decisions to make because they can basically do anything and still win, and just award the win, and then it's up to the player to move up a difficulty level if they're doing that on a regular basis.
 
Honestly having just completed a UN diplo victory game, that's probably good enough for an early-ish non-military victory. You hit modern era and get most of the scope of the game, and if you're doing good enough then you'll get voted the leader well before you even start putting together a spaceship. Any early score victory condition I can come up with either feels weird or would more or less coincide with UN diplo anyway. Culture victory might could fill this role too but I've done maybe one of those ever.

So enough idle theorycrafting and back to playing and improving my game!
 
Culture is fast in terms of played time, but the end is a bit boring: turn on Free Speech + the culture slider and wait for a few dozen turns with not much to do except optimize great people generation a bit. Culture and Apostolic Palace wins also feel like playing a different game whereas for UN you mostly play the same game until the beeline to Mass Media.
 
Back
Top Bottom