RELEASED **OUTDATED** Serializer Replacing Utility (Standalone Mod) for SDV 1.07

Discussion in 'Mods' started by Advize, Apr 18, 2016.

  1. Advize

    Advize Cosmic Narwhal

    ! Mod is no longer supported !

    This is a SMAPI mod/utility that functions as a dependency for any mod that would like to include extra types for serialization. It allows all mods (that use it) to remain compatible if they need to replace the game's XML Serializer.

    Currently it is impossible to create a derived/child class of an object, location, or anything like that in a mod without the game being unable to save it. This utility allows other mods to add object types to be included into the game's serializer.

    For Mod Users:

    **BACKUP YOUR SAVE GAMES***
    If the serializer utility or a mod using it is uninstalled, Stardew Valley will be unable to load your save game. Please avoid save corruption/loss by backing up your saves before using such a mod.

    Download from the link below and install like any other SMAPI mod (either in %appdata%\StardewValley\Mods directory, or copy it to your Game\Mods directory (default C:\Program Files (x86)\Steam\steamapps\common\Stardew Valley\Content\Mods).

    For Modders:

    List this mod as a dependency for your mod, and instruct your users to download it. Add it as a reference to your Visual Studio project in order to make use of it. See the code below for instructions on how to use it.

    Download:

    Download HERE
    Code:
    /* How to use in your mod*/
    
    /* Add the utility as a reference in your Visual Studio project, add the following using statement to your .cs file*/
    using SerializerUtils;
    
    /* During your mod initialization (entry method), subscribe to Include_Types command by adding this line*/
    public override void Entry(params object[] objects)
    {
        Command.RegisterCommand("include_types", "Includes types to serialize").CommandFired += Command_IncludeTypes;
    }
    
    /* Include a method in which you state types to be added when the serializer fires the command*/
    private static void Command_IncludeTypes(object sender, EventArgsCommand e)
    {
        SerializerUtility.AddType(typeof(/*ClassNameHere*/)); //Adds a type to SaveGame.serializer
        SerializerUtility.AddFarmerType(typeof(/*Class2NameHere*/)); //Adds a type to SaveGame.farmerSerializer
    }
    
    Code will be made open source and uploaded to GitHub when I find time. All are welcome to contribute to it. This utility will likely be deprecated once the FarmHand API is released and serialization tools are implemented into it.
     
      Last edited: Jun 12, 2017
      wty4321, Androxilogin, SKKN and 7 others like this.
    • Androxilogin

      Androxilogin Giant Laser Beams

      I used to use this on my old save (great work, btw) but had to revert back to my old unmodded save after the new update. Is there a way to remove things from my save file to excuse the changes this mod? I'd love to get back to work on my farm in full glory.

      [EDIT] Nevermind, sorry- I realize I already asked this long ago with your FarmExtension mod, I just couldn't find which mod it was I commented on back then.


      QUOTE:
      Let me begin by saying that I've exaggerated the save game issue. Your save is never harmed or damaged, it just has information added into it that can't be loaded unless the mod is still present. If you uninstall the mod at a later date, the unloadable information can easily be removed manually from your save file using a text editor.

      The mod in its current state will NOT work unless the serializer utility is present. If you wish to avoid using it, the 1.3 version is still available for download which didn't have the animals/buildings support.

      Also, here's a screenshot showing what information to remove from your save file to repair it should you ever want to uninstall the mod:
      (Click to enlarge)

      [​IMG]

      As you can see in the image, you just need to search for "FarmExtension" in your save file, and remove a few lines of text starting with "<GameLocation xsi:type="FarmExtension">" up to and including the next closing tag of "</GameLocation>".
       
        Last edited: Jan 14, 2017
      • Witmen

        Witmen Space Spelunker

        Hi,

        can you help me with a little problem ?

        [17:457 ERROR SMAPI] A mod failed handling the GameEvents.GameLoaded event:
        System.MissingMethodException: Method not found: Void StardewModdingAPI.Co
        mmand.CallCommand(System.String).
        v SerializerUtils.SerializerUtility.Event_GameLoaded(Object sender, EventArgs
        e)
        v StardewModdingAPI.Framework.InternalExtensions.SafelyRaisePlainEvent(IMonit
        or monitor, String name, IEnumerable`1 handlers, Object sender, EventArgs args)
        v D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Framework\InternalExtensions.cs
        :line 46

        Here is whole page copied:

        [17:45:16 INFO SMAPI] SMAPI 1.9-beta.15 with Stardew Valley 1.2.18 on Microsoft
        Windows 7 Ultimate
        [17:45:16 DEBUG SMAPI] Mods go here: C:\Users\DELL\Desktop\Stardew Valley v1.2.1
        8\Mods
        [17:45:16 DEBUG SMAPI] Loading SMAPI...
        [17:45:16 DEBUG SMAPI] Loading game...
        [17:45:16 DEBUG SMAPI] Loading mods...
        [17:45:19 INFO SMAPI] Loaded Entoarox Framework by Entoarox, v1.6.5 | A framewo
        rk to make stardew modding easier!
        [17:45:19 INFO SMAPI] Loaded Advanced Location Loader by , v1.2.9 | Get your co
        ntent into stardew without replacing any xnb files.
        [17:45:19 INFO SMAPI] Loaded Farm Expansion Mod by , v2.0.5 | Expands the farm
        by adding a new farmable location accessible from the west end of your farm.
        [17:45:20 INFO SMAPI] Loaded NPC Map Locations Mod by Bouhm, v1.4.6 | Shows NPC
        locations on the map
        [17:45:20 INFO SMAPI] Loaded Modder Serialization Utility by , v0.1 | Allows mo
        ds to include types for serialization.
        [17:45:20 INFO SMAPI] Loaded Simple Crop Label by TheMusketeer, v5.0 | Identify
        crops and trees on farm
        [17:45:20 INFO SMAPI] Loaded Super Greenhouse Warp Modifier v1.0.0 by , v1.0 |
        Modifies the warp location when you enter the Greenhouse using the Super Greenho
        use map.
        [17:45:20 INFO SMAPI] Loaded Trainer Mod by SMAPI, v1.9 | Adds SMAPI console co
        mmands that let you manipulate the game.
        [17:45:20 WARN SMAPI] Entoarox Framework used Command.RegisterCommand, which is
        deprecated since SMAPI 1.9. This will break in a future version of SMAPI.
        [17:45:20 INFO Entoarox Framework] Framework has finished!
        [17:45:20 WARN SMAPI] Farm Expansion Mod used Mod.PathOnDisk, which is deprecat
        ed since SMAPI 1.0. This will break in a future version of SMAPI.
        [17:45:20 WARN SMAPI] Farm Expansion Mod used Command.RegisterCommand, which is
        deprecated since SMAPI 1.9. This will break in a future version of SMAPI.
        [17:45:20 WARN SMAPI] Modder Serialization Utility used Command.RegisterCommand
        , which is deprecated since SMAPI 1.9. This will break in a future version of SM
        API.
        [17:45:20 WARN SMAPI] The Modder Serialization Utility mod failed on entry init
        ialisation. It will still be loaded, but may not function correctly.
        System.InvalidOperationException: The 'include_types' command is already registe
        red!
        v StardewModdingAPI.Command.RegisterCommand(String name, String description,
        String[] args) v D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Command.cs:řádek
        114
        v SerializerUtils.SerializerUtility.Entry(Object[] objects)
        v StardewModdingAPI.Program.LoadMods() v D:\source\_Stardew\SMAPI\src\Stardew
        ModdingAPI\Program.cs:řádek 507
        [17:45:20 INFO Simple Crop Label] config file value "mouse_hover" is False
        [17:45:20 DEBUG SMAPI] Loaded 8 mods.
        [17:45:20 WARN SMAPI] Farm Expansion Mod used Mod.Entry(object[]) instead of Mo
        d.Entry(IModHelper), which is deprecated since SMAPI 1.0. This will break in a f
        uture version of SMAPI.
        [17:45:20 WARN SMAPI] Super Greenhouse Warp Modifier v1.0.0 used Mod.Entry(obje
        ct[]) instead of Mod.Entry(IModHelper), which is deprecated since SMAPI 1.0. Thi
        s will break in a future version of SMAPI.
        [17:45:20 DEBUG SMAPI] Starting game...
        [17:45:22 DEBUG Advanced Location Loader] Loading location mods into memory...
        [17:45:22 DEBUG SMAPI] Starting console...
        [17:45:22 INFO SMAPI] Type 'help' for help, or 'help <cmd>' for a command's usa
        ge
        [17:45:22 INFO Advanced Location Loader] Cleanup Crew, version `2.0` by Androxi
        login
        [17:45:22 INFO Advanced Location Loader] Expanded Crevices, version `2.0` by An
        droxilogin
        [17:45:22 INFO Advanced Location Loader] Found and loaded [2] location mods int
        o memory
        [17:45:37 ERROR SMAPI] A mod failed handling the GameEvents.GameLoaded event:
        System.MissingMethodException: Method not found: Void StardewModdingAPI.Co
        mmand.CallCommand(System.String).
        v SerializerUtils.SerializerUtility.Event_GameLoaded(Object sender, EventArgs
        e)
        v StardewModdingAPI.Framework.InternalExtensions.SafelyRaisePlainEvent(IMonit
        or monitor, String name, IEnumerable`1 handlers, Object sender, EventArgs args)
        v D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Framework\InternalExtensions.cs
        :line 46

        I am not dev, and dont know how this problem affects my game and whats wrong.

        Thanks :]
         
        • Androxilogin

          Androxilogin Giant Laser Beams

          Farm expansion needs to be deleted from your save. Pm me your save (or post it here) andI'll remove it for you or you can do it yourself.in Notepad, just search for expansion and delete until the end of that string.
           
          • TylerGenoGraham

            TylerGenoGraham Space Hobo

            Can anyone help me solve this?

            Setting breakpad minidump AppID = 413150
            Steam_SetMinidumpSteamID: Caching Steam ID: 76561198102540858 [API loaded no]
            [18:45:23 DEBUG SMAPI] Loading mods...
            [18:45:23 INFO SMAPI] Loaded All Professions by cantorsdust & community, v1.3 | Gives you all possible professions when you level up, instead of just the one chosen.
            [18:45:23 INFO SMAPI] Loaded AutoAnimalDoors by Aaron Taggart, v1.0 | Open and close the doors automatically for your animals.
            [18:45:23 INFO SMAPI] Loaded AutoGate 1.0 by Teban100, v1.0 | Makes passing through gates automatic
            [18:45:23 INFO SMAPI] Loaded CJB Cheats Menu by CJ Bok, v1.14.1 | Simple in-game cheats menu!
            [18:45:23 INFO SMAPI] Loaded CJB Item Spawner by CJ Bok, v1.7.2 | Simple in-game item spawner!
            [18:45:23 INFO SMAPI] Loaded CJB Show Item Sell Price by CJ Bok, v1.7 | Show item sell price in your inventory!
            [18:45:23 INFO SMAPI] Loaded Custom Element Handler by Platonymous, v1.1.2 | SaveHandler for Custom Objects
            [18:45:23 INFO SMAPI] Loaded Experience Bars by , v1.0.1 | Shows experience bars in the top-left corner.
            [18:45:24 INFO SMAPI] Loaded Farm Expansion Mod by , v2.0.5 | Expands the farm by adding a new farmable location accessible from the west end of your farm.
            [18:45:24 INFO SMAPI] Loaded Teh's Fishing Overhaul by TehPers, v1.3.2-beta | A complete overhaul of vanilla fishing, with a huge amount of customization.
            [18:45:24 INFO SMAPI] Loaded Forage at the Farm by Nishtra, v1.5.1 | Spawns forageables on the farm daily.
            [18:45:24 INFO SMAPI] Loaded GiftTasteHelper by tstaples (aka catman), v2.3.1 | Displays NPC gift tastes in a handy tooltip.
            [18:45:24 INFO SMAPI] Loaded Harp of Yoba Redux by Platonymous, v2.0.2 | Adds The Harp of Yoba to the game.
            [18:45:24 WARN SMAPI] Ignored folder "LightSabers" which doesn't have a manifest.json.
            [18:45:24 INFO SMAPI] Loaded LookupAnything by Pathoschild, v1.13 | View metadata about anything by pressing a button.
            [18:45:24 INFO SMAPI] Loaded Luck Skill by , v0.1.4 | Adds ways of getting the vanilla luck skill.
            [18:45:24 INFO SMAPI] Loaded Reseed by James Overton, v1.0 | Allows havesting crops to produce seeds based on your farming skill
            [18:46:42 INFO SMAPI] Loaded Part of the Community by Brandon Marquis Markail Green (Space Baby), v1.1.1 | Lets you increase friendship by supporting the community.
            [18:46:42 INFO SMAPI] Loaded Modder Serialization Utility by , v0.1 | Allows mods to include types for serialization.
            [18:46:42 INFO SMAPI] Loaded BuildEndurance by , v1.0.1 | SMAPI port of BuildEndurance. Increase your health as you play. Updated to support per-character values.
            [18:46:42 INFO SMAPI] Loaded BuildHealth by , v1.0 | SMAPI port of BuildHealth. Increase your health as you play.
            [18:46:42 INFO SMAPI] Loaded StackSplitX by tstaples (aka Catman), v1.2 | Custom Stack splitting.
            [18:46:42 INFO SMAPI] Loaded More_Rain by , v0.0.3 | Change how much it rains in the game.
            [18:46:42 ERROR SMAPI] Skipped Stardew_NightOwl because it's not compatible with the latest version of the game. Please check for a version newer than 2.0 here: http://www.nexusmods.com/stardewvalley/mods/444
            [18:46:42 INFO SMAPI] Loaded TimeSpeed by cantorsdust & community, v2.2 | Lets you control the flow of time in the game: speed it up, slow it down, or freeze it altogether.
            [18:46:42 INFO SMAPI] Loaded Trainer Mod by SMAPI, v1.9 | Adds SMAPI console commands that let you manipulate the game.
            [18:46:42 WARN SMAPI] Farm Expansion Mod used Mod.PathOnDisk, which is deprecated since SMAPI 1.0. This will break in a future version of SMAPI.
            [18:46:42 WARN SMAPI] Farm Expansion Mod used Command.RegisterCommand, which is deprecated since SMAPI 1.9. This will break in a future version of SMAPI.
            [18:46:42 WARN SMAPI] Modder Serialization Utility used Command.RegisterCommand, which is deprecated since SMAPI 1.9. This will break in a future version of SMAPI.
            [18:46:42 WARN SMAPI] The Modder Serialization Utility mod failed on entry initialisation. It will still be loaded, but may not function correctly.
            System.InvalidOperationException: The 'include_types' command is already registered!
            at StardewModdingAPI.Command.RegisterCommand(String name, String description, String[] args) in D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Command.cs:line 114
            at SerializerUtils.SerializerUtility.Entry(Object[] objects)
            at StardewModdingAPI.Program.LoadMods() in D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Program.cs:line 566
            [18:46:42 DEBUG BuildEndurance] Found BuildEndurance config file.
            [18:46:42 DEBUG BuildEndurance] BuildEndurance Initialization Completed
            [18:46:42 DEBUG BuildHealth] Found BuildHealth config file.
            [18:46:42 DEBUG BuildHealth] BuildHealth Initialization Completed
            [18:46:42 DEBUG More_Rain] The data file for More Rain wasn't found. Time to create it!
            [18:46:42 DEBUG SMAPI] Loaded 24 mods.
            [18:46:42 WARN SMAPI] Experience Bars used Mod.Entry(object[]) instead of Mod.Entry(IModHelper), which is deprecated since SMAPI 1.0. This will break in a future version of SMAPI.
            [18:46:42 WARN SMAPI] Farm Expansion Mod used Mod.Entry(object[]) instead of Mod.Entry(IModHelper), which is deprecated since SMAPI 1.0. This will break in a future version of SMAPI.
            [18:46:42 DEBUG SMAPI] Starting console...
            [18:46:42 INFO SMAPI] Type 'help' for help, or 'help <cmd>' for a command's usage
            [18:46:42 INFO Forage at the Farm] Config: Initialized
            [18:46:42 INFO Luck Skill] Experience Bars not found
            [18:46:42 INFO Luck Skill] All Professions not found.
            [18:46:42 ERROR SMAPI] A mod failed handling the GameEvents.GameLoaded event:
            System.MissingMethodException: Method not found: 'Void StardewModdingAPI.Command.CallCommand(System.String)'.
            at SerializerUtils.SerializerUtility.Event_GameLoaded(Object sender, EventArgs e)
            at StardewModdingAPI.Framework.InternalExtensions.SafelyRaisePlainEvent(IMonitor monitor, String name, IEnumerable`1 handlers, Object sender, EventArgs args) in D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Framework\InternalExtensions.cs:line 46
             
            • Entoarox

              Entoarox Oxygen Tank

              This mod has been outdated since SDV 1.0, of course its not safe to use anymore....
               
              • vatalia

                vatalia Space Hobo

                by save, you mean the save character in this file: C:\Users\username\AppData\Roaming\StardewValley\Saves ? or where? Cause i have the same problem and cant find any Farm expansion in there. I opened the file using notepad++.
                 
                • mio36

                  mio36 Subatomic Cosmonaut

                  Could someone assist me with this? I tried a fresh install and manually reinstalling the few xnb files, and also updating the mods I have tried installing the serializer mod as well but it still gives me an error. I still keep getting errors when I try to start a new game, it refuses to skip intro and when it gets to the stardew sign it fails to continue and reads red errors = =

                  Currently running SMAPI v14 and SV 1.23
                   

                    Attached Files:

                    Last edited: Jun 11, 2017
                  • Entoarox

                    Entoarox Oxygen Tank

                    This utility has been outdated since SDV 1.07, it is not getting updated nor supported any longer.
                     
                    • mio36

                      mio36 Subatomic Cosmonaut

                      Oku but I even got rid of it and its still causing errors. I asked around SMAPI thread too :/
                       
                      • Entoarox

                        Entoarox Oxygen Tank

                         
                        • mio36

                          mio36 Subatomic Cosmonaut

                          I understand maybe theres something i can install that will stop these errors from popping up :/ never had this many errors before

                          have no clue what the game.events error is nor do i know why my farm error keeps popping :/

                          maybe ill just roll back to like smapi v13

                          EDIT: rolled back to v13 broke a few mods. Clean install + mod install still having error.

                          Says Serializer Utility issue

                          Don't know what else to do. :/
                           

                            Attached Files:

                            • dd3.JPG
                              dd3.JPG
                              File size:
                              105.2 KB
                              Views:
                              4
                            Last edited: Jun 17, 2017

                          Share This Page