1. Hey Guest! We've announced our new game Wargroove, check out the new forums!
    Dismiss Notice

RELEASED Climates of Ferngill (Weather Mod) 1.0

Adds a weather system to the game

  1. Koihime Nakamura

    Koihime Nakamura Big Damn Hero

    Uh.. So I'll fix the typo, but I can't really do the latter. It runs into the easter egg (if you've seen the source, you can probably figure it out pretty quickly). Maybe I'll add an option to display a second scale?

    Regardless, thanks for the report, I'm adding it to the todo list.

    As for the settings: The normal one is. Monsoon/Wet are alternate ones. If you think the normal one is off, feel free to make a suggestion, since uh.. I'm only a 8 year native to the region. =/
     
    • quirkyquark

      quirkyquark Astral Cartographer

      Thanks for the quick response! I'm no Seattle native :), but on the default settings and given the season/date-based probabilities in the code, even I was a little surprised at getting exactly two storms during one full year (Year 2: Spring/Summer/Fall) with the mod enabled.

      Could you also add some logging to the console? Maybe something like the day's current probabilities, the RNG values generated and the decision? Could be at the trace level so only those who have SMAPI debug/dev mode on see the messages.
       
      • Koihime Nakamura

        Koihime Nakamura Big Damn Hero

        Yeah. TBF: I was testing it out, I kinda want to write a test mod so I can see what's going on but the problem is that a lot of the problem is the base RNG of the game, so writing a C# mod to do it myself will end .. well, it won't be a good comparison.

        But I could do that. I want to consider not using the built in RNG, honestly, and just implementing a Mersenne Twister, but I'm not really sure that's a great idea. Regardless, I've added this and the others to current issues so I'll remember
         
        • quirkyquark

          quirkyquark Astral Cartographer

          Actually, I'm using Climates with the BetterRNG mod (by Zoryn, description here under Better RNG, now maintained by Pathoschild), which seamlessly replaces the game's default C# LCG RNG with the Mersenne Twister. Perhaps you could test with that. BetterRNG also has a rudimentary weather system, so be sure to set EnableWeatherOverride to false in its config file.

          I have incremental (daily) saves set up, so perhaps I'll try one or two test runs with Climates from Spring 1 to Fall 28 and use TimeSpeed to quickly go to the next day until the end. Finally extract the weather from the nextDayWeather (I think) fields in the save files.

          Edit: minor note for your to-do, log says:
          Code:
          [02:21:20 TRACE SMAPI] Climates of Ferngill used PlayerEvents.LoadedGame, which is deprecated since SMAPI 1.6. This will break in a future version of SMAPI.
          
          SMAPI 1.6 release notes say:
           
            Last edited: Feb 1, 2017
          • Koihime Nakamura

            Koihime Nakamura Big Damn Hero

            That is already addressed in the indev version. I just haven't had the time to do a few other changes.
             
            • TheTearer

              TheTearer Space Spelunker

              Ah, so is it because I've updated SMAPI to 1.7? I wondered, especially since I just discovered another mod which previously worked and now isn't. Drat. Maybe all my observations on the mod are null, since I think I only tested it since I updated.
               
              • quirkyquark

                quirkyquark Astral Cartographer

                No, this doesn't affect the mod at all. All the warning means is that one of the functions the mod uses may no longer be available in a future version of SMAPI. Climates will be fine if/when that happens since Koihime (the author) says in the post above he has already fixed this in the development version.
                 
                • TheTearer

                  TheTearer Space Spelunker

                  Huh. Then I don't know what's going on, since I've test-blasted through spring on Monsoon and only gotten 2 days of rain naturally. Something doesn't seem to be generating right. Hmmmm. I still really like this mod, it's just puzzle. Puzzle time. My brain loves a puzzle.
                   
                  • Koihime Nakamura

                    Koihime Nakamura Big Damn Hero

                    Well. I'm putting in a debug tracer in this version. (to enable, set 'tooMuchInfo' to true.) I'm also going to do some testing.

                    As this is a debug version and I'm tearing through it, I'm going to update the release here, rather than a formal release.

                    The main reason is that I wanted to redo it, although I am very glad to hear the catch-all for the rain totem is working, although I was worried it won't, since I need to have it know when the game overrides the weather so the alerts it throws up are logical, if that makes sense.

                    WARNING: This version has the storm drain penalty code in, and it's untested! As such, the bundled config file has it disabled and has the debug line in.
                     

                      Attached Files:

                    • Koihime Nakamura

                      Koihime Nakamura Big Damn Hero

                      I am a *moron*. I found the problem, and I'm.. well, I'm doing the rewrite now. Expect 0.8.4 (which won't have some of the hazard code, but should work normally) in a few days.
                       
                      • quirkyquark

                        quirkyquark Astral Cartographer

                        Thanks for the interim build. We'll just call it...climate change! ;)

                        I think it's good I put up like 150 lightning rods (I use the improved sprinklers mod which for a maxed out 15x15 iridium sprinkler wants 8xbatteries+bars).
                         
                        • Koihime Nakamura

                          Koihime Nakamura Big Damn Hero

                          I hopefully fixed all of this, but I want to do at least some alpha testing before I pushed it out. The culprit was uh... rather than properly wrapping the sunny in an if block, it would ALWAYS trigger, so that only the override days would naturally rain. But since fixing this would require 12 copy and pastes, I wanted to restructure it.

                          And I've found out that testing at 4:22 in the morning leads to bad things, so I'll be testing it on alpha basis over the next few days.

                          Also would like to code hostile weather events in, since the only one in the mod so far is you lose some stamina for being outside when it's stormy, which is more there as a callback to Harvest Moon.
                           
                            Last edited: Feb 2, 2017
                          • TheTearer

                            TheTearer Space Spelunker

                            Hey, no name-calling, even on yourself. You've done an amazing thing, making a great fun mod. It's a lot more than I could take on. So it has a few kinks, fine, that happens. You're not a moron. The stories I have about going through code looking for a problem and it's a misplaced semi-colon.....everyone who codes anything has horror stories like that, it's just part of working with computers.
                             
                            • Koihime Nakamura

                              Koihime Nakamura Big Damn Hero

                              Progress Report:

                              Storm code works. I also learnt you have to manually trigger the faint code. That works. Weather overrides are properly configured now. Now testing the code throughout the first spring.

                              As a note: this mod will not work on the first day it's loaded, as it starts on [tomorrow]. However, if you were playing with the mod, it's weatherForTommorow will persist so. I'm writing something now that will force it to run on the first day you load.

                              It seems to be working now, so once I get a frost and heatwave event working, I'll be releasing it.
                               
                              • Koihime Nakamura

                                Koihime Nakamura Big Damn Hero

                                0.8.6 is in alpha testing, attached to this. Winter and Spring temps may be out of whack, as I had to fix fall and summer temps. (summer temps with a nerf bat - it was spitting out high 50's and 60's Celsius. That's.. nonsense.)

                                Harsh events are in, so if people could test them in summer and fall, I'd appreciate it, as I have no saves in that area with actual farms.

                                As before :

                                WARNING: The code is generally tested, but the harsh events aren't. Please back up your saves. The attached config file has them turned on for testing purposes.

                                ETA: Hotfix to last third of summer. <_<
                                 

                                  Attached Files:

                                  Last edited: Feb 4, 2017
                                • TheTearer

                                  TheTearer Space Spelunker

                                  Okay, I'll try that on an older backed up save when I get it to summer. Quick weird note, I had to rewind to SMAPI 1.5 because of another mod (Happy Birthday) that broke when using 1.7 (yes, I went straight from 15 to 1.7, I wasn't paying attention to the update announcements). And not only did it fix HB, it also gave me more rain in spring. Like, instead of 2 days, 9 or 10 (I lost my note sheet after 7, sorry, cat accident). So, um, I dunno, 'cause I haven't started testing your update yet......

                                  Aah, traditional nerf bat fixing. I never quite mastered that delicate touch, I usually went straight to the sledgehammer. ~_^
                                   
                                  • Koihime Nakamura

                                    Koihime Nakamura Big Damn Hero

                                    Probably a change in implementions between 1.5 and 1.7

                                    Hotfix, since I realized the event would trigger 12 times:
                                     

                                      Attached Files:

                                    • quirkyquark

                                      quirkyquark Astral Cartographer

                                      Thanks for the update, currently testing it. Also, if the time in NoLongerDisplayToday is NOT 0600 but has a leading zero (i.e. before 1200), the JSON parser used to throw an error on the SMAPI console (something about casting to int, IIRC?). SMAPI 1.7 just warns with:

                                      Code:
                                      [22:55:26 INFO  SMAPI] Loaded mod: Climates of Ferngill by KoihimeNakamura, v0.8.6-alpha-20170203 | Create a unique climate system, as well as add weather related events.
                                      [22:55:26 WARN  SMAPI] The Climates of Ferngill mod failed on entry initialisation. It will still be loaded, but may not function correctly.  at ClimateOfFerngill.ClimatesOfFerngill.Entry(IModHelper helper) in C:\Users\Kylindra\Source\Repos\ClimateOfFerngill\ClimateOfFerngill\ClimatesOfFerngill.cs:line 52
                                      
                                       
                                      • Koihime Nakamura

                                        Koihime Nakamura Big Damn Hero

                                        I'll add that as a caveat to the README, since I can't do anything about that.
                                         
                                        • Koihime Nakamura

                                          Koihime Nakamura Big Damn Hero

                                          ADVANCED NOTE:

                                          If you are running this in SMAPI 1.9-beta/SDV 1.2.X beta, I cannot guarantee it works as intended. 1.2 adds a 'return to title screen' option, and the code has not yet been adapted to handle that kind of thing.
                                           

                                          Share This Page