Sims 2 Dev Thread.
I'm going to do several of these, all will be prefaced by this title, so those of you interested can find them easily.
I'm just putting stories and details in haphazardly, as I recall them, so don't expect these to be too organized:)
So firstly, who am I, and how come I can talk about this? Well, I'm Jake. I was hired by EA in Nov '01, right after 9/11. That actually impacted my ability to go to interviews at EA in SF at the time. But I was determined to get the job, and so I persevered.
Previous to this, I worked at Raven, on titles like Soldier of Fortune, Star Trek : Elite Force and Jedi Knight II. Before that I was at Midway, making Arcade games like NBA Jam, Revolution X and WWF Wrestlemania.
I was actually hired by my friend Jonathan Knight @jk00 - who was a producer on Sims 2 (and also a bunch of the Sims 1 expansion packs) - to work on Sim City 4, but before I ever started, the job was switched across to Sims 2, which I was extremely happy about.
I was the lead simulation and tools engineer for Sims 2, and was with it from about 3 months from inception to shipping, two and bit years later. When I arrived, there were about 10 people on the project. When we shipped, there was about 250 FTE's and contractors working on it.
I worked for the lead engineer, one David Gregory @dgregryc who was and is a terrific engineer, manager and tech director, who has gone on to great things since EA and remains a good friend to this day.
I also ended up EA's first release engineer for Sims 2, and at one point had about 20 object engineers reporting to me, who actually built all the objects for Sims 2.
So yeah, I can talk about development since I was there for pretty much all of it, deep in the inner circle of people making stuff.
So, where to start telling stories?
Sims2 was built on top of Sims1, unlike Sims3, which was a complete re-write from scratch (undoubtedly the right decision, since we inherited a bunch of tech debt from Sims1, and Sims3 could never have done what they did sitting on our code.)
As a result, we inherited the Sims1 tools for building worlds and those had to be rebuilt completely, since the plans for Sims2 were so much bigger than Sims1. Will Wrights tagline for Sims2 was "A more bitchin' human simulator'.
Now, I'm not going to reference Will too much in these stories because while Will is considered The Father of The Sims, he wasn't actually around that much. Will is very much 'been there, done that', and while he was available for consultation, he was already off in Spore Land.
I asked him a few times for advice when I was changing his base algorithms - and he's so smart that when I proposed things that wouldn't work, he could ask just one question for me to see where it would fall dow. Truly an incredibly smart dude.
But other than that, he was very hands off of his baby. He watched from afar but wasn't in many meetings, unless I made a point of pushing him to come because I was changing root functionality of the simulator.
We knew we wanted to make Sims 2 basically Sims 1, but with everything turned up to 11, particularly the rendering. We actually had two pHD coders in that area. We had specialist coders for the animation system, and another for path planning.
We had a huge production team and we actually tried 10-15 new game features in Sims2 that actually worked, but ultimately got cut for either UI reasons or because they just weren't fun, just tedious time sucks.
For example, we had a memory mechanism, where one sim who witnessed something first hand could actually communicate memories to another Sim. So if Sim A saw you pee yourself, Sim A could tell Sim B about it, and Sim B would react to you as though he'd seen it.
The problem was, Sim B would start laughing at you the moment he saw you, but you'd have no clue why - there was no easy UI way (without words) to tell the player why that sim knew something they'd never seen. So that idea got scrapped. We had lots of blind alleys like that.
Incidentally, The Sims as a franchise tries never to use words in UI, in order that there is little to no localization requirements for the game itself. In fact, that's where Simlish - the made up language for the Sims - came from.
Funnily enough, the number one bug report The Sims gets from non English speaking lands is that "I can't set the Sims language from English to my language". People who can't speak English think the Sims are speaking English!
We had about 8 people we used to generate that language, the same people used on Sims 1. They would literally sit in a booth and watch the animations the sims would do for interactions and then generate sounds to go with it.
Note, there is NO linguistic background for Simlish. All those websites that claim there is are absolutely wrong. It was entirely made up, of gibberish sounds, that was made up on the spot by the voice actors.
We were constantly amazed at people who felt they could see patterns where there were none. We'd pass round links to websites where people claimed to have 'worked out the language'. I guess you'll see what you really want to see...
The house construction tools for Sims 2 were rebuilt from scratch and at about half way through production, they were considered finished and then a lot of the Assistant Producers would spend days playing with them.
EA use to have small competitions to make the most amazing house on a lot using these tools, just to really test them and the rendering, so that not only could they be built, but they would also render at a decent frame rate.
Some of what they built were truly amazing, and I'm really sad none of these shipped. I remember one incredible castle structure one of the guys built, with torches and flickering lights everywhere. It was truly stunning.
Originally Sims 2 was supposed to ship with 5 neighborhoods. About halfway through production we began to realize that constructing a neighborhood took on the order of 2-3 weeks, and we were constantly having to dump what we'd built and start again, due to file format changes.
So this was pared down to 1 neighborhood, until I realised that all the design was being done in Excel, in a spreadsheet, and the painstakingly copied across, value by value, into dialogs in the tools in Sims 2.
I ended up building a Spread Sheet importer into the Sims 2 tools, and boom, three weeks work done in one key press. This is what enabled Sims 2 to ship with the three neighborhoods it did. At that point, we were limited by physical house construction time, which still took days.
The objects for Sims 2 (and Sims 1) are built by a new kind of content creator - Object Engineers. They would work meetings to work out what a new object would be, get some concept art, work out what Sim animations would be required, what sim requirements they would fufil etc.
Then they'd gather the art generated (3d models, with various states of completeness and brokenness) and also the animations the sims would require, plus sounds, and then they'd go away and write the scripts required for the Sims to be able to use this new object.
The scripting system was called SimAntics (there was some tortuous acronym for this, which I've quite forgotten, thankfully) and it was built into a tool that was built into the engine itself, so we could write and change scripts as the game was running.
We had about 20 object engineers on Sims 2, all producing content flat out. At one point, we worked out that given how much Sims 1 had earned to date, each object that an object engineer created was worth about $500k to EA. They took, on average, about 2 weeks to make.
Talk about a return on investment!
I built all the tools these guys used and the simulation stuff behind what the scripts did and how they interacted with the main game.
So because we'd had the experience of making Sims 1, and seeing all the expansion packs they'd made, we were in a much better position to build in stuff we knew we'd not use till those expansion packs came along.
For example, all the pet stuff was actually built and coded before the initial launch of Sims 2. We had pets in there, to test it, just we didn't build any. When the expansion came along, it was mostly just content creation (scripts, animations, models), not engine code.
Similarly, lots of the infrastructure for Open For Business was also there, ready to be used, when the expansion pack came along. That's not to say there weren't code changes, just the infrastructure to handle this stuff already existed.
There were LOTS of conversations internally about what we should ship with, feature wise, so we could leave ourselves space to make expansion packs down the line, because these were So Profitable for EA. The problem was, we were Sims 2, so more would be expected than in Sims 1.
But... we couldn't just load the game with all the expansion pack stuff from Sims 1 on launch. We couldn't have made all that content anyway, but still, it was a hard line to maneuver.
One thing that not many people know is that The Sims 1 was doing game analytics way before Analytics was A Thing. When you upload a lot to the web site, to share with others, you are actually uploading a bunch more data than you think.
Inside the house upload is also a bunch of information about your playing habits in The Sims. None of this information is identifiable to individual players - EA was way ahead of the curve in terms of player privacy - it was just data that indicated how people were playing.
Will was fascinated by this data. Real live big game playing data. He used to write lots of database queries to work out player trends and so on. This is actually where Spore came from; the idea that something you do, on your machine, can affect how others are playing their game.
The idea that you playing your single player game could affect someone else playing their single player game, by changing their environment in response to what you did in yours was like catnip to Will.
Anyway, Will identified four distinct player types for The Sims. The Maximizer, the Social Player, the Sadist and the Builder.
The Maximizer was someone who wanted to max out the Sims potentials. Top Job Track, best social interactions, biggest house, most money, etc.
The Social player wanted to explore the social interactions - see what The Sim would do in different contrived social situations. Lots of people saw a lot more in those interactions than there actually was code to drive!
The Sadist just wanted to find new ways to cause the Sim pain or kill them. Taking the exits away in a pool etc. On Sims 2, we added a bunch of random ways to kill a sim for this kind of player. E.g. https://sims.fandom.com/wiki/Satellite 
The builder was more interested in the house builder aspects of the game, often trying to build their own house, or their dream house inside the sims, using it more as an architectural tool than anything.
Incidentally, that's where The Sims came from initially. The original game Will set out to make was called DollHouse, and it was on a Mac. You had the house construction facilities, and the sims existed purely to come into the house and judge your efforts.
There was some rudimentary Sim controls, but it soon became clear that it was more fun to control the sims than to just build, and that's when it moved to the PC and became a 'real' product.
Worth also pointing out that Sims 1 had been in development for about a year at Maxis when EA bought them, and the number one thing that EA tried to do, several times, was cancel The Sims, because they had no clue what the game really was, or who the audience would be.
Anyway, back to the player tropes. What was interesting was that the 4 player types were split fairly evenly across all players, and even more interesting was that of the 4 types, they were split evenly between male and female players.
So, most sadists and maximizers were male and the social and builders were female. A fairly terrible indictment of the way the world is today, but also not terribly surprising.
Right, so lunch is over, and I'm going to get back to work now. I'll add to this thread periodically when I think of new stuff to say.
Oh wait! Before I go, one more story that is just too fun not to repeat.
During Sims 1 development, after EA had purchased Maxis, they really did NOT like the 'bathroom' need inside the Sims, where they had to hit the toilet.
They felt it was pretty revolting when the Sims failed to meet the need, and they wanted it OUT. Will, however, pushed back. "No", he'd say, "You can't have a human simulator without it." But EA was relentless on putting on the pressure on Will to pull it out.
Eventually, one Friday, Will buckled to the pressure, and said, last thing in the afternoon, "OK, I'll take it out."
Now, at this point, the bathroom system was in place and Will had populated the data values with stuff 'pulled out of his ass' (see what I did there?:) )
So, how many times a Sim would need the bathroom, how long they'd spend on it, etc, all of these values were just eyeballed by Will.
That weekend, there was a big article in the color supplement of the New York Times, talking about a bathroom Time and Motion study.
It turns out that the NYT article had all the details on the average visit, how many times a day, etc. And it also turned out that Will was ABSOLUTELY SPOT ON WITH ALL HIS BULLSHIT DATA. He was right on the money.
So that Monday morning, he went into work, faxed a copy of this article to EA, with an extra page on the end with the words "BATHROOM NEEDS STAY!" scrawled on it, sent that off, and EA never ever said another word about the Bathroom needs in The Sims:)

