Anonymous
3 years agoQ&A with Alleged Lead AI Programmer for Sims 4
Full comment by user @ rezination replying to this YouTube video "The Genius AI Behind The Sims"
https://twitter.com/SimMattically/status/1675788246809210880
I was an AI programmer on The Sims Medieval (which was based on The Sims 3) and the lead AI programmer on The Sims 4. This is pretty spot-on! There's more to it of course, but the core of the AI system is just as described here.
Things like visiting other sims were called Situations which helped define some of those rules. They weren't hard-coded, we managed it all with buffs, mostly created by designers. Buffs can be thought of as tags and you could have tests on interactions that said "don't allow someone with this buff to do this thing". So if you visited another sim, you got a visiting buff which prevented you from doing things that were inappropriate. You could also be invited to stay over, which was a different buff that relaxed many of those rules. Beds were a special case; they were owned by different sims so you would never autonomously use someone else's bed unless you were very close (like romantically involved).
Socials on The Sims 4 were governed by a special autonomy mode called subaction autonomy, which was a much simpler weighted random compared to the complex utility system of full autonomy. Designers would tune each social and weights for things like reactions and which social was chosen. Weights were adjusted by traits, buffs, and the short-term context (the short-term companion to the long-term relationship score). Short-term context models things like "I love my wife, but I'm at her right now", though in practice it was more like "this conversation is tanking" or "this is a really funny conversation". For example, when you're laughing and joking around with your friends, you're more likely to laugh at jokes than if you're just told a joke out of nowhere. This is even more true if everyone is laughing (that's why sitcoms have a laugh track).
For things like venues (restaurants and so on), we used the same core system. It's a Situation under the covers. Meta autonomy pulls in sims to fulfill different roles based on filters. It tries to use existing sims but if it can't, it creates a new sim. Townies are sims that don't live in any specific lot in the world. Any sim you can interact with are fully simulated. The auto-satisfy curves are used when you, the player, enter a lot with a bunch of sims that are already there. We use that to determine starting motives. The low LOD simulation is very, very light. It's mostly just story progression (getting a new job, promotion, etc.)
One thing the video talks about at the end is the ambiguity of the AI. This was very intentionally designed. Sims need to be reactive and always living in the moment. So while you might have a sim with an ambition to be a movie star, very little actually causes them to do that. They might enjoy movies more, for example, but not much else. Sims don't plan in any way. They run an AI tick and choose something to do based on motives, traits, mood, and so on. We've experimented with planning, but it caused confusion because players didn't know why their sim was doing what they were doing. Playtesters felt like they didn't have as much control.
Simlish was created by Stephen Kearin and Gerri Lawlor, two incredibly talented improvisers. I recommend looking them up, they're both awesome! (I've been doing improv for many, many years and I've had the pleasure of working with Stephen on several occasions.)
Sims being gay or bi vs straight is not entirely for storytelling, it's because of other countries. The design is that if you never ever initiate any gay content, you will never see gay content. This helped us get around laws in countries like Russia. That said, the video is correct that your player-controlled sim will never romance another sim, though non-player controlled sims can get married through story progression. Still, you won't see two men or two women get married unless you directly make it happen because of this issue.
There is a sort-of yes, and idea in the sims, but it's less designed than you might think. Basically, we have a set of interactions that can never be done autonomously, like quitting your job, getting married, and so on. We have the player make the big life decisions while the AI takes care of the rest.
If anyone has any questions, I'm happy to answer them.
https://twitter.com/SimMattically/status/1675788246809210880