Register

Simple Weather

An Add-on Module for Foundry Virtual Tabletop

Author: phloro Project: Source Foundry Versions 10+ (Verified 14.370) Last Updated 3 hours, 43 minutes ago

Supported Foundry Versions

Dynamic weather generation, by season and biome, including automatically activating weather effects. If Simple Calendar (see changelog for which versions of SC are supported by each version of Simple Weather) is present, Simple Weather will integrate to it and display the date/time and automatically generate new weather when the date changes. Without Simple Calendar, no date is shown and weather regeneration can be manually triggered. (NOTE: THIS MODULE IS NOT AFFILIATED WITH THE CREATORS OF SIMPLE CALENDAR OR ANY OTHER CALENDAR MODULE)

AI Usage

As of version 2.3.0, I have started using AI to generate code for this module. It is so far retricted to the work to support Foundry version upgrades. I have reviewed all generated code to ensure it works as intended.

Note on v13/v14 compatibility with Simple Calendar

Unfortunately, the original Simple Calendar doesn't currently support Foundry v13, so be forewarned that while Simple Weather will run in standalone mode, that's all you're going to get with Simple Calendar.

That said, as of v2.3.0, Simple Weather supports Simple Calendar Reborn, and Calendaria.

WARNING! DO NOT TRY TO USE SIMPLE WEATHER IN A WORLD WITH MORE THAN ONE OF THESE MODULES ACTIVE. BAD THINGS ARE LIKELY TO HAPPEN.

Features

And if using Simple Calendar:

Controls

Gamemaster controls

Main UI

Player controls

Player UI

Hide/diplay dialog

You can set a keybinding (see below) to toggle the window on/off. You can also hide the whole thing using the 'x' on the weather box. Once hidden, if you don't have a keybinding set, you can also re-open it via the Simple Weather button under the journal notes scene control menu.

Biomes/Climate/Humidity

Selecting a biome will automatically pick the climate and humidity to match - providing an easy way to pick standard Earth biomes. But you can also pick the climate/humidity separately so it's flexible to capture most weather conditions.

Seasons

Seasons determine the types of weather for each biome. Winter is colder, summer is hotter, and spring/fall are in the middle (but generally tend toward getting warmer/colder).

When not using Simple Calendar, you just select the season you want to use.

When using Simple Calendar, you can choose "Sync with Simple Calendar" and the season of the current date will be used automatically. The season icon next to the drop down will change to let you know what season it is currently using. Simple Weather determines the Season to use based on the icon for the season in Simple Calendar. So, if you are using a custom calendar, for season sync to work you must a) set up seasons in Simple Calendar, and b) choose one of the season icons (fall, winter, spring, summer) for each of your seasons.

In some cases, you may need to override Simple Calendar's season. In particular, if you change hemispheres - because what Simple Calendar thinks is summer (ex. July) may actually be cold temperatures (ex. if in South America), so you'll want to manually override it. "Winter" is always cold in Simple Weather. In that case, simply pick the season you want in the drop down. It will remain in the manual setting until you set it back to "Sync".

Manual weather

Sometimes you might want to specify the exact weather that you need, rather than having it randomly generated. There are two typical use cases here:

  1. A special weather "event" - for example when approaching the lair of a frost witch.
  2. You just want to nudge the weather a bit.

To do this, open the manual toolbar and check "Pause updates" (which will collapse the season and biome toolbars for simplicity). Note that pausing isn't technically required, but if you don't then if you hit "regenerate" or advance the date, the weather will go back to the normal weather pattern. You can then choose the weather desired from the dropdown and enter a temperature before hitting the submit button. This will then cause the weather to appear in the chat, player dialogs, and weather effects just as if the system generated it (as determined by your settings).

The options in the drop-down that are colored red are ones that don't "naturally" occur in the current season/climate/humidity. This matters because picking an "unnatural" weather will not generate new forecasts. If you pick a natural one, though, future weather will be generated that flows more reasonably from it. This does not apply to temperature - if you pick a natural weather but a funky temperature, the next weather generated will go back to a more normal temperature range.

"Pause updates" - this prevents any further generation of weather (ex. when advancing the date). Helpful if you want to stay in that frost witch lair for several days without some chats going out about sunny skies or whatever each morning. Unchecking "Pause updates" won't immediately trigger a regeneration of weather, but if you want one without advancing the date, just then hit the "regenerate" button or the manual regenerate button as desired.

Weather Effects

The GM can activate weather effects in the module settings. This includes support for the scene weather in the Foundry core, as well as FX Master.

Once activated in settings, the scene weather will automatically be changed whenever the weather warrants it. There is currently only support for inclement weather (rain, hail, snow, fog). Let me know if there's any desire to do something to show sunny days, as I wasn't sure what made the most sense.

