#### `Json` player.getProperty(`String` name, `Json` default)
Returns the value assigned to the specified generic player property. If there is no value set, returns default.
---
#### `void` player.setProperty(`String` name, `Json` value)
Sets a generic player property to the specified value.
---
#### `void` player.addScannedObject(`String` name)
Adds the specified object to the player's scanned objects.
---
#### `void` player.removeScannedObject(`String` name)
Removes the specified object from the player's scanned objects.
---
#### `bool` player.hasAcceptedQuest(`String` questId)
Returns `true` if the player has accepted a quest (which may be active, completed, or failed) with the specified quest id and `false` otherwise.
---
#### `bool` player.hasActiveQuest(`String` questId)
Returns `true` if the player has a currently active quest with the specified quest id and `false` otherwise.
---
#### `Maybe` player.currentQuestWorld()
If the player's currently tracked quest has an associated world, returns the id of that world.
---
#### `List>` player.questWorlds()
Returns a list of world ids for worlds relevant to the player's current quests, along with a boolean indicating whether that quest is tracked.
---
#### `Maybe` player.currentQuestLocation()
If the player's currently tracked quest has an associated location (CelestialCoordinate, system orbit, UUID, or system position) returns that location.
---
#### `List>` player.questWorlds()
Returns a list of locations for worlds relevant to the player's current quests, along with a boolean indicating whether that quest is tracked.
---
#### `void` player.hasCompletedMission(`String` missionName)
Returns whether the player has completed the specified mission.
---
#### `List` player.teleportBookmarks()
Lists all of the player's teleport bookmarks.