Achievements Overview
*** Achievement Objects:
The API exposes two object types related to achievements, achievement definition objects and achievement progress objects.
Achievement Definitions: Achievement definition objects define your game's achievements. They comprise an internal name, an achievement type, and the target which much be reached to unlock that achievement
Achievement Progress: Achievement progress objects represent the progress that a player has made toward an achievement. They comprise a name, whether or not the achievement is unlocked, the time at which it was unlocked, an achievement type, and, depending on the type, the progress made towards unlocking it.
*** Achievement Types:
Achievements come in three flavors: Simple achievements, count achievements, and bitfield achievements.
Simple Achievements: Simple achievements are either locked or unlocked, with no notion of progress. Examples could include "Beat Level 3" or "Give Josh A Bad Performance Review
Because He Made Me Write This Boring Achievements Documentation". Call
ovr_Achievements_Unlock() to unlock a simple achievement.
Count Achievements: Count achievements have an integer target and are unlocked when that target is reached. Call
ovr_AchievementDefinition_GetTarget() to get the target, and
ovr_Achievements_AddCount() to add progress towards the target of a bitfield achievement. Examples could include "Collect 100 Coins" or "Avoid 5 Tedious
Meetings About Improving The Achievements API By Hiding In The Utility Closet"
Bitfield Achievements: Bitfield achievement have a fixed number of fields which are either true or false, and an integer target which represents the number of fields which must be true for the achievement to be unlocked. This makes it possible to create N of M achievements, such as "Visit 4 of the 7 Continents" or "Fix 3 of 10 Crash Bugs In The Achievements API, But Leave The Rest In, Because Life Would be Boring Without A Little Unpredictability". Call
ovr_Achievements_AddFields() to unlock the fields of a bitfield achievement
The Achievements API enables developers to create engaging experiences by awarding trophies, badges, and awards for reaching goals. Users can see friends' achievements
ovr_Achievements_GetAllDefinitions(), fostering competition, and earned achievements are displayed in Meta Quest Home, showcasing progress
ovr_Achievements_Unlock() and driving engagement.