• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.

Fahzzy

Self-Requested Ban
Banned
Jan 21, 2018
1,079
This is one of the funniest things I've read on here! I can't believe what I just read hahahahaha
 

Muffin

Member
Oct 26, 2017
10,338
It's not a line of code, it was a misspelled property in a conf file that the game engine uses. These conf files are normally plain text consisting of key/value pairs, the engine will look for keys and change behavior according to the value associated with the key. If either the key or value is not recognized by the engine, it will most likely ignore it and assume default behavior for that particular entry.
I see. And these config files are usually done with barebones text editors? Boggles the mind that they wouldn't use tools capable of detecting these things to me if such grave errors can result from it.
 
Jul 4, 2018
1,133
nooo

giphy.gif
 

Deleted member 18021

User requested account closure
Banned
Oct 27, 2017
4,000
I imagine they thought it was something more fundamental that was wrong, then they ran into a firm deadline and had to ship.

Still kind of morbidly funny.
 

visvim

Banned
Oct 27, 2017
1,160
I'm really not surprised. I spent almost 6 weeks trying to fix some broken deep learning code because the algorithm kept derping out, and it was only when I was eating cornflakes one morning I noticed a single typo that fucked the entire thing. It's easily missed when you have been staring at it for weeks.
 

Forsaken82

Member
Oct 27, 2017
4,921
But don't they alert the developers and inquire if there might be something seriously wrong with the AI?

Here's the common misconception of game dev in that every bug in a game is missed by QA, and that's not how this works. You are assuming QA didn't bug or raise the issue and 9 out of 10 times that is not the case. It typically falls onto the production staff to decide if the bug was worth the time and effort to fix. My guess is this is purely on the tech side of things in that they didn't know what the problem was and as such decided along wtih production that it wasn't important enough to address.

As crazy as that last line sounds, it happens. human error is a staple of programming.
 

Maledict

Member
Oct 25, 2017
4,072
This isn't unique unfortunately. Civilisation 6 had *numerous* bugs that were exactly the same. Misspellings in the ini files meant the AI didn't know what era it was, didn't realize how to settle cities, and prioritised religion over everything else no matter what. It's a big part of why the Civ 6 AI is so utter garbage,

They haven't fixed all of those bugs yet either.
 

GyrosOfWar

Member
Oct 25, 2017
98
Vienna
So just one line of code screwed the entire IA? what? there arent like more conditions to make the IA work?
This isn't code. Game code would be much harder to edit. This is just a plain-text .ini configuration file. I'm gonna assume someone stressed out and tired mistyped the value in the configuration file and the game didn't properly validate the input. Validation and proper error handling are often the things that you sort of brush over when you're trying to get a project out of the door quickly. This sort of error can happen very easily. This particular bug isn't a sign of incompetence or lack of professionalism on the dev's part, it's most likely stress and lack of testing.
 

Anteo

Member
Oct 25, 2017
4,099
Frankly im not even sure how QA was going to catch that.
I asume the devs probably noticed but never got around finding why their AI was even shittier than usual.
 

DrKelpo

Member
Oct 25, 2017
2,861
Germany
this can't be real... nobody freaking noticed that? nobody at Gearbox said "mhh.. wait a second.. those aliens shouldn't be like that.. something must be wrong, let's check the code"?
 

Exposure

Member
Oct 25, 2017
1,653
I'm really not surprised. I spent almost 6 weeks trying to fix some broken deep learning code because the algorithm kept derping out, and it was only when I was eating cornflakes one morning I noticed a single typo that fucked the entire thing. It's easily missed when you have been staring at it for weeks.
Yeah speaking as someone who made some relatively complicated mods for XCOM 2, it's really easy to get yourself in the sense of that if there's a fuckup, it has to be in some of the major things you just changed, and maybe if you just take a second or third or fortieth look through it, maybe you'll finally find it.

Meanwhile the true culprit of one simple typo in a place you considered simple and shouldn't be relevant is silently laughing all the way.
 

Novel Mike

Member
Oct 25, 2017
2,553
I want to see a comparison video to see really how different it is. If it makes a significant difference its crazy that that they didn't catch the error before the game shipped.
 

Derrick01

Banned
Oct 25, 2017
7,289
Just think, if Randy funneled a few less dollars from this into Borderlands he could have afforded to pay for a QA person to find this.
 

Anton

Community Resettler
Member
Oct 25, 2017
671
The DefaultEngine.ini has another typo on the same line as that one, ClassRemapping=PecanGAme.PecanSeqAct_AttachXenoToTether, where the A is capitalised also causing issues and nobody noticed it
 

TheBaldwin

Member
Feb 25, 2018
8,276
Amazing how literally one letter basically ruined an entire aspect of a game.

Makes me appreciate coders so much more.
 

Metto

One Winged Slayer
Member
Oct 27, 2017
12,107
I know people are focusing on why this was allowed but I find this to be fascinating. I would love seeing the ins and outs of Game Development at a technical level even through the lens of sheer incompetence the fact one tiny mistake can break so much and fix it self with a similarly tiny adjustment is wild.
 

A Grizzly Bear

The Fallen
Oct 27, 2017
2,092
Not what QA does but alright
I would think so too, but I would genuinely like to hear from someone with QA experience in video games. My thinking is that they would have reported broken AI in testing the product and it was up to someone resolving issues to look for the cause. I have never heard of QA going through INI files though. Maybe I'm wrong.
 

