In what feels like The Games Story Of The Year, during the Steam summer sale the much reviled Gearbox title Aliens: Colonial Marines was marked down to a stupidly low three dollars. A modder happened to notice that in the INI file for the game, there is a single typo that is – get this – responsible for many of the awful AI choices that the xenomorphs make in the game… Like running directly at you on their hind legs instead of crawling on the walls and using ducts to surprise you. A once horribly broken game is now… Functioning? Thanks to a single letter? Sure. That’s about at 2018 as a games industry story can get.
This is amazing.
How did the devs not notice the xenomorphs were simply not behaving as they should, especially when players complained about the poor AI. Part of the games selling point was supposed to be the AI, so how did no one at Gearbox say “hang on, something’s not right”?!
More alarmingly is why they didn’t check that settings contain valid values, and warn when they weren’t?
Checking inputs is the most fundamental thing to do as a programmer.
It wasn’t the setting value that had a typo, it was the name of the key in the settings file. I’m sure the game was written to happily use a valid default if no match was made in the settings file.
The “Teather” part of the thing comes after the “=”, which is a settings value. The key is the bit before “=”.
But again, that makes no difference because they’re both in an ini file – an input – and inputs must be checked.
You’re right. I misread the key and the value. And I agree, yes – If the inputted value (especially a string) didn’t match an enum of expected values the game should’ve raised an exception.
Probably, they knew the ai was bad, so QA testers wrote down `ai is broken’,the devs replied, `we know, we’ll need some time to fix it’ (thinking it was a comment on the ai as it was supposed to function), and management decided to publish any ways.
If I remember correctly, the ai was just one of many issues with the game at release, so it is slightly misleading to suggest (as in the title of the news post) that the game’s bad reputation rests on this single typo.
Edited 2018-07-16 04:35 UTC
It is almost as if Sales/Marketing took over. I think the Product Owner + QA are going to have a hard talk though
Because just like the people who buy and play these kinds of games,they are total morons.
personally like to see Rebel Assault on Steam.
https://www.youtube.com/watch?v=Zjeu2SmP_RE&t=1s
Sadly poor QA has been an industry issue for years. EA completely bombed the QA testing on Privateer 2: The Darkening in 1996 and the industry really hasn’t gotten any better since. It’s kind of funny that Blizzard’s entire success can basically be attributed to continuing their QA process beyond initial release with a lot of their games only becoming really playable after multiple iterative patches. This situation is not going to get better any time soon. Congratulations to the modding team for finding the flaw and fixing it. There are some really fantastic modders out there that deserve a lot more credit than they get. Guys like Mario “HCL” Brito and his reverse engineering of the Wing Commander games are outstanding at what they do.
Edited 2018-07-15 22:14 UTC
It’s highly reductive of you to use a single game release from twenty two years ago as an example to support your argument that QA hasn’t improved. I’ve been in the industry (but not in QA) for that same time period. You’re wrong.
Blaming the QA is far fetched. It’s not like they have a choice these days to manually check everything the devs keep pushing and their numbers keep on being cut down by automation process ..
Question remains: why none of the developers saw the error during compile stage and just ignored it.
Whoever is managing the project should have a real talk with them regarding this ..
PS: There are several other “games” and software that have many typos in the code.
ini files aren’t compiled.
How is this a QA issue?
QA’s responsibility would be to ensure that the AI functioned correctly in both Tethered and none Tethered mode (which is clearly did).
The fact it was set-up be be in none Tethered (by a typo, or otherwise) isn’t showing as a QA issue.
If it was supposed to be running Tethered mode, then its still the release manager / set-up teams responsibility. Value that’s changeable in a config file means it a responsibility of someone else to ensure they reflect the designers choice on AI that he wants to run.
Its like saying ‘I’ve just changed the config values for my DNS servers…. my internet doesn’t work, its QA’s fault’.
Not every buck stops at the QA team.