This fifth post from the Milestone 2 database structure series describes the elements of the naming system. This system is used to store all names that may be modified by players (empires, alliances and “map objects”) and will be visible by everyone. Using a separate component for this makes administration a little easier.
Banned names
A banned name is a 20-character string that has been banned by an administrator from ever being used in any type of name.
Empire names
An empire name consists in an unique, 20-character string. It is associated with the account that created it. In addition, empire names need to be inspected by the administration team. Once an empire name has been inspected, it is associated with the administrative account which inspected it, the time and date of the inspection as well as whether it was reset or kept.
Alliance names
An alliance name actually consists in two strings: the tag, a 5-character string which uniquely identifies the alliance, and the description, a 40-character string which does not need to be unique. They are associated with the account owning the empire who created the alliance. Alliance names need to be inspected by the administration team – if a name is rejected, the alliance is disbanded. If it is validated, however, the administrative account which inspected it as well as the time and date of the inspection are associated with it.
While an alliance’s tag cannot be changed, its description may be modified by the alliance’s current leader. When that happens, the previous validation information is removed and the “account to blame” is updated accordingly.
Map objects names
A map object name is, at the moment, the name given to a planet. It consists in the actual name (which is a 20-character string), originally generated by the game when creating the map. To prevent players who just gained control on a planet from renaming it immediately, the minimal next renaming time and date are associated with name records and updated every time the corresponding map object changes owner or when the object is renamed.
When a map object name is changed by a user, it must be validated by an administrator, who may choose to keep it or to reset it. A map object name that was reset must still undergo the wait until the minimal next renaming time. Changing an already validated map name removes the inspection information.