diff --git a/Assets/Scripts/Managers/CheatManager.cs b/Assets/Scripts/Managers/CheatManager.cs
index c51a76a3541e0eabf955f47f2568571b6e8b1c4f..970dd5acdb2a2ec6c1bc44d67f8cfc9c162f26be 100644
--- a/Assets/Scripts/Managers/CheatManager.cs
+++ b/Assets/Scripts/Managers/CheatManager.cs
@@ -17,22 +17,26 @@ using UnityEngine.Windows;
  * SKIPLEVEL    : Player skips 1 level
  */
 
+
+/* CHEATS THAT CAN BE SAVED */
+/*
+ * NODAMAGE
+ * ONEHITKILL
+ * XTWOSPEED
+ */
+
 public enum CheatsType
 {
     NODAMAGE,
     ONEHITKILL,
-    MOTHERLODE,
-    XTWOSPEED,
-    FULLHPPET,
-    KILLPET,
-    GETORB,
-    SKIPLEVEL
+    XTWOSPEED
 }
 
 public class CheatManager : MonoBehaviour
 {
     HUDisplay hud;
     PlayerHealth playerHealth;
+    PlayerCurrency playerCurrency;
     PlayerMovement playerMovement;
     PlayerShooting playerShooting;
     LevelManager levelManager;
@@ -44,14 +48,16 @@ public class CheatManager : MonoBehaviour
 
     string textInput;
     public InputField inputField;
+    int prevBalance;
 
-    bool[] cheats = new bool[8];
+    bool[] cheats = new bool[3];
 
     private void Start()
     {
         hud = GameObject.Find("HUDCanvas").GetComponent<HUDisplay>();
         playerHealth = GameObject.Find("Player").GetComponent<PlayerHealth>();
-        playerMovement = GameObject.Find("Player").GetComponent<PlayerMovement>();
+        playerCurrency = GameObject.Find("Player").GetComponent<PlayerCurrency>();
+        playerMovement = GameObject.Find("Player").GetComponent<PlayerMovement>(); 
         playerShooting = GameObject.Find("Player").GetComponentInChildren<PlayerShooting>();
         levelManager = FindObjectOfType<LevelManager>();
     }
@@ -89,6 +95,12 @@ public class CheatManager : MonoBehaviour
             ActivateOneHitKill();
             return;
         }
+        if (textInput == "MOTHERLODE")
+        {
+            ResetInputField();
+            ActivateMotherlode();
+            return;
+        }
         if (textInput == "XTWOSPEED")
         {
             ResetInputField();
@@ -151,6 +163,13 @@ public class CheatManager : MonoBehaviour
         cheats[(int)CheatsType.ONEHITKILL] = true;
     }
 
+    private void ActivateMotherlode()
+    {
+        prevBalance = playerCurrency.balance;
+        playerCurrency.balance = 100000;
+        hud.OpenPanel("Motherlode Cheat Activated!");
+    }
+
     private void ActivateXTwoSpeed()
     {
         playerMovement.ActivateCheatXTwoSpeed();
@@ -168,7 +187,6 @@ public class CheatManager : MonoBehaviour
         }
         
         hud.OpenPanel("Full HP Pet Cheat Activated!");
-        cheats[(int)CheatsType.FULLHPPET] = true;
     }
 
     private void ActivateKillPet()
@@ -215,19 +233,27 @@ public class CheatManager : MonoBehaviour
         }
 
         hud.OpenPanel("Get Random Orb Cheat Activated!");
-        cheats[(int)CheatsType.GETORB] = true;
     }
 
     private void ActivateSkipLevel()
     {
         levelManager.AdvanceLevel();
         hud.OpenPanel("Skip Level Cheat Activated!");
-        cheats[(int)CheatsType.SKIPLEVEL] = true;
     }
 
+    /* RESET CHEATS DOCUMENTATION */
+    /*
+     * Makes player can take damage again
+     * Reset player's balance to previous balance
+     * Reset player's speed
+     * Reset player's attack damage
+     * Makes player's pets can take damage again
+     */
+
     private void ActivateReset()
     {
         playerHealth.SetCheatNoDamage(false);
+        playerCurrency.balance = prevBalance;
         playerMovement.ResetSpeed();
         playerShooting.ResetPlayerDamage();
 
diff --git a/Assets/Scripts/Player/PlayerCurrency.cs b/Assets/Scripts/Player/PlayerCurrency.cs
index eda8b61e946d26a903ccc261f289634f556e428e..f92a0372916dd7a7f63b0f419f4d5ad78c20adac 100644
--- a/Assets/Scripts/Player/PlayerCurrency.cs
+++ b/Assets/Scripts/Player/PlayerCurrency.cs
@@ -5,7 +5,8 @@ using UnityEngine;
 
 public class PlayerCurrency : MonoBehaviour
 {
-    int balance = 0; 
+    public int balance = 0;
+    
     // Start is called before the first frame update
     public void add(int nominal) 
     {