GameAPI standards filestd specialslist

> filestd

Content
This file should contain n-rows of players, listed by both their steamID, and their name. The user can opt to specify either, if manually editing it (or through a website (/etc)). Mods adding row should aim to add both. The entry should also have their VIPstate (an integer can be used for several tiers of this. No current standard for this number. If your mod is using several tiers, add a standard). Assume user is VIP if >0 VIPduration: An array of dates. The mod should check them one, by one. If any is valid, it should interpretate it as 'user is VIP'. If any entry is '0', it should be read as 'never expires'. If there's no VIPduration entries, it should be read as 'never expires' rep: the reputation of the user. Can be used to specify the users loyalty, and standing with the community. Some mods might increase it by n, every n-minutes, or decrease it, for instance if the user have done something questionable. (such as griefing, spamming or otherwise).

Format
YAML,

Players: -PlayerID:  PlayerName:  VIPDuration: - End:  (Format: "dd-MM-yyyy HH:mm", should be parsed into a public DateTime EndDate = Convert.ToDateTime(Players[n].Expiration); ) VIP:  rep:  LastOnline:  (Format: "dd-MM-yyyy HH:mm"  FirstOnline:  (Format: "dd-MM-yyyy HH:mm" TotalPlayed:  Language: 

Variable/Static/Final
File content is Variable. -Normally, a mod would add a new entry if an user, not on the list, connects. (rep:0, vip:0, no VIPDuration, both playerID and PlayerName) -Normally, a mod would modify this every so often, when an user have gained rep. Normal behaviour would be doing this upon users disconnect, but other methods can be used aswell.

Known mod(s) using this format
SpotGuard by Exa - VIP file. Depending on configuration, reputation can be used in a numbers of ways, such as 'play-credit', 'increased the more played', and more - Standard name:"specialslist.yaml"

File example
Players:


 * 1) - PlayerID: 


 * 1)    PlayerName: 


 * 1)    (If ID is 0, it will attempt playername instead)


 * 1)    VIP:  (Anything >0 will be 'yes' for SpotGuard)


 * 1)    VIPDuration:


 * 1)    - End: . If not specified, or 0, will 'never expire'


 * 1)    rep:

- PlayerID: 0

PlayerName: "Exacute"

VIPDuration:

- End: 20-04-2018 00:00

VIP: 0

rep: 30

- PlayerID: 33

PlayerName:

VIP: 1

rep: 0

- PlayerID: 42143523532423

PlayerName: Exacuter

VIP: 3

rep: -1.45026129697216

LastOnline: 23-04-2018 07:34

FirstOnline: 23-04-2018 07:11

TotalPlayed: 9

VIPDuration: