accounts - OpenPerpetuum/OPDB GitHub Wiki
Description
This table describes all the accounts that have been signed onto the server.
Table Structure
ID | Type | Name | Description | Properties | Links |
---|---|---|---|---|---|
1 | Number | accountID | An unique numeric ID that is assigned to every account | UNIQUE, PRIMARY | Original |
2 | String | The email address that is tied to the current account. | None | ||
3 | String | password | The password of the current account. | ||
4 | String | firstName | The real first name of the account owner. | ||
5 | String | lastName | The real family/sur-/last name of the account owner. | ||
6 | DateTime | born | The date of birth of the account owner. | ||
7 | Number | state | The state of the account. | ||
8 | Number | accLevel | The account's access level to administrative features. | ||
9 | Number | totalMinsOnline | A statistical metric describing the number of minutes this account has spent online; connected to the server. | ||
10 | DateTime | lastLoggedIn | When was the account last logged in? | ||
11 | DateTime | creation | When was the account created? | ||
12 | Number | clientType | The type of client the user is using??? | ||
13 | Boolean | isLoggedIn | Is the user currently online? | ||
14 | DateTime | bantime | When was the last time the user was assigned a ban? | ||
15 | Number | banlength | How long does the current ban last for (from time of ban)? | ||
16 | String | bannote | The reason for which the user the last/current ban was issued for. | ||
17 | Boolean | emailConfirmed | Is the email for this account confirmed? | ||
18 | DateTime | firstcharacter | ??? | ||
19 | String | note | ??? | ||
20 | String | steamID | The Steam ID of the user that this account belongs to. | ||
21 | String | twitchAuthToken | The authentication token from Twitch for Twitch integration. | ||
22 | Number | Credit | ??? | ||
23 | Boolean | isactive | Is this account active? | ||
24 | Number | resetcount | ??? | ||
25 | Boolean | wasreset | ??? | ||
26 | DateTime | validUntil | ??? | ||
27 | Boolean | payingcustomer | ??? | ||
28 | String | campaignid | ??? | ||
29 | Object | accountpremiumpackages | ??? | accountpremiumpackages |
Notes
password
We have no clue how passwords are stored. I hope it's not plain text.
state
This field is most likely an enumerator.
acclevel
This is an enumerator of Perpetuum.AccessLevel.
ID | Access Level | Description |
---|---|---|
0 | Not defined | ??? |
1 | Normal | ??? |
2 | Game Master | ??? |
3 | Admin | ??? |
4 | Owner | ??? |
clientType
This field could be an enumerator.
banlength
// todo: Figure out what the unit of measurement is. Most likely minutes or seconds.
steamID
// todo: Figure out what schema it uses to store the ID numbers. Is it the Steam64? The community ID? The account ID? (last two are strings)
Yes, in the Steam databases, our original ID is literally their primary key.
isactive
// todo: Find out the conditions that an account needs to "be active".
Could be used for the daily EP granting.
accountpremiumpackages
This is an object describing the premium packages (or DLCs) that has been purchased for this account.
ID | Type | Name | Description |
---|---|---|---|
1 | Number | id | The table row of this database entry. Not sure if it's linked to the [accountpremiumpackages](accountpremiumpackages) table. |
2 | Number | accountid | The account this packaged was purchased for. |
3 | Number | packageid | The ID of the package that was purchased. |
4 | DateTime | purchasetime | The timestamp at which the package was purchased. |