GyrosOfWar

Member
Oct 25, 2017
98
Vienna
Yeah speaking as someone who made some relatively complicated mods for XCOM 2, it's really easy to get yourself in the sense of that if there's a fuckup, it has to be in some of the major things you just changed, and maybe if you just take a second or third or fortieth look through it, maybe you'll finally find it.

Meanwhile the true culprit of one simple typo in a place you considered simple and shouldn't be relevant is silently laughing all the way.
Yes, that's definitely a factor too. Usually as a programmer, you have sort of a bias to look at the complicated parts first because those are usually the most error-prone. A mistyped constant, as often as it happens, is often the last place you'll look.
 

Creamium

Member
Oct 25, 2017
9,678
Belgium
That original discovery is also 8 months old btw, those mods posts are from november last year. This was out there for months and never blew up. In that thread there's a newer post about a second typo:

I saw another post about another typo from geoffegg so thought copy paste it here. I believe we are all still missing this second INI fix that needed still.

This typo is in the DefaultEngine.ini, in your Steam\steamapps\common\Aliens Colonial Marines\PecanGame\Config\ directory

Turns out the biggest bug in the game isn't just one letter long Templar, it's one letter wrong too.

I've found out ClassRemapping=PecanGame.PecanSeqAct_AttachXenoToTether also has a typo on the exact same line as the AttachPawnToTeather typo. It says ClassRemapping=PecanGAme with a capital A in Game which could potentially be causing a problem as well. (lower the A to "a" yes)

This exists in the DefaultEngine ini file, which is what serves as a default for the PecanEngine config in My Documents.

Just been testing it out quickly with both typo corrections in the Vanilla ACM and it looks to me like the Xeno Soldier's are definitely wall and ceiling climbing more, only tested No Hope in Hadley's so far.

This typo is in the DefaultEngine.ini, in your Steam\steamapps\common\Aliens Colonial Marines\PecanGame\Config\ directory
 

Gradon

Saw the truth behind the copied door
Member
Oct 25, 2017
7,458
UK
"How did QA not find this???"

They most definitely would have, QA aren't just incompetent monkeys that don't notice cripplingly bad bugs. It's not up to them what gets fixed and what doesn't.

SEGA were the publishers they and the producers would've been aware of its current progress and the issues that surrounded their final build. People consistently prove in these threads they don't know how game Dev works.
 
Oct 25, 2017
12,569
Arizona
so wait

The "teather" file does actually exist though? It's just nothing? Did they like, catch that a non-existent file was being called, make a blank one with that name, and call it a day or something?

I guess the alternative is that someone caught that the file was misspelled, made a new copy with the same name, and then forgot to actually change the references?
 

flyinj

Member
Oct 25, 2017
10,934
Having some kind of debug tool that looked at the .ini would have been helpful.

But the absolutely mind boggling aspect of this is whoever wrote the AI code didn't even once notice that their AI was broken in the build?
 

Dennis8K

Banned
Oct 25, 2017
20,161
I was honestly considering getting the game on Steam right now but......

Aliens: Colonial Marines Collection $29.99

Fuck that. I thought it would be like $5 or something.
 

visvim

Banned
Oct 27, 2017
1,160
As funny as it is, I doubt the game's perception would've changed if the alien AI was a little better.

it absolutely would not, the hideous AI was the least of it's problems.

Fuck, I was one of the poor sods that went media blackout on the game from announcement, and pre-ordered it day 1 without checking reviews.

Needless to say, when I got playing the game I was completely baffled and deflated at what a fucking mess it was, I remember I used it as a beer mat for a good few weeks I was that pissed.
 

Neptonic

Member
Oct 25, 2017
1,895
Tucson, AZ
But don't they alert the developers and inquire if there might be something seriously wrong with the AI?

that's -exactly- what QA should've been doing.

I would think so too, but I would genuinely like to hear from someone with QA experience in video games. My thinking is that they would have reported broken AI in testing the product and it was up to someone resolving issues to look for the cause. I have never heard of QA going through INI files though. Maybe I'm wrong.
All QA does is report technical issues with the game the notice in playtesting, they can't fix them. The devs knew the AI was broken but probably couldn't find the reason.
 

Alienous

Member
Oct 25, 2017
9,597
I wonder if this was a result of the game starting at Gearbox and being outsourced.

Like, maybe there was a lot of code that didn't seem attached to anything, and band-aids were just put on them. 'There's something here about attaching a tether to an enemy...?', 'Maybe it was a weapon Gearbox were working on, but it isn't in this build. Just do what it takes to make it compile'.
 

GyrosOfWar

Member
Oct 25, 2017
98
Vienna
so wait

The "teather" file does actually exist though? It's just nothing? Did they like, catch that a non-existent file was being called, make a blank one with that name, and call it a day or something?

I guess the alternative is that someone caught that the file was misspelled, made a new copy with the same name, and then forgot to actually change the references?
I'm not sure exactly what you mean, but the entries in the INI file don't need to correspond to files. They're just text that the game reads and stores in some sort of key-value data structure. If I had to guess, I'd say that there's a part of the code that decides for each enemy type the type of AI behavior it should use, depending on what it says in the configuration file. If there's no value or an unrecognized value, it'd probably fall-back to the default behavior (which is what happened here).