A programmer’s perspective on Civ VI

So I am a software development program manager; that means I don't write code but manage my customers and the overall release process. I am the decision maker on acceptable bugs and issues that enter a release and set priorities. In Scrum terms I am a product manager.

To me many of these issues that have been mentioned could very likely actually be easy fixes; but moved to a lower priority due to deadlines, as many have noted. There will be a code freeze prior to the final release, so if a QA engineer finds a critical bug say a month before the freeze, the dev team will need to shift priorities to address the critical bug. Assume its a game crashing bug, or something that makes it otherwise unplayable. This lowers the priority of the other bugs, and even easy fixes take time, then must go through the entire QA process before they are included in the final build.

Now, lets assume one of the critical bugs was in lets use the AI as an example. If the devs address this bug; which caused them to change the AI logic, to address this critical bug. Now AI is a very sensitive piece of code with a tremendous amount of external dependencies... when the critical fix goes into QA it could produce several new findings such as trading issues, upgrading issues, etc.... Since the critical bug has been addressed, and the team is pushing against the code freeze, fixes won't make it into the build, plus the fix may not be straight forward. As has been said, its really impossible to know if these bugs are symptoms of poor coding practices or the reality of modern software development.

Odds are Fraxis is running an agile dev team, and the focus of agile development is to focus on releases; accept bugs and issues, and fix on the next release. The side effect is we get some wonky things pop up in the game, but for me I am still enjoying the game very much and am really ok with it.
 
So apart from that last sentence you kinda make the OPs point... ;-)
 
While your concerns are valid I do believe it is because the game has been pushed quickly. Now I haven't been looking for news on Civ 6 but the time I heard about it until release was quite short.

I'd say that Fireaxis got a good rep on dealing with issues and its not like they are going to drop their franchise. Especially as it was such a hit this release. Hopefully these are things they will patch rather quickly. I think they have managed the Civ franchise well and are not about to drop the ball.
 
So apart from that last sentence you kinda make the OPs point... ;-)

OP was saying the code is in bad shape, I was saying that the code could be in fine shape. But fixing issues takes time, QA takes time, and there are trade-offs that are made on any release. If you're saying that a high number of dependencies is bad, there is some truth to that... but in a game like CIV its unavoidable.
 
As a father, I like the passion that I'm seeing in this thread, on both sides of this argument. That is an admirable quality.

It's quite refreshing, as a transit rider, to have something like this to read whilst on the bus. It makes the ride much quicker.

However, from my perspective as a Canadian, the animosity is quite alarming. speaking as a Netflix watcher, maybe it's time for some of you to chill.

So, as a home brewer myself and an Ottawa Senators fan and proponent of wearing hats, I'm having fun with he game regardless of some issues, and I really hope you guys are too (speaking as a person who's pretty good mechanically with their hands).

Thanks for listening!
Signed - An avid gardener.


^^^ You win this thread and I wholeheartedly agree with you.

Game is great and the marginal minority of 'expert' programmers who are unhappy should perhaps donate their time to help improve the game or just drop the game and move onto a game they are happy with.
 
I'm a developer too and I don't totally agree with you.

There are bugs, issues, and oddities, but it's a huge game packed with stuff so there are bound to be bugs, issues, and oddities - there usually are in every huge piece of complex software, particularly when you go from a small pool of testers to tons of players/critics pounding the game mercilessly (and on a far wider range of hardware and horrific software configs).

I hardly think there's any conspiracy here where Firaxis decided to load the game with content and features usually parcelled out in $40 xpacs to hide anything. Please.

I do think that in some ways that either their testers weren't that great or that Firaxis (or 2K) simply made a decision to ignore tester feedback and go with some things to see how players reacted. Because I can't believe that none of their testers said anything about the unit cycling and various other issues the community has raised since release (keeping in mind that civ players are some of the most picky and demanding in the universe and that the bulk of things people think are "wrong" with the game are personal preference and have nothing to do with anything actually being broken).

Quill18 (also a developer) has a great post-mortem/review video that also brings up the valid point that at some point, you have to ship your software. You can't sit on it forever and test/fix/fine tune. So reality is that in any huge piece of complex software, it's highly unlikely to be 100% perfect at release.

Despite some things I hope to see fine tuned via patch (and I wish Firaxis was both faster with patching and more interactive with community) I'm enjoying the game a lot. Like I said, experienced civ players tend to have insanely demanding expectations, myself included, so I'm hyper-critical of anything that's not perfect about the game even though overall the game is pretty amazing.
 
OP was saying the code is in bad shape, I was saying that the code could be in fine shape.
How can the code be in fine shape when central mechanics of the game are not functioning or are functioning in a way that doesn't make sense? At the least it is incomplete which makes it - in good shape?

fixing issues takes time, QA takes time, and there are trade-offs that are made on any release. If you're saying that a high number of dependencies is bad, there is some truth to that... but in a game like CIV its unavoidable.
Why is it unavoidable? We are seeing release dates pushed back all the time because the devs think a game needs more work. Firaxis knows Civ VI needs more work and yet they opted to go another way. (Yes, I'm not distinguishing between devs and publisher.) Of course you can be done with a simple "it's just how the buisness works" but what is it that some posters can't stand this bad practise being criticized?!

Game is great and the marginal minority of 'expert' programmers who are unhappy should perhaps donate their time to help improve the game or just drop the game
My little nephew thinks it's great fun to sit in front of the washing machine and watch the clothes go round and round and round, could do that all day. To each their own I suppose... If you're so happy with the game as is I challenge you to prove your love by not updating your copy if and when there's gonna be (a) patch/es. ;)
 
How can the code be in fine shape when central mechanics of the game are not functioning or are functioning in a way that doesn't make sense? At the least it is incomplete which makes it - in good shape?


Why is it unavoidable? We are seeing release dates pushed back all the time because the devs think a game needs more work. Firaxis knows Civ VI needs more work and yet they opted to go another way. (Yes, I'm not distinguishing between devs and publisher.) Of course you can be done with a simple "it's just how the business works" but what is it that some posters can't stand this bad practice being criticized?!


My little nephew thinks it's great fun to sit in front of the washing machine and watch the clothes go round and round and round, could do that all day. To each their own I suppose... If you're so happy with the game as is I challenge you to prove your love by not updating your copy if and when there's gonna be (a) patch/es. ;)

The code could be in fine shape, in some cases, because the issues we are seeing are about balancing configurations more than problems (albeit not in all cases). For example, their is a weight AI will give to gold in terms of importance. If a QA engineer found a month before release that the weight of this was resulting in the AI never buying tiles or expanding their borders, thus limiting growth and resource gain, thus having a huge collection of small cities under-resourced with amenities issues. So devs adjusted that weight, thus causing a reaction in the AI. Lets say the side effect their is now AI doesn't want to upgrade units, because they value gold. The AI lacks the nuance to decide when to upgrade or when to buy a tile, or when to horde. But the adjusting of that nuance may be a trivial code change. The time is spent in the QA. The data they are collecting now is a few orders of magnitude more than they had before, and can lead to more useful reconfigs.... so the code could be in fine shape; if they decoupled it enough, an we still have an unbalanced game.

It is just how the business works, the cost of delay is X and the cost of known bugs is Y; if Y is > X, delay, otherwise release. But removing that argument its literally how agile development is done. The focus is on getting a product out to the customer, receiving feedback, and adjusting. Lots of smaller releases as opposed to a monolithic release at the end. I do client work, not product; so scaling agile for Millions of customers is outside my expertise... however what we're seeing is consistent with agile. And there are several studies that show this method of development leads to shorter dev cycles and greater customer satisfaction.

Bottom line is nobody knows whats going on with the code but fraxis and the devs, but when us scamps get together, we're worse than a sewing circle. I'm just inferring on what could be going on based off my experience, and sharing that here.

Edit: Spelling errors
 
Last edited:
Hold on, so the code is great it's just the game still has no balance (or ai or ui or diplomacy or - want me to go on?) because games are there to make money? You know what, I'm already feeling better about it! Wait...No. And I don't really care if it's called a coding or balancing or design matter. But you say the over-all customer satisfaction is greater because of it? Nope, sorry. Might sound strange to you, but I'm (still) not very satisfied with the game.

Edit:
The data they are collecting now is a few orders of magnitude more than they had before, and can lead to more useful reconfigs.... so the code could be in fine shape; if they decoupled it enough, an we still have an unbalanced game.
"Congratulations! You've just paid $60 and are now a proud owner of Civ VI! Please be aware that makes you an official betatester. But rest assure our code is in excellent shape - you just can't see it yet. And if you still have doubts, think about it: we didn't even do a day 0 patch as we were planning to do, so there you go! See you for the 1st expansion, sucka!"
 
Last edited:
His post was funny but what you said after saying that was just dumb. If you don't want to read complaints you don't have to.

Everyone who is griping at OP and telling him he's ignorant and in one guy's case that no one can ever know anything about a game unless they looked at the source code, in which case they're likely biased that what they spent their time on is not actually that bad, should go off and post in a thread with opinions that they agree with.

That's a statement identical in spirit to what you said, so it makes you a bit of a hypocrite that you haven't already followed what I'm suggesting.
You, uh, disagree with this? Might be worth actually debating the point instead of singling me out in a condescending reductive statement :)
 
Overall satisfaction is better with agile methodology; you're not satisfied with a game that you have as opposed to being not satisfied with missing a deadline.

Overtime, getting good enough software out often leads to better final software- on the aggregate. Obviously there will be some customers on both ends whoa re NOT satisfied with the bugs and on the other end who are completely rosy-eyed and willing to accept everything.

As an aside, it doesn't sound strange to me at all; I'm offering another perspective to shine some light onto why the code was delivered as is. Its not "lazy devs" or "stupid testers" as some have alluded too or outright said. Was just trying to share my inferences based on my observations and experiances.
 
One more thing not mentioned in the thread is the marketing.

Marketing for big games is costly and made based on target date of the product. Missing such date could be huge blunder, especially since it would require additional marketing budget to be aimed at the new date.

This is especially true for AAA games where marketing budges can be as large as development budget.
 
You, uh, disagree with this? Might be worth actually debating the point instead of singling me out in a condescending reductive statement :)

