public void Save()
    {
        BinaryFormatter bf = new BinaryFormatter();
        FileStream file = File.Create(Application.persistentDataPath + "playerInfo.dat");

        GameData gameData = new GameData();

        gameData.SaveResources(Ship_Inventory.Instance.rawResourcesMap);
        gameData.SaveDays(Days);
        gameData.SaveHero(GameMaster.Instance.theHero.heroName,
                          GameMaster.Instance.theHero.weapons[0].itemName,
                          GameMaster.Instance.theHero.weapons[1].itemName,
                          GameMaster.Instance.theHero.armor.itemName,
                          GameMaster.Instance.theHero.tools[0].itemName,
                          new HeroData(GameMaster.Instance.theHero.heroStats.maxHP,
                                        GameMaster.Instance.theHero.heroStats.curHP,
                                        GameMaster.Instance.theHero.heroStats.startAttack));

        gameData.SaveOrders(TradeOrder_Manager.Instance.GetAvailable(), TradeOrder_Manager.Instance.GetActive(), TradeOrder_Manager.Instance.GetCompleted());

        gameData.SaveNanoBuilder(GameMaster.Instance.theHero.nanoBuilder);

        // Save all Available missions

        gameData.CopyMissions(Mission_Manager.Instance.GetAvailable());

        bf.Serialize(file, gameData);

        file.Close();

        Debug.Log("TRACKER: Data Saved Succesfully!");
    }