blocovermelho / mod

Meta-repositório de todos as implementações de mods relacionados ao funcionamento dos servidores do bloco vermelho
Creative Commons Zero v1.0 Universal
0 stars 0 forks source link

Implement Account Migration Workflow #5

Open alikindsys opened 4 days ago

alikindsys commented 4 days ago

This should allow for users to self-migrate their accounts and for staffers to force a migration between different accounts linked to the same discord account.

alikindsys commented 6 hours ago

Information Merging Procedure

Definitions

An empty account is defined as one having:

Information MUST always flow from the old account to the new account, and after a migration the old account's data MUST be wiped clean and no traces of it on the server should exist.

A migration is a binary operation between two accounts: The finishing account is as such defined as a summation of all accounts to be migrated.

Empty accounts are the identity of a migration: Applying an migration between an account and an empty account results in the other account.

Abstract

In the cases where the new account is determined to be empty, that new accounts' data should be OVERWRITTEN by the old account information, wherever possible.

When that cannot be done (e.g. The player decided to keep playing on the new account and it has any of the above) an strategy for "merging" said information should be developed.

This comment is the one where such strategy will be outlined.

Stategy

  1. For "numeric" data such as experience points and statistics, those can simply be summed together and reset on the old account.
  2. For items, the new accounts' data should be accessible once, via a "virtual inventory" containing those items. It is of note that such inventory MUST be "read-only". Users shouldn't be able to use "alternate accounts" as extra inventory slots. Once said inventory empties out that inventory becomes no longer accessible.