The End.
I was just thinking about both path finding and also how The Sims works, and thought I'd share some of those reminisces.
One situation that occurred with pathfinding is, do we let the Sims try and route to an object that they can't actually get to?
We actually planned out the entire route once a Sim decided to go use an object, so we could know "No, there are obstacles in the way, you can't get there", but we'd still let the Sims try, because otherwise they just looked precognitive.
Another problem we had was the Sims determining what next action to do. They knew their requirements and what objects are offering interactions that fulfill those needs. The issue was that if they took the best interaction, you ended up with the worlds greatest screen saver.
In the end, we basically randomized which interaction they would do, out of the top best 10 interactions they might possibly do. The function to do this was pretty intensive, and took a LOT of CPU time. We usually saw spikes when this function was run.
Oh, and one other thing that should be addressed. One of the surprising-initially things about the Sims 1 and Sims 2 team was that it was about 50% female. Now this, particularly at that time, was a Big Deal.
I very much attribute a lot of The Sims whimsy and fun to this fact.
The women who drove a lot of production and design carry most of the responsibility for how great The Sims, both 1 and 2, turned out.
More teams need more women on them, leading them, etc, because the proof of the pudding is in the eating, and The Sims is proof of that.
So the pee color story is absolutely true. We actually put in yellow as the color for the pee puddle and it was just SO gross, so our exec producer, Tim LeTourneau (one of nicest people alive), held a meeting where we sat and debated colors and how much gross we were OK with.
Just got home, had a cup of tea, and thought I might add to this.
So another feature we tried, that while it kinda made it to the final game, wasn't as we imagined it, was interruptable/add to interactions.
So with Sims 1, when you started an interaction, that's what the sim did, and that was that. With Sims 2, we added a queue, so you could queue up interactions. That was one of the first things I did.
Then we wanted interactions to be interruptable, so the Sim might start, oh, sitting in the hottub with friends. But then you could instruct them to go get drinks for friends, so they'd get out, go get drinks, serve them to the friends, then resume sitting in the hottub.
We actually got this working, but the problem was indicating to the player what was going on at any given time. The sim might be making dinner right now, but, what was his main interaction? How do we indicate that?
And was an interrupted interaction interruptable itself? If you were sitting the hottub, then going to make drinks, then some one rings the doorbell, are we still, in the original interaction? It all got very complicated very quickly.
One of the object engineers, using this system while it was still in place, built an incredible job simulation system. While the Sim was at work, in the "at Work" interaction, other sub tasks would show up in the task list on the side of the screen.
You'd have to respond to these sub tasks - e.g. "Got get paper", "Write a report" or "Arrest perps" or whatever was appropriate for the sims job. You didn't have to, but if you didn't respond to the individual prompts in time, the sims job performance would go down.
It was REALLY clever and really used the new system well, but because it was just so open ended and we couldn't work out how to limit it correctly, it got pared down dramatically in the final product.
The first object we built- and the one that was used as a test bed for almost everything new the simulator could do -was the hottub. It had multiple sims interacting with each other, it could offer interruptable interactions, it had everything we needed for test of all systems.
Right at the end of the project, I added a bug into the bug database that "When Sims are making Whoope (Sim Sex, basically), there was no 'invite' interaction". This was a joke - I was making a bug out of the fact that the Sims couldn't have threesomes.
This bug went all the way up the chain to the executive producer, Lucy Bradshaw, who marked it "Will not fix", with the comment "Not enough time for animations" :)
Maxis didn't say no to threesomes, just, they didn't have time to make the animations and scripts:)
You can follow @JustJakeSimpson.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: