Still confused about this use of the word persistence; coming here with the dictionary meaning and trying to understand a seeming contradictory concept.
The technical sense of the term arises from “persisting something to the runtime database.” The base states are usually in a template database of some sort, along with all the other static data. The template database is read-only as the game is running, and only developers get access to it. The runtime database is where everything that players do goes. (See here and here for more).
The base data in the static template database doesn’t count as “persistent” or “persisted” because it’s actually baked into the world’s rules in some fashion, as a starter state. Delete everything in the runtime database, and that map will still be there, usually. You will have playerwiped WoW, but the world of WoW will still be there: every loot drop, every monster, every quest, every house.
The virtual world definition of the term means “to save changes on top of the base dataset.” So a base character starts with no real gear and newb stats, and a designer sets that up in the template database as the definition of a newbie character. But we save their advancement. That’s persisting a character to the runtime database. The stats and gear might go up OR down, but they are different from the base.
Continue reading »