Asking him to debate. You are the one making ad hominem attacks on the legitimacy of OP's perspective. This entire thread has painted you as the unreasonable one who wont accept anything outside of a narrow band as acceptable.
 
One more thing not mentioned in the thread is the marketing.

Marketing for big games is costly and made based on target date of the product. Missing such date could be huge blunder, especially since it would require additional marketing budget to be aimed at the new date.

This is especially true for AAA games where marketing budges can be as large as development budget.

Correct; Fraxis has an good estimate on the true total cost of delays (marketing, canceled sales, reputation damage, etc...), they ALSO have an idea on the cost of releasing the collection on known bugs (cost in terms of lost customers, brand damage, etc...). They presumably have projections/estimates for both. If the cost of delay is greater than cost of release with bugs; then you must release.

Now an argument CAN be made that the data is flawed, but presumably they have quantitative data based on previous projects and industry norms to back up their numbers.
 
Correct; Fraxis has an good estimate on the true total cost of delays (marketing, canceled sales, reputation damage, etc...), they ALSO have an idea on the cost of releasing the collection on known bugs (cost in terms of lost customers, brand damage, etc...). They presumably have projections/estimates for both. If the cost of delay is greater than cost of release with bugs; then you must release.

Now an argument CAN be made that the data is flawed, but presumably they have quantitative data based on previous projects and industry norms to back up their numbers.

So what you are saying is the industry has grown so top heavy it needs another crash like the early 80s? I agree.
 
So what you are saying is the industry has grown so top heavy it needs another crash like the early 80s? I agree.

You can interpret what I said however you like.

