Wednesday, 14 July 2010

Economy - Part 1/7

A lot of thinking has gone into this series of posts about simulating the economy - mostly about how to describe the proposed model in an understandable form.  In this post, I'll be introducing the topic, the general approach and a few tools that will be recurring features in the economy and the wider simulation.

General Approach

An economic component to the game will produce more realistic demands in the residential, commercial, industrial and transportation aspects of the simulation.  This is therefore important to the goal of continuous playability in a realistic city simulation.  It also ends the arbitrariness that you can find in a number of games, which promotes unrealistic construction techniques.

Take OpenTTD, for example, where demand at transport stations is a function, not of where people actually might wish to go, but of how close they live to the station.  Crudely speaking, the more people living close to the station, the more passengers available to transport - and further, despite efforts within that community to patch the code, passengers and cargo are normally simply dropped at the next station.  This is not a criticism of OpenTTD, per se:  theirs is a perfectly viable and often enjoyable model within a game centred solely on transport.  As WorldSim extends into a city simulation, we require better models of demand.  And for the game to be playable, demands need to be more realistic and this requires an economic aspect within the game.

The fear at this point is undoubtedly playability.  People don't want to necessarily control an entire economy, a city layout and a transportation system.  The joy of the scripting and customisation that I hope to promote in this game is that we can replace the human player with computer code in one or more of these aspects.  The player is then able to focus on the aspects of the game they enjoy, subject to the additional challenge of working with or against the computer controlling the other elements.

In order to influence the simulation of the economy, of transport and of the behaviour of the simulated people, we need to introduce a tool to do so.  We need to introduce: "Policies"

Policies
This is my catch-all term for laws, regulations and rules that the player, computer players or external developers can impose upon the simulation.  As an equivalent, in SimCity, you are able to enact ordinances, change taxation, etc.  These are all captured by the term "policy" within WorldSim.  All economic changes and movements, as well as a number of other aspects of the simulation, will check against a policy list to take appropriate actions.  For example, an individual receives payment and the check determines a policy called "Income Tax" exists, which transfers X% of that payment from that individual to an account labelled "Government".  Hopefully, that's pretty simple! :)  The policy will also, however, be able to specify any other effect that the main policy might cause - for example, "Income Tax" might reduce the happiness of people, which might impact on certain types of demand, and so forth.  Quite complex effects can therefore be simulated.

Policies can also be set by external developers to change the simulation, and can be rendered read-only or even invisible to the person playing the game.  The simulation can therefore be rendered complex without the need for the player to actually be involved in many aspects.  Policies can be adjusted via script, and can evolve over time

This is all rather short on detail, and that's because it is easier to explain policies by example (which means I need to have told you what's happening with the economy model) but in order to explain how aspects of the economy work and can be controlled, I need to have introduced the concept of a policy!  Hopefully, all will become clearer in time...

What's Next?
In the next six parts, I'll outline how the economy will be modelled.  Don't panic about the playability of the game - most of this either will or can be transparent to the person playing the game, but all will be customisable, so that noone has to rely on me tweaking the economic model to one of their choosing.

So here's my list of topics, all of which I promise will have pictures:


  • The Financial System:  Creating and Destroying Money - introduces money to the simulation, the concept of banks and how they might create cash.  Also deals with cash "sinks" to prevent the simulation being destroyed by inflation
  • Companies - fairly brief, just introducing a company as an entity, its interaction with the financial system, and its ability to employ people.
  • Product and Service Nets - What do companies sell?  Well, somehow a company has to provide a service or product, which takes materials or man-hours.  These three posts will describe how these dependencies can be described, how a market will be produced to provide required materials not available in the city, and how a shadow economy can be established using these nets and policies
  • Establishing Demand - how can we decide if people will buy certain goods or services?  What additional information needs to go into our nets to help with this?

So, with a promise of pictures to break up my walls of text, I bid you farewell until the weekend.

Fred

1 comment:

  1. Another deep and thoughtful post! Don't worry that you're not getting any comments - at this early stage people are content to watch in silence.

    ReplyDelete