# Why are SimCitys cities so small? Because EA didn't make it for multicore CPU's



## 1ceTr0n (Feb 11, 2013)

GOD I HATE YOU SO DAMN FUCKING MUCH EA!!!!!!!!!!!!!!!

https://twitter.com/moskow23/status/296355832998801408


----------



## JNUKZ (Feb 11, 2013)

Another CitiesXL.
I'm disappointed... thought I could play SimCity again.


----------



## ChristTheGreat (Feb 11, 2013)

anyone has a big city? it's lagging?

Anyway, 2013 no multi-core, it's like 2013 on a single core CPU Pentium 4 xD


----------



## newtekie1 (Feb 11, 2013)

Wow, thats F'd up.


----------



## Easy Rhino (Feb 11, 2013)

what do you expect from the worst run game corp?? this will just fuel the rise of the indie dev on linux!


----------



## Phusius (Feb 11, 2013)

lulz EA.


----------



## erocker (Feb 11, 2013)

How disappointing. Unless they do something about this, no buy for me.

I was really looking forward to this game too.


----------



## 1ceTr0n (Feb 11, 2013)

erocker said:


> How disappointing. Unless they do something about this, no buy for me.
> 
> I was really looking forward to this game too.




The beta demo was enjoyable but if your a Simcity veteran like me, it felt like trying to have a sex with hot girl you used do bang and do whatever you want with, but now you can only fap yourself while watching her in a glass box.


----------



## MxPhenom 216 (Feb 11, 2013)

erocker said:


> How disappointing. Unless they do something about this, no buy for me.
> 
> I was really looking forward to this game too.



Yep, me too. EA sucks.


----------



## erocker (Feb 11, 2013)

Hopefully some of the EA brass will catch wind of the disappointment and crack the whip on the devs. lol.


----------



## Easy Rhino (Feb 11, 2013)

erocker said:


> Hopefully some of the EA brass will catch wind of the disappointment and crack the whip on the devs. lol.



not happening. this smells too much of marketing and corporate gimmickry. get used to it folks. EA hates your childhood.


----------



## 1ceTr0n (Feb 11, 2013)

erocker said:


> Hopefully some of the EA brass will catch wind of the disappointment and crack the whip on the devs. lol.




There's a better chance that Paris Hilton will become a nun and Lindsey Lohan will become sober then that.


----------



## FordGT90Concept (Feb 11, 2013)

1ceTr0n said:


> GOD I HATE YOU SO DAMN FUCKING MUCH EA!!!!!!!!!!!!!!!
> 
> https://twitter.com/moskow23/status/296355832998801408


They said it uses at least two cores heavily (game+sim, render).  That's reasonable.  I'm not complaining until it actually becomes a problem for me.


----------



## GC_PaNzerFIN (Feb 11, 2013)

So we heard of this new thing called multithreading. So we put everything heavy running in one thread and put audio and 3D rendering control to another. Yep, that is how we roll and there is nothing you can do about it.


----------



## MxPhenom 216 (Feb 11, 2013)

erocker said:


> Hopefully some of the EA brass will catch wind of the disappointment and crack the whip on the devs. lol.



Not while EA is laughing all the way to the bank.


----------



## FordGT90Concept (Feb 11, 2013)

Games are not something that can be easily multithreaded.  They always require synchronized multithreading and even that can do more harm than good (always as fast as the slowest thread).  I think, like most games, it will be limited moreso by the GPUs ability to render all the polygons quickly than the CPU doing the simulating.

I'm pretty sure SimCity 4 and SimCity Societies only ran on one heavy thread and the performance was fine even on large cities.


----------



## GC_PaNzerFIN (Feb 11, 2013)

FordGT90Concept said:


> Games are not something that can be easily multithreaded.  They always require synchronized multithreading and even that can do more harm than good (always as fast as the slowest thread).  I think, like most games, it will be limited moreso by the GPUs ability to render all the polygons quickly than the CPU doing the simulating.
> 
> I'm pretty sure SimCity 4 and SimCity Societies only ran on one heavy thread and the performance was fine even on large cities.



While I agree it is not easy. But since EA's subordinate DICE already proved with bf3 you can do it properly I can only wonder what is up going back to 1990s. Goddamn it is schewing nicely on all my six cores.


----------



## Fourstaff (Feb 11, 2013)

GC_PaNzerFIN said:


> While I agree it is not easy. But since EA's subordinate DICE already proved with bf3 you can do it properly I can only wonder what is up going back to 1990s. Goddamn it is schewing nicely on all my six cores.



You will have to port the entire game engine to mulithread, something I think the devs chose not to. DICE started from scratch, that's your difference.


----------



## FordGT90Concept (Feb 11, 2013)

GC_PaNzerFIN said:


> While I agree it is not easy. But since EA's subordinate DICE already proved with bf3 you can do it properly I can only wonder what is up going back to 1990s. Goddamn it is schewing nicely on all my six cores.


DICE's engine is worthless for a game like SimCity.  It is unclear what engine SimCity is using.

I already pointed out that it is going to be heavy on at least two cores.  Also bear in mind this was reported/discovered on Twitter which is constrainted to 140 characters.


----------



## Easy Rhino (Feb 11, 2013)

honestly, i don't think it will make any difference. like most simcity games, players will use cheat codes to give themselves millions of dollars, build massive cities, and then destroy them with alien attacks and earthquakes.


----------



## 1ceTr0n (Feb 11, 2013)

FordGT90Concept said:


> DICE's engine is worthless for a game like SimCity.  It is unclear what engine SimCity is using.




Glass Box and thusly thanks to EA, its limited



> EA/Maxis is developing the game using a new simulation engine called GlassBox, which takes a different approach from previous simulation games. Those games first simulated high-level statistics and then created graphic animations to represent that data. The GlassBox Engine replaces those statistics with agents, simulation units that represent objects like water, power, and workers; each graphic animation is directly linked to an agent's activity.[12] For example, rather than simply displaying a traffic jam animation to represent a simulated traffic flow problem, traffic jams are instead produced dynamically by masses of Sim agents that simulate travel to and from work.[13] A four-part video has been released featuring Dan Moskowitz, the lead gameplay engineer, talking about the engine simulation behavior.[14]


----------



## 1ceTr0n (Feb 11, 2013)

Easy Rhino said:


> honestly, i don't think it will make any difference. like most simcity games, players will use cheat codes to give themselves millions of dollars, build massive cities, and then destroy them with alien attacks and earthquakes.



Well see, with EA now requiring always on connections for "DRM" reasons as well as Cloud computing to handle the "data" load, your basically limited to what you can and can't do per EA's whim. Essentially, they can prevent you now from using cheat codes and trying to build massive citys because they designed the game to be controled and monitored on their end for the "benefit" of the customer"

See the piss and vinegar about this whole thing now?


----------



## TheMailMan78 (Feb 11, 2013)

Easy Rhino said:


> what do you expect from the worst run game corp?? this will just fuel the rise of the indie dev on linux!







Easy Rhino said:


> honestly, i don't think it will make any difference. like most simcity games, players will use cheat codes to give themselves millions of dollars, build massive cities, and then destroy them with alien attacks and earthquakes.


 That's all I ever did lol


----------



## FordGT90Concept (Feb 11, 2013)

1ceTr0n said:


> Glass Box and thusly thanks to EA, its limited


All that's really been said about GlassBox is what you posted--it works on agents rather than statistical simulations.  All that tells me is the "game+sim" thread is heavy unlike most games.  It doesn't say how it runs.


----------



## 1ceTr0n (Feb 11, 2013)

FordGT90Concept said:


> All that's really been said about GlassBox is what you posted--it works on agents rather than statistical simulations.  All that tells me is the "game+sim" thread is heavy unlike most games.  It doesn't say how it runs.




Because EA doesn't tell a shit nowadays, so all we have to go by is the scraps of tidbits of info that they do give us.


----------



## FordGT90Concept (Feb 11, 2013)

People played the beta and didn't complain about performance.  I'm not that concerned about it.


----------



## 1ceTr0n (Feb 11, 2013)

FordGT90Concept said:


> People played the beta and didn't complain about performance.  I'm not that concerned about it.



Well seeings my GTX 670 FTW was getting maxed out as my population hit 20k and I was moving around the city WITHOUT AA, I am a bit concerned i'll need a damn SLI setup to maintain playable framerates


----------



## RejZoR (Feb 11, 2013)

Don't buy it. Latest games that bang on the origin of the franchises (when they drop the numbers) they pretty much always suck. Stick with excellent SimCity 3000 and SimCity 4. Sure they are old but they are by far the best city building games.


----------



## 1ceTr0n (Feb 11, 2013)

I'm in a heated debate about this whole thing at the OVerclock forums. A lot of people just arn't getting it and even defending EA for this garbage.


http://www.overclock.net/t/1359624/...in-sim-game-loop-will-be-single-threaded/0_20


----------



## FordGT90Concept (Feb 11, 2013)

Again, I stress that this was on Twitter which is notoriously bad for giving inadequate details, only a headline.




RejZoR said:


> Don't buy it. Latest games that bang on the origin of the franchises (when they drop the numbers) they pretty much always suck. Stick with excellent SimCity 3000 and SimCity 4. Sure they are old but they are by far the best city building games.


They both lack the multiplayer component which did and continues to make SimCity 2000 Network Edition the best ever (except the crashing). XD


----------



## ...PACMAN... (Feb 11, 2013)

Surely the very nature of the game demands that it can utilize modern hardware to it's fullest. And Ford, I like the way you are a very calm guy but seriously you are telling me that a huge company with the resources they have at their disposal could not dedicate that time in creating an engine worthy of modern hardware? Really?


----------



## lilhasselhoffer (Feb 11, 2013)

Help me to understand.  What I'm hearing is:

1) I hate EA, and they must be behind this travesty.
2) The game only uses one core for simulation.
3) We don't know if the Beta you are testing has optimization, but one anecdotal experience is huge cities don't run well.


So you understand, I hate EA.  Origin is a crappy version of Steam, and EA deserves whatever they get when it comes to consumer hatred (given slimy business tactics).  Now, here's the other side of the token.

1) EA didn't develop the game engine, the developer did.  If you have a bone to pick raise it with them.
2) Anecdotal proof =/= reality.  Additionally, betas are beta for a reason.  It took Bethesda how long to get Skyrim frame rates out of the crapper?  That wasn't even the beta...
3) If you don't like it don't buy it.  The more painful it is for you, the more the publishers hurt.  EA buys up talent, leeches it dry, then moves on.  Imagine if you just didn't allow their leeching to work.  They would change their practices, or they would die.



A final point, companies exist to earn money.  If you don't pay, they will blame pirates.  After they can no longer blame piracy, they will change their practices.  It hurts not to play ME3, it will hurt to avoid Crysis, and it is a relief to avoid their yearly sports sims.  A little bit of pain now will mean changes for the better in the future.


----------



## newtekie1 (Feb 11, 2013)

1ceTr0n said:


> Well seeings my GTX 670 FTW was getting maxed out as my population hit 20k and I was moving around the city WITHOUT AA, I am a bit concerned i'll need a damn SLI setup to maintain playable framerates



And that takes us right back to what Ford said originally, the game will be limited by the GPU more so than the CPU on most systems, even if it is only using one CPU thread.

Honestly, after reading more about this, this isn't really as big of a deal as people have been making it out to me.  There were no performance issues related to the CPU in the beta, most people were maxing out their GPUs.  And even as you said, it is maxing out higher end GPUs.  So being limited to a single thread isn't going to be what limits performance in the end.



...PACMAN... said:


> Surely the very nature of the game demands that it can utilize modern hardware to it's fullest. And Ford, I like the way you are a very calm guy but seriously you are telling me that a huge company with the resources they have at their disposal could not dedicate that time in creating an engine worthy of modern hardware? Really?



Not if it adds a huge amount of work for a result that won't impact the actual performance of the game.  The game being heavy on a single thread only becomes an issue if it is the limiting factor, but so far the game seems to be massively GPU intensive, so the single CPU thread won't limit the game.

And look at the original twitter post.  It was in response to a question about how futureproof the engine is, there isn't any reference to the current game's performance.  There is no doubt that the current game will run just fine.


----------



## FordGT90Concept (Feb 11, 2013)

...PACMAN... said:


> Surely the very nature of the game demands that it can utilize modern hardware to it's fullest. And Ford, I like the way you are a very calm guy but seriously you are telling me that a huge company with the resources they have at their disposal could not dedicate that time in creating an engine worthy of modern hardware? Really?


Games are always designed to fit the needs of what is necessary to achieve the design goals.  If it doesn't take a hexa-core processor to run a solitaire game, why should they r!ce the game out to make it use six cores?  That would most likely be the worst solitaire game ever made.

Also keep in mind that EA is likely targetting the same audience that plays The Sims 3 now.  75% of those people are running laptops with pathetic specs.  You can't sell a game that targets extreme specs to a group with pathetic specs but you can sell a game that targets pathetic specs to a group with extreme specs.  Remember, EA is a corporation and they are out to make money.  They're going to target the broadest spectrum of buyers they reasonably can.


----------



## Disparia (Feb 11, 2013)

...PACMAN... said:


> Surely the very nature of the game demands that it can utilize modern hardware to it's fullest. And Ford, I like the way you are a very calm guy but seriously you are telling me that a huge company with the resources they have at their disposal could not dedicate that time in creating an engine worthy of modern hardware? Really?



Oh, they could, but big companies have analysts to maximize money and time spent vs estimated revenue. Give developers enough time and they could design an engine that would allow a map size in proportion to your system resources. A desirable situation for sure, but one that cuts the margins pretty thin.


----------



## ...PACMAN... (Feb 11, 2013)

You all make very fair points and I appreciate that. I'm just getting really sick of the fact that hardware scaling can be such a hit and miss thing nowadays. BF3 nailed it I think, they can appeal to a massive audience.  If you want all the goodies and whatever, you need the processor/GPU and hardware grunt to pull it off smoothly, however, if you still want to play it on your dual core/lower end card then you can also.

As for design choices, I go back to my original point, surely a game like this which relies on AI so much and with such scope/freedom of design choices demanded at the start of the project that they maybe took into account the power of modern day CPUs and the benefits they could bring to their title?


----------



## LAN_deRf_HA (Feb 11, 2013)

Odd. Shouldn't this be a console port? That would ensure multi-threading.


----------



## HalfAHertz (Feb 11, 2013)

Enodo DemoReel 2012 - YouTube
^nuff said.


----------



## FordGT90Concept (Feb 11, 2013)

I guarentee you that is "real time" rendered on a Tesla or similar card--if not many of them.  Also, if you pay attention, they change perspectives more than content.  A real-time game is a completely different ball of wax from a real-time motion picture.  The only thing that makes that motion picture difficult is the number of polygons (overcome by many Tesla cards).  I wouldn't be surprised at all if the rigs running that are $10,000+ dollar machines.


----------



## Kaynar (Feb 11, 2013)

You can always disable all extra cores and HT and remain with 1 core for lowest heat emission from having 1 core only. Then you go up to 8Ghz overclocking record and play SimCity like a boss rofl


----------



## agent00skid (Feb 12, 2013)

