BigJKO

SimCity: The City Simulator

Recommended Posts

Oh I totally dig the music, had a chance to hear some of it the other day. As for the game though...

 

What am I supposed to make of this? (the result of putting a park at a 3 way intersection)

 

Share this post


Link to post
Share on other sites

I'm not appreciating the lies coming from not just EA, but Maxis about how the cloud servers are handling the load of the game.

Someone at Maxis should leak an offline patch or some equivalent.  Civil disobedience, man!

Share this post


Link to post
Share on other sites

How can the music be better than Sim City 4? That game had an amazing soundtrack.

In any case, I may have spoken too soon about the game being regressive. It appears that utopian commune cities with zero industrial or commercial zones work just fine. Nobody needs a job! Nobody needs to buy anything! Down with the capitalist system! The explanation:

I only watched the first 7 min or so of this but I have a pretty good idea of what's going on (mostly thanks to the information from http://www.reddit.com/r/SimCity/comments/1a5rme/population_data_and_behavioral_observations_from/ ). Relevant thing to watch for anyone who wants to try this is the population data map and mouse-over the money/happiness bars for the houses.

Basically your services (everything from your town hall to power plant but most importantly the parks) are providing a small amount of jobs for your sims. Those jobs are also jobs that don't require anything else for them to exist beyond your plopping them (e.g. no frieght requirement). So when one of the sims goes from their home to say the park to work, they're able to bring some money home.

Now, why are your residents staying happy? They should normally be getting most of their happiness from spending money at commercial sites as shoppers; just the existence of services/parks shouldn't be enough! Well according to the observations from that other thread I linked, sims can "shop" at parks, but that doesn't deduct from their money (from the other thread: "Can Shop at Park bringing 1 happiness Park Happiness IS Free, but you need to have money to bring with you and you get it back after visiting the park.")

So basically the sims are slowly accumulating some money from the service jobs and then getting happiness from visiting the park while they hold on to their money. The money never runs out which is why this allows growth at a non-trivial rate (once a house gets some money the shoppers will start accumulating happiness for the house until it maxes out and upgrades density. The money accumulates each time a sim brings back its income which makes the next wave of shoppers bring in even more happiness).

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"

And apparently this is one of the most efficient road layouts you can build:

spark20130127193819.png

