====== Players ====== ===== How players are made ===== When the hub first sees ''[TAG]Name'' it: - makes a Synchronet user on your door BBS called ''Name (TAG)'' (Synchronet allows 25 characters, so long names are shortened, and a number is added if two players would get the same name); - gives that user a random password that only the hub knows; - remembers the player's password from their BBS, as a bcrypt hash. Each session the hub runs ''mkuser.js'' with ''jsexec'' to make sure the user exists and has the right password. If you delete a hub user in Synchronet, it's simply made again next time, with a fresh start in every game. Users made by the hub have the comment set by ''new_user_comment'' (default "Door Hub player"), so they're easy to find in your user editor. They get your BBS's normal new-user settings, with ANSI and colour turned on. ===== Commands ===== doorhub player list [TAG] players, newest first doorhub player reset "[TAG]Name" forget the player's password from their BBS $ doorhub player list PLAYER DOOR-BBS USER FIRST SEEN LAST SEEN PLAYS [KAL]Heisenberg Heisenberg (KAL) 2026-11-09 10:42 2026-11-09 11:40 lord:3 seal:1 ===== Player passwords ===== Member BBSes send a password for each caller (''doorhub.js'' makes a random one per caller). The hub keeps the first one it sees for each name. If a different password arrives later for the same ''[TAG]Name'', the hub refuses it with "Your Door Hub password doesn't match". This stops a new caller who takes an old caller's name on a member BBS from playing as them. When a member rebuilds their user base, or a caller's BBS account is recreated, reset the player: doorhub player reset "[KAL]Heisenberg" The next password that arrives for that name is kept. ===== Names ===== * Up to 30 characters, printable ASCII. Names with ''['' or '']'' are refused. * Names are matched without regard to capitals: ''[KAL]heisenberg'' is the same player as ''[KAL]Heisenberg''. * The game sees the door BBS user name (''Heisenberg (KAL)''). Many doors also let players choose their own name inside the game.