I completely agree.
Then, I look at the Hitman screenshot and think: what would I do with that crowd of NPCs? To me, they’re not only useless, but even annoying.
But if that’s what most players want, maybe they’ll go that way.
As I’ve already said – once the team has made their money and released DLC, I’m only willing to hear about their successes. If this were a free open beta, I’d sympathize.
Segment Zois into simulation layers, manage them within a radius — so that only those on the lot and/or within 20-30 meters are fully controlled by their datasets.
Beyond that, use semantics, event-driven logic, timeslicing, and routing (once the game assigns a path, the Zoi LOD/cloned puppet/placeholder simply walks it without active simulation under unified crowd “shepherd” entity, that’s what Unreal Engine’s Mass Framework and Mass AI are for).
For the rest, apply zoning in dormant areas, just like you described. The first idea in the post was solid — almost full Zoning, and I partially supported it. Zoi with specific semantics (tags) can be pulled into the active zone from dormant zones on demand by “wake-up” trigger, which resembles the Injecting-style scenario logic of Sims 4, but scaled to massive cities.
Injecting isn’t instancing — it’s logic injection on demand. For example, you have a Zoi tagged “delivery”; it doesn’t need to be simulated, just remain dormant and store its “delivery” tag. But when I want to order something, it wakes up, spawns into the active zone, follows basic routing, and once it’s within the radius of my lot, it receives full logic.
The game can also request tags not based on my input, but based on location triggers — say, a club is empty, and the game quickly pulls in Zoi tagged “single” or “looking for partner.” Boom! The club’s full, because there can be plenty of Zoi with those tags.
If mialuce66 created favorite NPCs, they can simply be marked as Followed Zois – they’ll be more heavily loaded, since they’re tracked in the background. And if they’re tagged “looking for partner,” they’ll show up at the club too.
But if the player has no idea who’s who, the tag will update: if that Zoi, while actively simulated in the club, finds a match, their tag becomes “with partner Name_Surname.” Next time, they’ll appear together at your restaurant — assuming they’re not “working” and the venue isn’t already full.
Exactly this - the Hitman crowd simulation is very impressive, but it’s a completely different type of game from inZOI, where every NPC on screen at any one time has to be fully simulated and interactible. You’re just never going to get that kind of crowd size and density in InZOI, at least with the computing technology we have at the moment.
I actually wish the game would just let us turn off ‘story progression’ features like relationships, Karma changes, deaths etc. for non-active households, the same way they currently do with aging. That would no doubt help lessen the simulation load a bit - and also be useful for ‘rotational’ players like me who like to swap between different families. (Not to mention avoiding issues like your Zois getting depressed for hours over the death of some random acquaintance they barely know.)
If you think conventionally, like a simulation software developer – then yes. But if you think like a gamer, designer willing to exchange precision for fun and performance while still preserving the open world – then there’s room to simplify, even by a factor of 2, 3, or 4, of course. That’s why everything we drop (except instancing) needs to be studied.
At the very least, if Zoi is more than 30 meters away from you, you can’t interact with them yet, unless you shout or throw something their way.