June 2009 Archives

We have a fence

Taji has noticed.

| No Comments | No TrackBacks

Last summer, when we took the dogs to France for the first time, we put up a quick and dirty fence to keep them in. It was a temporary job only, and in any case wasn’t sturdy enough to keep Taji in; if he ran straight at it he could probably send it crashing down.

When I was down last spring I talked to our builders and arranged for them to put a fence in. It wasn’t up when we arrived yesterday, but a couple of guys turned up this morning and the fence is now up.

The new fence

We let the dogs loose, and they ran around like crazed things. Soon enough Taji came bounding towards the fence - and crashed straight into it. He’d clearly seen the posts, but not the netting. Epic fail - or, from our point of view, epic win, given that the fence didn’t budge, and he now doesn’t want to go anywhere near it, looking at it with distrust.

Friday canid blogging

One of them may be less authentic than the other.

| No Comments | No TrackBacks

Wolves in snow Panda-coloured dog

How a computer guy's mind works

Diagnosing how and why The Sims 3 kept on regularly crashing.

| No Comments | No TrackBacks

I recently acquired The Sims 3, which all in all is fantastic fun. I should clarify that I first downloaded a pirate version of it, because I didn’t want to wait until it finally came out, then bought a legit copy as soon as it was out in this country. (I’m even more legit than that, in fact; Cleodhna had vicariously pre-ordered it for me - her machine isn’t new enough to run it - so we soon shall have two copies.)

And the funny thing is: the pirate version worked better. After I wiped the old copy of The Sims 3 and installed the new one from the DVD, installed the patch, downloaded the new neighbourhood and started playing from scratch, the game started randomly crashing.

And this is where IT guy mode kicks in.

I’d downloaded an application to run Windows games on Mac OS X natively, and I saw its window popped up after the Sims 3 crashed, asking me whether I wanted to run the installer on the DVD. “Maybe this app is interfering with The Sims 3’s own Windows-emulation stuff”, I thought, so I deleted said application (the fact that I can’t remember its name indicates how much I was using it), and removed a random start-up application which looked related just in case. I installed some software updates, rebooted, and tried again - and the game kept on crashing.

OK, time to get serious. I was starting to wonder why Mac OS wasn’t complaining about applications having unexpectedly quit, so I started looking around in the belly of the filesystem for recently-updated logs. /var/log/system.log and /var/log/secure.log had both recently updated, so I started tailing them in a Terminal window (i.e. showing the most recent updates as soon as they happened).

Right, back to the game, saving regularly. Sure enough, I’ve played maybe half an hour or something and I’m suddenly unceremoniously dumped back to the desktop; and the logs are saying something that I’d seen previously when looking through them, but hadn’t wanted to ascribe culplicity to because I wasn’t sure exactly when The Sims previously crashed, and it could have been a coincidence.

“Ejected Time Machine disk image.”

I realised that this wasn’t The Sims 3 crashing. This was The Sims 3 quitting. My best guess is that this is another example of copy-protection being badly implemented and stiffing legitimate customers who happened to have not exactly the same setup as the testers. (Although Time Machine, touted as one of the main features of Mac OS 10.5, is pretty damn common, so you’ve got to fault the testers as well.)

The Sims 3 requires the original DVD to be in the drive, or it won’t start. (My pirated version came with a crack to remove or disable this code.) Apparently it also checks whether the disc is in the drive at regular intervals, to make sure that you don’t sneakily eject the disc and then run the game on someone else’s machine. It doesn’t poll the drive itself, possibly because that might involve the CD spinning up for no obvious good reason, which makes an annoying noise and reduces battery life or laptop users. Instead, it listens for system messages saying that its disc is being ejected. If it sees one of those, it up and quits, plain and simple, which, from Mac OS’s point of view, it was perfectly entitled to do, which is why there was no crash report.

The problem is that whoever wrote this was lazy. They assumed that the only volume anyone could eject would be their own disc, so didn’t look any closer.

So Time Machine does its thing, while the game is running, and having backed up the latest bunch of files, disconnects from the Time Capsule - and The Sims 3 thinks it’s being hacked. It doesn’t even tell you “you know you can’t play this game without the disc, you know” or anything useful like that, it just quits with no explanation.

To test this, I switched off Time Machine and started the game up, and it’s behaved as well as the pirated version ever since. Except that I can’t back up my machine.

(In a supreme example of the Internet’s version of staircase wit, once I knew what the problem might be, searching for “sims 3 crashes time machine mac” on Google resulted in http://forums.macrumors.com/showthread.php?p=7732700 as the fourth hit.)