Follow-up on EVE's Boot.ini Issue
Krinsath writes "CCP, publishers of Eve Online, have posted a Dev Blog detailing the circumstances leading up to the deletion of XP's boot.ini file, which was earlier discussed on Slashdot. The blog post has intimate details about how the mistake occurred (a new installer from their normal one), how they responded and what CCP has learned from it. While fairly dry, it is to the company's credit that they're being open about one of the more serious bugs to crop up in gaming's recent history."
...luckily I boot useing grub.
Obligatory blog plug: http://www.caseybanner.ca/
Now if only more businesses acted this way.
But they should delete greater percentages of XP...
From the article...
"Why doesn't Windows protect its system startup files? That's a good question, one that I have asked myself in these last few days and wish I knew the answer. But of course I'm not going to blame Microsoft for our mistake. Windows doesn't protect those files and therefore software developers must take care not to touch them. We should have been more careful."
That is a good question. I am not an EVE player myself so I don't know if this update had to be run with admin privileges but it doesn't appear to be that way from the question and reply. If you are not running as admin then how is it even possible to remove a system file that is necessary to boot the system. Unlike the EVE representative making this statement I am going to blame Microsoft, it should not be the developers responsibility to make sure they don't break the OS, it is the OS developers responsibility to make sure that it cannot be broken without admin/system/root access.
-Buck
what of the users who did lose valuable computer time due to this problem? The proverbial kid handing in their homework (or dissertation paper or whatever), for example. Apologizing and willing to pay for a third party tech support service (e.g. Geek Squad) is nice and all, but does that cover damages incurred? doubtful. Perhaps that EULA will finally get a test.
/r to be recursive, but DeleteRegKey needs /ifempty to NOT be recursive; whatthe.) and I've wiped my entire root myself while developing an installer with it, although via a more complex bug.. NSIS simply doesn't have any built-in "you dumbass"-protection like most commercial installers.
As for the bug itself... the installer code is NSIS script; quite powerful, but you do need to know what you're doing. Especially with a command such as "Delete", I can't help but wonder who failed to RTFM (TFM reads, as they point out, that "Delete" requires a full path to be safe or else it expects the path to be root) and instead made an -assumption- on how it would work.
Now, to their defense, NSIS is also a little inconsistent (RMDir needs
Although I think it's nice of them to say that they're not blaming Windows for their own mistake, I do honestly think that Windows should protect such vital files at all cost - including against Administrator level process (e.g. a prompt "you dumbass - are you sure?" will do).
Is it EVE, Eve, or EvE? The slashdot title, summary, and related links say three different things.
... and then they built the supercollider.
If only more companies were so honest and straight forward when they cockup. It almost makes me feel like playing EVE again. CCP can consider themselves as being given a virtual karma bonus.
Although I can't help but wonder if the "honesty is the best policy" choice was because of their handling of the last PR cockup.
Yeah, I had a sig once; I got bored of it.
I would, but I had a power outage that terminated my 4-week uptime. :)
Worst part of it was, I was baking pecan butter tarts at the time. In an electric oven. They don't make UPSes for that.
Don't believe everything you hear from profiteering companies.
From CCP'S forums...
http://myeve.eve-online.com/ingameboard.asp?a=topic&threadID=658000
Cosmo Raata "quote"
"Only question I have, is WHY THE F do you put up a phone# for someone in the US to call, ask them to leave a message and never call them back????!!! I needed assistance and ended up relying on help from someone else after waiting too long, as I had filed I needed and just couldn't wait for you. Kind of pathetic if you ask me. I was impressed that you'd offer to take calls, but you proved that it was only a fake gesture to cover your asses.
P.S. You still haven't called (6 days later)."
He was one of 215 users that was affected, it's possible they didn't even know the cause. All you have if someone whining that they waited "too long". How long is too long? 15 minutes, 1 hour, 8 hours a day, multiple days? The user's post on that forum is very subjective and some people are just plain impatient.
I read Slashdot for the headlines, because the headlines, unlike the articles, are usually original and never duplicated
If you really want that sort of behaviour, why haven't you switched to Vista? That sort of behaviour is a big part of why hardly anyone is?
The Operation Flashpoint dedicated server bug that deleted every file of the drive that it was installed on makes this one look weak.
Wish I could find a link right now but I can't. It will quite a scene on the BI forums when that one came out.
I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
Yeah, if only more businesses did not test products enough before deployment, or read TFM when using delete commands...
AND THEN they send GEEK SQUAD to "fix" your computer. Talk about adding insult to injury!
Violence is the last refuge of the incompetent. Polar Scope Align for iOS
Hmm, too many humans rebelling again, eh Oracle?
While it's nice to know the technical reasons for problem, it still does not answer why they failed to take note of this problem when it was originally reported and discussed on the beta server's message board two days before the expansion hit the live servers.
It's in the eight post of this thread.
Finally, a benefit to Vista! Vista users like myself were 100% unaffected by this. It was awesome.
We're all going to die. i intend to deserve it.
I have never been into MMOs. I just didn't get them. However, in the last week things have changed and it's due, in part, to this bug.
/. last week I went to the companies website and found myself intrigued. Further discovery that they didn't charge $50 for the box on top of the monthly fee was also appealing. Further, I see client software for Macs and Linux. Intrigued I download the Mac client and create the trial account. Two days later I'm hooked and sending them my CC #.
You see, until this bug happened EVE was totally off my RADAR screen. When I read about the bug on
If it hadn't been for this bug, I probably would have never bought their product! They say that any publicity is good publicity and I think this is true. Sure the SNAFU was pretty bad yet the product was still compelling enough to buy it despite a pretty bad QA miss. This latest response from the company will only help further get their name out there and is truly an opportunity to make lemonade from lemons.
Now if I could count how many hours of my life have I wasted because of disappeared boot.ini's, geez. Nice move, still.
I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
I run Vista, so this would never happen to me as it no longer use a boot.ini file... But I do have to reboot quite often because the #$% thing keeps crashing for no reason :P
Sigs are for morons... Wait a minute...
When cloning my linux from old hd to new hd, I accidentally forgot to change the label name back for the root= entry in grub. and couldnt boot unless I fixed it with the repair CD console login.
/boot.copy /local/boot.old
Its as fragile as boot.ini, though I personally have a few copies of it and
What linux needs is like the old VMS days of auto versioning, grub.conf;1 etc...
If its a system core component config, then its smart to do it for that, HD space is plenty for text files.
Liberty freedom are no1, not dicks in suits.
Just grub a linux-live-cd and install LILO/Grub/.. on MBR, then you would be able to select a partition on your booting process.
What would we have done without Linux? Novel prize to Linus Torvalds.
Read and Comment at my BLOG
!!!
Having violated /. policies and actually Read The Fine Article, it was a good analysis. I wish more people would write their bug reports this well, and explain how they're going to address the problem.
I also wonder if they wouldn't benefit from a nice virtual environment system to do QA testing of new releases with? Capturing the full graphical behavior of an OS is difficult in virtual systems, due to the overhead of the virtualization itself, but it might be a lot cheaper than keeping a dozen different hardware configurations around.
When is MS Windows going to get proper package management?
These sort of problems are not something that should be occuring in a modern operating system.
...and that is all I have to say about that.
http://jessta.id.au
I reckon' they're only so open about it (even though there isn't much reason not to be, but all the first posts are praising them for some mystical transparency that is hardly unique) is to compensate for that whole staff-cheating scandal.
Read it as CCCP and not CCP and everything becomes a whole lot clearer
What can?
Programming guy 1: So we're finally done with coding everything.
Programming guy 2: Yeah finally.
*Programming guy 2 tries to make a joke*
Pr. guy 2: Hey pr. guy 1, look at this
Pr. guy 1: lol, you appended a del boot.ini
Pr. guy 2: Well, I'm going to take a coffee break
Pr. guy 1: Yeah, me too
Pr. guy 2: Wait, lets put a sticky-note on the board that we're done
Pr. guy 1: Sure
*Pr. guy 2 puts sticky on the notice board*
*both walk off*
*manager walks in*
*manager looks at the board*
Clueless manager 1: Nice, the work is finally done.
Cl. manager 1: Ahhh, I'm on a tight schedule. Lets send this file to the head programmer so he can compile everything.
*Tries to click close*
Cl. manager 1: What, changes have been made? Whatever, save.
Cl. manager 1: Ok, open outlook. Send. Done. Wow, I know this will be a spectacular release.
*Cl. manager walks of*
Knowledge is power. Knowledge shared is power lost.
the VM only give low end video cards that suck for game testing.
CCP is releasing their new update patch for Trinity next week. I don't think I've ever seen a software release patch notes that end with the disclaimer "Please note: No Windows System files were harmed during the creation or deployment of this patch."
GE/CS/IT d- s: a- C++++$ UL+++ P-- L++++ E W+++$ N+ o? K- w---() !O M- V- PS+ PE(++) Y+ PGP+++(+) t+++ !5 X++> R- t
I'm not aware of a single installer package on Windows that isn't a useless, complicated, badly-documented, bug-ridden piece of crap. The times when I've had to use (say) InstallShield, I've seriously thought about finding a new job. This stuff sucks *and* blows. (Don't get me started on USB support and BlueTooth. Oh my God. Don't even think about reading about that stuff: Once you crack open the docs and see the wavy tentacles, the squamous mouths, the eyes, the eyes, the eyes that . . . well, you'll never be quite the same again. T-tr-trust me on th-that).
Remember the happy days of "just copy" installs, which worked great on MacOs in the 90s? Upgrade to a new system? Just copy your "apps" folder over.
The question, "What kind of installer should our OS have?" is like asking, "Should we drink the red poison or the green one?" Just asking the question seals your doom.
Any sufficiently advanced technology is insufficiently documented.
Having mixed, inconsistent addressing modes is a major design screw-up. And having a default of the "delete" command to delete somewere else than is intuitive, is completely unacceptable and the people responsible for it should be fired and striped of their qualification. These people are not engineers, but incompetent hacks.
The right way to do it is that you can have inconsitencies, if a) there is a very good reason for it (here, there was none) and b) you make sure people notice. This can be done by making the command look different, e.g. "DeleteWithAbsolutePathOrRoot" or doing additional checking, like the delete command refusing to work if it is not given an absolute path. Of course documentation must also be correct, but the real screw-up is the command that looks just like the "file" command but works differently in an obviously potentially destructive fashion.
I can really not blame CCP for being bitten by this. It is on a level of stupidity that you do not expect from a professional product, like a 3rd party installer. Also that Windows does not protect its boot.ini is pretty demented.
The posting on the CCP blog, giving full technical details, but not involving into finger-pointing is also impressive. Dr. Thorsteinsson gives all the details and circumstances and explains what they are doing to prevent this in the future. I think this could not have been done better or more elegant.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
The vast majority of applications can be installed by dragging them into the Applications folder. Or they can be run from an archive. The magic required to do this on the OS level is pretty minimal.
Yes you can blame that on the OEM for not providing a proper full installation CD but by then it's already too damn late as the worst case scenario has already happend.
Furthermore, by them being willing to reimburse for outside support (Geek Squad/Others) They've already admitted they f'scked up badly enough to be responsible, thus the EULA would not even come into play though if they were to argue it is still valid, the courts would probably rule that in this case "No It doesn't".
Mod me up/Mod me down: I wont frown as I've no crown
95%+ of bugs encountered in software like this will be graphics-card-specific.
There are no solutions for running 3D accelerated apps (like EVE) in a VM that aren't still considered "beta/in testing" (like VMWare Fusion).
retrorocket.o not found, launch anyway?
The first part of the problem is the bloody registry, the second part of the problem is the moron who decided to mix critical system configuration information with user space information, the third part of the problem is the lack of a programming philosophy of keep your own shit in your own space.
I think the following design principles would go a long way to solving this problem:
Hey KID! Yeah you, get the fuck off my lawn!
Thankfully more businesses don't hork up your OS so they don't have to act this way.
Microsoft does not require admin rights to run programs. I'm one of those who zealously use normal "limited" user when I can
Even some games run perfectly well under XP. Probably around 80% of games work perfectly fine under a limited user.
Works fine:
Sims 2
Total war series
Stardock downloadables
THQ games (eg Company of Heroes)
Needs Tweaks / relaxed file permissions
Steam
Does not work:
Anything with Punkbuster (cod4, battlefield, etc)
Most direct2drive.com games. (pay for and download legal copy).
Many other download services.
Change is certain; progress is not obligatory.
I was not affected by this issue, but I'm impressed by the explanation that really answered the question of "how the fuck could this happen" well..
as a software developer, I can't say I wouldn't make the same mistake in the same circumstances..
I am the maverick of Slashdot
We use it at my place of work and I find it a lot easier to understand than InnoSetup. Plus it is free to download. One major limitation is that it does not support Windows Installer, instead you get a "classic" setup.exe.
Link: http://www.jrsoftware.org/isinfo.php
C - the footgun of programming languages
I think this is a leftover from the days of Windows 3.x and 9x, which were NOT properly designed as professional, multitasking operating systems.
;-)
Among other things, everybody was administrator. Which led to somewhat unhealthy design habits on the part of application developers, who often took the easy path of just dropping DLLs and such into the system directory. Including some of Microsoft's own developers, but I digress...
Today, it seems that Microsoft has recognized the problem and tries to contain it. But the need to stay compatible to old applications still leads to weird workarounds and designs in Windows.
On systems that were designed with multiuser support from the beginning (Unix/Linux just to give one example), point 1 and 4 of your list are implemented and it makes a big difference.
C - the footgun of programming languages
Intimate Details about Eve put Online. I can't wait!
"It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
I tried their demo a while back, moved the folder the installer created in my start menu, and when I uninstalled, it deleted all of my start menu shortcuts. I wasn't impressed.
People update their games but not their OS??? What a bunch of babies. It's like, "Oh no, the update crashed my Altair!"
And a lot of BRANDed machine (like DELLs for example) have a first hidden partition at the beginning of the disc containing various daignostic tools that can be accessed from the Bios boot menu.
The main problem is that critical files such as boot.ini should be writeable by non-priviledged accounts. On linux, you can't overwrite anything
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Don't just copy to the data to some cheap CD either. Make sure you have at least one offsite backup (not hard to do - remote disk space is cheap) and at least one backup you maintain manually (so that a serious problem with your backup software cannot leave you unable to access your data).
Be sure to read this earlier Slashdot story as well, which covers a previous scandal involving employee cheating. That was followed by another scandal.
Everything performance critical (i.e. the graphics engine) is written in C.
Python is used for all of the non-performance-critical stuff though.
Either way, it definately depends on 3D hardware acceleration, which can't be virtualized easily/reliably.
retrorocket.o not found, launch anyway?
?? You want more companies to hire people who cheat the system and then when caught aren't fired? Eve is pretty messed up. Admitting they royally screwed up is nice...but I would like to have more companies not screw up than apologize after the fact.
Support a great indie game: http://www.abaddon360.com