OldnGrey wrote:
Can I assume that
var slot := acct.AddCharacter(0);
would then trigger oncreate immediately or can I finish a script first?
Would it be best for the AddCharacter to duplicate what the client sends when creating a character?
There is obviously some core action right now that supplies a lot of stuff before oncreate is run, so are you planning to remove what the core does and simply send along all the client supplied parameters for oncreate to handle?
The core will check some validity towards character creation before proceeding to oncreate: if its a valid account, valid character slot, no characters already logged in. Assigning a serial number and initial placement in the world would also be core-side.
Checking for valid skin color, item color, etc. would become the responsibility of oncreate as well as assigning stats and skills.
account.AddCharacter() could have additional arguments that get forwarded to oncreate to be handled there.
account.AddCharacter(slot, attribute, properties, items) or something