From Divinity Engine Wiki
- query CharacterGetReservedUserID([in](CHARACTERGUID)_Character, [out](INTEGER)_User)
Returns the ID of the user that controls _Character in _User.
- Success/Failure: Fails if _Character does not exist or is NULL.
- _User: The user ID of the player to which _Character is assigned. If it is not assigned to anyone, the special value -65536 is returned.
- "Users" are the game term for human players in the game. Every client that connects to the game, including the one that started the host game, gets assigned a User ID.
- User IDs are volatile: they can change at any time, in particular when loading a saved game, or when someone disconnects and reconnects. Never store this value in a database. Only use it immediately after requesting it, within the same frame. If you need a persistent identifier for a user (or rather, user profile), pass the result of this query to GetUserProfileID.