Why not using a GUID?
This can be generated(even locally), using standard tooling, upon character creation and, if needed, stored in the database.
IMO this (separate) storage is not needed because a GUID is in its nature unique and can be used as is. Of course it must be attached to the character and stored togehter with the other character information in the vault.
How do we rehook after a PC remake? e.g. *Bob* needs a remake and comes back as * Bob*.
I'd say *Bob* comes back as *Bob* with the same GUID.
So what happens:
- player asks for character remake
- DM deletes *Bob* from vault (retains the GUID)
- player rolls a new *Bob* with a new GUID
- DM changes GUID of *Bob* to old GUID.
- *Bob* is back in business.
So a DM needs provisions to read and write the GUID of a character (preferably from within the game itseld, (DM wand?)
GUID:
Short for Globally Unique Identifier, a unique 128-bit number that is produced by the Windows OS or by some Windows applications to identify a particular component, application, file, database entry, and/or user. For instance, a Web site may generate a GUID and assign it to a user's browser to record and track the session. A GUID is also used in a Windows registry to identify COM DLLs. Knowing where to look in the registry and having the correct GUID yields a lot information about a COM object (i.e., information in the type library, its physical location, etc.). Windows also identifies user accounts by a username (computer/domain and username) and assigns it a GUID. Some database administrators even will use GUIDs as primary key values in databases.
GUIDs can be created in a number of ways, but usually they are a combination of a few unique settings based on specific point in time (e.g., an IP address, network MAC address, clock date/time, etc.).