The only negative thing I can draw from this, is that it puts me a bit in doubt about the depth of the simulation. But I haven't tried it, or read anything about it, so can't say anything concrete about it.


----------



## FordGT90Concept (Feb 12, 2013)

If it is the same as what reviewers were playing, it's the most realistic city simulator to date.  An old explaination:
http://www.pcgamer.com/2012/03/08/simcity-inside-the-glassbox-engine/


----------



## Phusius (Feb 12, 2013)

I don't care if this game used 8 cores, I just don't like the way the graphics look, its funky to me.  Personal taste.  ./shrug

I am having a ton of fun with Cities in Motion though


----------



## dude12564 (Feb 12, 2013)

erocker said:


> Hopefully some of the EA brass will catch wind of the disappointment and crack the whip on the devs. lol.



Hate to mention it, but ME3.


----------



## hellrazor (Feb 12, 2013)

lilhasselhoffer said:


> A final point, companies exist to earn money.



Incorrect, companies exist to do a service and/or sell a product, money is only used to fund and advance the doing of a service and/or selling of a product - it's the corporation part that makes it exist solely to earn money.


----------



## Frick (Feb 12, 2013)

hellrazor said:


> Incorrect, companies exist to do a service and/or sell a product, money is only used to fund and advance the doing of a service and/or selling of a product.



In a dream world.

But surely you want to rage at the devs instead. Oh wait no its EA so people will default to neanderthal mode no matter what.


----------



## hellrazor (Feb 12, 2013)

As a programmer myself, there still shouldn't be anything in SimCity that can't be made to run on multiple threads.


----------



## Aquinus (Feb 12, 2013)

He did say: 





> The main sim + game loop is on a single thread, so extra cores don't help. We do make use of extra CPU for audio/rendering



I don't know how much CPU that the Sim and game loop takes but from what I gathered he said that for audio and rendering, multiple threads are used.


----------



## Easy Rhino (Feb 12, 2013)

i can tell you guys that it is going to be OK. this isn't the end of the world. im sure everything will play just fine.


----------



## brandonwh64 (Feb 12, 2013)

Easy Rhino said:


> i can tell you guys that it is going to be OK. this isn't the end of the world. im sure everything will play just fine.



There are PLENTY of single threaded games like this that run very well and their main goal was to have it work on lower end machines as well.

Every post in this thread reminds me of this.


----------



## ...PACMAN... (Feb 12, 2013)

It's 2013, why opt for single threaded when you can get so much more from a multi-threaded engine :shadedshu

If everything can run fine on a single core lets all just go back to semprons shall we? No, I didn't think so.


----------



## WhiteLotus (Feb 12, 2013)

...PACMAN... said:


> It's 2013, why opt for single threaded when you can get so much more from a multi-threaded engine :shadedshu
> 
> If everything can run fine on a single core lets all just go back to semprons shall we? No, I didn't think so.



Blame the developer. And it has yet to be proven that it is going to be an issue.


----------



## ...PACMAN... (Feb 12, 2013)

WhiteLotus said:


> Blame the developer. And it has yet to be proven that it is going to be an issue.



I am. Regardless of any possible issues, it's just sheer laziness. End Of.

You can get more out of modern hardware, hell some older games have even been updated along the way to encompass the benefits that multi-threading brings. Valve games and Wow to name just two examples off the top of my head.

It's precisely this "laissez faire" attitude that allows these developers to get away with shoddy work. It's in THEIR hands, not ours.


----------



## WhiteLotus (Feb 12, 2013)

It's SimCity. Did you really expect it to be a masterpiece?


----------



## ...PACMAN... (Feb 12, 2013)

WhiteLotus said:


> It's SimCity. Did you really expect it to be a masterpiece?



Actually, if they put time and thought into the game, the right resources and utilized modern hardware. Yes, it could be. Any game could be when done right, just look at minecraft?


----------



## newtekie1 (Feb 12, 2013)

...PACMAN... said:


> It's 2013, why opt for single threaded when you can get so much more from a multi-threaded engine :shadedshu
> 
> If everything can run fine on a single core lets all just go back to semprons shall we? No, I didn't think so.



You keep saying they could get so much more from a multi-threaded engine, but the fact is they couldn't.  The engine is graphically limited, not CPU limited, so the added development cost to make the engine multi-threaded would be wasted.



...PACMAN... said:


> Any game could be when done right, just look at minecraft?




Minecraft is single threaded...


----------



## FordGT90Concept (Feb 12, 2013)

Minecraft is very poorly executed (pathetic frame rates for how little there is to render), mostly runs on a single thread, and is CPU dependent when windowed.


----------



## de.das.dude (Feb 12, 2013)

so EA is in ties with intel, and they too are hellbent on destroying AMD


EA sucks anyways, their stuff is consumer vomit.


----------



## Disparia (Feb 12, 2013)

de.das.dude said:


> EA sucks anyways, their stuff is consumer vomit.



EA did alright with SC4, but's that largely because Maxis was one of their slow-to-absorb divisions (like being thrown into a sarlacc). There was just enough of that Maxis spirit left in 2001-2003 to make a decent enough sequel. Today, they're just another soulless code factory under the control of Evil Ambition. SC5 is clear evidence of this, being more of an upgrade to Farmville than a true sequel advancing the series.


----------



## ...PACMAN... (Feb 12, 2013)

newtekie1 said:


> You keep saying they could get so much more from a multi-threaded engine, but the fact is they couldn't.  The engine is graphically limited, not CPU limited, so the added development cost to make the engine multi-threaded would be wasted.
> 
> 
> 
> ...



Ha HA  That shows me 

It's amazing what you can do with a single thread lol Although Ford says it runs poorly so surely that backups the point ....


----------



## FordGT90Concept (Feb 12, 2013)

This thread isn't about Minecraft but, case in point: just standing still with my system (in the specs), the FPS is 50-93 and ~45 while moving.  Using water to harvest about 500 worth of a crop will drop it to 19 FPS.  My server, which has dual Xeon E5310 quad core processors and a HD 5570 gets 20-30 FPS standing still and ~20 FPS moving (constant dips into the single digits).  With BOINC running 100% on both systems, the FPS drops by about half.


----------



## SaltyFish (Feb 12, 2013)

Jizzler said:


> EA did alright with SC4, but's that largely because Maxis was one of their slow-to-absorb divisions (like being thrown into a sarlacc). There was just enough of that Maxis spirit left in 2001-2003 to make a decent enough sequel. Today, they're just another soulless code factory under the control of Evil Ambition. SC5 is clear evidence of this, being more of an upgrade to Farmville than a true sequel advancing the series.



I can see why the devs went for the two-core approach; quad-cores became mainstream not too long ago and they're trying to broaden their potential target market (people who will run the game on their 2008 Core 2 Duo systems). It's understandable, so I'm not too upset about that. I'd more worried about general crappy programing. The Sims 3 has a notorious issue involving the lack of a frame rate limit despite the game engine not being able to render more than 30 FPS. This meant GPUs needlessly thrashing to render the game at 120+ FPS despite the fact that most frames would be identical. Thank the gods there was a mod for that. Great way to kill a GPU though. :shadedshu




			
				Will Wright said:
			
		

> SimCity kind of worked itself into a corner, [because] we were still appealing to this core SimCity group. It had gotten a little complicated for people who had never played SimCity. We want to take it back to its roots where somebody who had never heard of SimCity can pick it up and enjoy playing it without thinking it was really, really hard.




I think the other reason for making SimCity 2013 smaller was to keep it from being too complex. SimCity 4 was great and all, but the devs (Will Wright himself included) were worried that SimCity 4 had begun to become too complex and that it was alienating potential newcomers. I guess the whole interconnecting cities thing was a bit too much.

We all know the result of that was SimCity Societies. It went too much in the other direction. The game would've been alright if it didn't have to live up to the SimCity name and wasn't marred by programing inefficiencies that made it more demanding than Crysis.


----------



## Bo$$ (Feb 12, 2013)

I played the beta, it intrigued me, i've never played SimCity. only city builder i've played was Caesar III. From my experience it was quite pleasurable and seemed easy to get into. I must say it was an oversight to leave it single threaded but to make it highly paralleled would have made it perform worse on some other configurations. I think they didn't really know their target market and TBH it looks pretty good, those who want to play it, buckle up, for the rest just stick to the old versions and be happy


----------



## FordGT90Concept (Feb 12, 2013)

SaltyFish said:


> I guess the whole interconnecting cities thing was a bit too much.


No, it was the micromanagement required to balance the budget.  You'd have to adjust range of service buildings as well as their budget to match the requirements of the facility (e.g. make schools only be funded enough to handle all the kids).

SimCity 4 was substantially harder to turn a profit than any of the previous games.  It really didn't add much (except U Drive) to the SimCity 3000 formula.




SaltyFish said:


> We all know the result of that was SimCity Societies. It went too much in the other direction. The game would've been alright if it didn't have to live up to the SimCity name and wasn't marred by programing inefficiencies that made it more demanding than Crysis.


SimCity Societies was the SimVille idea expanded--a merger of SimCity and The Sims (Will Wright always wanted to do that).  SimCity 5 is the spiritual successor to SimCity Societies but going back to the original SimCity formula where you zone and demand builds as opposed to building most buildings yourself.

SimCity Societies wasn't demanding at all on hardware.


----------



## hellrazor (Feb 13, 2013)

Bo$$ said:


> I must say it was an oversight to leave it single threaded but to make it highly paralleled would have made it perform worse on some other configurations.



Oh hardly, with clever use of arrays and thread-local storage the game would never have to touch a mutex.

And before Ford tries to jump on me, consider this:

```
for (uint64_t i = currentthreadid; i < whateverarraycount; i += numberofthreads){
    dosomething(whateverarray[i]);}
```


----------



## FordGT90Concept (Feb 13, 2013)

That's async.  Games largely can't be async.

http://msdn.microsoft.com/en-us/library/z8chs7ft.aspx
http://msdn.microsoft.com/en-us/library/ms228964.aspx


----------



## hellrazor (Feb 13, 2013)

Except that no two threads would ever touch the same object in whateverarray (maybe I should put that in somewhere, I'll go edit it).


----------



## FordGT90Concept (Feb 13, 2013)

If "whateverarray" was your entities, you basically just bottlenecked the entire game whenever a single entity requires a big update.

The array itself is liable to create cross-thread reference issues (two threads try to modify the same element simutaneously and the application implodes).

Additionally, to be synchronized, "dosomething" needs to check a global state and update it notifying all other related threads that is busy or ready.  Even when doing synchronized, it's only as fast as the slowest thread.


----------



## hellrazor (Feb 13, 2013)

Yes, slowest thread and weakest link and all that, but having a single thread do everything and the big update on the one entity would never be faster.

And if you'd look at my code snippet you'd know that no two threads would ever touch the same object in the array. currentthreadid is the sequence that the thread is created in (0, 1, 2, 3, etc.), as long as no thread's currentthreadid is above numberofthreads they will never touch.

And, yes, if it needs to check or mess with a global, then sure, you might need a mutex, but there are even ways around that.


----------



## FordGT90Concept (Feb 13, 2013)

At the end of the day, all x86 processors are procedural and that's its greatest weakness.  Specific things have to be done in a specific order in order for the next task to be completed.  Your example completely lacks context and only multithreads one task.  Dozens of tasks have to be completed every game tick and many of them can't be completed until something else is completed first.

In your example, the primary weakness is "whateverarray."  It needs to be populated and/or updated and that is happening in the main thread before any multithreading relative to it even begins.  Preparing to multithread can take more time than the actual mulithtreaded task.


Case in point, updating the "agents" are likely to be the biggest burden on the CPU.  It can't be multithreaded the way you described because agents interact with each other.  For example, agent a driving in a car behind agent b can't move ahead of agent  b until agent b updates.  When you have a hundred cars in a traffic jam, you have to update them in order from the first car which is looking for a way out of the jam to the last car that can't do anything this tick except notify the user that there's a problem.  You can't update the last car until you know all cars in front of it aren't moving.  No amount of multithreading is going to fix that.

I'm sure the game thread is idle most of the time except when dealing with user inputs so the simulating of the agents are going to be a bulk of the processing load and there's no reason to separate it.


----------



## hellrazor (Feb 13, 2013)

FordGT90Concept said:


> At the end of the day, all x86 processors are procedural and that's its greatest weakness.  Specific things have to be done in a specific order in order for the next task to be completed.  Your example completely lacks context and only multithreads one task.  Dozens of tasks have to be completed every game tick and many of them can't be completed until something else is completed first.



So put in stages, have all the threads work on an array of whatevers and then wait for them all to be done and then work on array of whateverelses.



FordGT90Concept said:


> In your example, the primary weakness is "whateverarray."  It needs to be populated and/or updated and that is happening in the main thread before any multithreading relative to it even begins.  Preparing to multithread can take more time than the actual mulithtreaded task.



Are you telling me that they aren't already in an array? How are they stored, as global or local variables?



FordGT90Concept said:


> Case in point, updating the "agents" are likely to be the biggest burden on the CPU.  It can't be multithreaded the way you described because agents interact with each other.  For example, agent a driving in a car behind agent b can't move ahead of agent  b until agent b updates.  When you have a hundred cars in a traffic jam, you have to update them in order from the first car which is looking for a way out of the jam to the last car that can't do anything this tick except notify the user that there's a problem.  You can't update the last car until you know all cars in front of it aren't moving.  No amount of multithreading is going to fix that.



Doing it sequentially is not better, you still have to figure out which agents are going to exit the road soonest (in order to have a decent sequential chain that will leave space for the ones behind it), except that you can account for agents that are about to exit 4 or 6 or 8 roads instead of one at a time. At worst (at intersections where you have a choice, probably) you will have to wait for at least the one choice you want to open up, but even then if your chain-building part is decent enough you'll never have to worry about that either.



FordGT90Concept said:


> I'm sure the game thread is idle most of the time except when dealing with user inputs so the simulating of the agents are going to be a bulk of the processing load and there's no reason to separate it.



Or you could just not seperate it.


----------



## lyndonguitar (Feb 13, 2013)

It may not be a big performance issue, but we could sure use more and maximize the performance, as almost everyone have multicore cpus now.

For small-normal sized cities it will be smooth, but c'mon its a *sandbox* game, a *City Building* game! the hardware should be the bottleneck not the software. :shadedshu


----------



## Aquinus (Feb 13, 2013)

hellrazor said:


> So put in stages, have all the threads work on an array of whatevers and then wait for them all to be done and then work on array of whateverelses.



You make it sounds like everything can run in parallel and that there are no interdependence between threads. If two things depend on one thing, then a mutex and locking would very much be necessary. I suspect a lot of things are shared and that programming this to be multi-threaded might not result in the benefits you're looking for.



hellrazor said:


> Are you telling me that they aren't already in an array? How are they stored, as global or local variables?



I'm saying that we don't know how they're stored and you can't make the assumptions you're making right now about the code, even more so when it's something that's closed source. It very well could be harder to implement multi-threading than you think. In fact it probably is.



hellrazor said:


> Doing it sequentially is not better, you still have to figure out which agents are going to exit the road soonest (in order to have a decent sequential chain that will leave space for the ones behind it), except that you can account for agents that are about to exit 4 or 6 or 8 roads instead of one at a time. At worst (at intersections where you have a choice, probably) you will have to wait for at least the one choice you want to open up, but even then if your chain-building part is decent enough you'll never have to worry about that either.



It's faster depending on the set of data, but I think at this point you're spewing out bulls**t unless your a Maxis developer. In the case you are, I can blame you for potentially poor design decisions and if you aren't, I can blame you for talking about something you know nothing about.



hellrazor said:


> Or you could just not seperate it.



I'm sure that the developers at EA didn't introduce more multi-threading (if you read that twitter post, it DOES NOT say that it isn't multi-threaded, it only says the sim and game-loop aren't, which means audio and rendering could be). So I would stop guessing and get your panties out of a bunch because anyone who isn't a Maxis developer isn't going to know for sure. Also unless performance was an issue, i wouldn't make a task multi-threaded unless I really benefited from it. We don't know if it will be a bottleneck so its a poor decision to just instantly assume that it will because you don't know what is happening with the game while it was in development.


----------



## Mr McC (Feb 13, 2013)

RejZoR said:


> Don't buy it. Latest games that bang on the origin of the franchises (when they drop the numbers) they pretty much always suck. Stick with excellent SimCity 3000 and SimCity 4. *Sure they are old but they are by far the best city building games.*



I beg to differ:

http://www.gog.com/gamecard/constructor


----------



## Disparia (Feb 13, 2013)

SaltyFish said:


> I can see why the devs went for the two-core approach; quad-cores became mainstream not too long ago and they're trying to broaden their potential target market (people who will run the game on their 2008 Core 2 Duo systems). It's understandable, so I'm not too upset about that. I'd more worried about general crappy programing. The Sims 3 has a notorious issue involving the lack of a frame rate limit despite the game engine not being able to render more than 30 FPS. This meant GPUs needlessly thrashing to render the game at 120+ FPS despite the fact that most frames would be identical. Thank the gods there was a mod for that. Great way to kill a GPU though. :shadedshu
> 
> http://www.fileplanet.com/123915/120000/fileinfo/GameSpy-LiveWire---Will-Wright-Interview
> 
> ...



Oh, I know. Like my first post touched upon, they _could_ make a game that scales (both in the technical and gameplay sense), but there's not enough Simcity diehards to make it worth it. Besides, if they put out a game as deep as the previous ones where cities are built over weeks and sometimes months, then other EA titles aren't getting bought. So there's financial incentive to nerf Simcity.


----------



## newtekie1 (Feb 13, 2013)

lyndonguitar said:


> It may not be a big performance issue, but we could sure use more and maximize the performance, as almost everyone have multicore cpus now.
> 
> For small-normal sized cities it will be smooth, but c'mon its a *sandbox* game, a *City Building* game! the hardware should be the bottleneck not the software. :shadedshu



Almost everyone has multi-core, yes, but most are dual-cores, and the game uses two threads.  So it is suited for the majority of computers out there.

And as it sits now, the hardware *is* the bottleneck, go read some of the earlier posts.  *G*PUs can't keep up with the game, so throwing more *C*PU power at it isn't going to help.


----------



## SaltyFish (Feb 13, 2013)

FordGT90Concept said:


> SimCity Societies was the SimVille idea expanded--a merger of SimCity and The Sims (Will Wright always wanted to do that).  SimCity 5 is the spiritual successor to SimCity Societies but going back to the original SimCity formula where you zone and demand builds as opposed to building most buildings yourself.
> 
> SimCity Societies wasn't demanding at all on hardware.



Maybe my memory is off, but I remember there was some sort of slowdown after playing Societies for a while. At the very least, there was a memory leak or some scaling issue for larger cities.



newtekie1 said:


> Almost everyone has multi-core, yes, but most are dual-cores, and the game uses two threads.  So it is suited for the majority of computers out there.
> 
> And as it sits now, the hardware *is* the bottleneck, go read some of the earlier posts.  *G*PUs can't keep up with the game, so throwing more *C*PU power at it isn't going to help.



One other thing I find amusing... when it comes to Haswell and future CPUs, everyone is talking about how powerful CPUs are now and how little need there is to upgrade. Suddenly SimCity 2013's single-threaded simulation announcement comes and now people are all worried about their CPU being a bottleneck. Coincidence or shady collusion (especially if Haswell optimisations allow for some crazy über-Turbo Boost scaling)? But then again, gamers are interesting lot when it comes to hardware adequacy.


----------



## hellrazor (Feb 13, 2013)

Aquinus said:


> You make it sounds like everything can run in parallel and that there are no interdependence between threads. If two things depend on one thing, then a mutex and locking would very much be necessary. I suspect a lot of things are shared and that programming this to be multi-threaded might not result in the benefits you're looking for.


You don't need a mutex if nothing is writing to a variable that something else is trying to read and/or write to, if you don't write to that particular variable you don't need a mutex. If you have a stage for writing to that variable, then all the threads in the world can read from it whenever they want. It's quite simple that way.



Aquinus said:


> I'm saying that we don't know how they're stored and you can't make the assumptions you're making right now about the code, even more so when it's something that's closed source. It very well could be harder to implement multi-threading than you think. In fact it probably is.


There really is no other option to store them. They're either in arrays, or multiple arrays, or arrays in arrays (which is still multiple arrays). There's nothing else. Hell, they might even use linked lists, but those are still plenty multi-threadable.

What other ways could you think of?



Aquinus said:


> It's faster depending on the set of data, but I think at this point you're spewing out bulls**t unless your a Maxis developer. In the case you are, I can blame you for potentially poor design decisions and if you aren't, I can blame you for talking about something you know nothing about.


Because in all my years I've never had to make a program run on multiple cores? Anybody with half a brain and a failed course in Intro to Programming could tell you this crap.



Aquinus said:


> I'm sure that the developers at EA didn't introduce more multi-threading (if you read that twitter post, it DOES NOT say that it isn't multi-threaded, it only says the sim and game-loop aren't, which means audio and rendering could be). So I would stop guessing and get your panties out of a bunch because anyone who isn't a Maxis developer isn't going to know for sure. Also unless performance was an issue, i wouldn't make a task multi-threaded unless I really benefited from it. We don't know if it will be a bottleneck so its a poor decision to just instantly assume that it will because you don't know what is happening with the game while it was in development.


And there's nothing stopping them from making the game loop multi-threaded, as the ample evidence would suggest.


----------



## Aquinus (Feb 14, 2013)

hellrazor said:


> Because in all my years I've never had to make a program run on multiple cores? Anybody with half a brain and a failed course in Intro to Programming could tell you this crap.



Neither have I, but I also haven't been given a project that has time constraints on the time it takes to execute and even on very large sets of data, 10 seconds is acceptable for a report and if something takes minutes or hours then you only run it occasionally in cron or something. I guess the point I'm trying to make is that you don't make something multi-threaded if you don't have to. It extra time and resources that could be better spent elsewhere.


hellrazor said:


> There really is no other option to store them. They're either in arrays, or multiple arrays, or arrays in arrays (which is still multiple arrays). There's nothing else. Hell, they might even use linked lists, but those are still plenty multi-threadable.
> 
> What other ways could you think of?


Well, I would imagine that they would be grouped together in an array for tasks that are similar but that's not the primary problem. Where are these threads getting initialized? Are they getting re-initialized every time the simulator ticks? The resources reset and the thread restarted. Using the main loop to spawn threads will slow down the main loop. So these threads would need to be created far ahead of time before the main game loop is running. It needs to be able to run independently and still provide data when the main game loop wants it. I suspect that it's possible with the resources that Maxis has that multi-threading the game engine would only complect the problem and introduce another vector for inefficiency.



hellrazor said:


> Because in all my years I've never had to make a program run on multiple cores?


All in all, if Maxis really thought Sim City needed more multi-threading I'm sure they would do it, but either it doesn't need it or Maxis has some dumb software developers. I suspect it has to do with the game not needing it for simulation. He did imply that there are extra threads for rendering and audio production so this would make sense.


hellrazor said:


> And there's nothing stopping them from making the game loop multi-threaded, as the ample evidence would suggest.


I find your generalization of all software being clumped into a group called "multi-threadable" really kind of disturbing. Of course most stuff is multi-threadable how much time and effort are you going to have to put into development to make it work and work well while still delivering it in a reasonable amount of time and on budget.


----------



## hellrazor (Feb 14, 2013)

Aquinus said:


> Neither have I, but I also haven't been given a project that has time constraints on the time it takes to execute and even on very large sets of data, 10 seconds is acceptable for a report and if something takes minutes or hours then you only run it occasionally in cron or something. I guess the point I'm trying to make is that you don't make something multi-threaded if you don't have to. It extra time and resources that could be better spent elsewhere.


That was supposed to be sarcasm, sorry.



Aquinus said:


> Well, I would imagine that they would be grouped together in an array for tasks that are similar but that's not the primary problem. Where are these threads getting initialized? Are they getting re-initialized every time the simulator ticks?


No, because that's stupid. Spawn them during initialization, like the average not-retarded person.



Aquinus said:


> The resources reset and the thread restarted.


Or the thread is in an infinite loop waiting on a bunch of queues, like programs not from the late '80s or early '90s.



Aquinus said:


> Using the main loop to spawn threads will slow down the main loop. So these threads would need to be created far ahead of time before the main game loop is running.


Yes, I know that.



Aquinus said:


> It needs to be able to run independently and still provide data when the main game loop wants it.


Write a few queues in a half-decent fashion.



Aquinus said:


> I suspect that it's possible with the resources that Maxis has that multi-threading the game engine would only complect the problem and introduce another vector for inefficiency.


As if running it in a single thread was not the single biggest contributor to inefficiency ever.



Aquinus said:


> All in all, if Maxis really thought Sim City needed more multi-threading I'm sure they would do it, but either it doesn't need it or Maxis has some dumb software developers.


I blame both Maxis and EA for this retarded shit.



Aquinus said:


> I suspect it has to do with the game not needing it for simulation. He did imply that there are extra threads for rendering and audio production so this would make sense.


Well of course nothing needs to be multithreaded, just like nothing needs a GPU to render graphics.



Aquinus said:


> I find your generalization of all software being clumped into a group called "multi-threadable" really kind of disturbing. Of course most stuff is multi-threadable how much time and effort are you going to have to put into development to make it work and work well while still delivering it in a reasonable amount of time and on budget.


Which is the reason I blame both EA and Maxis. Maxis should have gone to EA to tell that they needed more time and/or money to make it half-way decent; and whether or not Maxis did that, EA did not give them enough time and/or money.


----------



## SaltyFish (Feb 14, 2013)

Aquinus said:


> hellrazor said:
> 
> 
> > And there's nothing stopping them from making the game loop multi-threaded, as the ample evidence would suggest.
> ...


This discussion between the two of you seems awfully familiar...

Except for maybe the people who played the short-lived closed beta, I don't think anyone outside Maxis' programmers knows how complex the simulation algorithms are. Anyone from the beta care to share their experiences?


----------



## FordGT90Concept (Feb 14, 2013)

hellrazor said:


> Because in all my years I've never had to make a program run on multiple cores? Anybody with half a brain and a failed course in Intro to Programming could tell you this crap.


Really?  At least half of my programs use async multithreading (scales to the number of available logical proprocessors).  I've never done sync multithreading but I'm very aware of the challenges multithreading creates.  Cross-thread reference is a major PITA.  It almost always takes more code to get worker threads to update the main thread than it takes to do the work.




hellrazor said:


> As if running it in a single thread was not the single biggest contributor to inefficiency ever.


Technically, multithreading is always less efficient (results out/clocks in) than single threading because multithreading requires management overhead.


----------



## hellrazor (Feb 14, 2013)

FordGT90Concept said:


> Really?  At least half of my programs use async multithreading (scales to the number of available logical proprocessors).  I've never done sync multithreading but I'm very aware of the challenges multithreading creates.  Cross-thread reference is a major PITA.  It almost always takes more code to get worker threads to update the main thread than it takes to do the work.


It was supposed to be sarcasm, yes I've made at least two or three programs that are multithreaded.



FordGT90Concept said:


> Technically, multithreading is always less efficient (results out/clocks in) than single threading because multithreading requires management overhead.


But wasting 3 or 5 or 7 cores is totally effiecent, whatever you say.


----------



## Aquinus (Feb 14, 2013)

hellrazor said:


> But wasting 3 or 5 or 7 cores is totally effiecent, whatever you say.



I'm really getting tired of your rhetoric. This isn't about thread efficiency this is about programming efficiency. If it takes you x hours to write the engine to be single threaded but twice as much time to make it multi-threaded for two threads and three times as much for 4 and so on they're going to opt for the single threaded option over the multi-threaded option.

I've written a few synchronous multi-threaded applications and it can get complicated very quickly. You also can't run the worker threads infinitely for a very good reason. The sim isn't running infinitely. There is a concept of time in the simulation which would most likely be described in the application as a number of tick that the simulation has run for. You have to synchronize that tick to every worker thread and a worker thread that is actively running isn't going to want to get interrupted to start over (that thread interrupt will also add overhead.)

You say you can use a Queue like it is always thread-safe. Queues can have race conditions too and when you're writing a Sim where everything is writing to each other you're writing over another thread's memory. So if you really consider the amount of synchronization that needs to be done, as the world get larger that synchronization step is going to take longer with the more threads you have.

Stateless applications love to be multi-threaded and I encourage you to do so if it will benefit but unfortunately this is not. Stateful applications do not love to be multi-threaded, they're complex (in the terms of not simple (not to be confused with easy,) since you're really going to be complecting multiple different ideas together. Not to say that you can't make them multi-threaded but the more states you have in any application the more difficult it is to keep multiple threads in sync.

Also the threads need to be balanced. If one thread has more processing than the other ones then you'll be waiting on that last thread (because the entire simulation sim must be complete before moving on to the next.) So now you have the added a management problem of load balancing between threads because systems like Intel's CPUs with HTT. Those HTT cores do not scale linearly and each thread offers a varying level of performance. Same with floating point math on a newer BD or PD chip that hasn't been optimized with FMA3.

So all in all, you're over simplifying how easy it is to program a stateful, syncronized, multi-threaded system and you've never truly worked on a large scale project if you think it will be easy. If multi-threading was as easy as you claimed everyone would be using it left and right with very little overhead.

A lot of programmers seem to forget this but the more simple the program the faster it will run and the easier it will be to change in the future and when I say simple I mean the code and complexity has a lot to do with why code runs poorly and why it sucks.

If you are a programmer (less so if you do it as hobby, but I recommend this to any programmer in the field,) I would watch this. It's a video at a Clojure conference and the talk revolves around what the definition of "Simple" is and which is right and how applying "Simples" to an application will result in better code. I recommend it. It's not completely related to this talk but it describes how complexity can snowball.

Also to your queue argument. You need to lock down the queue every time you push or pull an item out of the queue because you're altering it and a race condition wouldn't just be bad for the application, it could corrupt the queue.


----------



## FordGT90Concept (Feb 14, 2013)

hellrazor said:


> But wasting 3 or 5 or 7 cores is totally effiecent, whatever you say.


Assuming there is more than one logical processor in the first place.  If there isn't, you added inefficiency in the name of efficiency! 




Aquinus said:


> Also to your queue argument. You need to lock down the queue every time you push or pull an item out of the queue because you're altering it and a race condition wouldn't just be bad for the application, it could corrupt the queue.


A main thread could manage the queue (push work on and pop it off to be sent to another thread) but if those results have to come back in the same order they were sent (which should, because why else would you be using a queue?) multithreading the queue will be a disaster.


FYI, instead of locks, I use events so instead of locking memory by a thread, I always make the thread that owns it perform the update.  The weakest link becomes the main thread though because if it gets spammed with work to do by worker threads, the whole thing slows to a crawl (the main thread and all of the worker threads).


----------



## hellrazor (Feb 14, 2013)

Aquinus said:


> I'm really getting tired of your rhetoric. This isn't about thread efficiency this is about programming efficiency. If it takes you x hours to write the engine to be single threaded but twice as much time to make it multi-threaded for two threads and three times as much for 4 and so on they're going to opt for the single threaded option over the multi-threaded option.


Except that it doesn't, it might take 50% more time, and then all it takes is changing a variable or two to make more threads handle it. Hell, you could take half an hour and make that part automatic.



Aquinus said:


> I've written a few synchronous multi-threaded applications and it can get complicated very quickly. You also can't run the worker threads infinitely for a very good reason. The sim isn't running infinitely.


Or you could have your main thread shove "kill" on the queue, and everything gets nice and orderly.



Aquinus said:


> There is a concept of time in the simulation which would most likely be described in the application as a number of tick that the simulation has run for. You have to synchronize that tick to every worker thread and a worker thread that is actively running isn't going to want to get interrupted to start over (that thread interrupt will also add overhead.)


Or you could have your worker threads send your main thread something when they're done, and the main thread doesn't shove anything on the queue until they're all done.



Aquinus said:


> You say you can use a Queue like it is always thread-safe. Queues can have race conditions too and when you're writing a Sim where everything is writing to each other you're writing over another thread's memory. So if you really consider the amount of synchronization that needs to be done, as the world get larger that synchronization step is going to take longer with the more threads you have.


Okay, you might have to have a total of one entire mutex per thread in the whole game, just for pthread_cond_broadcast.



Aquinus said:


> Stateless applications love to be multi-threaded and I encourage you to do so if it will benefit but unfortunately this is not. Stateful applications do not love to be multi-threaded, they're complex (in the terms of not simple (not to be confused with easy,) since you're really going to be complecting multiple different ideas together. Not to say that you can't make them multi-threaded but the more states you have in any application the more difficult it is to keep multiple threads in sync.


Graphics cards have been multithreaded (or something alike) for many millenia, and they are plenty stateful, and they seem to do it just fine.



Aquinus said:


> Also the threads need to be balanced. If one thread has more processing than the other ones then you'll be waiting on that last thread (because the entire simulation sim must be complete before moving on to the next.) So now you have the added a management problem of load balancing between threads because systems like Intel's CPUs with HTT. Those HTT cores do not scale linearly and each thread offers a varying level of performance. Same with floating point math on a newer BD or PD chip that hasn't been optimized with FMA3.


Why don't you just put the whole load on one thread and call it a singlethreaded? Having multiple threads wait on another is no worse than having one thread wait on itself.



Aquinus said:


> So all in all, you're over simplifying how easy it is to program a stateful, syncronized, multi-threaded system and you've never truly worked on a large scale project if you think it will be easy. If multi-threading was as easy as you claimed everyone would be using it left and right with very little overhead.


If you design it right in the first place it's only slightly harder, unless you screw something up. I admit that debugging multi-threaded programs is harder as long as the parts that have to do with multithreading are the problem.



Aquinus said:


> A lot of programmers seem to forget this but the more simple the program the faster it will run and the easier it will be to change in the future and when I say simple I mean the code and complexity has a lot to do with why code runs poorly and why it sucks.


There are only a few places that multithreaded gets complex: one is the queue-handling, and the other is the design (which has at least a little bit to do with the queue-handling). But having been doing nothing for many years the design shouldn't be a problem.



Aquinus said:


> If you are a programmer (less so if you do it as hobby, but I recommend this to any programmer in the field,) I would watch this. It's a video at a Clojure conference and the talk revolves around what the definition of "Simple" is and which is right and how applying "Simples" to an application will result in better code. I recommend it. It's not completely related to this talk but it describes how complexity can snowball.


I'll go look at that some time.



Aquinus said:


> Also to your queue argument. You need to lock down the queue every time you push or pull an item out of the queue because you're altering it and a race condition wouldn't just be bad for the application, it could corrupt the queue.


As above, you might need a whole one mutex per thread. God forbid.


----------



## Aquinus (Feb 15, 2013)

hellrazor said:


> Except that it doesn't, it might take 50% more time, and then all it takes is changing a variable or two to make more threads handle it. Hell, you could take half an hour and make that part automatic.



You're making assumptions about the complexity of their code. You're spewing BS.


hellrazor said:


> Or you could have your main thread shove "kill" on the queue, and everything gets nice and orderly.



Then every tick you have to restart all of the threads again. Like that doesn't add to the overhead. 


hellrazor said:


> Or you could have your worker threads send your main thread something when they're done, and the main thread doesn't shove anything on the queue until they're all done.



So you have two options. You can either inform the main thread that you're done and that you're shutting down in that case the thread stops and you need to dedicate resources to restarting it every tick, or the thread will continue running in a sleep-while loop, wasting CPU resources (or adding to the latency, you can't sleep and awaken immediately when an event occurs,) until something is ready to be done. Either way you're wasting resources in the interim and the complexity of their system might not enable the changes you describe to be implemented as easily as you describe. 


hellrazor said:


> Okay, you might have to have a total of one entire mutex per thread in the whole game, just for pthread_cond_broadcast.



Pretty sure that Sim City is being written for Windows, which is not POSIX compliant so no pthreads.  You should know better if you claim to know as much as you do.



hellrazor said:


> Graphics cards have been multithreaded (or something alike) for many millenia, and they are plenty stateful, and they seem to do it just fine.


That's because of the kind of data it processes. You can't tell me all data is like graphics data because that's stupid and asinine. Also they aren't "multi-threaded" the GPU is PHYSICALLY BUILT to run these instructions in parallel. That is what shaders do and not all data needs to be processed the same way. Some things do, not not all. You're really comparing apples and oranges here.



hellrazor said:


> Why don't you just put the whole load on one thread and call it a singlethreaded? Having multiple threads wait on another is no worse than having one thread wait on itself.



Why would a single thread be waiting on itself? Haven't I already said multiple times that the game isn't single threaded? It's only the game loop and sim that is. Rendering and audio are done separately. Not sure what you're trying to get at with this one.


hellrazor said:


> As above, you might need a whole one mutex per thread. God forbid.


The problem is not one mutex but how often threads have to stop because another thread needs this one mutex. You can run it on as many threads as you want but now threads are fighting for access to the queue and threads will start spending more time waiting than it would have otherwise if it were a single thread.

Once again, you're assuming that the game loop needs the extra optimization. I suspect that it does't. Regardless if it's multi-threadable or not, it very well might not need it to begin with and if you disagree that's great but until the game is out or a beta released, we will not know and if you insist that it is necessary you better have some proof to back up that that claim that it needs it.


----------



## Bo$$ (Feb 15, 2013)

Aquinus said:


> It's only the game loop and sim that is. Rendering and audio are done separately



Brilliant  I'll being waiting now thanks


----------



## hellrazor (Feb 15, 2013)

Aquinus said:


> You're making assumptions about the complexity of their code. You're spewing BS.


What, making a few threads and shoving in a few functions for that thread to do what amounts to slightly more than what the single thread is too damn difficult or some shit?




Aquinus said:


> Then every tick you have to restart all of the threads again. Like that doesn't add to the overhead.


Well damn, it seems like you can't figure out how to not push kill until the main thread decides that the sim needs to die. It seems pretty obvious, but alas, you've managed to not figure it out.



Aquinus said:


> So you have two options. You can either inform the main thread that you're done and that you're shutting down in that case the thread stops and you need to dedicate resources to restarting it every tick, or the thread will continue running in a sleep-while loop, wasting CPU resources (or adding to the latency, you can't sleep and awaken immediately when an event occurs,) until something is ready to be done. Either way you're wasting resources in the interim and the complexity of their system might not enable the changes you describe to be implemented as easily as you describe.


Making threads wait on a signal is just SO DAMN HARD. You'd think whoever wrote it was the devil making things far too difficult for the average dev!



Aquinus said:


> Pretty sure that Sim City is being written for Windows, which is not POSIX compliant so no pthreads.  You should know better if you claim to know as much as you do.


I know exactly as much as I claim.



Aquinus said:


> That's because of the kind of data it processes. You can't tell me all data is like graphics data because that's stupid and asinine. Also they aren't "multi-threaded" the GPU is PHYSICALLY BUILT to run these instructions in parallel. That is what shaders do and not all data needs to be processed the same way. Some things do, not not all. You're really comparing apples and oranges here.


I hardly see how changing ones and zeros is any different from changing any other ones and zeros. Are you also trying to tell me that a multicore CPU isn't built to run things in parellel?



Aquinus said:


> Why would a single thread be waiting on itself? Haven't I already said multiple times that the game isn't single threaded? It's only the game loop and sim that is. Rendering and audio are done separately. Not sure what you're trying to get at with this one.


Oh, in case you didn't know, a single thread has to wait on itself to finish an instruction (or function, or whatever) in order for it to do something else.



Aquinus said:


> The problem is not one mutex but how often threads have to stop because another thread needs this one mutex. You can run it on as many threads as you want but now threads are fighting for access to the queue and threads will start spending more time waiting than it would have otherwise if it were a single thread.


Because a simple read instruction and a lock and unlock will just tie up the whole damn processor like some kind of high-tech, miniature, hog. Despite the fact that when I said "one whole mutex per thread" I was implying that each thread would have their own queue, not to make them do different things, but to make each thread have it's own personal mutex so it doesn't have to wait on the other ones.



Aquinus said:


> Once again, you're assuming that the game loop needs the extra optimization. I suspect that it does't. Regardless if it's multi-threadable or not, it very well might not need it to begin with and if you disagree that's great but until the game is out or a beta released, we will not know and if you insist that it is necessary you better have some proof to back up that that claim that it needs it.


I'm saying it needs more scalability.


----------



## FordGT90Concept (Feb 15, 2013)

hellrazor said:


> What, making a few threads and shoving in a few functions for that thread to do what amounts to slightly more than what the single thread is too damn difficult or some shit?


I think that's the part you're not getting.  The game and simulation are effectively in a single function.  You really can't multithread it without breaking it or, at bare minimum exponentially increasing the complexity of it.  It always comes down to cost versus benefit and I'm positive EA ran some alpha simulations deciding that the cost versus benefit simply wouldn't pay off.


I mean, seriously, why are people making a big fuss out of this?  This is a simulator game.  Do you know what simulators do when the CPU burden is too heavy?  They slow down the game tick rate.  For example, instead of "Cheetah" speed passing a day per second, it maybe passes a day in five seconds.  The game is very playable (albeit slower) no matter what CPU it is run on.  Ergo, the argument is moot.  Render is far more important in terms of the game experience and we know it is on a separate thread.


----------



## Aquinus (Feb 15, 2013)

hellrazor said:


> What, making a few threads and shoving in a few functions for that thread to do what amounts to slightly more than what the single thread is too damn difficult or some shit?



Once again, you're assuming things about their code that you can't assume. *Are you a Maxis developer?*



hellrazor said:


> Well damn, it seems like you can't figure out how to not push kill until the main thread decides that the sim needs to die. It seems pretty obvious, but alas, you've managed to not figure it out.



...and you still seem to have a hard time understanding how complex sycronization can get.


hellrazor said:


> Making threads wait on a signal is just SO DAMN HARD. You'd think whoever wrote it was the devil making things far too difficult for the average dev!



Waiting means the thread is sleeping. It doesn't wake up the second there is an event, it has to check occasionally. Check too often and you waste CPU time. Check too little and you add latency. What hard is your understanding of *how they work*. 


hellrazor said:


> I know exactly as much as I claim.



Then you shouldn't have mentioned pthreads when we're talking about applications in Windows land.


hellrazor said:


> I hardly see how changing ones and zeros is any different from changing any other ones and zeros. Are you also trying to tell me that a multicore CPU isn't built to run things in parellel?


I'm telling you that these "ones and zeros" have interdependancies weather you care to admit that or not, which adds to the complexity of a multi-threaded application. Complexity that may not payoff and you have absolutely no way of knowing unless you get their code or you start working for Maxis.


hellrazor said:


> Oh, in case you didn't know, a single thread has to wait on itself to finish an instruction (or function, or whatever) in order for it to do something else.


So does every other thread. You also have to wait for your brain to realize you need to press the power button to turn a computer on. Does that mean one brain sucks and you need a second one? Seriously, what's your point with this comment because anything a computer has to do will make it "wait" as you say.

"Wait" is also not the correct term because it's not waiting on anything. It's running and loaded if it's doing something, it's not waiting. If it is waiting, it is not doing anything.




hellrazor said:


> Because a simple read instruction and a lock and unlock will just tie up the whole damn processor like some kind of high-tech, miniature, hog. Despite the fact that when I said "one whole mutex per thread" I was implying that each thread would have their own queue, not to make them do different things, but to make each thread have it's own personal mutex so it doesn't have to wait on the other ones.



So the main thread finds out before hand what needs to be done, setup all the tasks, add them to the queues, and signal the threads to start. Then wait for the slowest thread to finish. Then something has to be done with the calculated information. You also don't know how all that calculated information impacts other values in the sim, so now you could be in a situation that one thread needs information that another thread is calculating. Now what are you going to do? It gets messy very quickly.




hellrazor said:


> I'm saying it needs more scalability.



...and I'm saying it probabaly doesn't need it and is more complicated to make it multi-threaded than you think. All data is different and just because they're all ones and zeroes doesn't mean they're all handled the same way.


----------



## Frick (Feb 15, 2013)

I kinda like hellrazor. He/she(it?????) is so damnable angry about *everything*.


----------



## TheMailMan78 (Feb 15, 2013)

Frick said:


> I kinda like hellrazor. He/she(it?????) is so damnable angry about *everything*.



I think if any of them really knew what they were talking about they would be working for EA.


----------



## FordGT90Concept (Feb 15, 2013)

TheMailMan78 said:


> I think if any of them really *knew what they were talking about* they would be working for EA.


That's exactly why we wouldn't be working for EA.  Developers only work for a company like EA if they are desperate for employment (or got bought out).  There's many horror stories about big publishers like EA working their developers ragged.


----------



## Frick (Feb 15, 2013)

FordGT90Concept said:


> That's exactly why we wouldn't be working for EA.  Developers only work for a company like EA if they are desperate for employment (or got bought out).  There's many horror stories about big publishers like EA working their developers ragged.



Yeah, because others dont have deadlines to care about.


----------



## Aquinus (Feb 15, 2013)

TheMailMan78 said:


> I think if any of them really knew what they were talking about they would be working for EA.



I prefer working for small businesses. In my experience it is because I've had a greater level of flexibility and better relationships with the people I've worked with. I also get the impression from the people I work with that they don't consider me expendable, and I like that.



Frick said:


> Yeah, because others dont have deadlines to care about.



I need to have a project done in the next week and a half. I would call that a deadline.


----------



## hellrazor (Feb 16, 2013)

Aquinus said:


> Once again, you're assuming things about their code that you can't assume. *Are you a Maxis developer?*


Assuming what? That their code does something?



Aquinus said:


> ...and you still seem to have a hard time understanding how complex sycronization can get.


Wait for them all to finish, kill them off. What's so damn complicated?



Aquinus said:


> Waiting means the thread is sleeping. It doesn't wake up the second there is an event, it has to check occasionally. Check too often and you waste CPU time. Check too little and you add latency. What hard is your understanding of *how they work*.


It's called a blocking function, this crap has been around since the '80s, get with the program.



Aquinus said:


> Then you shouldn't have mentioned pthreads when we're talking about applications in Windows land.


I can't help it if Windows' threading libraries are sub-par.



Aquinus said:


> I'm telling you that these "ones and zeros" have interdependancies weather you care to admit that or not, which adds to the complexity of a multi-threaded application. Complexity that may not payoff and you have absolutely no way of knowing unless you get their code or you start working for Maxis.


Not if you do it right. Take a look at any video card: you figure out the position of the polys, then once that's done you render the textures, then when that's done you do post-processing. Each one of those relies on the one before it, but nobody gives a crap because nothing is done out of sequence.



Aquinus said:


> So does every other thread. You also have to wait for your brain to realize you need to press the power button to turn a computer on. Does that mean one brain sucks and you need a second one? Seriously, what's your point with this comment because anything a computer has to do will make it "wait" as you say.
> 
> "Wait" is also not the correct term because it's not waiting on anything. It's running and loaded if it's doing something, it's not waiting. If it is waiting, it is not doing anything.


Except that you have hundreds of computers and a few people. Those people don't have to wait on eachother to move on to the next computer, whereas a single person has to wait on himself to be done turing on a computer in order to turn on the next.



Aquinus said:


> So the main thread finds out before hand what needs to be done, setup all the tasks, add them to the queues, and signal the threads to start. Then wait for the slowest thread to finish. Then something has to be done with the calculated information. You also don't know how all that calculated information impacts other values in the sim, so now you could be in a situation that one thread needs information that another thread is calculating. Now what are you going to do? It gets messy very quickly.


It's the same queue over and over again until the main thread gets out of the main loop.

Move cars, check for collisions between cars, make sure all the buildings have the dependencies they need, make buildings do what they do, assuming that there's an array of int32_t's (one index for each building) do the whole taxes gained/maintenence spent. Then you could have the main thread total that all up, and voila! that's most of everything!



Aquinus said:


> ...and I'm saying it probabaly doesn't need it and is more complicated to make it multi-threaded than you think. All data is different and just because they're all ones and zeroes doesn't mean they're all handled the same way.


Telling a few threads to do a sequence of functions is obviously just too difficult for you.


----------



## cdawall (Feb 16, 2013)

I wait for the reviews of this to pop up in CPU reviews showing Intel CPU's performing better than AMD...This is why we can't have nice things.


----------



## lilhasselhoffer (Feb 16, 2013)

I'm sorry, but I need some help to understand.  I've written C++ coding very infrequently.  I've written batch files even less frequently.  That puts me slightly above coding illiterate, but well below competent.


We start with the assumption that multiple core optimization can be done in all code.  Even I know that is false.  Interdependency in something like Sim City is so vital that slicing up bits of interaction would require more checks and balances to insure inter-operation than it would save.  I envision this as a 6 cylinder car engine versus a 12 cylinder engine.  Given double the cylinders you don't get double power, and  the complexity of the fuel delivery system is exponentially greater due to strict timing requirements.


Let's throw that assumption out the window for a moment, and assume multi-threading is possible and the overhead to manage it is minimal.  Why then isn't every program multi-threaded?

For a moment, think about the average computer user.  They are capable of turning the machine on, will pay $100 per hour to have free AV and malware scans done at a PC repair place, and view tablet with surprising regard.  These people won't spend $600 on a computer if they can get a $100 tablet to surf the web.


EA is a business.  Despite your protests, they exist only to make a profit.  Businesses that provide a service, but do not make a profit, close.  Consumers dictate how businesses can make money, and influence decision making by whether or not they purchase goods/services.  If consumers are happy, business thrives and makes money.  In a perfect world every service has its price point.  In the real world, business determines actions by projected profits.

How does this tie back?  EA owns Maxis, and demands they make a profit.  That profit is determined such that sales units*profit per unit-development costs=profit.  Maxis projects sales based on previous versions, profit per unit is generally fixed, so they can find the maximum amount of money they can spend.

Let's be generous, and say Maxis has the budget (both money and time) for programming a multi-threaded engine.  Why?  A large chunk of the consumer base only has 2 cores, not to mention all the extra development resources could be invested in play testing, story telling, adding features, etc...  Why would you throw that money at something that a substantial chunk of consumers might never utilize?


You've sighted BF3.  That isn't Sim City.  This statement is common sense, but you seem to not acknowledge it at all.  The sales for BF3 were pretty much assured to dwarf Sim City.  Niche games just can't have a huge budget (The studio that made Journey isn't doing so well, check the news).  If you compare apples and oranges you generally don't get a cogent response.



Don't want to read.  I can simplify this into one sentence.  "If the money was there Maxis would have seen fit to investing in development of a multi-thread engine."  Please note, I said Maxis.  EA can eat a dick as far as I'm concerned, but they aren't to blame for this _*PERCEIVED*_ issue.  Hate EA for something that they are actually responsible for, the list keeps on growing.


----------



## hellrazor (Feb 16, 2013)

I didn't cite BF3, I think that was Ford or Pacman or somebody. But anyways...

I agree that you can't multithread everything; you need to have a large number of the same type of objects doing the same things to do it effectively, but I digress...

Because you can scale it up so easily and have yourself a nigh-future proof engine. If they wanted to make a SimCity 6 or 7 or 8, they could use the same engine they already have, and only really have to pay for the other things like art, and sound, and maybe some development costs for new features or some crap.

And it really doesn't cost that much more as long as you start with it in mind and you're already familiar with multithreaded development. The thing Aquinus doesn't get is that I'm not trying to staple it on to the engine they have already. It's too late, now the only choice to upgrade when people get more cores is to rewrite all of it. But I'm digressing again....

And I'm not saying that having a singlethreaded engine is bad, but in the wrong circumstances it can be terribly crippling - like say, SimCity. Let's all disregard the part where they force you to be social, the DRM, and the fact that it has to do with EA. The big problem with it being singlethreaded is that the cities are forced to be so damn small. Look at SimCity 4, that was a singlethreaded engine and everything was fucking huge, and large chunks of the game are the same: calculating crime rates and pollution, income/upkeep, making sure buildings have the proper utilities, watching trees grow, etc. It seems the only thing they've added on is better graphics and keeping track of individual cars and manufacturing parts and whatever falls under "agents", and it's one that would be seriously improved with multithreading, but (apparently) doing that has caused them to be forced to a small map. I mean, it seriously looks like they're trying to appeal to the farmville crowd.


----------



## Aquinus (Feb 16, 2013)

hellrazor said:


> Assuming what? That their code does something?
> 
> 
> Wait for them all to finish, kill them off. What's so damn complicated?
> ...



You're like talking to a stone wall. Ignorant yet all knowing. This is the same crap you sent in your last 3 long posts and you still don't learn and haven't told me anything new. I'm not going to argue if I can't find someone who truly knows what they're talking about and is willing to listen and learn. Not to mention that your statements slightly change every time you post them to mean something a bit different.

I've also yet to see anyone agree with your analysis of the problem...

I'm done arguing against your endless wall of BS.


----------



## lilhasselhoffer (Feb 16, 2013)

hellrazor said:


> I didn't cite BF3, I think that was Ford or Pacman or somebody. But anyways...



My error.  That statement was incorrect.



hellrazor said:


> ...
> Because you can scale it up so easily and have yourself a nigh-future proof engine. If they wanted to make a SimCity 6 or 7 or 8, they could use the same engine they already have, and only really have to pay for the other things like art, and sound, and maybe some development costs for new features or some crap.
> 
> And it really doesn't cost that much more as long as you start with it in mind and you're already familiar with multithreaded development. The thing Aquinus doesn't get is that I'm not trying to staple it on to the engine they have already. It's too late, now the only choice to upgrade when people get more cores is to rewrite all of it. But I'm digressing again....
> ...



I get the disdain for EA, but consider what you've just done there.  You suggested EA release Sim City exactly like they release their sports titles.  Each year you pay for a new game, but only get a few new features and art assets.  Really?

It's that sort of thinking that has put EA atop money hill.  People bitch about a lack of innovation, but that's seen as reasonable when you call something future proof.  


I guess all of this funnels back to the start.  Screw programming, content, and goals.  The hatred here isn't for a "single" threaded engine, it's for EA business practices.  Cutting through all the BS, that's what it really boils down to.  If you want to hate so bad, fine.  Don't fabricate a reason to dislike EA because of a developer's decision.  Most of all, don't hate until you have a viable reason to hate (I don't see Sim City out yet, do you?).


----------



## Filiprino (Feb 16, 2013)

Brain damage. That hurts hard. ¿No threaded simulation engine? ¿WTF? LOL.

A simulation is a perfect job to use a threaded, concurrent approach. I'll continue with SimCity 4. A game from 10 years ago.


----------



## Aquinus (Feb 16, 2013)

Filiprino said:


> Brain damage. That hurts hard. ¿No threaded simulation engine? ¿WTF? LOL.
> 
> A simulation is a perfect job to use a threaded, concurrent approach. I'll continue with SimCity 4. A game from 10 years ago.



Simcity 4 doesn't use a multi-threaded approch either and it runs perfectly well. Heck, I still play Simcity 4.


----------



## remixedcat (Feb 16, 2013)

Hey we need a DLC for that of detroit... crack dens and graveyards


----------



## mastrdrver (Feb 17, 2013)

I went from an i7 920 quad core to an i7 970 hex core and saw zero performance improvement in BF3 even though the game scales nicely to six threads.

Outside of moving from a single thread to two, multithreading doesn't automatically equal better performance.

So what's the problem again?


----------



## Filiprino (Feb 17, 2013)

Aquinus said:


> Simcity 4 doesn't use a multi-threaded approch either and it runs perfectly well. Heck, I still play Simcity 4.


And that's why I'll continue to use SimCity 4. The new SimCity is just new graphics.



mastrdrver said:


> I went from an i7 920 quad core to an i7 970 hex core and saw zero performance improvement in BF3 even though the game scales nicely to six threads.
> 
> Outside of moving from a single thread to two, multithreading doesn't automatically equal better performance.
> 
> So what's the problem again?



It depends on the data model. Having more threads doesn't add more performance if the different threads must wait on the same resources. But if you put independent resources then yes, it will work faster.


----------



## FordGT90Concept (Feb 17, 2013)

BF3, like virtually all FPS and TPS games, is going to be limited by GPU moreso than CPU.




Filiprino said:


> And that's why I'll continue to use SimCity 4. The new SimCity is just new graphics.


It is not.  It's new from the ground up.  SimCity throws the grid to the curb and instead of using models to predict things like traffic, SimCity actually does it.  SimCity is also multiplayer on the regional level.  Those are huge, major differences.  The people that played the beta had little bad to say about it.




Filiprino said:


> It depends on the data model. Having more threads doesn't add more performance if the different threads must wait on the same resources. But if you put independent resources then yes, it will work faster.


Only if there is more work to do.  Most modern engines are simply waiting for the next game tick 50-75% of the time.  The GPU is running at 75-100% though.


----------



## Filiprino (Feb 17, 2013)

FordGT90Concept said:


> It is not.  It's new from the ground up.  SimCity throws the grid to the curb and instead of using models to predict things like traffic, SimCity actually does it.  SimCity is also multiplayer on the regional level.  Those are huge, major differences.  The people that played the beta had little bad to say about it.



But in the manner they've implemented the game they made it like it is just new graphics. Doing all the simulation of all flows (people,traffic,money,water,energy) without a threaded software is unoptimal. Simcity was badly optimized for computers of the time, with a quick growing memory pool with systems that had at most 1GB (2GB the most) of RAM.

They took out the grid, alright, but they cities now are smaller, and to be honest the grid wasn't bad. I've played games without grid (Tropico is an example) and it didn't add much more freedom, just looked better.




> Only if there is more work to do.  Most modern engines are simply waiting for the next game tick 50-75% of the time.  The GPU is running at 75-100% though.



SimCity has more things to do, it's not an FPS, it has a load similar to an RTS, games that eat more CPU than other genres.


----------



## FordGT90Concept (Feb 17, 2013)

Filiprino said:


> But in the manner they've implemented the game they made it like it is just new graphics.


They already said it isn't.  The change from simulations to "agents" is major.  Virtually all articles that talk about the new engine were exstatic about it.  Do some reading about the Glassbox engine.



Filiprino said:


> Doing all the simulation of all flows (people,traffic,money,water,energy) without a threaded software is unoptimal.


In programming, "optimal" is rarely achieved.



Filiprino said:


> Simcity was badly optimized for computers of the time, with a quick growing memory pool with systems that had at most 1GB (2GB the most) of RAM.


I beg to differ.  It stressed computers it targeted.  New computers don't have much trouble running large cities.



Filiprino said:


> They took out the grid, alright, but they cities now are smaller, and to be honest the grid wasn't bad.  I've played games without grid (Tropico is an example) and it didn't add much more freedom, just looked better.


Try to make a diagonal city on SimCity then try to do it on Tropico 3/4.  You can do it in Tropico 3/4, you can't in SimCity without losing lots of space to infrastructure.

As for cities being smaller, that remains to be seen.  Let's play finished game before passing judgement, shall we?



Filiprino said:


> SimCity has more things to do, it's not an FPS, it has a load similar to an RTS, games that eat more CPU than other genres.


As I said previously, virtually all RTS, TBS, and simulator games will slow the gameclock if the main thread is overburdened.  The game plays exactly the same, just slower.


----------



## Filiprino (Feb 17, 2013)

FordGT90Concept said:


> They already said it isn't.  The change from simulations to "agents" is major.  Virtually all articles that talk about the new engine were exstatic about it.  Do some reading about the Glassbox engine.


I know how does Glassbox works, and because of how does it works the multithreaded approach has more sense than ever.



> In programming, "optimal" is rarely achieved.


Good programmers are also scarce.




> I beg to differ.  It stressed computers it targeted.  New computers don't have much trouble running large cities.


Yeah, it stressed the computers it targeted, but not in a good way, wasting resources.




> Try to make a diagonal city on SimCity then try to do it on Tropico 3/4.  You can do it in Tropico 3/4, you can't in SimCity without losing lots of space to infrastructure.


In Tropico 3/4 if you do a diagonal  you loose a lot more space, and if you do curves, even more.



> As for cities being smaller, that remains to be seen.  Let's play finished game before passing judgement, shall we?


Then all this talking shouldn't have started, don't you think so?




> As I said previously, virtually all RTS, TBS, and simulator games will slow the gameclock if the main thread is overburdened.  The game plays exactly the same, just slower.



And who says that the main thread (the checking agents/transactions states) would be overburdened?

They didn't take into account city scalability and that's why cities are small now instead of huge maps like you could have on SimCity 4 albeit it had flaws in precission and realism due to the use of precalculated/hardcoded variables and some statistical-fu.


----------



## FordGT90Concept (Feb 18, 2013)

Filiprino said:


> I know how does Glassbox works, and because of how does it works the multithreaded approach has more sense than ever.


As explained many times in this thread, no, it doesn't.




Filiprino said:


> In Tropico 3/4 if you do a diagonal  you loose a lot more space, and if you do curves, even more.


Not.  All buildings could be rotated to 8 angles.  Larger ones like docks, oil refineries, and nuclear power plants can be rotated to at least 16 angles (might be 32, never paid attention).




Filiprino said:


> Then all this talking shouldn't have started, don't you think so?


It shouldn't but...










Filiprino said:


> And who says that the main thread (the checking agents/transactions states) would be overburdened?


I'm not.  Just saying that the game doesn't break if it does--it reacts.



Filiprino said:


> They didn't take into account city scalability and that's why cities are small now instead of huge maps like you could have on SimCity 4 albeit it had flaws in precission and realism due to the use of precalculated/hardcoded variables and some statistical-fu.


You're assuming the full game doesn't have larger plots like SimCity 3000 and 4.  How do you know it doesn't?


----------



## Aquinus (Feb 18, 2013)

You know, SimCity 4 does everything in one thread and despite the frame rate dropping, it's still playable and stopping the sim will give you your framerate back, but if you're running a massive city at the fastest speed, of course it's going to slow down, but keep in mind most of the time you're not running the game at full speed, you're running it at either normal or paused while you make changes to the city. The time you need the frame rate, it is there. The times you don't, it is not. Whoop de do, big deal. Even now though, the new Simcity is going to have rendering on its own thread so even that won't be a problem. The only thing you would notice is how quickly days go by at the fastest sim speeds.


----------



## THE_EGG (Feb 18, 2013)

I played the 1hour closed beta 2 thingy for the game (as I preordered it). I will admit, initially I was disappointed with the small size of the city. However, because the transition between city->region is pretty much not a transition (a bit like how Sims 3 works) I forgave it as many cities can be run at one time. I didn't run into any lag or anything like that - even building new buildings @ high speed while my city took up nearly all the land space with most of it being medium density with some high and low density building. 

IMO it isn't a big drama and I'm sure the final product - when it comes out - will be excellent.


----------



## Mr McC (Feb 18, 2013)

mastrdrver said:


> I went from an i7 920 quad core to an i7 970 hex core and saw zero performance improvement in BF3 even though the game scales nicely to six threads.
> 
> Outside of moving from a single thread to two, multithreading doesn't automatically equal better performance.
> 
> So what's the problem again?



Unnecessary upgrade expenditure?


----------



## Filiprino (Feb 18, 2013)

FordGT90Concept said:


> As explained many times in this thread, no, it doesn't.


As simulation works in real world, yes it does.





> Not.  All buildings could be rotated to 8 angles.  Larger ones like docks, oil refineries, and nuclear power plants can be rotated to at least 16 angles (might be 32, never paid attention).


And even then the space was lost because the terrain wasn't properly divided.





> It shouldn't but...








> I'm not.  Just saying that the game doesn't break if it does--it reacts.


And because of reaction, having more threads in a simulation makes sense.



> You're assuming the full game doesn't have larger plots like SimCity 3000 and 4.  How do you know it doesn't?


I'm not assuming nothing, I just read how is SimCity 2013 and I know it has some plots like Sims. The new SimCity is the conversion from a good simulator game to a casual game.


----------



## Aquinus (Feb 18, 2013)

Filiprino said:


> As simulation works in real world, yes it does.



We've discussed this. There are interdependancies that would make the performance benefits negligable for the amount of work that had to be put in to do it. There isn't much payout to make it multi-threaded because since the renderer is on its own thread there is very little change in playability of the game. So there is no point to multi-thread it even if it does max out the CPU. Simcity 4 did a half decent job of it and it was all on one thread, including rendering! I think the new Simcity will run fine...



Filiprino said:


> And even then the space was lost because the terrain wasn't properly divided.



...and you can't have wasted space in real life? There can be wasted space in the real world too... I see it all the time. Not sure what you're trying to get at with this, if anything it's realistic, just not optimal (which is pretty normal for older property lines and roads.)


Filiprino said:


> And because of reaction, having more threads in a simulation makes sense.


Not when you have that many interdependancies between items that impact eachother. Just adding threads doesn't mean that it will run well or it will scale. Stop spewing out BS, we've been over this before many times over again in this thread. Any programmer who has done serious multi-threading knows that it isn't this simple. :shadedshu


----------



## TheMailMan78 (Feb 18, 2013)

This thread needs more circular discussion.


----------



## Bo$$ (Feb 18, 2013)

TheMailMan78 said:


> This thread needs more circular discussion.



Agreed  lets get some benches guys!


----------



## SaltyFish (Feb 25, 2013)

Taking a look at a video of the beta, it does seem a bit small. But that could just be one of the many limitations imposed by the beta. The actual map seems quite big, and the video shows potential "great works" projects located outside the constrained city area.

All in all, the game is due out soon (5 March; a few days later for those living outside of Jesusland and its surroundings). I wonder what the reactions will be then.


----------



## Disparia (Feb 25, 2013)

^ You can control multiple cities in a region which can buy/sell/share resources and services. One city could take in the garbage of others while a city could produce surplus power and sell it off.

How far a city can be specialized has yet to be seen, ex: I don't know if Sims can commute to other cities for work or if there's a way to make multiple maps be considered a single city.

I do hope they allow for larger maps, or at least make the handling of multiple dependent cities as seamless as possible. Otherwise, it's going to lack the grandeur of previous versions.


----------



## xenocide (Feb 26, 2013)

Mr McC said:


> Unnecessary upgrade expenditure?



Not to mention BF3 is optimized up to *8 threads* so going from a CPU that can run 8 to one that can run 12 is somewhat pointless (for Battlefield 3 at least).


----------



## FordGT90Concept (Feb 26, 2013)

We have no idea how many threads the render runs on.  The renderer is far easier to multithread than the simulator.


----------



## lilhasselhoffer (Mar 2, 2013)

http://www.escapistmagazine.com/news/view/122463-Maxis-Will-Eventually-Increase-SimCitys-City-Sizes



Happy now?

The developers designed the thing to run on a freaking potato chip.  They made the compromise of smaller, but more, cities per region.  Given that the *DEVELOPERS* chose this, Sim City having small cities is their fault.

Additionally, look at what they say.  We're eventually going to increase the city size......blah, blah..... but we're going to wait until we see how people play.  Basically, they're saying we'll use play data from online to develop our DLC packages.  Whenever we have enough DLC money coming in we'll optimize things and get the performance closer to where we should have been prior to release.


So we're clear, that's what I feared.  Instead of developing a complete game, they've released an engine.  Thank you DLC.  I always wanted to pay another $10 for three new disaster scenarios.  Perhaps for $15 I can triple my starting cash so that it's easier.  This reeks of EA meddling.  The developers aiming to have a game run on an old core 2 duo isn't the publishers fault.  Blame the people who committed the "crime."  Blame them by denying them a purchase.



Edit:
Quotations around crime and last line added.  Frick was correct, and I forgot to add that.


----------



## Frick (Mar 2, 2013)

Everyone commits this "crime". Vote with yoru wallet etc.


----------



## Frag_Maniac (Mar 2, 2013)

The SIM series can't really be equated to games like BF3. You have distant views of a city that's being pieced together slowly little by little, you have AI that appear more cloned than separately scripted, you have no huge cinematic scenes taking place with lots of destruction, etc. Given the advanced tech in the FB2 engine, the size and content of the maps, and all the destruction that's happening, BF3 NEEDS to be threaded for quad.

That said, if SIMCity ever evolves to a version where you can build cities in terror ravaged corners of the world, I suppose it too would require quad threading. LOL


----------



## SaltyFish (Mar 3, 2013)

lilhasselhoffer said:


> The developers designed the thing to run on a freaking potato chip.  They made the compromise of smaller, but more, cities per region.  Given that the *DEVELOPERS* chose this, Sim City having small cities is their fault.
> 
> Additionally, look at what they say.  We're eventually going to increase the city size......blah, blah..... but we're going to wait until we see how people play.  Basically, they're saying we'll use play data from online to develop our DLC packages.  Whenever we have enough DLC money coming in we'll optimize things and get the performance closer to where we should have been prior to release.



It's highly understandable to accommodate older systems. But the devs could have just allowed the option of larger city sizes at launch. Add a note about larger city sizes being more taxing on your system. It isn't much different from offering anti-aliasing as an option... if you want to go with it on your half decade old computer, don't be surprised the game will slow down to a crawl.

I wonder how a Pentium III computer would run the game...


----------



## Bjorn_Of_Iceland (Mar 5, 2013)

I was quite surprised this game was already on store shelves earlier today. I am quite hesitant to buy it though.. I kept thinking EA would put an in app micro transaction to "speed things up".


----------



## TRWOV (Mar 5, 2013)

I'd say that the size of the cities has more to do with the game being cloud based than for the available processing power.


----------



## Disparia (Mar 5, 2013)

"Real cities don’t live in bubbles," Ocean Quigley, the game’s creative director, has said. "Real cities are connected to each other."

Real cities aren't limited in size either! 

Thanks to all the beta testers that brought up this issue. New Maxis needed to learn what would have been obvious to Old Maxis -- or anyone who has played Civilization, Total Annihilation, Starcraft, etc 

Was going to wait for it to drop in price, but maybe I'll pick it up when large cities are introduced - sale or not.


----------



## Frick (Mar 5, 2013)

TBH I had not seen screenshots until a few days ago, and "tiny" is a good word. I'm with Jizzler, might pick it up when/if they increase their size.


----------



## SaltyFish (Mar 5, 2013)

http://arstechnica.com/gaming/2013/03/simcity-impressions-we-waited-ten-years-for-this/

Ars Technica took a look at the finalized game. Like many other reviews, they weren't impressed by the size of it (among many other things).

Well, there's always SimCity 3000, SimCity 4, Cities XL, Tropico, etc.


----------



## Frick (Mar 5, 2013)

SaltyFish said:


> http://arstechnica.com/gaming/2013/03/simcity-impressions-we-waited-ten-years-for-this/
> 
> Ars Technica took a look at the finalized game. Like many other reviews, they weren't impressed by the size of it (among many other things).
> 
> Well, there's always SimCity 3000, SimCity 4, Cities XL, Tropico, etc.



Yeah that was what I read as well. I actually bought Simcity Societies years ago (I got two games I wanted to get and I had to pick a third game if I was to get the lot for €10 ^^) and have never even installed it. Is that anything like Simcity?


----------



## SaltyFish (Mar 5, 2013)

Frick said:


> Yeah that was what I read as well. I actually bought Simcity Societies years ago (I got two games I wanted to get and I had to pick a third game if I was to get the lot for €10 ^^) and have never even installed it. Is that anything like Simcity?



Well... it's like SimCity in that you build a city.

It's a much more simplified game. Will Wright and the rest of the devs felt that after SimCity 4, it had become too complicated and off-putting to newcomers. There's no power and water grid management. You build specific buildings rather than general zones. How your city grows depends on the buildings you build: industrial, authority, spirituality, creativity, knowledge, etc. They'll have certain effects on your residents. For example, many authority buildings have a propaganda/brainwashing effect that can be used to keep your citizens' happiness in neutral (preventing both low and high happiness). They'll also promote security cameras in your city. In a way, the recent SimCity is sort of a hybrid of Societies and the older SimCity games.

It's not that bad as a game, but the name didn't help it because people were expecting traditional SimCity. You might play it a few times, but it doesn't have the replayability of the other SimCity games. Be aware the game also has some memory leaks and/or optimization problems, which were never fixed. They become apparent after playing for a long session.


----------



## Easy Rhino (Mar 8, 2013)

wow...just wow...

i havn't heard one single GOOD thing about this game yet.

http://arstechnica.com/gaming/2013/03/ea-not-altering-return-policy-for-furious-simcity-buyers/


----------



## THE_EGG (Mar 9, 2013)

Easy Rhino said:


> wow...just wow...
> 
> i havn't heard one single GOOD thing about this game yet.
> 
> http://arstechnica.com/gaming/2013/03/ea-not-altering-return-policy-for-furious-simcity-buyers/



Yeh, I was silly enough to pre-order the game from EB games (Australian branch of Gamestop) and I was warned if I wanted to cancel it and get my money back when I went to pick it up. But I thought, it can't be _that_ bad, can it? Well once I'm connected to a server it ain't too bad but loading times seem pretty slow and connection to the servers seems very VERY unstable. The need to be always online kinda sucks, especially for me as I run off 4G network.

EB games did offer a 7 day return policy and for this particular game you could get your money back (instead of instore credit) AND they said they would still accept a return even if the serial key had been used.

I guess we play the waiting game for when EA decide to give us more servers.


----------



## Bo$$ (Mar 9, 2013)

Looks like there is a glitch with the community college's collision.


----------



## KingPing (Mar 9, 2013)

Check this out:

http://www.kickstarter.com/projects/1584821767/civitas-plan-develop-and-manage-the-city-of-your-d


----------



## THE_EGG (Mar 9, 2013)

OK well it seems EA have put up some more servers and the game  no longer disconnects me from the servers!!!!! Very fun game although the small city limits kinda sucks when you are playing with friends as you don't really have room to expand to make a new city in that region (if it is a small region that is). A private region fixes that though.

If I'm honest it is heaps easier than SC4 which is good and bad as I think a fair number of SC enthusiasts moved onto different games after Societies was released to find something more challenging. So I guess the smaller learning curve of importance to attract new comers to the series. 

The smaller maps size doesn't seem to impede on gameplay though as the overall speed turtle, llama and cheetah seem to have slowed down since the last installments. Which means you won't be reaching the city limits/boundaries until after an hour or two. That for me was about how long a middle/regular sized city block lasted for in SC4.


----------



## erocker (Mar 9, 2013)

$60 bucks for this game is a total joke.

I'm looking forward to EA getting bought out, the sooner the better.


----------



## shk021051 (Mar 9, 2013)

is it possible ea give us a non-drm patch?


----------



## THE_EGG (Mar 10, 2013)

shk021051 said:


> is it possible ea give us a non-drm patch?



That's what I'm hoping for. I remember when C&C4 came out. That was a joke as well.


----------



## remixedcat (Mar 10, 2013)

erocker said:


> $60 bucks for this game is a total joke.
> 
> I'm looking forward to EA getting bought out, the sooner the better.



Let's make a Kickstarter.


----------



## Easy Rhino (Mar 10, 2013)

i really wanted this game to be epic but it sucks. im not one who needs massive areas to build but they could at the very least double the current size!!


----------



## Depth (Mar 11, 2013)

remixedcat said:


> Let's make a Kickstarter.



Yep. We need a billion before the release of the next Splinter Cell

Anyone who donates $10,000,000 or more gets their name and deeds carved into an obelisk for all eternity (20 max)

Anyone who donates $100 or more gets a t-shirt (US residents only)


----------



## Delta6326 (Mar 11, 2013)

I'm a big fan of the Simcity games they are watch actually got me into PC's way back in the day same with rollercoaster tycoon. I think im going to wait and see how that kickstarter game turns out.

But this is just crazy I didn't even know this many people hated it ...
http://www.amazon.com/dp/B007FTE2VW/?tag=tec06d-20


----------



## THE_EGG (Mar 11, 2013)

delta6326 said:


> i'm a big fan of the simcity games they are watch actually got me into pc's way back in the day same with rollercoaster tycoon. I think im going to wait and see how that kickstarter game turns out.
> 
> But this is just crazy i didn't even know this many people hated it ...
> http://www.amazon.com/simcity-limited-edition-pc/dp/b007fte2vw&tag=tec06d-20
> http://img.techpowerup.org/130310/capture1157.jpg



loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooool


----------



## Delta6326 (Mar 11, 2013)

So if anyone did buy this from Amazon they will refund you your money and remove it from your library.
The thing is though they can only remove it from your Amazon library, so unless they tell EA(doubt they will) your Key will still work...

Funny loading screen from EA...


----------



## slyfox2151 (Mar 11, 2013)

erocker said:


> $60 bucks for this game is a total joke.
> 
> I'm looking forward to EA getting bought out, the sooner the better.





$60?

New games like this Simcity and BF3 are $100 here lol, and our dollar is worth more then the USD by a couple cents.





I bought the game and it was horrible to try and play until last saturday/sunday... constant server overloads/crashes. but most of that seems to be resolved now.
They have currently removed cheetah speed from the game and made it the same speed as llama.


----------



## erocker (Mar 11, 2013)

slyfox2151 said:


> $60?
> 
> New games like this Simcity and BF3 are $100 here lol, and our dollar is worth more then the USD by a couple cents.
> 
> ...



Your minimum wage is double that of ours. Not so sure your dollar is worth more in real terms. What I really should of said is I wouldn't pay any kind of money for this game.


----------



## FordGT90Concept (Mar 11, 2013)

$60 USD ~= $58.59 AUD

Washington's spending spree and the Federal Reserve's "Quantitative Easing" programs have substantially devalued the United States Dollar.


A friend of mine said he likes the game but can see why some people wouldn't (e.g. it's a lot easier to make money than SimCity 4).  He said he is glad he pre-ordered it.  My copy hasn't arrived yet.


----------



## slyfox2151 (Mar 11, 2013)

erocker said:


> Your minimum wage is double that of ours. Not so sure your dollar is worth more in real terms. What I really should of said is I wouldn't pay any kind of money for this game.



These are all good points and the  economics of each country are far deeper then just the dollar value, but I still dont like paying $40 more for the same product.


----------



## THE_EGG (Mar 11, 2013)

slyfox2151 said:


> These are all good points and the  economics of each country are far deeper then just the dollar value, but I still dont like paying $40 more for the same product.



That is why there is a thing called internet shopping where there is nearly no region issues for PC games  I must admit though, I generally prefer buying stuff in real stores. Gives me more confidence.


----------



## slyfox2151 (Mar 11, 2013)

THE_EGG said:


> That is why there is a thing called internet shopping where there is nearly no region issues for PC games  I must admit though, I generally prefer buying stuff in real stores. Gives me more confidence.



Yes, however I was stupid enough to buy it through origin as I wanted to play as soon as it released 



Dont get me wrong, I do really like the game... or what the game will be after the bugs are fixed.


----------



## Easy Rhino (Mar 11, 2013)

for all the bitching about EA that went on BEFORE the release of the new simcity, i am surprised at the sales numbers. gamers are the biggest bunch of complainers and suckers of any group on the planet. stop eating the bullshit, complaining about it, and then eating more of it willingly!!!!


----------



## FordGT90Concept (Mar 11, 2013)

I pre-ordered SimCity back in October.


----------



## THE_EGG (Mar 11, 2013)

FordGT90Concept said:


> I pre-ordered SimCity back in October.



I think for me it around the middle of November. But it's ok for me as it is now fully playable


----------



## Easy Rhino (Mar 11, 2013)

Double the city size and I will buy it.


----------



## FordGT90Concept (Mar 11, 2013)

Build two cities in the same region and your wish is granted!


----------



## Easy Rhino (Mar 11, 2013)

FordGT90Concept said:


> Build two cities in the same region and your wish is granted!



Bah that's not what I am talking about...


----------



## hellrazor (Mar 13, 2013)

Rockpapershotgun is out for blood.


----------



## Frick (Mar 13, 2013)

hellrazor said:


> Rockpapershotgun is out for blood.



I always assumed this was the case, that it was more of a DRM scheme than anything else. The good news is that it should be easier to hack it to single player mode, which is where Simcity belongs. I think the online capabilities look kinda nifty, but far from neceserry.


----------



## Easy Rhino (Mar 13, 2013)

Frick said:


> I always assumed this was the case, that it was more of a DRM scheme than anything else. The good news is that it should be easier to hack it to single player mode, which is where Simcity belongs. I think the online capabilities look kinda nifty, but far from neceserry.



the only reason why i want online capabilities is so that i can launch nukes over into erocker's city. if i can't do that then i don't need to play online.


----------



## FordGT90Concept (Mar 14, 2013)

I played it for about 4-6 hours yesterday and really liked it.  Yeah, the cities are small but that would be my only complaint about it at this time.


----------



## Triprift (Mar 14, 2013)

My city was going great for a fair few hours. That was with a nearby earthquake and a few zombies terrorizing the neighbourhood. Then it all went downhill after a massive earthquake flattened the top end of town.


----------



## FordGT90Concept (Mar 14, 2013)

I've been lucky.  I'm up to 120,000 now and the only disaster that happened was a zombie attack.  The zombies only got 7 people people before they were dealt with.


----------



## Frick (Mar 14, 2013)

Can you deploy military to shoot dissidents?


----------



## FordGT90Concept (Mar 14, 2013)

Nope.


----------



## xenocide (Mar 14, 2013)

http://www.eurogamer.net/articles/2013-03-14-simcity-modded-so-it-can-be-played-offline-indefinitely


----------



## Frick (Mar 14, 2013)

xenocide said:


> http://www.eurogamer.net/articles/2013-03-14-simcity-modded-so-it-can-be-played-offline-indefinitely



That did not take long. 

@Ford: All games are better with dissidents really.


----------



## ShiBDiB (Mar 14, 2013)

The reason theyre so small is because each sim just wanders to the nearest home/job to them. They're not individual people. This is why traffic patterns are so absolutely fucked up in this game. And if they allowed large cities the problem would be compounded by the number of people.

AKA EA/Maxis got lazy and did a shit job of coding, and instead of fixing it just made cities tiny.

http://www.rockpapershotgun.com/2013/03/13/simcitys-sims-dont-seem-that-smart-after-all/


----------



## LAN_deRf_HA (Mar 14, 2013)

xenocide said:


> http://www.eurogamer.net/articles/2013-03-14-simcity-modded-so-it-can-be-played-offline-indefinitely



Whats with the roads clipping into the ground? Looks really shitty.


----------



## Easy Rhino (Mar 14, 2013)

what a terrible game from a terrible company.


----------



## Depth (Mar 15, 2013)

ShiBDiB said:


> The reason theyre so small is because each sim just wanders to the nearest home/job to them. They're not individual people. This is why traffic patterns are so absolutely fucked up in this game. And if they allowed large cities the problem would be compounded by the number of people.



Yep. I'm having a really hard time wrapping my head around how to plan my city. Obviously people don't want to live in the industrial district so I'm trying to keep them separated and downwind. Always makes a select few crossroads go absolutely mental with traffic. Public transportation doesn't help, either. 

At one point I noticed that the road surrounding my university was completely clogged. Turned out around half of the 900 students in class that day were crossing the road on foot.

If someone mods the game to support a million population on a 5x larger map, I dread the outcome.


----------



## FordGT90Concept (Mar 15, 2013)

The game is realatively ease up to about 100,000 people and it gets very challenging past 200,000.  There simply isn't enough money to expand everything they demand--something has to be sacrificed.

At 200k, roads are clogged everywhere, firefighters and police can't get around so your only option is to buy the expensive stations and equipped them with expensive helicopters.


Edit: Yeah, I noticed that sims always take the shortest distance between two points.  That's why my second city is comprised completely of high density avenues.  Even that is not enough when lots of people are heading to the same place (e.g. university which has 2500-2900 sims visit every day).


----------



## Depth (Mar 15, 2013)

One workaround would be to use one-way streets to "funnel" the traffic using longer curved roads, but that would quickly eat up space. And it seems that people would rather drive all the way to another city rather than finding a job a bit further in the home town (i.e. the highway exit is closer)

To quote a comment on youtube "As a person who bought the game, when I watched this I laughed. Then I cried a little."

Edit: This guy seems to have a good solution, only 3-way intersections and some other tweaks


----------



## hellrazor (Mar 15, 2013)

Frick said:


> Can you deploy military to shoot dissidents?



Tropico 4.


----------



## FordGT90Concept (Mar 15, 2013)

Lucy Bradshaw said:
			
		

> And to get us back in your good graces, we’re going to offer you a free PC download game from the EA portfolio. On March 18, SimCity players who have activated their game will receive an email telling them how to redeem their free game.


http://www.simcity.com/en_US/blog/article/a-simcity-update-and-something-for-your-trouble

Free game on the house!


----------



## hellrazor (Mar 16, 2013)

http://www.ea.com/news/simcity-update-straight-answers-from-lucy
Don't forget to read the comments!

A few of my favorite quotes (from the article, not the comments):


			
				TFA said:
			
		

> I hate to disturb you when you’re playing SimCity


We're not, don't worry about it.



			
				TFA said:
			
		

> We put a ton of effort into making our simulation [...] engines more detailed than ever


Your sims' AI begs to differ.



			
				TFA said:
			
		

> All of our social world features - world challenges, world events, world leaderboards and world achievements - use our servers to update the status of all cities.


Does anybody in this forum really give a crap about any of that?



			
				TFA said:
			
		

> Cloud-based saves and easy access from any computer are another advantage of our connected features.  You can pop from work to home, play the game and have your cities available to you anywhere.


Easy access from any computer from anywhere, huh?



			
				TFA said:
			
		

> In many ways, we built an MMO.


Such as everything that could conceivably make it an MMO is either broken or causing other things to break.



			
				TFA said:
			
		

> So, could we have built a subset offline mode?  Yes.  But we rejected that idea because it didn’t fit with our vision.


I'll let you all have fun with that.

There was a tie for first place:


			
				TFA said:
			
		

> it’s not final and it never will be.





			
				TFA said:
			
		

> SimCity is a special game, with a very special community


----------



## Easy Rhino (Mar 16, 2013)

terrible game from a terrible company.


----------



## entropy13 (Mar 16, 2013)

I haven't really played the game (Sim City 5) yet, but based on the videos and articles at least, it's *worse* than any of the Cities XL games (albeit the only one I've played among them was 2011), and Focus Home Interactive isn't exactly a big game company...


----------



## Steevo (Mar 16, 2013)

FordGT90Concept said:


> http://www.simcity.com/en_US/blog/article/a-simcity-update-and-something-for-your-trouble
> 
> Free game on the house!



Stop being a corporate pillow biter who loves it. 

http://www.extremetech.com/gaming/1...need-to-be-always-online-says-maxis-developer


----------



## hellrazor (Mar 16, 2013)

Just read this in the comments section (by the Maxis team):


			
				The Maxis team said:
			
		

> To date we reduced game crashes which contributes to this issue by 92%



Makin' me laugh...

EDIT: found another comment I like:



			
				fabulousfurrygingerfreakbrothers said:
			
		

> Replace ‘Online’ with ‘Organ’ and I can by your claim call my penis an MMO. Ignore the fact that I usually play by myself, and have NEVER played with more than 8 people, and it’s much smaller than they’ve been used to. It’s an MMO – at least, if played with the right way.
> 
> Does that sound right to you?


----------



## FordGT90Concept (Mar 16, 2013)

entropy13 said:


> I haven't really played the game (Sim City 5) yet, but based on the videos and articles at least, it's *worse* than any of the Cities XL games (albeit the only one I've played among them was 2011), and Focus Home Interactive isn't exactly a big game company...


Cities XL couldn't keep me entertained for a day.  SimCity has had me hooked for five and I barely scratched the surface.

You people need to STFU and play it.


----------



## Aquinus (Mar 16, 2013)

entropy13 said:


> I haven't really played the game (Sim City 5) yet, but based on the videos and articles at least, it's *worse* than any of the Cities XL games (albeit the only one I've played among them was 2011), and Focus Home Interactive isn't exactly a big game company...





FordGT90Concept said:


> Cities XL couldn't keep me entertained for a day.  SimCity has had me hooked for five and I barely scratched the surface.
> 
> You people need to STFU and play it.



I agree, don't judge a game if you've never played it. Listen to your post for a second:



entropy13 said:


> I haven't really played the game (Sim City 5) yet, but


That's just asking for trouble considering you're announcing that you don't know what you're talking about before you talk about it. So I'm siding with Ford. Go play the game and get back to us.


----------



## Frick (Mar 16, 2013)

hellrazor said:


> http://www.ea.com/news/simcity-update-straight-answers-from-lucy
> Don't forget to read the comments!
> 
> A few of my favorite quotes (from the article, not the comments):
> ...



You are worse then me when I start about Bethsoft. And that says a lot.


----------



## kid41212003 (Mar 18, 2013)

Easy Rhino said:


> what do you expect from the worst run game corp?? this will just fuel the rise of the indie dev on linux!



the mighty linux fanboy has spoken


----------



## Easy Rhino (Mar 18, 2013)

kid41212003 said:


> the mighty linux fanboy has spoken



bow to your master!!!!


----------



## hellrazor (Mar 18, 2013)

All hail king Linus!


----------



## FordGT90Concept (Mar 18, 2013)

Depth said:


>


They're going to fix that soon:









Apparently "traffic avoidance" has been set to low (probably to reduce server load).  An update soon will turn it up so they'll choose the path of least resistance.


This post has some more details and expands on other things they're doing to improve traffic pathing:
http://www.simcity.com/en_US/blog/article/simcity-update-8

It sounds like an update soon will allow emergency vehicles to get around quicker as well as preventing public transportation from crowding stops (e.g. 10 buses mapping to one stop at about the same time).


----------



## remixedcat (Mar 18, 2013)

Well I was one of the very first (and I mean the very first, as in within the first 20 people I was one of the key people on thier forums) beta testers of Monte Christo's CitiesXL (as in, the very first one) and it was far less buggy then this Sim City game is. 

I really hope EA will resolve at least some of these issues becuase my itch is getting a lil bigger to play this!


----------



## RCoon (Mar 18, 2013)

I always wanted to love this game. But i simply cant, just doesnt allow you to make something big enough :<


----------



## FordGT90Concept (Mar 18, 2013)

remixedcat said:


> Well I was one of the very first (and I mean the very first, as in within the first 20 people I was one of the key people on thier forums) beta testers of Monte Christo's CitiesXL (as in, the very first one) and it was far less buggy then this Sim City game is.
> 
> I really hope EA will resolve at least some of these issues becuase my itch is getting a lil bigger to play this!


Cities XL is a clone of SimCity 1-4.  This SimCity is something entirely different.  The first issue is they didn't have enough server capacity to handle all the regions.  That forced them to dial-back a lot of features so people could play with as little lag as possible.  They've since re-enabled a lot of features and are finally turning to correcting game play issues like traffic.  Give it another month and it will be a very solid game to play.

I just hope they add some things like subways and one-way roads.  I think, as it stands, it is the best SimCity game to date.  It has so much more replay value than the previous titles thanks to Great Works, specializations, and experimenting with agent behavior.  I've rebuilt a single city three times just to see compare population levels achieved with each design.  Can't say I've ever done that in a previous city simulator.


----------



## digibucc (Mar 18, 2013)

I'll never understand you Ford. You hate on things that are really not that bad and you profess admiration for things that are flat out poorly made. you're like opposite man. and i mean that in the nicest way possible


----------



## FordGT90Concept (Mar 18, 2013)

The only people trashing SimCity are the people that haven't played it.  They dwell on the small city sizes but completely fail to see how that changes the dynamics of the game.  Cities grow up (as in density) much faster in this game than in SimCity 3000 and 4.

It also isn't about zone density, but road density.  The success of the city revolves around how well it handles traffic.  That makes it very strategic if you're going for the highest possible population.

Not to mention all the other challenges the small size creates.  For example, I keep wrestling with Fast Neutron nuclear reactors.  They require a huge amount of money to operate, tons of population to produce sewage which increases ground water, and they require a huge amount of water to run the cooling towers.  It's a very delicate balancing act but if you pull it off, one city can power (2.4 GW) an entire region/cluster.


Long story short, one city can't do everything.  SimCity requires strategic cooperation like few before it.


----------



## digibucc (Mar 18, 2013)

FordGT90Concept said:


> The only people trashing SimCity are the people that haven't played it.



I own it, I've built 4 cities, they are too small. it's that simple imo. I understand the coop with different cities, however that doesn't mean they couldn't have made it possible to make cities a might bit larger. they are NOT mutually exclusive. 

quite honestly i'm more peeved about always online and the server issues than anything. regardless of whether they fix it or not it should never have happened, it's EA greed getting in the way, yet again.


----------



## brandonwh64 (Mar 18, 2013)

So they are saying if you are building a city and the server goes down, your whole city is F'd?


----------



## FordGT90Concept (Mar 18, 2013)

digibucc said:


> I own it, I've built 4 cities, they are too small. it's that simple imo. I understand the coop with different cities, however that doesn't mean they couldn't have made it possible to make cities a might bit larger. they are NOT mutually exclusive.
> 
> quite honestly i'm more peeved about always online and the server issues than anything. regardless of whether they fix it or not it should never have happened, it's EA greed getting in the way, yet again.


What's the highest population you reached?  I have one city at about 330,000 making over 2 million/day off of two TV factories.  That city is special though because it has a road going straight through it (two road connections to the region).  Other cities that don't have two road connections I've only gotten up to about 200-230k.

I wouldn't be surprised if they release regions with larger cities in the future.  The reason why they don't is because of computing resources.  It is costly to simulate the activities of 330k agents, especially when it's part of a region with over 1 million connected agents.  SimCity is the first true city simulator and that comes with a price tag to make it run in realtime.




brandonwh64 said:


> So they are saying if you are building a city and the server goes down, your whole city is F'd?


It's constantly saving.  I don't know what would happen if a server had hardware failure though.


----------



## digibucc (Mar 18, 2013)

FordGT90Concept said:


> What's the highest population you reached?  I have one city at about 330,000
> 
> ...
> 
> ...



fair enough, I couldn't say but I know it's not 300k+. If you're right about larger city regions in the future, I would love it. 

I have had a few instances where I have lost connection in the middle of a game, and at most lost like 3 minutes of game-play. still though, when I am playing single player there is absolutely no reason for that,


----------



## Easy Rhino (Mar 18, 2013)

digibucc said:


> it's EA greed getting in the way, yet again.



i disagree. if EA were truly greedy they would have listened to their customers and allowed them to play offline on day 1 and would have also expanded the city size. so greed has nothing to do with it. EA just made a bunch of bad business decisions.


----------



## FordGT90Concept (Mar 18, 2013)

I don't know if there will be but it isn't impossible that it could happen.

They fixed a lot of connection issues in the last week.  If you played right when it came out, yeah, it was a serious problem (hence the free game today).  I bought mine on Amazon with free shipping so it took two weeks to get here.  My patience meant not seeing all the launch bugs.


----------



## RCoon (Mar 18, 2013)

FordGT90Concept said:


> Long story short, one city can't do everything.  SimCity requires strategic cooperation like few before it.



I think it shouldnt be easy for one city to do everything, and maybe rely on other cities for things, but given time and effort it should be possible. And no offline mode is just awful, I dont want to rely on EA servers availability when i want to play something.
I liked Anno 2040 with split cities and such, but SimCity has always been about making enormous cities of chaos, and everyone wanted those huge chaotic cities to be linked in with friends. EA just implemented everything all wrong.


----------



## digibucc (Mar 18, 2013)

Easy Rhino said:


> i disagree. if EA were truly greedy they would have listened to their customers and allowed them to play offline on day 1 and would have also expanded the city size. so greed has nothing to do with it. EA just made a bunch of bad business decisions.



they don't look at it that way. they consider their customers sheep who will be happy with what they get. they are more scared of dem dar pirates than anything else, hence always online drm, hence greed. imo at least.


----------



## Easy Rhino (Mar 18, 2013)

digibucc said:


> they don't look at it that way. they consider their customers sheep who will be happy with what they get. they are more scared of dem dar pirates than anything else, hence always online drm, hence greed. imo at least.



that could be true. i see them as dumb and you see them as dirty. either way they have a PR nightmare on their hands  

i will most likely purchase this game when it is 50% off. by that time i am sure they will have the game's online experience polished and have made room for larger cities.

i appreciate the challenges that having smaller cities creates but really all i wanted out of SimCity 5 was SimCity 4 with better graphics and some updated challenges.


----------



## FordGT90Concept (Mar 18, 2013)

Easy Rhino said:


> i appreciate the challenges that having smaller cities creates but really all i wanted out of SimCity 5 was SimCity 4 with better graphics and some updated challenges.


I don't.  In all SimCity games prior to this one, I made maybe up to six cities and got bored of it.  The same approaches to handling traffic always worked so once you get it figured out, all the challenge is gone from the game.  In SimCity, simply placing an Expo Center can completely change the traffic landscape creating problems in unforeseen ways.  City infrastructure must evolve for the city to grow.


Yeah, the always online model sucks but that is a decision the developers made.  Think of it like starting a Minecraft server to play on instead of stating a single player game just in case you want to have someone else connect in the future.  I think they should allow offline regions or cities but their focus should stay with online.


----------



## Easy Rhino (Mar 18, 2013)

FordGT90Concept said:


> I don't.  In all SimCity games prior to this one, I made maybe up to six cities and got bored of it.  The same approaches to handling traffic always worked so once you get it figured out, all the challenge is gone from the game.  In SimCity, simply placing an Expo Center can completely change the traffic landscape creating problems in unforeseen ways.  City infrastructure must evolve for the city to grow.



they can still increase the size of the cities and keep that dynamic...


----------



## FordGT90Concept (Mar 18, 2013)

Processing power increases with city size exponentially.  There is a limit to how far they can go and only they really know the answer as to how far is too far.

I think the size is perfect.  Any bigger and region access (one or two roads, one or no rails) forbids it from getting any denser due to congestion.  Any smaller and there wouldn't be enough room to handle all the power, trash, waste, water, and city services.


Edit: you couldn't do this in SimCity 4:


----------



## FordGT90Concept (Mar 18, 2013)

http://www.simcity.com/en_US/blog/a...amazing-mayors-a-free-pc-download-from-origin

•Battlefield 3 (Standard Edition)
•Bejeweled 3
•Dead Space 3 (Standard Edition)
•Mass Effect 3 (Standard Edition)
•Medal of Honor Warfighter (Standard Edition)
•Need For Speed Most Wanted (Standard Edition) 
•Plants vs. Zombies
•SimCity 4 Deluxe Edition


----------



## remixedcat (Mar 18, 2013)

Oh wow didn't expect full games like those.. not bad.


----------



## FordGT90Concept (Mar 18, 2013)

I did.  The price of SimCity being a long-term failure is far greater than the value of a few downloads.

Dead Space 3 surprised me though.  They must have already seen the sales fall off on it so they added it to the list in preparation for DLCs, I bet.


----------



## remixedcat (Mar 18, 2013)

True.


----------



## lilhasselhoffer (Mar 18, 2013)

Here's my problem, and it doesn't stem from EA.

The developer made a handful of extremely bad decisions.  They 
1) forced players to be always online 
2) designed their game to be run on hardware that Simcity 3000 would have found reasonable 
3) didn't provide enough resources to get their game to function on day one 
4) when faced with the unreality of their statements they balked


Maxis takes full responsibility for 1-3.  They determined what they wanted to do, and alienated a lot of their consumer base.  Always online is a sticking point, but breaking online connection and forcing it is a sin against your users.  Aiming for very low spec hardware is a joke.  My old core 2 duo can surf the internet, it can't hang with a 2500k for gaming on the best of days.  


Point 4 is where my ire is raised, and even the game at its best cannot silence.  Maxis and EA said that Simcity cannot be played offline, because so much of the calculations were done on the server.  An intrepid user proved that the game will run without an internet connection.  EA responded by taking down the post.  They eventually dredged up an "explanation" that the "vision" of Maxis would not be realized if there were an offline component.  They did this while disabling features in their game, to make it playable.

Ok, fine.  I'll admit that a token free game from EA is nice.  They provide the people who wanted a working game with a different working game...I can see shreds of logic there.  EA is finally admitting the game was broken, and showing good will.  Viewing this logically:
-100 Delivering a broken game
-30 Claiming that online features were necessary, and being proven wrong
-60 Never asking consumers what they wanted in the game before release
+20 Fast response to issues
+50 Willingness to provide reparations for a broken game
+1 Finally owning up to lies after being proven a liar

Running score, Maxis has -119 points.  Given that this is subjective, here's where I'm coming from.  A free game makes up for half the negative influence of paying for a broken game.  Claiming a requirement is not a requirement is not acceptable, but being willing to make those requirements function quickly makes up for nearly all of that negativity.  Owning up to BS is commendable, but waiting until you're proven a liar first removes nearly all the good will it might garner.  Finally, basing your vision of a game on something that players don't generally desire means you don't care about your customers.  That willful disdain is a miserable smear on a company's public image.


So, yeah.  Simcity (2013) is a decent game.  Once it gets going, it's fun and has a lot of depth.  What it doesn't have, and what its developers have stated, are why I cannot get behind the game.  They don't believe Simcity should be single player.  They don't believe a city can be anything more than specialized structures to perform one or two tasks.  They want to monitor players, and crank out DLC so that a $60 game can be $120 within a year.  I'm pretty sure that if Crysis and Bioshock were chained down with these limitations they would never have sold.  What makes Simcity better?  I cannot see it, whatever it is.


----------



## FordGT90Concept (Mar 18, 2013)

Monitoring players allows them to evolve the game in ways they couldn't otherwise.  They're using something similar in BRINK2 beta testing to find problem spots in maps so they can fix them.  In SimCity, they can see how people often build cities and then they can/remove content encouraging people to be a little more creative.  Or discover that people are using something in a way that was unexpected creating excessive server load which they can patch.  By putting in the server aspect, fixing problems becomes an imperative rather than an only-do-it-if-absolutely-necessary thing.  It goes both ways.

As someone said at Maxis, SimCity is more like an MMO than anything else.


----------



## remixedcat (Mar 18, 2013)

oh shit guys:
http://arstechnica.com/security/201...atform-allows-attackers-to-hijack-player-pcs/


----------



## FordGT90Concept (Mar 18, 2013)

Good thing I don't have it running most of the time.


----------



## Easy Rhino (Mar 18, 2013)

remixedcat said:


> oh shit guys:
> http://arstechnica.com/security/201...atform-allows-attackers-to-hijack-player-pcs/



BWAHAHAHAHAHHAHHAHAHAHAH   

This breaking RIGHT NOW!

Electronic Arts says John Riccitiello will step down as CEO and from the board. EA said fourth-quarter earnings will be at the low end of its forecasts.

Note: Just to clarify, this is EA's 4th quarter. So they have run the numbers and realized that the SimCity debacle this quarter totally screwed them.

Note 2: They announced right after the market closed today to protect the stock price. This cannot be good for EA. WBAHAHA


----------



## digibucc (Mar 18, 2013)

wow.... or rather, cool  jk don't mean to be cynical, but EA deserves to eat some crap for all they've done. imo.


----------



## FordGT90Concept (Mar 18, 2013)

Easy Rhino said:


> BWAHAHAHAHAHHAHHAHAHAHAH
> 
> This breaking RIGHT NOW!
> 
> ...


They need to look on the bright side: the 4th quarter will have less pirating. XD


----------



## remixedcat (Mar 18, 2013)

I've been telling people that Origin's DRM and other DRM such as SecuROM, etc has had a backdoor for quite some time. It was mentioned in 2 sec. webinars I attended. These were done by a hosting company and the other was a mainstream sec. software vendor.


----------



## Easy Rhino (Mar 18, 2013)

FordGT90Concept said:


> They need to look on the bright side: the 4th quarter will have less pirating. XD



aha brilliant way to combat pirating: make shit games not even the pirates want to play


----------



## FordGT90Concept (Mar 20, 2013)

1.7 traffic update is out:
https://help.ea.com/article/simcity-patch-notes


----------



## RCoon (Mar 20, 2013)

erocker said:


> $60 bucks for this game is a total joke.
> 
> I'm looking forward to EA getting bought out, the sooner the better.



They almost did get bought out by Nexon. They were certainly interested. I dont see what MapleStory has in common with Battlefield or Mass Effect, but w/e


----------



## remixedcat (Mar 20, 2013)

FordGT90Concept said:


> 1.7 traffic update is out:
> https://help.ea.com/article/simcity-patch-notes



Yey! Some of the sims are starting to use Inrix Traffic!


----------



## xenocide (Mar 20, 2013)

RCoon said:


> They almost did get bought out by Nexon. They were certainly interested. I dont see what MapleStory has in common with Battlefield or Mass Effect, but w/e



That was only a rumor.  I honestly would rather see EA remain independent than Nexon take over for them.  While Nexon handles F2P MMO's well, that's pretty much exclusively what they do on the development side of things (yes they publish other companies products in Japan and Korea).


----------

