Civ V's downfall: differences between programming and designing

I have to say that while I don't like Civ5 at all, I disagree with most of what you said. But most importantly this:
The switch to hexes did not increase the complexity of the game from a programming perspective at all. As was discussed elsewhere, hexes are actually easier to implement than squares and result in much easier algorithms, since distance calculations are straightforward compared to squares.

Disagree.

I'll agree that creating a hex map is not all that difficult. Heck, SSI was doing hex games back in the mid 80s.

But in the context of Civ, it was a huge problem.

Civ is an empire building game, and is a very complex one to boot. There are an insane number of variables in terms a Civ game. Because of the huge scope, the best option is to reuse as much code as possible. The map format is a very fundamental design decision, so moving from squares to hex required a major overhaul. Unlike Civ III to Civ IV, I imagine they pretty much had to do huge rewrites in every branch of code. I'm gonna take a wild guess and say a lot of the original programmers were probably not around to explain the decisions they made before.

1UPT meant a major rewrite in terms of A.I. workers, pathfinding and combat. It's probably why they made tile building decisions simpler (lower emphasis on bonus resources, rivers, roads, etc.) than Civ IV.

As Sulla outlined in his 1.1 review, every single backtrack from Civ IV is a sign that they had trouble with the rewrite.
 
Well that's debatable,
True.

before Civ 5 all the AI had to do was stack all the units in one gigantic SOD and attack smaller SOD's. Now it has to evaluate each option, has to plan ahead,
Why does it have to do that? That's why I was specifically referring to Civ5 on release, where the unit movement was really exactly that - a bunch of units charging the enemy without much strategic consideration.

now it can't move all units at once and most definitely cannot spam units like it used to.
But that's exactly what the AI does, even with later patches (so I've heard - I must admit I didn't play the latest patch as I consider Civ5 beyond repair.

Before Civ 5 it didn't really matter how you would move artillery or bows, you'd just stack them in one gigantic tile with everything else (and archers were defensive units, not offensive units).
Agreed, one of the things I (and many others) hoped to be improved, but ultimately this implementation of 1UPT is even worse imo.


Disagree.

I'll agree that creating a hex map is not all that difficult. Heck, SSI was doing hex games back in the mid 80s.

But in the context of Civ, it was a huge problem.

Civ is an empire building game, and is a very complex one to boot. There are an insane number of variables in terms a Civ game.
Yeah, but the thing is: With squares, algorithms like distance calculations, etc. are rather complex - with hexes it is easy. So while they couldn't reuse the code 1:1 (which they probably didn't want to anyway), it is actually easier than before. And the fact that a large portion of the waiting time between turns is for path calculations just proves that 1UPT is not implemented efficiently.
 
Now, now, the AI can be fixed, it just need to consider better it's moves when attacking. For example now when to retreat units, what units to be afraid of, to know which units are very vulnerable, to recognize weak spots, to anticipate the next likely move from the next player and to attempt actual strategies (ruses or attacking from different flanks).

Oh and get this, it has to learn to do all that and still be fun.. that's right, it has to be considerably smart, strong and merciless... yet stupid enough so you can win (odd, but the game must be fun and you can't give the player the idea that the AI is cheating either).

When you compare computers to humans, and the way we process information, computers surpass humans at doing one task really really well, whereas humans are exceptionally good at spotting patterns and dealing with multiple smaller tasks at the same time (and comming up with a creative solution when posible).

eg: google can be exceptional at finding a given picture if you imput all the necesary data, however only people can spot that picture from an image gallery. People are great at voice recognition... with computers you are shouting AGENT! AGENT! like a madman after 10 seconds.
 
Now, now, the AI can be fixed, it just need to consider better it's moves when attacking. For example now when to retreat units, what units to be afraid of, to know which units are very vulnerable, to recognize weak spots, to anticipate the next likely move from the next player and to attempt actual strategies (ruses or attacking from different flanks).

Oh and get this, it has to learn to do all that and still be fun.. that's right, it has to be considerably smart, strong and merciless... yet stupid enough so you can win (odd, but the game must be fun and you can't give the player the idea that the AI is cheating either).

When you compare computers to humans, and the way we process information, computers surpass humans at doing one task really really well, whereas humans are exceptionally good at spotting patterns and dealing with multiple smaller tasks at the same time (and comming up with a creative solution when posible).

eg: google can be exceptional at finding a given picture if you imput all the necesary data, however only people can spot that picture from an image gallery. People are great at voice recognition... with computers you are shouting AGENT! AGENT! like a madman after 10 seconds.

That's the problem. Things that look obvious to human, like keeping archer units behind melee, may be extremely difficult to program on a computer. Chess programs seem intelligent but they are really quite simple and "stupid". They just use enormous calculating capacities of a computer to find a good move from all possible moves. Civ5 combat is mathematically much more complex than chess, so this approach is much harder to implement. It should be possible to make it at least a bit smarter than it's now though. Once the SDK is released, it will be interesting to see how the current crappy combat-AI was implemented.
 
It is true however that the current system is pretty crappy. All the programmers had to do was to decieve players with a fantasy that the AI was decent enough (pretty much what all videogames do). That was not implemented very well, the AI seems to lack initiative or sense in the things it does. The AI sometimes just feel like it has learning disability.
 
some time a person can boil a problem down to a very specific concept that has a great bearing on the over all issue..

this thread is not one of those times.
 
Top Bottom