RELEASED Did You Water Your Crops? 1.3.3

See at a glance if you have already watered a crop.

  1. Nishtra

    Nishtra Big Damn Hero

    Nishtra submitted a new mod:

    Did You Water Your Crops? - See at a glance if you have already watered a crop.

    Read more about this mod...
     
      endermaryn likes this.
    • Nishtra

      Nishtra Big Damn Hero

    • lannihamm

      lannihamm Pangalactic Porcupine

    • Nishtra

      Nishtra Big Damn Hero

      No, by default it isn't. If you use it with any mods that modify crops.xnb without creating a tilesheet with dry new plants, it will work, but will affect only vanilla crops.
      That being said, it isn't hard to create a compatible tilesheet, and if requested (and with mod authors' permission), maybe I can do it.
       
      • Nishtra

        Nishtra Big Damn Hero

      • Koihime Nakamura

        Koihime Nakamura Ketchup Robot

      • Nishtra

        Nishtra Big Damn Hero

        With the latest version it should. Though the mod created sprites don't look quite as good, since they are just desaturated and darkened version of the originals, but I couldn't do more with the code.
         
        • Koihime Nakamura

          Koihime Nakamura Ketchup Robot

        • Koihime Nakamura

          Koihime Nakamura Ketchup Robot

          I encountered a hilarious bug with your mod. Video of it: https://koihimenakamura.tinytake.com/sf/MjE2MzcwNF82NzM4MTYw

          Relevant snippet from the log:

          [20:17:01 ERROR SMAPI] An error occured in the base update loop: System.NullReferenceException: Object reference not set to an instance of an object.
          at DidYouWaterYourCrops.PatchPerformToolAction.Postfix(HoeDirt __instance, Tool t, Vector2 tileLocation)
          at performToolAction_Patch1(Object t, Tool damage, Int32 tileLocation, Vector2 location, GameLocation )
          at StardewValley.GameLocation.explode(Vector2 tileLocation, Int32 radius, Farmer who)
          at StardewValley.TemporaryAnimatedSprite.update(GameTime time)
          at StardewValley.GameLocation.updateEvenIfFarmerIsntHere(GameTime time, Boolean ignoreWasUpdatedFlush)
          at StardewValley.Locations.BuildableGameLocation.updateEvenIfFarmerIsntHere(GameTime time, Boolean skipWasUpdatedFlush)
          at StardewValley.Farm.updateEvenIfFarmerIsntHere(GameTime time, Boolean skipWasUpdatedFlush)
          at StardewValley.Game1.UpdateLocations(GameTime time)
          at StardewValley.Game1.Update(GameTime gameTime)
          at StardewModdingAPI.Framework.SGame.Update(GameTime gameTime) in C:\source\_Stardew\SMAPI\src\SMAPI\Framework\SGame.cs:line 550
          [20:17:01 ERROR SMAPI] An error occured in the base update loop: System.NullReferenceException: Object reference not set to an instance of an object.
          at DidYouWaterYourCrops.PatchPerformToolAction.Postfix(HoeDirt __instance, Tool t, Vector2 tileLocation)
          at performToolAction_Patch1(Object t, Tool damage, Int32 tileLocation, Vector2 location, GameLocation )
          at StardewValley.GameLocation.explode(Vector2 tileLocation, Int32 radius, Farmer who)
          at StardewValley.TemporaryAnimatedSprite.update(GameTime time)
          at StardewValley.GameLocation.updateEvenIfFarmerIsntHere(GameTime time, Boolean ignoreWasUpdatedFlush)
          at StardewValley.Locations.BuildableGameLocation.updateEvenIfFarmerIsntHere(GameTime time, Boolean skipWasUpdatedFlush)
          at StardewValley.Farm.updateEvenIfFarmerIsntHere(GameTime time, Boolean skipWasUpdatedFlush)
          at StardewValley.Game1.UpdateLocations(GameTime time)
          at StardewValley.Game1.Update(GameTime gameTime)
          at StardewModdingAPI.Framework.SGame.Update(GameTime gameTime) in C:\source\_Stardew\SMAPI\src\SMAPI\Framework\SGame.cs:line 550
           
          • Nishtra

            Nishtra Big Damn Hero

            O_O I haven't encountered this while testing. Can you tell me how to reproduce it?
             
            • Koihime Nakamura

              Koihime Nakamura Ketchup Robot

              1. Start placing bombs on the farm
              2. Make sure the bomb would affect a 'hoed' area of the farm

              That's really it

              I was bombing (as the video shows) the lower right area to clear it a bit and got that.
               
              • Nishtra

                Nishtra Big Damn Hero

              • Koihime Nakamura

                Koihime Nakamura Ketchup Robot

                .. so there's another issue. I was experimenting with CustomCrops, some. The id was 77, but when I tried planting it gave me:

                Either water or dried it seems to override whatever CustomCrops is doing. Another example was rose, which just remained a seed
                 

                  Attached Files:

                • Nishtra

                  Nishtra Big Damn Hero

                  After checking how CustomCrops handles adding new sprites I can say that this issue is less a bug, and more compatibility problems. CustomCrops doesn't replace crops tilesheet xnb file, but instead injects new sprites with SMAPI. And to further complicate things it runs after DYWYC creates new tilesheet, which results in the game trying to load crops' sprites from the completely wrong tilesheet.
                  I'll try to fix it, but I'm not sure if my idea will work.
                   
                  • Koihime Nakamura

                    Koihime Nakamura Ketchup Robot

                    Ah, that makes sense.
                     
                    • Koihime Nakamura

                      Koihime Nakamura Ketchup Robot

                      Ah. Someone in the modding chat pointed out you can set CC as an optional dependency. That way you can poll the asset and be sure CustomCrops has ran.
                       
                      • Nishtra

                        Nishtra Big Damn Hero

                      Share This Page