When players go inside, you can easily toggle the fx on/off temporarily using the toggle button on the toolbar. You can also do this from the 'Ambiance' tab of the Foundry scene configuration, which can make it easier to control without having to actually open the scene. There is also a module setting to make weather FX turned on/off by scene instead of globally, so you can just set them to not display on indoor scenes and they'll automatically come back when you switch back to an outdoor scene.

Note: I've mixed up the weather effects a bit - in particular whether or not clouds show up when it's raining. In all cases, I'd love to hear if there are setups you'd like to change how they work. I suspect different types of gameplay will have issues with different FX. Simply open an issue. At the very least, I need the text description of the weather at issue. Preferably, the biome, climate and/or humidity as well. Whatever you have. A description of the type of scene would be helpful, too (battle map, theater of the mind image, etc.)

Forecasts

If you activate forecasts in the module settings, the GM's window will display the next 7 days of weather. You'll see basic weather symbols for each day, and can mouseover one to see the detailed description. Temperatures are still estimates (accurate to within 5% degrees or so), but the descriptions will match exactly what gets generated for that day.

Forecast

The full forecast is regenerated if you use the regenerate button. Setting the weather manually doesn't currently change the forecast (because it's easy to set weather that doesn't make sense for the current season or biome, so I'm not quite sure how a forecast should work).

I'm looking at adding an optional player view for the forecast that would be probabilistic in nature (i.e. not always right).

Comments on any of this are welcome here:

Keybindings

There are keybinding options under "Configure Controls" in the main Foundry Game Settings section. You can toggle the whole window on/off, regenerate weather, pause automatic changes to the weather, and toggle weather effects on/off. Note that these keybindings work even when the window is hidden. So you can in theory run the whole weather system while the window is hidden (autogenerating weather by calendar, manually generating new weather, turning effects on/off).

Calendar "Attached Mode"

When using the "Attached to Simple Calendar" setting, there will be a button added to the Simple Calendar window to toggle the weather tab on/off. In this mode, there is no option to show Simple Weather's calendar panel (because the Simple Calendar must be showing).

In Calendaria, similar behavior, but it only currently supports the compact view.

Note that there is tight version dependency between this module and Simple Calendar. Check the changelog to find the version that works for your version of Simple Calendar. If the latest version of Simple Calendar isn't yet supported, please file an issue to let me know.

Attached mode

Or in compact mode: Compact attached mode

Module Options

Known Issues

Messy interactions with manually setting the scene settings weather

If you manually set the weather via the Ambiance tab in the scene settings, you may get some unpredictable interactions. Unfortunately, there's not a great way for Simple Weather to know that the weather was manually picked. Generally speaking, if you toggle the Simple Weather FX toggle (twice - to get it back where it was) that should get the weather back under Simple Weather's control. The alternative was to prevent you from manually setting the weather altogether (which is what 1.15.0 was doing). If the toggle twice method isn't working for you, please create an issue.

Missing box (in non-attached mode)

Some people occasionally have issues where the box will disappear and won't come back. We haven't been able to consistently reproduce it, and I suspect it's a conflict with another module somehow. If this happens to you, though, for now the workaround is to open your browser console (usually f12) and run this command to reset the window position:

game.settings.set('simple-weather', 'windowPosition', { bottom: 100, left: 100})

Then refresh (F5). That should make the window reappear. If that doesn't work (or if anyone can find a way to reproduce this consistently) please create an issue report.

Simple Calendar attachment (compact mode)

The attachment to the calendar when the calendar is in compact mode is highly dependent on the Simple Calendar version. Check the (change log) and make sure that the version of Simple Calendar you are using matches what's listed for your version of Simple Weather.

Missing weather button (when attached to non-compact Simple Calendar)

Players can now see the dialog properly when in non-attached mode or when SimpleCalendar is in compact mode. But when attached to SimpleCalendar in its full mode, non-GM players will not see the button to open the weather panel when first starting the game (or reloading browser). The workaround is to double click the SimpleCalendar header bar to enter compact mode and then double click it again to go back to normal. The button should then appear properly.

Missing box (when attached to non-compact Simple Calendar)

Sometimes when you have another Simple Calendar side tab open and you try to switch to the weather tab, it will close the other tab but not show the weather. The workaround is just to hit the weather button again.

Playlist volumes a little off

The volume on the sounds seems to be off by 1-2 points vs. where the slider in the settings is set. It's generally not noticeable in the volume, and you can always adjust the slider further, but it's definitely strange.

Frequently asked questions

Problems?

If you believe you found a bug or would like to post a feature request, head over to the module's Github repo and open a new issue.

Support

I'm happy to do this for free, as I primarily work on things I like to use myself. But if you'd like to buy me a root beer, I love knowing that people are using my projects and like them enough to make the effort. It's really appreciated!

Credits

Simnple Weather is the result of the effort of many people (whether they know it or not). Please refer to CREDITS.md for the full list.

THIS ENTIRE REPOSITORY IS COVERED BY THIS LICENSE AND COPYRIGHT NOTICE

Copyright 2023 Dov Rosenberg

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Categories

