[crossfire] Character names, was Re: Changing connection texts

Mark Wedel mwedel at sonic.net
Sat Jan 9 13:17:18 CST 2010


Nicolas Weeger wrote:
>>   True - there is no migration plan/support.  However, there are some
>> number of servers right now that running trunk bits.
>>
>>   But maybe we just state all trunk servers must convert over, and let them
>> deal with any conflicts they have on their own.
> 
> As I see it, first will be server-side support (which you started to 
> implement), then client-side.
> So let's add a new "use_account" SETUP setting sent by clients. If set, use 
> account mode, then use regular/current player login.
> Obviously add options in account management to link an character to an 
> account :)

  Yep - that is my next step or work.

  The only complication in all of this is player name uniqueness.  If we go by 
the idea of storing player files as lower case names, so there can only be one 
'Mark' player on a server, regardless of capitalization (mark, mArk, etc), 
ideally you want to convert all existing player files to be all lower case.

  Otherwise you could get the case where I create a new character, and it is 
called Mark, and the save file is Mark.pl

  Now somone else goes and creates a character called mark, save file mark.pl. 
Because the existing save fail is not in all lowercase, the second one is valid.

  Now I can think of various ways to handle this - all new characters have save 
files all in lower case, but if old characters, we have legacy support and look 
for them in upper case.

  I'd rather just write a conversion script and tell server admins to run it, so 
we don't have to have that code around, which we know would only be used for 
transition.


> 
> And after some time remove legacy support.

  The problems we run into is that tends not to be done/not clear what 'some 
time' is.  6 months?  3 years?

  But there are really 2 cases of legacy supported needed - legacy support for 
login without the account support (for old clients), and player file naming.

  The second one, as I note above, can be eliminated with some scripts.  The 
first one probably needs some support - maybe 6 months after we release a client 
that supports it?




More information about the crossfire mailing list