The reason is that all the agents (people, fire trucks, power, etc) all just follow the road to the nearest thing they want (all the fire trucks go to the closest fire until it's put out, all the people go to the nearest house or job instead of a house or job they own, etc.) so if your city is laid out like an actual city, everyone will end up stuck in traffic all the time for stupid reasons. Whereas if everything is one continuous loop, the traffic flows freely and the worst case scenario is that you have to make it most of the way around the loop to where you are going.

Share this post


Link to post
Share on other sites

The way traffic works in this game almost feels like a bug they've not fixed yet due to the server capacity stuff. It's hard to believe they've created this sophisticated piece of software without even a rudimentary graph traversal algorithm, which would do wonders for traffic without affecting game performance at all. Now that servergate is winding down, hopefully we'll start to see patches fixing the most glaring problems. I'm interested to see how this version of SimCity will evolve, now that's it all server all the time. Will we see MMO-like frequent updates and changes, or will they stick to the Sims-like smaller expansion packs that adds pets and vacations?

 

Anyway, if you're playing this game, you sure could do worse than claiming a plot in the Thumb region on North America East 4. It seems like you have to need to have joined that server at least once to be eligible for invitations. Friend me or Gwardinen, and we'll hook you up!

 

I wonder if some of the calculations were disabled in one of the server performance patches. Just like Cheetah speed, maybe they were sending more tasks to the server to take care of?

 

 

Sad true, but this is how it works, just playing the game and doing a little reverse engineering in your head reveals it as such. It's why you get a "copy" ambulance and other stuff to send to other cities in the region rather than actually sending "your" ambulance. It's all just asynchronous stuff that "interacts" via the highway and etc.

 

Wait, you mean when you send a fire truck to another city, it doesn't take it from your city?

Share this post


Link to post
Share on other sites

How can the music be better than Sim City 4? That game had an amazing soundtrack.

In any case, I may have spoken too soon about the game being regressive. It appears that utopian commune cities with zero industrial or commercial zones work just fine. Nobody needs a job! Nobody needs to buy anything! Down with the capitalist system! The explanation:And apparently this is one of the most efficient road layouts you can build:

spark20130127193819.png

The reason is that all the agents (people, fire trucks, power, etc) all just follow the road to the nearest thing they want (all the fire trucks go to the closest fire until it's put out, all the people go to the nearest house or job instead of a house or job they own, etc.) so if your city is laid out like an actual city, everyone will end up stuck in traffic all the time for stupid reasons. Whereas if everything is one continuous loop, the traffic flows freely and the worst case scenario is that you have to make it most of the way around the loop to where you are going.

 

Yeah this seems to be the single biggest thing that's going to make the game feel really weird to play, particularly if bigger cities are implemented. The way agents work is going to affect all sorts of things in odd ways, as virtually everything seems to be based around a 'who gets there first' approach. I've been reading about huge masses of people going down a street because it contains available homes, but then once they're all taken they all walk out again and to the next street instead, doing this repeatedly until they're all homed.

 

Similar phenomena include shoppers encountering transports that take them to shopping areas before encountering a casino, meaning the casino is virtually never used, the fire engine thing, and basically most things that involve sims going to a thing.

 

It's like the game is visually representing logic the game should be figuring out immediately before we see the game's entities actually doing them — the kind of thing that a programmer is likely to find cool as fuck, but that any actual player will find bizarre to watch. Really the game should be figuring out these paths (with invisible agents I guess) and then sending the sims/vehicles on an appropriate route.

 

So strange. The game's fundamental systems are essentially really weak, which is surprising considering this game is built on many excellent predecessors by the same studio.

Share this post


Link to post
Share on other sites

Fun fact: it's made me to the tutorial three times, now. Once for each server I've joined.

 

Is there a way to skip it? I couldn't find one. ):

Share this post


Link to post
Share on other sites

So apparently you can make a 100% residential city without any drawbacks as long as the most basic of needs (like power) are provided.

 

Share this post


Link to post
Share on other sites

Fun fact: it's made me to the tutorial three times, now. Once for each server I've joined.

 

Is there a way to skip it? I couldn't find one. ):

 

I think you can return to the main menu after you have started the tutorial and start a new city.

Share this post


Link to post
Share on other sites

That, at least, seems somewhat fair if you're utilizing the region-based system with friends (or even by yourself, if you've got two cities), but if you're playing without other cities in the region, it's definitely bizarre.

 

What really confuses me about this pathing issue is, it's not a particularly difficult problem. Mark a house as claimed, once the first Sim tries to go there, and suddenly other Sims won't try race there. Apply that same logic on a permanent basis (again, not a particularly difficult problem), and suddenly Sims only ever go to one house and one job (unless they get evicted or fired or whatever - which automagically makes the entire system more interesting, in my opinion). Sure, changing it at this point might be a lot more work, but it's amazing they didn't build it up from scratch with that mindset. It's way more fun as a programmer, and a designer, and a player to have that kind of detail for such a low cost...

 

It's really weird.

 

Nappi: Ahh, thanks. I thought I'd tried that but I know there are times in the tutorial when it disables all buttons, and times when it doesn't. Maybe I tried during a locked phase.

Share this post


Link to post
Share on other sites

Shouldn't have watched this, now I really want to download SC4.

 

http://www.youtube.com/watch?feature=player_embedded&v=dUmL820VBK4

 

Do it! It's fantastic. As well as Rollercoaster Tycoon 2. Gods that game is good. Really want to get your small scale simulation on? Rollercoaster Tycoon is probably the best ever made, one and two are near identical really, but 2 doesn't have nearly the choice of parks to play unless you get both expansions.

 

Also, I'm totally going to do an analysis of their simulation now, yay AI programming! I honestly don't know that much about it specifically, graphics are my thing, but It'll still be fun to figure out.

 

And no, it doesn't "take" it from your city. Trading gets you "copies" of all that stuff, even power gets "copied". Which really seems the antithesis of the whole idea behind simulating this stuff.

Share this post


Link to post
Share on other sites

I only played the version of Sim City 4 with fucking sweet music.

Share this post


Link to post
Share on other sites

http://www.andrewwillmott.com/talks/inside-glassbox

Looks like GDC talk from 2012 already described its pathfinding algorithm in detail, and also explains why the agents are so dumb - every agent of same type are sharing the same distance field. Makes sense from cost perspective: It's easy to make an intelligent pathfinding algorithm using simple A*, but doing pathfinding for tens of thousands of agents would bring the cpu to its knees. D*-lite algorithm they're using has the benefit of fast re-computation when the world changes, and it makes it possible for many agents (no matter where they are) to leverage the pre-computed field (simple matter of descending walk along the connected roads). Essentially, you are only doing pathfinding once so it's super cheap. However, its strength is also its weakness, as no two agents can have different set of goals or different set of priorities (as long as they're sharing one distance field) and it's impractical to have many set of distance fields because the distance fields must permanently reside in memory ( or at the very least until all agents reach their destinations).

Share this post


Link to post
Share on other sites

I installed SimCity 4 today (for the first time) and it's the music is great, although not SimCity 2000 great.

 

EDIT: I had some weird SimCity 2000 music flashback immediately after typing that, like reverse PTSD.

Share this post


Link to post
Share on other sites

http://www.andrewwillmott.com/talks/inside-glassbox

Looks like GDC talk from 2012 already described its pathfinding algorithm in detail, and also explains why the agents are so dumb - every agent of same type are sharing the same distance field. Makes sense from cost perspective: It's easy to make an intelligent pathfinding algorithm using simple A*, but doing pathfinding for tens of thousands of agents would bring the cpu to its knees. D*-lite algorithm they're using has the benefit of fast re-computation when the world changes, and it makes it possible for many agents (no matter where they are) to leverage the pre-computed field (simple matter of descending walk along the connected roads). Essentially, you are only doing pathfinding once so it's super cheap. However, its strength is also its weakness, as no two agents can have different set of goals or different set of priorities (as long as they're sharing one distance field) and it's impractical to have many set of distance fields because the distance fields must permanently reside in memory ( or at the very least until all agents reach their destinations).

 

Oooh cool, was wondering exactly what they were doing, had been thinking more like table of A*, assuming, you know, the agent goes the same route (to work and back) everyday, only have to calculate once upon moving in and getting a job. Though now that I think it through, changing a road could cause a big slow down in that case. Nice to know what they're doing specifically.

 

Will watch later, don't have headphones now.

 

I also wonder if they take traffic time into account, they don't seem to. As in, a sim gets angry if he's late to work, or a place goes out of business if none of the workers show up? It doesn't seem to, but I've never had bad enough traffic to find out. It would explain why that single road city works so well though. As long as traffic is "flowing" it assumes everything is ok.

 

Edit - Yay found the D* lite paper! Is indeed based on A*, but using it the way they do, ughth. Still, supports the idea that much bigger cities could easily be supported. Honestly RAM is super cheap and most any PC that's going to meet their requirements of 2 gigs probably has a lot more. You can't even BUY a PC with less than like, 4 gigs today. Assuming large parts of this are static relative to city size, and of course at least a gig is always taken up by the OS, a city 4x the size should probably be no more than 3.5-4 gigs of RAM for your entire system. Maybe a lot less. Having a different "requirement" for bigger cities, especially as cheap a requirement as RAM, doesn't seem unreasonable.

 

Of course, I'd love for them to modify their pathfinding in realtime to account for traffic, spread it out like would normally be. Shouldn't be that costly.

 

Edit - In fact, starting in, this is what D* Lite sounds like! I mean, seriously, if they're using a similar scheme to the cell one they describe in the beginning why can't they count traffic as an untraversable cell or something similar to get traffic routing around?

Share this post


Link to post
Share on other sites

Though now that I think it through, changing a road could cause a big slow down in that case. Nice to know what they're doing specifically.

To be honest, I don't think that's a hard problem to solve, either. Just set up a low-priority queue of recalculating the sims' optimal path. Do each one individually as processing time becomes available. Has a bonus of almost being a bit like reality, anyway, as changes are generally adopted pretty slowly. "Oh, turns out this new road is faster. All right, I'll do that from now on." In real life, people would probably figure it out within a day or two, if the road is close to them, but, well, I'm not looking for perfection here.

Share this post


Link to post
Share on other sites

I've been playing SC4 Deluxe leading up to the launch of new SimCity. I think I can keep doing that and still be playing the most advanced game in the series.

Share this post


Link to post
Share on other sites

This might be the best overview video I've seen:

 

 

He builds a 400k city with no mass transit and no region purchaes, talks about all the bugs and quirks mentioned in this thread, showcases interesting strats, just all around a great summary of the game in its current state.  

Share this post


Link to post
Share on other sites

putting my programmer hat on

 

Edit - In fact, starting in, this is what D* Lite sounds like! I mean, seriously, if they're using a similar scheme to the cell one they describe in the beginning why can't they count traffic as an untraversable cell or something similar to get traffic routing around?

 

They could already be factoring in traffic density in their distance fields. From all the youtube videos I've seen, it seems like  agents remember traversal order at the time of leaving their house/work/whatever, and don't bother to update unless the player modifies a street that's part of their path, making them appear dumb even if the underlying algorithm is smart. Forcing each agent to periodically update might work - as long as they're not done simultaneously (otherwise you may end up with weird behaviours such as cars in a jammed street making u-turns in unison).

Alternatively they could take the traffic density out of distance cost entirely, don't bother with remembering traversal order per agent, and let them make decision in real time as they come across intersections. Of course you'd still be using distance fields but, at decision time, traffic density of each neighbouring node would be scaled by the cost difference between itself and the current node (with some random jitter to make it look natural), and added to the neighbour's cost for the purpose of traversal. This guarantees that it's still doing descending walk, avoiding whatever traffic jam it can, and eventually reaching the destination even if it wasn't using the most optimal path. Distance field doesn't need to be updated as often since it no longer depends on traffic condition, and it prevents potential issue of an agent pacing back and forth between two roads as traffic condition changes. This solution would be super cheap and take no additional memory. You'd only need make sure that traffic density data is updated fairly regularly, and it needs to be a bit fuzzy as well since an agent won't be able to see a traffic jam 2 road segments ahead.

 

But anyway. who knows - maybe they already considered all these solutions (and smarter solutions) found them unsuitable for perfectly good reasons. After all, they had a lot more time to think about this problem than I have.

Share this post


Link to post
Share on other sites

So, does anyone know how to make a successful tourist city? It feels lke no matter how many attractions and modes of tourist transport I try, I can't fill more than a single casino.

Share this post


Link to post
Share on other sites

Casinos are heavily dependent on specific wealth types.  Don't build high wealth casinos unless you have an airport, for example.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now