Are Complex Games Doomed To Have Buggy Releases?
An anonymous reader points out a recent article at Gamesradar discussing the frequency of major bugs and technical issues in freshly-released video games. While such issues are often fixed with updates, questions remain about the legality and ethics of rushing a game to launch. Quoting:
"As angry as you may be about getting a buggy title, would you want the law to get involved? Meglena Kuneva, EU Consumer Affairs Commissioner, is putting forward legislation that would legally oblige digital game distributors to give refunds for games, putting games in the same category in consumer law as household appliances. ... This call to arms has been praised by tech expert Andy Tanenbaum, author of books like Operating Systems: Design and Implementation. 'I think the idea that commercial software be judged by the same standards as other commercial products is not so crazy,' he says. 'Cars, TVs, and telephones are all expected to work, and they are full of software. Why not standalone software? I think such legislation would put software makers under pressure to first make sure their software works, then worry about more bells and whistles.'"
What exactly is the downside to forcing a company to give refunds for the broken merchandise that it sells?
"His name was James Damore."
A. Yes.
"Cars, TVs, and telephones are all expected to work, and they are full of software. Why not standalone software?"
What's the definition of work anyways? Most products sold nowadays suck. I just got rid of a laundry machine that was 40 years old. I'll be lucky if the new one lasts 1/4th as long. I bought a LCD monitor that worked until the 1 year warranty was up. My cellphone functions, but its software is crummy and buggy. It even freezes up sometimes. (No, it isn't a smartphone.)
Software is more like writing a book. Some books are written with superior quality "code." The "computer" reads that code, and depending on how well that code was written, the "computer" can read it more quickly and determine the proper function faster. (In this case, correctly interpreting the knowledge inside the book.) Some books are total shit. For example, just about every book that's used in education. Especially ones written by professors. They don't "work."
I do have one sentiment. I absolutely think that games should be returnable. But that's from an idealistic standpoint. I fully understand many, many people are going to play the game all the way through then return it to Wally World.
AST:
'I think the idea that commercial software be judged by the same standards as other commercial products is not so crazy,' he says. 'Cars, TVs, and telephones are all expected to work, and they are full of software. Why not standalone software? I think such legislation would put software makers under pressure to first make sure their software works, then worry about more bells and whistles.'"
Next he will be claiming that it is safer to use a properly modular operating system.
http://michaelsmith.id.au
I bought Mass Effect only to find out that the game simply does not run. My computer is as close to flawless as it could possibly get, it's been running for years and has successfully played many games with many different engines, I have done workarounds for crashes and bugs and all sorts of things, it's a tried and true PC.
This is the first game that just does not run, at all, it starts, crashes or gives a blue screen and that's that. Sometimes it even attempts to break my video card and causes after-effects until a couple more restarts, basically it acts as bad as a virus. I paid $50 for this crap.
There are many, many companies that do not have these problems. They create good engines, good software that works. They test it thoroughly and deliver a working product. And while some issues do persist, I've never seen a game that simply blue screens while trying to start.
There has to be a clear line between selling software that might include a few scripting bugs, maybe a crash every 5 hours if you're unlucky, or problems that come from user error and badly setup PCs and games like Mass Effect which either work or don't, flip a coin and hope for the best.
Damn right I would want the law involved, this is a defective title but I can't do anything about it except trying it on some future computer and hoping that ME finds it satisfactory for whatever reason.
"we've got trenchcoats and bad attitudes" - John Constantine, HellBlazer
If this includes Beta releases, then that effectively means that the software company would have to much more testing in-house and ramp up the prices of the finished product to compensate.
If it doesn't include Beta releases, then everything everyone makes will be labeled a Beta until kingdom come.
Seems like a pretty difficult law to write. Perhaps limit how long a Beta test can last?
This signature serves no purpose other than to help you see which posts were made by me.
I think the vendors that constantly have buggy initial releases are the same consistently.
EA? I expect a buggy release or a release that doesn't run well or at all.
Blizzard? Mostly ships pretty functional games or expansions these days. Blizzard has enough money and enough of a following that they don't have to shove software out before it's ready. Their recent betas seem to have fewer bugs than other studios' releases.
Help I'm a rock.
When I buy a car I expect that parts will continue to be made for it for years to come, shouldn't software be supported for 15-20 years as a NORMAL business practice?
Que the mathmaticians to state that there in fact exists a set of perfect nonuniform complex ___
Laws that would force software producers to run proper QA testing is a stupid idea. If you deal with software, you learn after a while that "working software" is a sliding scale. It is unrealistic to expect any modern software to be completely bug free, similar to how you had to accept a small number of dead pixels on cheap LCD screens. On the other hand, many modern phones are released with OS:es that crash during calls (*cough* iphone *cough*) which I think is totally unacceptable.
Football Odds
Isn't there a bit of a difference there between the examples (TVs, DVD players, etc) and PC software? Everything else is a self-contained unit with no dependencies on anything else or (in the case of DVD players) accepts things that are within tight tollerances (and if your disk isn't, then it'll skip, but that's the disk's fault).
Software, on the other hand, has no control over the environment that it is put in (unless it is an OS X app, which is somewhat consistent), with huge permutations of other software, hardware components, and dodgy background processes, plus user fiddling. It isn't quite as easy to get things flawless in that situation (although some companies can improve on what they do now).
Also, how will this relate to OSS? Will I never release a final version of my app because I can't afford the liability and so it'll always be in beta because there could be bugs left?
It's not just games: most consumer electronics nowadays are a mix of software and hardware and often enough it's the software part that is released unfinished (read: buggy).
Software on non-life-critical applications has been given a free ride for two long - if it's not acceptable that a DVD player refuses to start at odd moments or randomly stops working, why would the same be acceptable in a computer game (which is just another for of entertainment) or an OS?
As somebody working in IT, who has worked in the industry in both IT Services and IT Products, I've seen again and again the main behaviours that lead to buggy software releases:
a) No real software development process resulting in unpredictability with regards to the real finish date.
b) Bad requirements definitions, stuffed with incomplete, inconsistent and unclear "desires", with way too much time wasted in "would be nice" requirements leading to last minute requirements changes as people discover the missing/bad bits.
c) Little or no real testing, mostly done by amateurs (or worse, developers).
d) Hard deadlines set by sales and marketing which, coupled with the points above, results in releases of unfinished products.
The reason why this happen is very simple: companies can get away with this, so management (from top to bottom) can get away with being disorganized, unstructured, "shoot-from-the-hip" cowboy-like, non-proactive and outright incompetent.
(yes, I AM sour about this)
Funny enough, buyers of software products and services are so used to be royally done by the industry that some of the worst offenders in this space are actually the larger IT companies, not the smaller ones: in a playing field were buyers expected and valued quality in software, the higher-quality companies would outcompete and outgrow the low-quality ones, and yet what we see is the opposite.
First of all, software consumers are in most cases (not all I admit) much savvier about their purchases than your average consumer headed down to the box store to buy a new toaster. There is a plethora of information available about the quality of software releases, including software reviews online and in print and support forums that often give the pulse of a broad range of user's experiences. I for one do not rush out and buy the first release of any new program or video game on release day, with the exception of some publishers of PC software that have shown to have a good track record of making timely updates when bugs are discovered in their software. I think that some sort of regulation as discussed here will limit the number of deep, creative games in the market because people will spend so much time on QA out of fear of a government backlash. We will end up with a large number of high quality, yet boring and unintuitive programs.
When we talk about things like TV's, and phone's... We notice if it "works" or "doesn't work"... With games, even non-digital the line gets blurred... Things begin to either "Be really fun" or "suck". Not to mention the fact that many games (I'll cite the classic Pokemon red&blue's MissingNo. glitch, yeah you know what I'm talking about... this is /.) are sought after for these defects, defects can, and have become "bells and whistles"... So it further becomes blurred what is a feature, and what is a careless mistake... Modern Video games aren't your everyday dishwasher- they don't leak(Not positive if you guys have your rigs watercooled though), and unlike pokemon episodes, they (normally) warn you before the seizure starts... So to /. and to all, what is a "broken game" (Definitions, and then examples, rather than the reverse preferably.) Also, what of the twelve year olds on xbox live that can't seem to kill you, because you're a "hacker" and they're going to tell their mommy about how you ruined Halo3 for them, wont issues like this come up?
Feel free to mod me down, just know that unlike some Anonymous Cowards I'm not afraid to express my views as myself.
You spend more on pizza than you do software, so what is your ocmplaint? Do you get support for your pizza?
Comment removed based on user account deletion
Have a two tier system - beta and release. Clearly the release version would come out a lot later (if at all) and have limited functionality, but heck - you could sue if it freezes mid level.
1- First difference between software that turns on my PC, and software in my dishwasher: in one case, the manufacturer controls everything, in another, the software runs in an unknown, possibly weird/tricky/otherwise buggy platform. Unless you're Apple, and Apple definitely should offer the same warranty as dishwashers.
2- Second difference: if my dishwasher's software craps out, my whole dishwasher craps out. If my PC software is broken, only that specific piece (hopefully) won't work. So whatever warranty should apply in one case to the whole shebang, in the other case, only to the specific software ? Or not, because if i bought my PC for a specific task and it won't do it, I need to get rid of it all ?
3- That said, I'm in favor of doing something, anything, to improve OS/Apps quality. The industry is not self-regulating. Reviewers are not doing the job. Right now the best you can do as a consumer is to buy a complete, packaged pc+os+apps, and return it to the manufacturer if it won't work. You can rarely do that, though, because you've got to get stuff from different suppliers. My Motorola phone never synched with XP. My new WinMob phone crashes daily, usually when synching with 7, too. Ubuntu never worked for me (didn't cost me much, though ^^)
The Cloud - because you don't care if your apps and data are up in the air.
I didn't read TA because my instant reaction is that it doesn't matter if a first release is buggy. The problem is that software houses release a game and put all their effort into the new game, which is logical, but often neglect the last game too much.
So Andy Tanenbaum is now a mere "tech expert"? That's a big step down from "CS god."
For the uninformed, ast wrote a kinda good book on operating systems called "Operating Systems: Design and Implementation." I believe this one guy from Finland wrote an OS called Linux based on another OS called Minix discussed in that book (and even got into the flamefest of the century with the Finnish guy!). And then there's a bunch of other stuff you may or may not know about, such as the Amoeba distributed OS, a free anonymous p2p network called Turtle, and probably a few other knick-knacks along the way.
Seriously, give the Man due credit.
Cue.
Prove it!
-- Kurt Godel
Mr Tanenbaum, as I have told you in an email, modern CPUs lack any hardware support for modules within a process! that's a major flaw that does not allow for proper isolation of modules within a process.
You said that "it will be a hard sell to hardware manufacturers" when I proposed you to promote this idea. But it's so easy to make! the hardware extensions required for modules within a process are minimal - mostly extensions to page tables; existing software needs not be modified!
Of course, this is not a panacea, but it is certainly a step in the right direction...
Cue quantum physicists to state that in fact this does not exist anywhere but in the theoretical constructs of pure mathematics.
I hate printers.
Have any of you played Guitar Hero 3 for the Wii?
It's a fairly simple game, right? You have an .mp3 file, and paired with it you have a file containing a list of tuples (time, subset of buttons {1,2,3,4,5}), then you "play back" those two files simultaneously and see if the users strums while holding down the correct subsets within some well-defined window of time.
You can put the game in a "broken" state (requiring you to back out to the main menu); I don't recall exactly how, but I think it's when you, from practice mode, change the practice speed, you get dumped back to a dysfunctional practice mode screen.
If you tell the game your monitor (TV) has a certain delay, when you practice at less than 1x regular speed, apparently the game thinks it should not just scale the time differences in the list-of-subsets file but also that your monitor takes longer time to show pictures. Morons.
And the menu structure is big, menu items are inconsistently named, and the structure itself is poorly aligned with what people want to do. Bad usability. Example: I want to give up on a song, so I choose quit; "Do you really want to quit; unsaved progress will be lost?" (wtf, there's no way to actually save progress...). Well, "Yes I want to quit". "Ok, where do you want to quit to? Main menu, song list, or retry this song?" What??? If I wanted to retry the song, I would have selected the "retry song" menu item. The only reason having a choice here is good is because it takes so unbearably long to navigate from the song list to the main menu.
And couldn't they have added an option to compensate for broken TVs which not only have picture lag, but have slightly desynchronized audio and picture? Would that really have been too hard? (Well, apparently...)
For such a brilliantly designed game play, the implementation (and the design of the things that go around the game play) is unbelievably crappy. I'm seriously doubting whether they tested it.
(And what was that thing about shipping discs with mono audio?)
Seriously, avoid GH3/Wii. If you must show off by completing (or FC'ing) TTFAF on expert, do it some other platform. It's for your own good.
That legislation would also pressure software makers to create stringent DRM schemes which make sure no one buys an app, installs it and returns it to the shop to get a refund, thus lowering the quality of software. Maybe there's more consequences than the eye can see in this proposal... I would give different ideas, but most of them have nasty implications:
The only way is, in my POV, for the buyers to get information about the software release beforehand. The government can't help here without creating more hassles than solutions.
It's a total shame that, in this day and age, and after millions of hours spent by academics on programming languages, to use a language like C or C++ for games or desktop apps that require performance.
Yes, I know, I have told this many times on /., and the standard answer is "it's the programmer, stupid". Well, it may be so, but writing bug free software requires god programmers. If there were better system programming languages, programmers would not need to be gods.
Is Windows "doomed" to have buggy releases?
Is Ubuntu or any other Linux distro doomed to have buggy releases?
Inasmuch as Windows, at least, has ALWAYS had buggy releases, I guess that means the answer to the question in the title is "Yes, Virginia."
But seriously, since when has any of the above been considered truly mission critical, in the sense that it MUST work exactly as expected from its very first execution in the field? I think somebody has some pretty high expectations for consumer software here, if he's trying to apply the same process requirements that NASA or the DoD would demand.
They're GAMES. Good grief.
if it's not acceptable that a DVD player refuses to start at odd moments or randomly stops working, why would the same be acceptable in [...] an OS?
How do you define "Fitness for its purpose" when the purpose is defined differently by each individual user? That's both the power and challenge of software: it can do anything. General-purpose OSes are meant to let you do anything.
They're also big enough (i.e. consisting of a large number of interacting components) that if you want to define exactly what users can and can't expect (and can/can't do), you'll end up with either an insanely long list, or overly broad items on that list.
Either "No warranty unless file C:\etc\blah matches this context-sensitive grammar" (repeat 1e6 times over for different files) or "No warranty if the user tinkers with C:\Windows".
Also, what if you get hit by malware which does something that would void the warranty if you did it yourself, and then the malware deletes itself?
Defining Acceptable User Behaviour and Acceptable Software Behaviour is going to be arduous. What would be gained?
Would people refund Windows and replace it with... a different-but-just-as-broken OS? A different-and-less-broken-but-still-broken OS? Or an OS that doesn't do anything? It's not like there are per-unit software manufacturing defects...
If this happens, then there are two options (that I can see at least) 1. Microsoft will go broke refunding a LOT of users 2. The next release of windows 8 will be delayed to 2025+
As long as they have a cumulative patch that you can run and update the original game distribution who cares?
The quality of the code is a function of its cost, too.
For example, the code written for NASA hardware (i.e.: space shuttles), have more documentation than the size of the hardware itself (so, we're looking at a large pile of documents next to the shuttle). It's tested for years, it only works on tested CPUs (i.e.: 20 years old proven 8086s), and the actual "waterfall" method (which is generally a disaster for any other project) is properly applied.
That total brings the cost of each source code line to average $1000. (Same for medical appliances, etc).
The cost of a commercial off the shelf software is much (much much) less than $100.
But, even under such strict control, we had to debug the Mars rovers due to unforeseen bugs during their initial flight.
Anybody here on Slashdot can do the math, and fill in the gaps to calculate the future price of games (for a reference they are $60/unit now).
What exactly is the downside to forcing a company to give refunds for the broken merchandise that it sells?
Well, the industry would say piracy. I might buy Call of Duty, then, said it was "broken", and returned it. Granted, this should be the norm, but the industry would see things differently. This is why the shareware model is nice. You can see if the game actually works before you pay for it.
This is my sig.
No company is perfect, but there is always one company that ends up the flag bearer for PC game releases. Last decade, it was Origin. These days, I'd say the company that has the best processes for getting games to the PC would be Blizzard.
I don't intend this to sound fanboish, but they have had some very smooth release cycles in recent memory. Last year's release of WoTLK for example.
You failed. Blizzard hasn't shipped a game in 5 years. Expansions for WoW, yes. Games, no.
What we're looking at here is offshoring a lot of highly specialized work to essentially shops in the third world that have not the same level of expertise, and we get crap at a cheaper price. We compete in the west not by improving the quality, but, by making things cheaper themselves. So, we have less testing, less documentation, just code and ship and little for iterative development. Plus, we have more corporate style methodologies that reward the schedule more than the product. Pretty much, if you build stuff stupid, you get stupid stuff.
Maybe there will be a shakeout where we realize that consumer IT is much more demanding than corporate IT is, and that methodologies that work fine for corporate clients, like Agile / SCRUM, or Waterfall, don't really apply so much to consumer products. A consumer product is done when it is done.
This is my sig.
Especially with PC games, far too often a "buggy game" is not working right because of the user's system.
I'm not defending clear cases - bugs in game logic, incompatibilities with common hardware etc. I'm talking of problems due to OS bugs with specific (rare) configurations, buggy old drivers, conflicts with configurations that do not have OS updates installed, pirated OS installs, malware mucking things up... stuff that falls to either the manufacturer of the OS or the administrator of the computer.
Realistically speaking, users can't be expected to figure out why exactly something breaks, but if application/game developers have to take refunds or help fix issues that are absolutely not their fault, things could get ugly and fast.
I'm talking from experience, working in the "front lines" - 80-90% of the issues that users complain about (a PC game) are not caused by the game code. A small portion of those could perhaps be worked around in game code (built-in driver version checks etc. that spell out to the stupid that yes, this won't run on six month old buggy driver) but most of the cases are just failure-to-administer-your-computer type issues. If every single one of these would entitle the user to a refund, it would effectively mean that anyone could get a refund on an piece of software for any reason - it is exceedingly simple to just feign ignorance and state that "doesn't work on my PC".
Let me see if I can translate your post:
"C and C++ are the root of all EVIL! Bad programmers are not stupid or incompetent, it's just impossible to write good software, especially when using (EVIL!) languages like C and C++. Software companies have never hired incompentent programmers because they are cheap; all programmers everywhere are as good as they can ever be. There has never, ever, (EVAH!) been a piece of software which is bug free, or at least close to it. Bug free software is impossible. And finally, the spectrum of competence of software developers is binary: there is braindead stupid vs. god-like omnipotence; just as the spectrum of software quality: there is crappy buggy software vs. impossibly unatainable perfection."
Sounds about right?
-dZ.
Carol vs. Ghost
You comment on software all the way through, and then talk only about games when you mention returns. Similarly, the summary has Tenenbaum talking about software but Kuneva talking only about games. What makes games special? Why should they be held to a higher standard than drivers, IDEs, spreadsheets, etc?
I don't know what is the truth, but heres my humble opinion:
Any program, except the most simple one, has bugs. The ones that haven proven matematically that have zero bugs, are both the judge and the plaintiff.
On commercial software, the target is to solve problems quick. A quick and cheaper solution now, is better than the theorical perfect solution that can come in 4 years, but not so, because it never delivered, and is unusable anyway.
In mathemathics and science.. it may make sense to create stuff that is proven perfect, but not on something commercial.
Now games:
Games use to be CMMI1. People doing "heroic actions" to finnish in time and in budget. Is getting better, and It will get better and better. Planification is better than heroism in software crafting. Probably crafting games need some room for improvisation, so probably is a industry where total planification is suboptimal, but It will move there, because will be cheaper and more convenient for everyone.
imho.
-Woof woof woof!
No. Half-assed, rushed-to-release games are doomed to have buggy releases, regardless of complexity.
And now that all the damn consoles have net access and non-volatile secondary storage, it's not unreasonable to expect that they'd find some way to fuck up Tetris at launch.
I remember reading an article by a company which developed a racing game for XBox360 (i don't remember the company, nor the title of the game). They said that Microsoft pressured them to release the game 6 weeks early and finish it later via patches
The best programmers can make mistakes, shure, but when you start deliberately selling betas and turning them into final versions later, just so you can cash up earlier, at the expense of the customers satisfaction, that goes too far, imho.
The MAFIAA is a bunch of mindless jerks who will be the first up against the wall when the revolution comes
And I speak as someone who makes games as a hobby. The poor indie developer who is always cited as being pushed out of the market by legislation.
But frankly, it's the big companies that make the profits from this non-existing consumer protection. It's more than high time to change that. I want to buy software and be sure that it works. Sure, it still may not be a great game. And it would be overkill to not allow for some bugs. But there've been several cases of games shipping that couldn't even run without a patch. It's ridiculous and high time that a minimum of consumer protection is established.
Assorted stuff I do sometimes: Lemuria.org
Take personal responsibility for not properly researching the title before you go blindly throw money at it. If a game has bugs you'll know about it within the first 6 hours thanks to the internet and the ridiculous amount of people who have to buy a game the minute it comes out. Now you know, "Hey that game has problems. Maybe I should wait until they release a patch before I waste my money on it."
Here's is a simple solution that works for everybody reading this.
but I'm a moron
Of course I would mistype the url to my physics teacher books.
Here is the page with the pdf files and .tex files (all in Portuguese, so they may not be very useful for the average slashdotter).
Okay seriously I've just run out of pointless things to say.
There is a clear correlation between game vastness/complexity and bugginess. As an old-time player of CRPG's, I have seen that almost in every occasion where someone released a CRPG of epic proportions, or otherwise groundbreaking, the game was much buggier than average (at least in its first version). Examples: Ultima VII, Ultima Underworld, Daggerfall, Fallout 1. More into the 4x genre, Master of Magic was also complex and groundbreaking and buggy as hell. All of these are cult games and widely considered not only among the best in their genre, but among the most complex, vast and nonlinear. The likes of Final Fantasy or Zelda, which are also cult games but much simpler and more linear in their design, didn't have many issues with bugginess as far as I can remember.
All software has bugs. It's just a matter of how serious they are. The Showstoppers. The question shouldn't be Will there be bug-free software, but whether or not developers can reduce the severity of bugs to a tolerable level. And most game companies think they've done that--until they're caught with their pants down.
* The internet has allowed game companies to use (and even expect) the public to do the debug/beta testing work that they used to pay for and what used to push out release times.
* A release loses millions by not releasing earlier than the competition, and any bozo who can get on a beta-testing team, can also work for your competition, thus any innovation (if there is any left in the game world) is gone about the second you do it.
* Many developers also don't come upon debug naturally, they see it as someone else's problem--or figure it should take all but a day to do, when those in verification/validation know that the verification cycle (done well) easily takes longer than the time it takes to code.
* This isn't helped by management which tends to put more belief in a developer's schedule than in the team of debuggers who are stating they need more time. It's always the first schedule to be chopped, because it works on the CEO's computer, so why isn't it making him any money!?
* Finally there's a new model in town, which not only bypasses debug, but also the content creation stage of gaming, which is the online gaming, where a simple game skeleton is thrown out there on a social networking site, like facebook, and then developers just continually improve their offerings by fixing things, and adding content as users progress through the game.
All of these factors have added to the malaise in quality software. So yay!
http://www.beanleafpress.com
Snooker, Billiards or Pool?
I'm also not sure that holding up a game that gets weekly maintenance is a very good support for the argument that games shouldn't have bugs. WotLK is a very good piece of software, but it had several major bugs on release and continues to have bugs to this day. Hit the WoW forums sometime; even after you weed out the vast majority of posts that are spam, whining, and/or stupid you are left with several bugs for each class that are both legitimate and often long-standing. One quick example off the top of my head is pet pathing, which has been bugged for over a year now. Blizzard makes fun games but WoW is not some shining example of bug-free game deployment.
I agree. The industry needs to start being accountable for bugs. The problem is, the term "bug" needs to be better understood. I think you are on the right track that there needs to be a common understanding of what the standard environment is. Is it just the OS? Is it the OS with OS-certified apps?
If software vendors were accountable for bugs, then they would put pressure on the OS vendor to have a more reliable platform. Reliability would start to be something that is demanded at all levels. Maybe the OS vendors would get the message and simplify their systems instead of adding layer on top of layer on top of layer....
This has always been a thorn in my side.
Why is it the expectation that a game released on a console be perfect, yet a game released for a computer generally be released early and patched later.
Yes it's true that console games (of the past) made it impossible to 'patch' and had to be held to a higher standard, and I'm fine with that. But this attitude of computer game developers to release shoddy code and then release patch after patch down the road is poor development. And this seems to be the norm for anything on the computer, and people blindly accept substandard crap yet are intolerant of it on other pieces of technology.
If people started to hold software developers to a higher standard when it comes to computer software instead of bending over and taking it, perhaps we wouldn't have so much shoddy software in the first place.
Just a thought!
This subject has come up before, and it's just as bad an idea now as it was then.
When you release a physical product, you can issue disclaimers with it like "don't use near flame", "don't use in extreme cold", "don't use naked inside live volcano." Software can wind up installed on systems that are the equivalent of all of these. Can you test on every OS, OS minor version, OS with patches x/y/z, combination of drivers, this chipset, that graphics card? What about on systems that are misconfigured? With corrupt Registries/Netinfo DBs/config files? How about ones infected with Malware? What if the admin/user installs or configures your software incorrectly?
Every system is a potentially highly hazardous environment that you cannot control nor test for.
As we all should very well know here, power supplies, quality of m/b & memory, other pc components all have a factor to play in the stability of a machine and can cause a piece of software to act as though it is buggy, when in fact it's actually the machine hardware itself that has an issue. How do you monitor this sort of behaviour as a bug? It's not feasible for developer to look in to every reported problem associated with their program, especially if it's run on hardware that wasn't setup correctly. I think that having a standard of release for software is a great step forward, but how do you manage the difference between a bug, and something caused by the envrionment/hardware? How do you put something like this in to place without going totally overboard? It's not feasible for developers to write code to handle every possible exception in their software according to external influences (caused by power flucuations, bad drivers, misbehaving memory bits for whatever reason, etc). I see where this is going, and I like the idea, I just can't wrap my head around the implications of attempting to implement something like this in an industry where hardware alone can make all the difference to the users perception of buggy software vs stable software. Software on a TV, or a Car Nav system, Stereo, Microwave, they are all hardware controlled by the manufacturer, so its much easier to test. You test it on one machine, and it works, so therefore it should always work. Does the same "it worked in our super-duper lab environment test" theory apply to this proposed legislation as well?
My 2 cents. I'm sure it's not even worth that much but hey
Complex games are usually done, using spiral model.
With a non-predetermined number of rounds.
One usually stops, when it’s “good enough”, and all pre-identified (potential) problems are identified.
Of course that does not mean that there are no problems that the team is not aware of.
But it also means, that one could theoretically continue forever.
That “And the last 10% take another 90% of the time.” saying is a vast understatement here.
Which means, that the decision is left to the manager. Who cuts it off at a specific point, depending on the finances and experience.
Now the thing is, that EA, for example, usually cuts it off as early as possible, with only maximum quick buck in mind.
Their near-monopolistic dominance does not make it better, as they can get away with much more by simply adding more marketing. (Which in a feedback loop shifts even more budget from development to marketing.)
That’s the problem with companies like EA. They are not a creativity-driven company anymore. But solely a money-driven one. They literally don’t care what happens after you bought the game.
And because of the same effect, that makes people vote for the same bunch of criminals called a party, that raped them some terms ago in, they will buy the next game too. (In both cases it’s the hype and disinformation. Like when EA buys nearly every magazine out there, and/or only offers real pictures and videos to those who give high ratings.)
(It’s not just EA though. Rockstar is just as bad, with GTA 3 SA being unplayable by the majority of users, upon release, and the only patches being available on gamecopyworld. Or the huge load of bugs in GTA IV, like 3 sec input lag, and extremely crappy graphics for its performance. But they at least have some creative drive left.)
So we are, obviously, an essential part in this problem. And we normally can’t change all those idiots who buy those games anyway.
Also, of course, a company, in the real end, always is driven by money. Because it’s a company.
Of course you can decide to stay smaller, and focus on other ideals. But what do you think how many companies do this?
And what do you think happens to a company, when they hire the typical “worked in a completely different industry, but thinks a manager is a manager, and therefore focuses solely on the common aspects” manager?
Or when they go public, and EA buys them. Or EA simply kills them by using its dominance.
Only a privately owned company with a strong leader can stay that way in the long run. And even then it would need to be just as good at marketing the games, as EA.
I hope, some day, that will be me. But it’s going to be one hell of a ride!
Any sufficiently advanced intelligence is indistinguishable from stupidity.
This is going to cause software companies to write very specific hardware requirements like:
2.6 ghz quad core AMD processor [model number, driver revision]
AMD 790x chipset [model number, driver revision]
ATi 4870 GPU [model number, driver revision]
Western Digital 1tb drive [model number]
Microsoft windows 7 [patch, revision, release year]
No one will read the hardware requirements, just like they don't now and the software companies will essentially have the same leeway they do now unless you have the exact motherboard, cpu, gpu, memory, hard drive they spec for the game.
Assuming people do read the hardware requirements, most people won't even know what they have in their computer. If there are bugs, there will be a very small subset of people that get refunds.
There's no way a guy that buys Assassin's Creed II to run on his netbook is going to get a refund.
Essentially [with few notable exceptions] most people that can't run a game bought something too ambitious for their hardware.
Then there are people with broken hardware, like the first couple of runs of nvidia multicore chipsets.
It's going to boil down to "Prove our software is broken, it works on the machines we coded it on, the configuration of which we made abundantly clear in the hardware requirements, and if you don't have one [flips bird]"
I personally have never bought a game that didn't work.
There are plenty of products that get replaced under warranty. A software patch is essentially the equivalent a warranty replacement.
Companies will get 4-6 weeks to put a patch out, and probably have 3 chances to do it before it's declared a lemon.
Nothing to see here move along...
Devices with software that works perfectly, as Andy mentions, have software written for a very specific piece of hardware, so it's hella easier to get it right than software that runs on millions of permutations of hardware combinations like PC's.
As a programmer he should know better...
If anything this will make things WORSE for consumers. Once hardware manufacturers release a new driver for any piece of hardware, or Microsoft has a patch Tuesday, the software company is off the hook and won't be obliged to release any more patches.
How many people do you know of that build a new computer for every game they buy? Well they'll have to for the software companies to be liable for their game bugs. They also won't be able to patch anything if they want to fill their end of the warranty for the game.
This will never do any good for anyone. It will make things worse. The security implications aren't pretty.
Don't kid yourself. It's the size of the regexp AND how you use it that counts.
First, I don't have any problem with software being patched after release as long as support is there for released software.
What pisses me off is when developers leave their software buggy after a couple patches and then just release a new game for you to buy instead. (See EA Games) I don't expect software to be bug free at release but I do expect most of the bugs to be fixed shortly and there to be continued support as bugs show up. If you buy any other product and it breaks (IE, you find a bug) they fix it.
Also, any "known bugs" on release should be documented. Put it on the box with an address for Known Issues. Then if you are thinking of buying the software you can judge if it's worth it yet or not. Check back and when you find that the bugs you can't deal with are gone, you buy it.
Until the advent of internet connections for consoles, there was always a vast difference in the quality of console games and PC games. PC game devs took the attitude of just meeting a deadline and patching it later. Console devs didn't have that option.
Now console have internet connections and a lot of those PC devs with their shitty attitudes moved over to consoles.
The thing is a buggy game or OS doesn't work as it should can cause you to lose time invested. It's broken and you should have the right to return it rather than being treated like a criminal when you walk into a shop asking to return a game.
Game reviews rarely mention bugs and to be fair it's because more often they're given a very limited amount of time to play the game which the publisher obviously does to cover up problems or so reviewers don't realise that actually it's a really boring game after the initial shine wears off of it being new.
Consoles are all the same hardware. There is very little that should cause problems. The biggest problem is that devs simply aren't given the time and instead expected to pump out annual sequels to the same boring ass games. Maybe if people are allowed to start returning games for being buggy, they'll take more time to work on a game and as a by-product, spend a bit more time on the story and gameplay as well.
I have held off from being an early adopter of games to the increase in bugs. I rarely purchase a game at release but wait a couple of weeks to a few months to verify the game is going to work out of the box as intended, or if it won't at least a patch will be out when I get it.
It is unfortunate as I don't believe I'm the only one. How many of you hold off on purchases for this reason?
Comment removed based on user account deletion
Queue.
Sleep is for the weak.
'Cars, TVs, and telephones are all expected to work, and they are full of software. Why not standalone software?
Because, for software there is no simple definition when something works and when it does not.
This whole subject has little to do with software companies rushing out software in most cases. It has a whole lot more to do with breaking the zero-day pirating scene.
If they leave in certain bugs that are certain to break the game about 2-4hrs in, then the zero-day piracy crowd (which relies on the cracked game being available before or on the day of release) have a game that won't work for them. They either have to worry about cracking the patch, or buying the game.
What you buy when you get the game box is a very expensive demo copy. Get your feel for the game, and then run into a crippling problem that prevents you from really advancing. Then you have to download a patch, which will re-install the copy protection the zero-day pirates removed.
Those same zero-day pirates are usually a few days behind on the first patch, which means anyone who downloaded it is stuck, and either has to wait or buy a legitimate copy.
Really, you think these massive bugs really make it through Q/A without being noticed? You think they are able to correct such bugs in about 24-48hrs, and a lot is taken care of?
NWN2 left in a crippling water effect when you got to the main city, which they had to patch out. Really, they never saw that even high end machines came to a lag infested halt trying to walk around?
Besides, how many times do you see a game released on both PC and XBox 360/PS3, and the console versions don't have the same bugs, but the PC version is a mess?
I really don't think you get what he's saying.
Unlike for most other kinds of products and services, boycotting doesn't work well for games - people will complain and acknowledge how crap a game is to need patches and major bug fixes upon release, but will still buy the damn game saying, "It'll get fixed eventually." Or, they don't care to begin with. As he pointed out, it's a market that's largely fed by hype and advertising goading impulse buys. Value, and even cost of purchase isn't normally a concern at all for a large share of the gaming consumer market. Even if you mass boycott, developers will still make mass profits due to impulse buys and people... not caring. One example is the L4D2 boycott - so, SO many people still bought the game even with a substantial number of people in the official boycott group and of like mind outside of it. Even with many people in the PC gamer community understanding how flawed and botched the release and handling of L4D was. And at least half the people in the boycott still bought the game! Even if you somewhat successfully mass boycott, there's no guarantee the developer will fix the bugs, or do business differently. They don't care, because they don't *have* to.
You completely miss what he was saying about boycotts with games - not that he can't and won't choose not to buy bad games. He's saying it isn't effective because most people won't make that choice. We aren't talking about what choices just *you* make, but how the actions of a large group of people can change how these companies do business. I'd like to see how well just you choosing not to buy or play a game changes company policy. You give a good tirade about how you want to mod lorenzo down as stupid, when you didn't take the time or have the presence of mind to understand what he meant, or ask, instead going on a stupid rant.
There aren't many legal protections for the consumer of games for getting their money's worth, or regulations to hold developers to a minimum standard. The EULA details everything the End User can't do and the terms of the sale, but rarely if ever outlines any responsibilities the developer has to the End User if there are any problems (much less major problems) with the software. We can't exactly call the BBB on them and complain expecting something to happen, like we could with a retailer. We haven't been able to file a class action suit for games being unfinished or otherwise buggy pieces of shit. Enjoy your one man boycott - all of the points he makes are completely valid, that the power the End User has to impress upon the developer & publisher of games is extremely limited - it's bullshit, especially in light of the now common practice of releasing an unfinished game and fixing it later, if ever, and needs to change.
So, what exactly in what he said was stupid?
Sad indictment of the state of business and economics education that you haven't gotten many sensible replies so far.
It's possible to go off on a tangent here and ask you to define 'broken', and test that definition on items such as cancer drugs (should they always work?), staplers (should they always staple through many pages?), TVs (are they broken if the picture quality is poor?), train journeys (are they broken if there's a crying baby next to you?). But let's focus on the meat of the question - the effects on computer games solely.
You would likely see:
* A large increase in the general riskiness of computer games production, with the effects that new studios would be fewer. This is because running a studio takes money, they money is invested with a view to making a return, and higher riskiness of that return makes it less attractive.
* Significant concentration of development resources. Because of the greater difficulty of 100% verifying code written by someone else, you would kill off all outsourcing to both Eastern European developers and new startups that do not have a 100% track record. Development would only be done in a single location according to very strict standards.
* Significant increase in the cost of games production. I cannot conceivably see such an initiative as leading to a increased sales of computer games (despite what Slashtards claim), but the risk reduction and quality control measures will be costly.
* Significant reduction in the number of computer games released. Follows naturally from the other points. Now, it's likely that this would counterbalance the previous point to a small/large extent - because there's few games on the market, there's fewer to buy and they would take the money.
* Significant slowdown in computer graphics progress. New graphics engines and techniques are risky, and when the idea is to reduce risk it's likely that this wouldn't be a priority. Take PS3 development as an example - sure, Metal Gear Solid 4 was stunning AND one of the earliest games, but also developed by one of the most routined teams. Other studios have expressed difficulty with programming for the PS3.
* Reduced amount of content updates. A game studio that releases a patch can very easily bundle this with a balance update, however if there's no patch going to be released, there's no reason to use any staff time on content updates either.
* A new source of shitfest, when bugs that cannot be reproduced reliably at the last minute instead lead to disabling of features, meaning shitty/unbalanced games.
This is just some of the items, armchair reasoning.
Excuse me for not reading 270+ comments, but how does this affect open source even with it's disclaimer?
Shai Schticks:"You don't make peace with friends, you make peace with enemies"
The game that ONLY ran if you had ONE specific video card ( I believe the Nvidia card that came with the original XBox). It's like the game was coded for the X-Box then converted over to the PC, if you didn't have that Nvidia card, ( I believe it was in the 4 series, 4880 or something, it was years ago ) you were NOT going to play the game. Pity to, the game had tons of potential.....I honestly could not believe they released that crap in the state it was in. Needless to say the release killed the game outright. Some other company has snapped it up now and renamed it Istaria but it will never recover from the horrid launch. Unfortunately I bought the game and had an ATI card at the time, I was rather disappointed :{(
That game was so buggy, do a little searching and the complaints are everywhere...it's clear that they never fresh installed a final build and playtested even one level of it.
"When information is power, privacy is freedom" - Jah-Wren Ryel
While I understand the frustration with software bugs, I think the people advancing this position are turning a blind eye to an obvious difference between software products and things such as washers, dryers and cars.
Software products are critically dependent on the environment that they operate in and that dependency happens in hundreds of subtle ways. Furthermore, the software vendor has little to no control over the environment that they must run their product in.
Items such as washers, dryers, cars, etc are more or less completely self-contained. The only external dependencies for a washer is an electrical outlet and a water hose. Well, and gravity to hold it in place on the floor. They have only a handful of external dependencies and the ones they have are very, very simple.
There is another distinction which is the number of functions that the product performs (put another way, the complexity of the product). Most any commercial software product has orders of magnitude more complexity than a washer/dryer. Trying to say that they are all the same because there is an embedded microprocessor somewhere running a 16KB monitoring program is a specious argument. The 16KB monitoring program operates in a very small and well defined problem space and performs a relatively small number of operations compared to software such as games, word processors, etc.
Funny thing is – devices such as cars and TVs *are* actually starting to show some of the same faulty behavior normally attributed to software because they are increasing the complexity of the devices. So the argument that software should just work because TVs just work is also specious.
Bottom line – software bugs are a result of product complexity. Any product which becomes sufficiently complex is going to start exhibiting the same sort of behavior. It is a fundamental problem with complexity. Trying to legislate bugs away is going to work about as well as it did to legislate the value of Pi to be “3” because the real number was too hard to remember
My problem is with Game Consoles. Right now we can pull out an old Nintendo or Genesis game and enjoy them. Some of these games are 20+ yrs old! What am I going to do 20yrs from now when I pull out my copy of Call of Duty and want to play it on my new quantum computer. Are the servers still going to be there to send me the patches I need to play the game? NOPE! The life of a game is now dictated by how long the game company decides to support it.
Specifically, they require you to go through technical support before they'll even talk to you about a refund. Tech support is free -- the idea is that if you're returning it because of some aspect of it being "broken", they should be given a chance to fix that.
Don't thank God, thank a doctor!
Reducing defects in code isn't free. It's the opposite of free. I wouldn't expect, as a video game consumer, the producers of these games are going to just eat that huge development cost; they're going to pass it right on.
“I think the idea that commercial software be judged by the same standards as other commercial products is not so crazy,” [Tanenbaum] says. “Cars, TVs, and telephones are all expected to work, and they are full of software. Why not standalone software?"
With all due respect to Tanenbaum, a modern video game is way more complex than a TV or telephone, and it has to run on a much wider variety of hardware. I'm so surprised by his response that I wonder if he is being quoted out of context.
Wardell believes enforced refunds would be a disaster. “When Demigod came out, there were people who couldn’t launch the game, but it turned out to be due to Google Desktop. It had a system hook that was preventing Demigod from launching on some people’s machines. We had to work around it. But whose bug is that? It wasn’t really a bug at all: it was just incompatibility. Retailers are not in any position to make that call.”
So imagine you spend the unheard-of amount of $100 million on testing to get a "defect-free" game that runs on every platform you can get your hands on, it goes gold, goes to press, and the day it gets on shelves, Google puts out a product that causes your game to not work. Nice.
My vote is the system is fine the way it is. If you can fix it for $zero, go for it. Otherwise forget it.
You are citing WoW as having smooth releases?
Remember the idiocy when they forced everyone to use directsound without telling anyone and setup a cascade of conflicts with hardware sound processing? And how for about a year and a half every patch RE ENABLED THE BUGS?
The only way about 20% of the people I played with were able to run WoW was to edit the executable to force no sound.
"Q!" -- Jean-Luc Picard
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
"Are Complex Games Doomed To Have Buggy Releases?"
No. The buggy releases are a top-level management/marketing decision, not a carved in stone doom. Complex [anything] is more *prone* to having bugs than simpler [anything], not doomed to it. There are software development techniques and testing techniques that would, if used, prevent the big showstopper bugs that have been in new releases lately. Sure, maybe a "this texture tears a bit in this one-in-a-million chance corner case" bug slips through, but not "the game crashes to desktop at the main menu screen". It would not even alter the release schedule much; a large part of the release pressure they're blaming the bugs on comes from the same poor planning that led to the bugs to begin with. [or to rephrase that: you're supposed to allocate enough time for testing from the beginning]
But many game companies aren't doing it right, because it takes less planning (and therefore less expense in hiring) to do it wrong, and they've been allowed to get away with doing it wrong. They'll continue to do it wrong until it has enough of a financial impact that doing it right makes them more money than doing it wrong.
Torrent before purchase.
If it don't work, don't buy it.
If it does work, PAY FOR THE GAME.
Reward those companies that get it right, ruin those that don't.
(and before anyone says "The crack is what is causing the problem", the vast majority of the problems I have encountered with torrents were also mentioned in the game developers forums, and thus experienced by non-cracked versions)
Pandora radio.
If I buy one more mobo that needs a BIOS flash right out of the box, I'm going to kill a puppy. No, two puppies. Cute ones.
What makes games special? Why should they be held to a higher standard than drivers, IDEs, spreadsheets, etc?
For one thing, it's fairly easy for free software communities to provide free alternatives to non-free "IDEs, spreadsheets, etc." and even drivers as long as the device manufacturer is willing to play ball. If the next Excel is broken, people can threaten to defect to OpenOffice.org Calc. In fact, Mozilla did just that to Microsoft by developing and promoting Firefox as an alternative to the brokenness of Internet Explorer 6.
Games made entirely of free software and free content, on the other hand, haven't seen as much success. What's the Free alternative to, say, Super Smash Bros. Brawl or Animal Crossing: City Folk or Modern Warfare 2?
Should the developer pay because you have some mildly faulty ram?
If a game publisher knows that RAM problems have caused failures on past games, it's not hard to make a game's install DVD bootable to memtest86 or other Free diagnostic tools.
Should the developer pay because one or more of your components do not follow the specs, or deviate significantly from what was standard practice at the time the software was developed?
The game's installer can include a troubleshooting button that runs dxdiag and possibly another test suite exercising the specs on which the program is known to rely.
I return it, you give money back, and everyone's happy.
How does the publisher know that you didn't just buy it, make a "backup" copy, and then return it in violation of 17 USC 117 and foreign counterparts that state that backups must be returned along with the original?
Big game teams (those with 100-200 or more people on them) employ dozens, sometimes *hundreds* of people for at least a couple of months, to test their games full-time. I know because I work on big AAA console games. Our testers logged more than 20,000 bugs against the last game I worked on; tens of thousands of other bug reports were automatically generated from crashes and such. And we track and and fix as many of the bugs as we possibly can. On our best day, our team fixed more than 1200 bugs *in one single day*.
What you have to understand is that these games are immensely big and complicated. The last game I worked on had more than 3 million lines of C/C++ source code, with more than 1 million of that in the engine. It had tens of thousands of animations, tens of thousands of textures, *over a hundred thousand recorded voice clips*, thousands of meshes, *millions* of discrete game objects spread across dozens of maps, etc. Making a perfect, bug-free game on this scale is a near-impossible task. There's a direct tradeoff between bugginess and time it takes to ship it. To improve the quality level enough to please everybody, would delay most games by 1 year or longer. Wouldn't you rather play a cutting edge game *now*, while its still cutting edge, rather than get it 1-2 years later?
By the way, most console games have a level of stability that's around 1 crash per 100 hours. Bad ones might have 1 crash per 10 hours. There are a lot of different ways that something can go wrong in a complex, dynamic engine. Believe it or not, many "freezes" on consoles occur simply because the game was low on free memory, and due to memory fragmentation (because it had been running for a while), it just ran out of memory. Consoles have a fixed amount of RAM, so there's not much we can do if we just run out of it. We do try very hard not to leak and not to fragment, and to leave enough breathing room to handle fragmentation over time. But its all very complex and "just do proper QA" will not really solve it.
I trust a demo more if it's the full retail game for a limited amount of time.
But then that runs up against one of the other purposes of demos: a smaller package that you can try without hitting your broadband plan's monthly cap.
People that complain about bugs on /. => Saavy Gamers => More Free Time => Less Work => Less Money.
...
Less Money + Saavy Gamers = Pirate
why are you complaining? no one here actually buys games (see above)
If this gets passed for video games then wouldn't it also set legal precedent for inferior OS as well? Microsoft and it's long history of crappy first releases for the Windows OS which could be a viable next target.