Bird
Raised Fist0
Unityframework~5 mins

PlayerPrefs for simple data in Unity - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is PlayerPrefs in Unity?
PlayerPrefs is a simple way to save and load small pieces of data like settings or scores between game sessions.
Click to reveal answer
beginner
How do you save an integer value using PlayerPrefs?
Use PlayerPrefs.SetInt("key", value) to save an integer under a specific key.
Click to reveal answer
beginner
How do you retrieve a saved float value from PlayerPrefs?
Use PlayerPrefs.GetFloat("key", defaultValue) to get the float value saved under the key. If the key doesn't exist, it returns defaultValue.
Click to reveal answer
intermediate
What happens if you try to get a PlayerPrefs key that does not exist?
PlayerPrefs returns the default value you provide. If no default is given, it returns 0 for numbers or an empty string for strings.
Click to reveal answer
intermediate
How do you remove a saved key from PlayerPrefs?
Use PlayerPrefs.DeleteKey("key") to remove the saved data for that key.
Click to reveal answer
Which PlayerPrefs method saves a string value?
APlayerPrefs.GetString
BPlayerPrefs.SetInt
CPlayerPrefs.DeleteKey
DPlayerPrefs.SetString
What does PlayerPrefs.GetInt("score", 10) return if "score" is not saved?
A10
BThrows an error
Cnull
D0
How do you clear all saved PlayerPrefs data?
APlayerPrefs.DeleteAll()
BPlayerPrefs.Clear()
CPlayerPrefs.Reset()
DPlayerPrefs.RemoveAll()
Which data types can PlayerPrefs store directly?
Aint, float, string
Bint, bool, string
Cfloat, bool, string
Dint, float, bool
What is a good use case for PlayerPrefs?
ASaving large game levels
BSaving complex player inventory
CStoring user settings like volume
DManaging multiplayer data
Explain how to save and retrieve a player's high score using PlayerPrefs.
Think about saving an integer and getting it back safely.
You got /3 concepts.
    Describe what happens if you try to get a PlayerPrefs key that was never saved.
    Consider what PlayerPrefs returns when data is missing.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of PlayerPrefs in Unity?
      easy
      A. To create 3D models in the game
      B. To manage game physics calculations
      C. To handle player input controls
      D. To save small data like numbers and text between game sessions

      Solution

      1. Step 1: Understand PlayerPrefs role

        PlayerPrefs is designed to store simple data like numbers and text that persist between game sessions.
      2. Step 2: Compare options with PlayerPrefs purpose

        Options A, C, and D relate to other game systems, not data storage.
      3. Final Answer:

        To save small data like numbers and text between game sessions -> Option D
      4. Quick Check:

        PlayerPrefs stores simple data = B [OK]
      Hint: PlayerPrefs saves small data between sessions [OK]
      Common Mistakes:
      • Confusing PlayerPrefs with input or physics systems
      • Thinking PlayerPrefs handles large files or complex data
      2. Which of the following is the correct way to save an integer value 10 with key "score" using PlayerPrefs?
      easy
      A. PlayerPrefs.SetInt("score", 10);
      B. PlayerPrefs.SaveInt("score", 10);
      C. PlayerPrefs.Set("score", 10);
      D. PlayerPrefs.PutInt("score", 10);

      Solution

      1. Step 1: Recall PlayerPrefs method for integers

        The correct method to save an integer is SetInt with key and value.
      2. Step 2: Check method names in options

        Only PlayerPrefs.SetInt("score", 10); uses the correct method name SetInt. Others use invalid method names.
      3. Final Answer:

        PlayerPrefs.SetInt("score", 10); -> Option A
      4. Quick Check:

        SetInt saves integer = A [OK]
      Hint: Use SetInt to save integers in PlayerPrefs [OK]
      Common Mistakes:
      • Using incorrect method names like Set or PutInt
      • Forgetting to use quotes around the key string
      3. What will be the output of this code snippet?
      PlayerPrefs.SetString("playerName", "Alex");
      string name = PlayerPrefs.GetString("playerName", "Unknown");
      Debug.Log(name);
      medium
      A. Unknown
      B. Error
      C. Alex
      D. null

      Solution

      1. Step 1: Understand SetString and GetString usage

        The code saves "Alex" with key "playerName" and then retrieves it with a default value "Unknown".
      2. Step 2: Determine what GetString returns

        Since "playerName" exists, GetString returns "Alex", not the default "Unknown".
      3. Final Answer:

        Alex -> Option C
      4. Quick Check:

        GetString returns saved value = D [OK]
      Hint: GetString returns saved value if key exists [OK]
      Common Mistakes:
      • Assuming default value is always returned
      • Confusing SetString with SetInt or other methods
      4. Identify the error in this code snippet:
      PlayerPrefs.SetInt("level", 5);
      int currentLevel = PlayerPrefs.GetInt("Level", 1);
      Debug.Log(currentLevel);
      medium
      A. Key names are case-sensitive, causing default value to be returned
      B. SetInt cannot be used for integers
      C. GetInt requires a string key and an integer default value
      D. PlayerPrefs.Save() is missing, so data won't save

      Solution

      1. Step 1: Compare key names used in SetInt and GetInt

        SetInt uses key "level" (lowercase), GetInt uses "Level" (uppercase L). Keys are case-sensitive.
      2. Step 2: Understand effect of key mismatch

        Because keys differ, GetInt does not find "Level" and returns default 1 instead of 5.
      3. Final Answer:

        Key names are case-sensitive, causing default value to be returned -> Option A
      4. Quick Check:

        Case-sensitive keys cause mismatch = C [OK]
      Hint: Check key spelling and case carefully [OK]
      Common Mistakes:
      • Ignoring case sensitivity of keys
      • Thinking PlayerPrefs.Save() is always required immediately
      5. You want to save a player's high score and retrieve it later. Which sequence of code correctly saves the score 150 and then loads it with a default of 0 if not found?
      hard
      A. PlayerPrefs.SetString("highScore", "150"); int score = PlayerPrefs.GetInt("highScore", 0);
      B. PlayerPrefs.SetInt("highScore", 150); PlayerPrefs.Save(); int score = PlayerPrefs.GetInt("highScore", 0);
      C. PlayerPrefs.SetInt(150, "highScore"); int score = PlayerPrefs.GetInt("highScore");
      D. PlayerPrefs.SetInt("highScore", 150); int score = PlayerPrefs.GetInt("highScore", 100); PlayerPrefs.Save();

      Solution

      1. Step 1: Save the high score correctly

        Use SetInt with key "highScore" and value 150, then call PlayerPrefs.Save() to ensure data is saved immediately.
      2. Step 2: Retrieve the high score with default

        Use GetInt with key "highScore" and default 0 to load the saved score or 0 if not found.
      3. Final Answer:

        PlayerPrefs.SetInt("highScore", 150); PlayerPrefs.Save(); int score = PlayerPrefs.GetInt("highScore", 0); -> Option B
      4. Quick Check:

        SetInt + Save + GetInt with default = A [OK]
      Hint: Save with SetInt + Save(), load with GetInt and default [OK]
      Common Mistakes:
      • Mixing SetString with GetInt causing type mismatch
      • Not calling PlayerPrefs.Save() after setting data
      • Swapping key and value parameters
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard