So this week's podcast (#61) was good as usual but the part that really caught my attention was the following exchange with Miguel de Icaza (which I went ahead and transcribed and put on the wiki):


de Icaza: There are people using, well, I guess I... I'm not supposed to say this unless it's for a partner, umm... I'm not supposed to say the brand of this game, but there's a major blockbuster game that came in the last couple of months... um... very large, very popular, that you can see on the Novell website, um.. (laughs nervously) that is powered by Mono. But the agreement prohibits me from saying that in public. All I can say is ...

Spolsky (interrupting): You can only put it on the website?

de Icaza: I can.. the agreement allows me to say that it is... if you go to Novell/products/mono, I believe... you will see... you will see the logo of said popular game. But I can't say its name. So, you know, I think it's being used in a lot of very interesting places, um, beyond what we originally intended it for. We thought, you know, "Linux desktop" and now, you know, it's used for server, ASP.NET, it's used for... you know

Spolsky: Hey, how about those SimCity programmers? How do you like their new game?

de Icaza: Uh... yeah, yeah! I really liked that game!

Spolsky: What's it called, "The Sims" or something?

de Icaza: Yeah I like that game! That's... it's pretty sweet, it's pretty sweet. Have you tried it yet?

Spolsky: Yeah no, you know I haven't really since I, uh, I would kill my characters...

The game in question is The Sims 3.

The page that Miguel refers to is here, which links to the Sims 3 page.

The page on the Mono site referring to it is here, where it also reads:

Electronic Arts used it to power Sims3.

However, the Podcast show notes page on the Blog states

Some big game projects that use Mono for scripting: Second Life, and The Sims 3.

Just prior to the exchange above, Migel mentions that Second Life uses Mono for scripting (i.e., not the main game code) but I got the impression from the conversation that more than just scripting used Mono for The Sims 3.

So did Jeff and I just get two different impressions from the above exchange or perhaps Miguel clarify his insinuation to Jeff afterward?

I personally would find it much more interesting if The Sims 3 was written entirely with Mono, even moreso if they used something like C# to write it with (though my guess would be they would have used Managed C++ or something). It would help account for how the game shipped for both Windows and Mac at the same time, on the same disc (though, that's not really the most unheard of thing - World of Warcraft and other games have been doing it for years).

So does anyone know if all of The Sims 3 was done in Mono or just the scripting bits? I don't own the game myself so I can't really inspect it or see if it has a Mono runtime or whatever.

  • 1
    Close... as belongs on SO? Also... too long – devinb Jul 17 '09 at 18:53
  • It's discussion of SO on SO, so I figured it belonged on Meta.SO. But it could be moved there if someone wants to. – Tom Kidd Jul 17 '09 at 20:39
  • It's actually discussion of a podcast and if The Sims 3 was in mono. I don't see how any of this pertains to SO itself. The fact that Joel and Jeff own the podcast doesn't make it SO related. – Ian Elliott Jul 17 '09 at 21:18

I don't know the answer to the SIMS. Miguel had to be pretty coy about it, so I assume there aren't a lot of details out. A quick search brought me to a forum entry, in which a user stated the scripting engine is driven by Mono:

The Sims 3's scripting engine is driven by Mono (open source .NET implementation), and nearly all game logic are scripted in the game's .NET assemblies. Including the UI, objects, interactions, gameplay mechanics, etc.

As for Second Life, their scripting has been done in Mono since at least August of 2008. They have a wiki page explaining some of the rational behind the move to Mono.

| improve this answer | |
  • excellent research, I was curious myself – Jeff Atwood Aug 14 '09 at 8:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .