design lead  |  UX design  |  UI design  |  virtual worlds  |  games  |  architecture  |  program management

SimCity 4

The legacy of a legendary game series lay in my hands. Holy cow!


Not long after SimCity 3000 was released, just as I was completing the SC3K Building Architect Tool, a small team was assembled to build the next SimCity. I had proven myself on BAT and had the trust of the producers and executives. I was assigned as lead designer.


It was understood that it should still be a mayor-god game, but it also had to be different - deeper, richer... better.


the context


Initially, it was myself with two engineers and a producer (a sort of product- and production- manager). We had a four-year timeline.


The project team grew steadily until more than 80 were working crunch time to meet the release date - moved up 6 months early.


At the same time, Maxis was also producing The Sims, the original version, and it siphoned a lot of energy and attention away from SimCity. The producer was changed 4 times in the course of development.


my contributions


  • Worked with all leads and execs to agree on general direction of the franchise and new features. Led and maintained this product vision through to release.
  • Co-developed new city development simulations, enabling localized effects in a city to create neighborhoods.
  • Designed region game and simulation, enabling creation of mutually supporting specialized cities.
  • Designed game space, defining multiple city outcomes based on player’s economic and landmark choices.





Assume the awesome responsibility of envisioning the future of a legendary game franchise.  Develop a consensus vision and elaborate and sustain it as the development team grows from 4 to 80.


For the fourth version of this classic strategy game, the question was how to improve the experience. After many interviews with interested parties, the prevailing issue turned out to be that all cities eventually end up looking pretty much the same. How could we make it so that cities could develop different characters, distinctions that would remain even as the city grows very large?

In reality, cities are different for a number of reasons - all mostly having to do with their context. A city’s particular circumstances, relative to those of other cities, cause it to develop as a complement to the other cities.

I proposed a robust region game - many cities played in parallel - to give cities that necessary context so that each could specialize. One city might be industrial, another business, another a “bedroom city”, another a tourist city, another a transportation hub, etc.



Another dissatisfaction with earlier version was that within a city there tended to be too much homogeneity, neighborhoods (such as they were) tended to look alike. There were two main reasons for this in the older simulations.

One was that limited art resources tended to generate the same buildings over and over. You would see the same buildings in every neighborhood, and often many times in the same neighborhood. The solution (short of parametric buildings, an idea that was rejected) was to make structures just one component of a developed lot. By adding a large range of “props” to a building and its surrounding property, any one building would inevitably differ from its clone on another lot. This lot/building/prop method was something I designed and specified in detail.

The other reason for city homogeneity was that amenity structures - schools, parks, police, etc. - all had global effects on the city. A single school in a corner would educate all citizens equally. We rewrote the simulation so that such buildings affected only a local radius. This allowed a mayor to spoil some parts of town and starve others, and the resulting effects were visually very pronounced!


One thing I learned from Will Wright was that a simulation doesn’t have to have all that much detail, because the observer will read into what’s happening much more than actually happens. I brought to bear my subject matter expertise on cities and urban development to work closely with the engineers to design these simulations.

SimCity 4’s simulations adopted the general residential/commercial/industrial (RCI) formulation and their basic interactions and incentives, but with applied localized effects of amenities. Like earlier versions, the simulation ran on a cellular automata, a grid with each cell responding to its inherent and local factors. Each cycle, a “developer sim” would check each cell for pressures to change - whether to swap props and other status indicators, or redevelop entirely, or not change at all. This was quite complex and very difficult to tune, but all along was guided by a clear idea of what outcomes we wanted.

The region simulation was a scaled up version of the RCI engine, but with grosser time-steps and strongly tied to transportation links between cities. The transportation simulation was based largely on the “A*” standard, running on a sample of random “agents” throughout the city and the region. I had also designed a climate/flora simulation and even built a prototype in Excel, but this dropped.


game arcs


Not being a gamer myself, I relied on my producers to guide me in designing the game elements of the city simulation. I liked to think of the system as a massive simulation with levers for the user to tweak freely, but many users prefer guidance and goals to attain.


Because so many different city outcomes were now possible, I developed a tree of events - building rewards and advisor announcements that presented the player with choices at select milestones. The choices made at these milestones would be essential in determining the long-term character the city would take on. In fact, the rewards were very closely tied into the advisor system, which itself was quite extensive and based very much on guiding the player to this variety of outcomes.


I wrote almost all the advisor statements myself, injecting a wry humor wherever I could.

data visualization


The city simulations produced an enormous amount of information that would be useful to the player in making decisions.  Ideally, the city itself should represent what is going on through changes in buildings, props, events, and agents visible to the player.

But to see and understand statistical aggregates, trends, and financial and other values, a complete data dashboard was needed.

 Some data needed constant visibility, other data should be a click away, and the rest of it should be available via digging down one or two levels. Histograms compared values,  line graphs illustrated trends, and map views depicted spatial distributions.

In addition to enabling the user to see what is going on,  this data dashboard UI also included the ability or tools to make changes to affect that data wherever possible.

other work


The Sims was under development at the same time across the hall, and I had to opportunity to consult every now and then on things architectural as well as on some genomic ideas around character creation.

Later in my tenure, development of Spore was underway. I pitched in at some early brainstorms, and later was assigned to the team. I contributed ideas for patterns of village and city developments that somehow reflected the evolutionary traits selected for the creatures by the player.


Copyright 2016 Joseph M. Knight