1.20.2 changed game profile handling to use an empty string + nil UUID instead of null.
Changes
Changed ProfileEditorImpl#getGameProfile to public and changed it to use the new ProfileEditorImpl#getGameProfileNoProperties.
All relevant places now use the getGameProfile methods.
Additions
ProfileEditorImpl#getGameProfileNoProperties - creates a GameProfile from a PlayerProfile without transferring over properties (e.g. textures).
ProfileEditorImpl.EMPTY_NAME/NIL_UUID - constants for "null" uuids/names in GameProfiles.
Notes
Handled this on the NMS level for now, as I don't want to cause issues with handling on older versions - once 1.20.2 is the minimum supported version we could update the entire codebase for that if we're not already Paper-only and using their player profile API by then.
1.20.2 changed game profile handling to use an empty string + nil UUID instead of
null
.Changes
ProfileEditorImpl#getGameProfile
topublic
and changed it to use the newProfileEditorImpl#getGameProfileNoProperties
.getGameProfile
methods.Additions
ProfileEditorImpl#getGameProfileNoProperties
- creates aGameProfile
from aPlayerProfile
without transferring over properties (e.g. textures).ProfileEditorImpl.EMPTY_NAME/NIL_UUID
- constants for "null" uuids/names inGameProfile
s.Notes