#### `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.