• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

SimCity Traffic and AI is broken, Sims are fake

nbthedude

Member
So glad I went with Tropico 4 on sale for $10 over this because of the DRM. Having a blast with it and meanwhile in Simcity...

I have been playing Civ V this week during Spring Break like a crack fiend. Love Civ V (especially after Gods and Kings). Whatever complaints people had about high end play on that game (I'm not a high end player), most were fixed in the expansion and none of them come close to this kind of design imbalance clusterfuck.
 

Raticus79

Seek victory, not fairness
The only thing better would be A Wrinkle in Time style system where every worker leaves at the exact same time and arrives home to pull into their driveway at the exact same time.[...]

Someone please make a city with a bunch of parallel, disconnected roads with identical C-R-I sections on each so we can see if they all run like synchronized swimmers...
 
I'm starting to think the theories that this was a facebook game shifted to PC after facebook games collapsed are right. In that case EA had already been working on it for some time, and the focus was on getting it transitioned and released ASAP and not fixing glaring problems.

That would explain a lot:

* Worse AI = different team. Not really Maxis best crew, since it's just Facebook. Just get it working
* Javascript-based UI, meant for a webbrowser engine
* Online requirement
* Resource sharing
* Lots of DLC and extras planned
* Scaling issues. Especially as they probably designed it to be played a little bit each day, not hours on end
* Why it doesn't feel like a $60 title
 
I suspect that memory would be a concern as well. If each citizen is an object and you have 100k of them then that's going to add up. Another reason why devs need to go 64-bit.

I guess it really depends what all you need to keep track of for the sim. I'd be curious to find that out. I can't imagine the memory usage for simulating 200k sims would be more than 500MB at max though.
 

KKRT00

Member
Under 500 real pop: shows real population
500-40845: shows 500+(amount over 500 ^ 1.2)
Over 40845 real pop: shows 8.25 times real pop. (this maxes out that 1.2 exponential scaling at the multiplier it reaches at that level, so it doesn't get too ridiculous)

This is what i collected so far.

CPU:AMD Phenom QuadCore 3.2Ghz

Citizens = Cpu Usage
1400 = 33%
3400 = 35%
5000 = 36%
15000 = 37%
33000 = 38%
51000 = 39%

Basing calculation on that post, we get real population of
290 = 33%
767 = 35%
1107 = 36%
2936 = 37%
5753 = 38%
6181 = 39%

So basically every 1.5k we have around 1% increase on all 4 cores, which isnt as enormous, but its still significant, especially if You look at minimum requirements, so 200k city populated by real sims [not phantoms] should have utilization around 170% of quad core 3.2Ghz cpu. If we even consider 1% increase every 3k simulated sims, it gives us around 100% utilization of quad core cpu.
 

DieH@rd

Banned
ioiq6ejhqYKPm.gif

gandalf-nod.gif
 
Be cool if when you place a building where people work, you could assign the hours of the work shift. That alone would fix a lot of the jammed road conditions.
 
Can't EA get sued for this? I mean come on, they flat out lied, there is enough reason to think this.

Additionally, I have a huge craving for Sim games. Maybe I'll pop in Rollercoaster Tycoon, maybe I'll buy Tropico, but are there any other Sim management games? I'd love ones that emphasis micromanaging.

I know there's an old Railroad Tycoon game, I wonder how that holds up.
 

Kabouter

Member
Can't EA get sued for this? I mean come on, they flat out lied, there is enough reason to think this.

Additionally, I have a huge craving for Sim games. Maybe I'll pop in Rollercoaster Tycoon, maybe I'll buy Tropico, but are there any other Sim management games? I'd love ones that emphasis micromanaging.

I know there's an old Railroad Tycoon game, I wonder how that holds up.

Have you ever tried OpenTTD? Certainly one of the best management games ever. It's a modernized, expanded version of Transport Tycoon Deluxe. The Anno series, as mentioned by the previous poster, is great too if you're after micromanagement heavy games.
 

Toma

Let me show you through these halls, my friend, where treasures of indie gaming await...
Can't EA get sued for this? I mean come on, they flat out lied, there is enough reason to think this.

Additionally, I have a huge craving for Sim games. Maybe I'll pop in Rollercoaster Tycoon, maybe I'll buy Tropico, but are there any other Sim management games? I'd love ones that emphasis micromanaging.

I know there's an old Railroad Tycoon game, I wonder how that holds up.

Dwarf Fortress.
 

Zemm

Member
That would explain a lot:

* Worse AI = different team. Not really Maxis best crew, since it's just Facebook. Just get it working
* Javascript-based UI, meant for a webbrowser engine
* Online requirement
* Resource sharing
* Lots of DLC and extras planned
* Scaling issues. Especially as they probably designed it to be played a little bit each day, not hours on end
* Why it doesn't feel like a $60 title

I would be amazed if this wasn't the case.
 

TronLight

Everybody is Mikkelsexual
Basing calculation on that post, we get real population of
290 = 33%
767 = 35%
1107 = 36%
2936 = 37%
5753 = 38%
6181 = 39%

So basically every 1.5k we have around 1% increase on all 4 cores, which isnt as enormous, but its still significant, especially if You look at minimum requirements, so 200k city populated by real sims [not phantoms] should have utilization around 170% of quad core 3.2Ghz cpu. If we even consider 1% increase every 3k simulated sims, it gives us around 100% utilization of quad core cpu.
Didn't they say that the simulation ran on a single core?
 

Nokterian

Member
Have you ever tried OpenTTD? Certainly one of the best management games ever. It's a modernized, expanded version of Transport Tycoon Deluxe. The Anno series, as mentioned by the previous poster, is great too if you're after micromanagement heavy games.

Oh lawd Transport Tycoon. Hours and years of my life gone way back. Still have OpenTTD so damn glorious!
 

beje

Banned
Didn't they say that the simulation ran on a single core?

That level of simulation could work even on a Pentium 2 TBH, because even RollerCoaster Tycoon could do it, additionally keeping track of where people want or don't want to go
 

TronLight

Everybody is Mikkelsexual

Septimius

Junior Member
When it comes to path-finding for vehicles and the like, the big limit that Maxis are coming up against is the computational power of the average PC. Finding the optimal path over a non-Euclidean graph in minimal computational time is something that has a known and relatively simple solution. The issue is that when you're dealing with a graph as complex as the road network in one of Sim City's cities, and are trying to run the path-finding algorithm for hundreds or thousands of cars simultaneously, you need orders of magnitude more computational power than a home PC is going to provide. The only option you then have is to move to a non-optimal heuristic, which finds a "good guess" as to the optimal route. This is what 99% of games do when it comes to pathfinding, as it's computationally much cheaper and for the most part it produces paths that look pretty good. The issue, though, is that any non-optimal pathfinding heuristic is, by definition, going to throw up imperfect routes every so often. This is an even bigger issue when it comes to routing around traffic in a game like Sim City, as you're then dealing with non-Euclidean graphs, which adds a whole extra level of complexity.

There's simply no way around this when working within the confines of a typical PC. Either you go with an optimal solution and the game starts to chug with more than a couple of cars on the road, or you use a heuristic and end up with the occasional illogical traffic jam. It's a mathematically proveable fact, and there's nothing that Maxis can really do about it.

Non-Euclidean graph? What's that?

Also, no, it's not hard to do. You have a table of entries that you update every time you place a new road, or when a new building appears. Then the game finds all the optimal ways traveling from that place to all other places. And build it so that when you know how to get to your neighbour with the fastest route, you can use his fastest routes entries to get everywhere (which will use his neighbours' neighbours' route). Use weighted numbers for road-capacity, solve loop problematics, do special cases for intersections, et voila.

If you want to simplify it further, have a "prefered" cluster of industry and shops that that sim will want to go to, as not to map all work and shops in existence.

The sim needs to know where he's going when he leaves the house, and he can look it up in his transit table. You don't need to calculate things when people are moving, you just need some memory to store it for everyone.
 
Non-Euclidean graph? What's that?

Also, no, it's not hard to do. You have a table of entries that you update every time you place a new road, or when a new building appears. Then the game finds all the optimal ways traveling from that place to all other places. And build it so that when you know how to get to your neighbour with the fastest route, you can use his fastest routes entries to get everywhere (which will use his neighbours' neighbours' route). Use weighted numbers for road-capacity, solve loop problematics, do special cases for intersections, et voila.

If you want to simplify it further, have a "prefered" cluster of industry and shops that that sim will want to go to, as not to map all work and shops in existence.

The sim needs to know where he's going when he leaves the house, and he can look it up in his transit table.

Yeah, this goes along with what I was saying. Add in that if a sim retains the same house and the same job, he doesn't even need to recalculate it unless the road network changes.
 

Rebel Leader

THE POWER OF BUTTERSCOTCH BOTTOMS
Can't EA get sued for this? I mean come on, they flat out lied, there is enough reason to think this.

Additionally, I have a huge craving for Sim games. Maybe I'll pop in Rollercoaster Tycoon, maybe I'll buy Tropico, but are there any other Sim management games? I'd love ones that emphasis micromanaging.

I know there's an old Railroad Tycoon game, I wonder how that holds up.

I may do the same after what we've seen
 

Toma

Let me show you through these halls, my friend, where treasures of indie gaming await...
He does state that he does this in sandbox mode and some of the comments present good reasons why this might not work out in simulation mode.

Comments also enlighten that it actually works as being stated:
TLDR: Really as far as the game is concerned you're providing jobs and "shopping" endlessly from the parks so they're happy and content to grow. I'm fairly sure though that this should happen a lot slower (if at all) if parks didn't give shopping happiness considering you're only employing ~10% of your workers (~1% of the phantom population) which would make the money run out and the unhappiness from various things would run it out.
For anyone who wants to try this on not-sandbox I'd recommend keeping to the $ parks and power at first to accumulate enough tax income to support your city as you grow it. Maybe Fire and Police soon after that and then work your way up to some $$ sims by plopping some $$ parks in a few areas. Most importnat thing tho is to keep enough parks nearby so that you're "satisfying shopping"

Others seem to have mentioned that it indeed worked in simulation mode too.
 

charsace

Member
I guess it really depends what all you need to keep track of for the sim. I'd be curious to find that out. I can't imagine the memory usage for simulating 200k sims would be more than 500MB at max though.

Why couldn't it be. The cities can get big and building a path finding map for the AI could take a lot of memory. In some cases its just impossible to build a map for the AI conventionally because the memory requirements would be astronomical.
 

Septimius

Junior Member
If you look at this video it shows that they don't go by the shortest path. I think they just drive blindly until they find what they're looking for.
The deeper we go, the more feces we discover.

Haha, what a video. This is absolutely atrocious. It's like it was written by a student. No, as others have said, it displays shortest path. But the problem is that when a car is created, and it finds the first available, it doesn't claim it until it's there. That's a huge problem, and it creates this sort of crap.

If you create a car that is going to a home, you'd even lower your computational needs by that car claiming that house when it is created. That way, you won't have to recompute the 100 cars created before it reaches the house. Oh my god, this is gob-smacking silly.
 

charsace

Member
You are gonna have to recompute things at times guys. Destroying or adding things will cause you to recompute and then precomputed paths will have to recomputed too. And precomputation also takes up ram. The more you precompute, the more ram you are gonna need.
 

Septimius

Junior Member
http://www.youtube.com/watch?v=zHdyzx_ecbQ

Oh wow. The roads aren't even weighted. What the fuck.

You are gonna have to recompute things at times guys. Destroying or adding things will cause you to recompute and then precomputed paths will have to recomputed too. And precomputation also takes up ram. The more you precompute, the more ram you are gonna need.

There are easy ways to remedy that. If you remove a piece of road, you only need to recompute the second best road of the road you just deleted, which is no task at all. If you have your entries well thought out, you'd only need to replace the part of everyone's commute that says "From point A cross avenue 1 to go to point B" with "From point A take road 2 to road 7 and road 5 to point B", and you wouldn't need to update anything but one table.
 

Sblargh

Banned
Apparently the Sims don't need job, educations or any way to purchase goods to be perfectly happy and content.

http://www.reddit.com/r/SimCity/comments/1a7iqq/apparently_commercial_and_industrial_zones_are/

As I read this and try to put the justification of why it works in real world terms, it creates some pretty utopic shit. It looks like a very successful hippie society explaining to us how they achieved bliss:
"You see, if you don't go to work, you don't create traffic or pollution or even the need to go to work, and if you feel like shopping, you just go to the park, there's a hospital and firefighters and we take turns working on them, which gets us currency, not money, just a kind of passaport that allows us to enter the parks, as proof that we are contributing once a year, but we don't spend the currency, we just show it around so others see how much we are helping, so this makes us more and more happy because we never lose it. A good deed never fades away".
 
You are gonna have to recompute things at times guys. Destroying or adding things will cause you to recompute and then precomputed paths will have to recomputed too. And precomputation also takes up ram. The more you precompute, the more ram you are gonna need.
I'm not a software engineer, that's not my problem. Surely there must be a smarter solution to this issue than what they came up with.
 
Why couldn't it be. The cities can get big and building a path finding map for the AI could take a lot of memory. In some cases its just impossible to build a map for the AI conventionally because the memory requirements would be astronomical.

Because the data sets aren't that large, and can be represented in memory very efficiently. Transportation networks are just graphs. Even assuming you have 1000 distinct transportation pathways, representing that amount of data in memory is trivial.

You are gonna have to recompute things at times guys. Destroying or adding things will cause you to recompute and then precomputed paths will have to recomputed too. And precomputation also takes up ram. The more you precompute, the more ram you are gonna need.

Of course you have to recompute things. But you only need to recompute them under certain circumstances, such as when changes to the road networks occur. And any single change is only going to require a recomputation of pathing that sims that use that road, not the entire system. It seems that since the sims do not remember their job or their house they actually created the requirement that pathing algorithms be run for every sim on every cycle, instead of simply when necessary. That's just bad design. The RAM really isn't the issue here. It's not an astronomical amount of data.
 

Noema

Member
This is disappointing to say the least.

Has there ever been a game that has handled simulated traffic right? Or at least modeled it in a way that is relatively realistic, and that allows the player to tackle traffic as a problem that can be solved within a game.
 

Sblargh

Banned
This is disappointing to say the least.

Has there ever been a game that has handled simulated traffic right? Or at least modeled it in a way that is relatively realistic, and that allows the player to tackle traffic as a problem that can be solved within a game.

I want to say cities in motion, but my personal experience with that game is a catastrophic hell of infinite busses unable to ever meet the demand. On the other hand, I probably just suck at it.
 
Top Bottom