But I personally like how Fraxis does development, focus on delivery and get better over time. So long as they are responsive to customer needs (which is historically true) and they address community concerns (current silence not withstanding this has been true historically as well). You can have both good business sense, and quality over time. But again, its how I manage my teams, and I deal with clients and software solutions for business problems -no product for customers, so I am biased.
 
You can interpret what I said however you like.

But I personally like how Fraxis does development, focus on delivery and get better over time. So long as they are responsive to customer needs (which is historically true) and they address community concerns (current silence not withstanding this has been true historically as well). You can have both good business sense, and quality over time. But again, its how I manage my teams, and I deal with clients and software solutions for business problems -no product for customers, so I am biased.

Personally I don't and I am not sure I can support them anymore after the disaster that was Beyond Earth and now this. Their "fixes over time" for BE did not address the majority of the community's complaints in my experience and I do not see them fixing my problems with Civ 6 either because it seems once they make a design choice the community does not like they double down on it and insist that we are not enjoying their game right. I don't expect them to fix the tedium fest that is Religious warfare because they would have to change the AI too much, I don't like the concept that I cannot keep my borders closed to hostile ideologies because the obvious globalist agenda behind the philosophy of this game presuming that it is inevitable even though history shows globalism happens in cycles, not a linear progression towards it given the highly global trade in the bronze age followed by over a millennium of isolationist policies when it was shown to be unsustainable the first time.
 
Asking him to debate. You are the one making ad hominem attacks on the legitimacy of OP's perspective. This entire thread has painted you as the unreasonable one who wont accept anything outside of a narrow band as acceptable.
I made no ad hominem, and I'll recommend the same thing I did to the other poster: Google that particular fallacy.

Criticising their described understanding of software development is not a personal attack. Just as I'm sure you'd defend criticism of the developers and their respective competencies. I'm going to make an assumption here, and assume you wouldn't be here with this particular perspective if the OP were using their programmer's experience to defend Firaxis.
 
I made no ad hominem, and I'll recommend the same thing I did to the other poster: Google that particular fallacy.

Criticising their described understanding of software development is not a personal attack. Just as I'm sure you'd defend criticism of the developers and their respective competencies. I'm going to make an assumption here, and assume you wouldn't be here with this particular perspective if the OP were using their programmer's experience to defend Firaxis.

Actually I am completely sick of Firaxis at this point, most of the triple A industry in general. BE should have taught me to know better but I gave them another chance due to BE being experimental in the first place but IMO they have now screwed the main franchise. Making a game the AI is not smart enough to meaningfully play when that game is primarily single player is the top of my list for that, all of these secondary issues like bugs,crappy build times and the creators political views injected into the game mechanics are just that, secondary annoyances.

And yes, saying his perspective is invalid because you discredit his experience working on software as relevant is ad hominem. In the end as far as I can tell both of you can very realistically be lying 15 year olds, I have no reason so trust YOUR experience as a programmer over his so pointing out that horsehocky is nothing more than a personal attack unless you can prove your credentials are more valid than his.
 
Actually I am completely sick of Firaxis at this point, most of the triple A industry in general. BE should have taught me to know better but I gave them another chance due to BE being experimental in the first place but IMO they have now screwed the main franchise. Making a game the AI is not smart enough to meaningfully play when that game is primarily single player is the top of my list for that, all of these secondary issues like bugs,crappy build times and the creators political views injected into the game mechanics are just that, secondary annoyances.

And yes, saying his perspective is invalid because you discredit his experience working on software as relevant is ad hominem. In the end as far as I can tell both of you can very realistically be lying 15 year olds, I have no reason so trust YOUR experience as a programmer over his so pointing out that **** is nothing more than a personal attack unless you can prove your credentials are more valid than his.
I never asked you to trust my experience.

And no, that is not what an ad hominem is. An ad hominem is a type of fallacy that involves discredit someone's argument based on a personal attack. Criticising their understanding of software is not a personal attack. Calling them stupid would be a personal attack. Telling someone that the sky is unlikely to be green is not a personal attack.

Unrelatedly, it is funny that you complain about the creators' political views, instead preferring your own to be inserted. Your views are not neutral, I think. Nobody's are.
 
Top Bottom