The ruins of Sumerian-era Dilmun from about 2600BC on the island today known as Bahrain in the Persian Gulf.
The ruins of Sumerian-era Dilmun from about 2600BC on the island today known as Bahrain in the Persian Gulf.

Cities Never Truly Vanish

We had to figure out how to handle buildings that vanish, only to be excavated again two thousand years later. Or cities that are abandoned and lost and then rediscovered. What does it mean to model historical objects that are lost from history, then return? And does archaeological data belong in the present or the past?


Do cities ever go away? Even if a city is lost to the best of our present knowledge, aren't the remains of it physically still somewhere, waiting to be rediscovered? Unlike maps that just exist for a particular date in time, Running Reality is a world model where everything has its own life timeline through history and this means we had to do things a little differently. Most digital history maps will show one point in time, and so they take one of two approaches:

However, we more explicitly model the timeline of events across history. Here is our approach:

Abandon, Ruin, Bury, Excavate

We therefore allow objects to have multiple lives but remain the same object. Just because a building was buried under another building, it is still the same stones it once was. Also, that means it is possible to have objects hiding under other objects. For cities, once the population goes to zero, it is abandoned, and the buildings within it begin to fall to ruin. However, the city is still there and might even become re-occupied. Over 5000 years, this has happened to many cities such as Carthage and Troy.

In Running Reality, we also have a policy that data (at least in the baseline timeline) should be real historical evidence that can have a citation and be independently verified. This means that the renderer engine sometimes has to interpolate and infer. If a city becomes abandoned, the buildings within it become abandoned. Over time they would become ruins and maybe be buried. If all the engine knows is that a building existed in imperial Rome, was lost, and then excavated in the twentieth century, it should draw the building as being buried -- just an outline -- until the excavation event. If when you see what the engine is inferring is wrong, that means you have additional data, which can then be entered so that the engine can improve its rendering. For instance, you can give a new building footprint to show just how little might be found to remain after excavation.

Byzantium, Constantinople, Istanbul

These long timelines over which things like cities and buildings can persist for millenia also mean other changes. Not only does the appearance and structure change, and we need to render that, but the names change, too. One decision we made early on is that names are never subtracted, only added over time. For instance, just because today we call the city Istanbul doesn't mean we've forgotten that it used to be called Byzantium or Constantinople. The proper label for the renderer is to today use Istanbul and in 500AD to use Constantinople, and in 300BC to use Byzantium. However, you can look up Byzantium today and it will still mean the same city. The names have only been added over time, not subtracted.

Similarly, for cities that have been abandoned and resettled, we generally consider them the same city. Cities are physical things and so long as the same physical structure is used in the re-settlement, we will keep the same timeline and therefore the same name. We say "generally" because there are exceptions.

The Running Reality policy for nations is different. Nations are political and organizational entities, not physical ones. We have struggled with how to model how these have changed over time because it can be much more fluid. Instead of a single timeline for a single object, we have modeled splits and mergers using inter-link events to connect timelines. Here are some examples:

Is it true that cities never truly vanish? Maybe that overstates things. However, at least for big physical structures, there is almost always some part of it that persists, even if it is as a ruin. With the Running Reality project, we've taken a more detailed, explicit approach to modeling what exists at each point in time, explicitly including long periods where something like a building might be buried and explicitly including the excavation process.