Source data

    • Terrain
    • Elevation
    • Temperature
    • Rainfall
    • Sunshine
    •  Biomass
    • Shore

Map editor

    • View hex properties
    • Set default from/to values/colors
    • Add/remove hex properties
    • Edit individual hex
    • Edit hexes using a brush
    • Edit hexes by smoothing (take average of surrounding properties

Simulation designer

      • Select data file
      • Specify general formulas
            • Migrate potential (must be >0 to migrate – cell with highest potential is chosen)
            • Migrate percentage (must be >0 to migrate – determines % of population which migrates)
            • Join (if >0, the populations in same hex join, dominant population is kept)
            • Split (if > 0, the population splits from identity)
      • Hex formulas
            • Specify values from/to + color range
            • Add/remove calculated hex properties (not from source data)
            • Specify initial formula for calculated hex properties
            • Specify an update formula + update turns schedule – ie. the property will be recalculated using the update formula every X turns
      • Population formulas
            • Add/remove/reorder properties
            • Specify initial/default value
            • Specify values from/to + color range
            • Update formula – run every turn to determine new value
            • Merge formula – run when populations join together to calculate new value
            • Compute order to determine the order properties are calculated in
            • Highlighting formulas in yellow which do not compile correctly

Simulation runner

    • Control feature:
        • Take turn/play/stop/back/forwards
        • Add populations to map using mouse
        • Load/save states
    • Display features:
        • Choose hex property to display color scheme
        • Show individual populations (identity color), or the totals/averages for the hex
        • Color jumbler
    • Stop points (when to halt the simulation)
        • Value has reached % out of range
        • Value is greater/less than specified value
        • At specific turn
        • If any value reaches infinity
    • 3D globe display
        • Camera control – click and drag with right mouse button
    • Details display
        • Selected hex details
            • Populations in hex
            • Hyperlinks to jump to identity or population in hex
        • Identity average/total values
            • Population list
        • Population details
            • Property values
            • Migration calculations
        • Stop points reached (if hit)
        • Performance statistics (debugging tool)
        • Some property values are hyperlinks, showing breakdown of formula broken up by comments

Turn taking process

Each turn, the logical steps are executed in the following order:

1)      Recalculate population properties

2)      Recalculate cell/identity totals & averages

3)      Calculate & perform migrations

    • Random sea journeys will be attempted if population seamigrate >= 2
    • Sea migration hex is considered alongside adjacent hexes
    • If migrating to a hex where population of same identity exists, the populations are automatically merged using normal merge logic (dominant population kept, merge formulas run, etc)

4)      Calculate & perform joins

    • Dominant population is kept, subservient population is ended
    • Merge formulas run to calculate new values (default merge formula is to take the average value, weighted by relative sizes)
    • If the subservient population was the identity’s capital, then a capital overthrow occurs
        • All populations in the identity change to the dominant identity
        • If this results in multiple populations in the same hex in the same identity, they automatically merge

5)      Calculate & perform splits

    • If split formula > 0 then the population forms a new identity

6)      Recalculate cell/identity totals & averages, since population properties have changed