Available Versions

  1. Version 2.3.0

    3 hours, 43 minutes ago
    Foundry Version 14+ (Verified 14.370) Manifest URL Read Notes
  2. Version 2.2.2

    9 months, 1 week ago
    Foundry Version 13+ (Verified 13.351) Manifest URL Read Notes
  3. Version 2.2.1

    9 months, 1 week ago
    Foundry Version 13+ (Verified 13.351) Manifest URL Read Notes
  4. Version 2.2.0

    9 months, 2 weeks ago
    Foundry Version 13+ (Verified 13.351) Manifest URL Read Notes
  5. Version 2.1.0

    1 year ago
    Foundry Version 13+ (Verified 13.350) Manifest URL Read Notes
  6. Version 2.0.2

    1 year, 2 months ago
    Foundry Version 13+ (Verified 13.348) Manifest URL Read Notes
  7. Version 2.0.1

    1 year, 6 months ago
    Foundry Version 13+ (Verified 13.342) Manifest URL Read Notes
  8. Version 2.0.0

    1 year, 6 months ago
    Foundry Version 13+ (Verified 13.342) Manifest URL Read Notes
  9. Version 1.20.2

    1 year, 6 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  10. Version 1.20.1

    1 year, 6 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  11. Version 1.20.0

    1 year, 7 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  12. Version 1.19.2

    1 year, 8 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  13. Version 1.19.1

    1 year, 8 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  14. Version 1.19.0

    1 year, 8 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  15. Version 1.18.1

    1 year, 8 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  16. Version 1.18.0

    1 year, 8 months ago
    Foundry Version 12 - 12.331 (Verified 12.331) Manifest URL Read Notes
  17. Version 1.17.4

    1 year, 8 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  18. Version 1.17.3

    1 year, 9 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  19. Version 1.17.2

    1 year, 9 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  20. Version 1.17.1

    1 year, 9 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  21. Version 1.17.0

    2 years ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  22. Version 1.16.2

    2 years ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  23. Version 1.16.1

    2 years ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  24. Version 1.16.0

    2 years ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  25. Version 1.15.2

    2 years, 2 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  26. Version 1.15.1

    2 years, 2 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  27. Version 1.15.0

    2 years, 2 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  28. Version 1.14.1

    2 years, 2 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  29. Version 1.14.0

    2 years, 2 months ago
    Foundry Version 10+ (Verified 12.331) Manifest URL Read Notes
  30. Version 1.13.5

    2 years, 4 months ago
    Foundry Version 10+ (Verified 12.327) Manifest URL Read Notes
  31. Version 1.13.4

    2 years, 4 months ago
    Foundry Version 10+ (Verified 12.327) Manifest URL Read Notes
  32. Version 1.13.3

    2 years, 4 months ago
    Foundry Version 10+ (Verified 12.327) Manifest URL Read Notes
  33. Version 1.13.2

    2 years, 4 months ago
    Foundry Version 10+ (Verified 12.327) Manifest URL Read Notes
  34. Version 1.13.1

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.324) Manifest URL Read Notes
  35. Version 1.13.0

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  36. Version 1.12.1

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  37. Version 1.12.0

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  38. Version 1.11.3

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  39. Version 1.11.2

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  40. Version 1.11.1

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  41. Version 1.11.0

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  42. Version 1.10.2

    2 years, 5 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  43. Version 1.10.1

    2 years, 6 months ago
    Foundry Version 10+ (Verified 12.320) Manifest URL Read Notes
  44. Version 1.10.0

    2 years, 6 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  45. Version 1.9.3

    2 years, 7 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  46. Version 1.9.2

    2 years, 7 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  47. Version 1.9.1

    2 years, 7 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  48. Version 1.9.0

    2 years, 7 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  49. Version 1.8.2

    2 years, 7 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  50. Version 1.8.1

    2 years, 10 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  51. Version 1.8.0

    2 years, 11 months ago
    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  52. Version 1.7.3

    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  53. Version 1.7.2

    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  54. Version 1.7.1

    Foundry Version 10+ (Verified 11.315) Manifest URL Read Notes
  55. Version 1.7.0

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  56. Version 1.6.3

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  57. Version 1.6.2

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  58. Version 1.6.1

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  59. Version 1.6.0

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  60. Version 1.5.3

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  61. Version 1.5.2

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  62. Version 1.5.1

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  63. Version 1.5.0

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  64. Version 1.4.2

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  65. Version 1.4.1

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  66. Version 1.3.3

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  67. Version 1.3.2

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  68. Version 1.3.1

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  69. Version 1.3.0

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  70. Version 1.2.1

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  71. Version 1.2.0

    Foundry Version 10+ (Verified 11.313) Manifest URL Read Notes
  72. Version 1.1.0

    Foundry Version 10 - 11 (Verified 11.313) Manifest URL Read Notes
  73. Version 1.0.0

    Foundry Version 10 - 11 (Verified 11) Manifest URL