Animal Crossing: New Leaf Weather
Click to jump to a section...
What is This?
Ever since I started playing Animal Crossing: New Leaf in 2014, I always looked forward to rainy days. I loved (and still love) rainy and stormy weather in real life, and the realistic weather system in New Leaf gave me double the possible stormy weather to look forward to.
It wasn't until 2020 that I developed an interest in the possibility of tracking and predicting the in-game weather. After the release of New Horizons, and subsequently MeteoNook, I was thrilled. The possibility of seeing every instance of rainy and stormy weather that would occur on my island and knowing exactly when it would happen, to the hour, was really exciting for me. I immediately looked to see if such a resource existed for New Leaf, and to my disappointment, it didn't. I began to wonder if it was even possible to predict the weather for New Leaf saves.
However, after years of research and reading the game's code, I realized that it actually was theoretically possible. Due to a lack of centralized resources, though, it's highly unlikely that anyone would have ever ended up making such a thing, especially for such an old game.
Despite this, I've grown to have an extreme respect and enthusiasm for the weather system in New Leaf, and due to the amount of knowledge I possess on this subject, I feel like it's my responsibility to share it.
Overview
In case you're unfamiliar with how the weather works observably in New Leaf, I'll explain it briefly. There are 5 possible states that the weather can be in at any point, which I will refer to as sunny, cloudy, overcast, rainy, and thunderstorm[1]. They can be described as follows:
Sunny: Bright ambient lighting with no clouds in sight.
Cloudy: Bright ambient lighting with some white clouds in the sky.
Overcast: Somewhat dim ambient lighting with grey clouds covering most of the sky. The sky itself becomes greyer in color as well.
Rainy: Dark, almost purple-tinted ambient lighting. The background is slightly hazy. Rain falls, and clouds cover the entire sky.
Thunderstorm: Extremely dark ambient lighting, with occasional flashes due to lightning. The background is hazy. Rain falls heavily, and lightning and thunder can be seen and heard every few moments.
You can also see these states below. If the images are too small to see, click on them to open them in a new tab.
During winter, snowfall will occur instead of rainfall, so rain is replaced by snow, and thunderstorms are replaced by heavy snow[2]. However, while important to keep this replacement in mind, it is mostly insignificant, and for general purposes it will be ignored on this webpage. For the sake of completeness though, I'll describe and show images of these states as well.
Snow: Dim ambient lighting. Snow falls, and grey clouds covering the entire sky.
Heavy snow: Extremely dark ambient lighting. The background is hazy, and snow falls heavily.
At the very start of every hour, the weather state will change. It is important to note that the changes are not sudden, and will gradually begin 20 minutes into the hour. For example, if it is sunny at 9:00 in your town, but the weather is set to be cloudy at 10:00, faint clouds will begin appearing and gradually thicken at 9:20. However, the weather is still considered sunny until exactly 10:00.
Weather Code
To keep this resource accessible, I'll try to explain this as clearly and conscicely as possible. The in-game day starts at 6 AM. This time is referred to by the game's code as Hour 0 (more or less). Following this, 7 AM is Hour 1, 8 AM is Hour 2, all the way up until 5 AM, which is Hour 23.
In the game's code, there are 52 predetermined weather "patterns" that can be selected for any given day (several of which are repeats, and many of which I'm pretty sure the game doesn't use)[3]. Each pattern has 24 weather states, with the first one corresponding to Hour 0 and the last one corresponding to Hour 23. The states in between follow normal time. Each state is referred to by as a number in the games code as follows: 0 for sunny, 1 for cloudy, 2 for overcast, 3 for rainy, 4 for thunderstorm, 5 for snow, and 6 for heavy snow. The patterns themselves, however, aren't referred to in any way by the game's code (to my knowledge), so I personally have numbered them from 0 to 51 based on the order they are listed in the game's code.
For each town, the "weather seed" is somewhat-randomly chosen by the game's code (I'll elaborate on this in a later section). This weather seed contains the weather pattern for every single day of the year. However, these patterns are (presumably) not unique across years, so if you know the weather pattern for one date, that weather pattern will always be used on that date every year (aside from special cases, which I cover 2 paragraphs down).
The following refers to the patterns themselves by the numbers I've assigned to them in the following section, so feel free to jump back and forth to look at the patterns I'm referring to.
For any outdoor event in-game (such as the Bug Off, Fishing Tourney, any holiday that has an event in the plaza, etc), the weather pattern will be overwritten with either pattern number 4, 38, or 44 (they are identical, so I can't say for sure which one the game uses).
On December 10th of ever year, no matter your town's weather seed, the weather pattern for that day will be pattern number 14. However, due to a bug in the game's code, if the 10th falls on a Saturday, this will be overwritten due to the Fishing Tourney[4]. This doesn't happen in any other game in the franchise, so I think this is a neat quirk!
Patterns
Weather Seeds
At the start of every save, your mayor and town are each assigned a short ID, which is stored in the game's RAM[5]. There are 8 possible IDs for either of these, resulting in 64 unique combinations. These IDs (and presumably, nothing else) are used by the game's code to generate the weather for a given date.
Pretty simple on the surface level. However, there are 256 possible combinations for each ID, so by doing some math, there are 65,536 possible weather seeds. This may seem like a big number, and it is, but when you compare it to New Horizons' 2.1 BILLION weather seeds, New Leaf's pales in comparison.
Tracking the Weather
While theoretically possible to find the weather seed for any town (given that the weather corresponding to any seed is actually stored in the game's code), there is unfortunately not enough easily-accessible information on the internet about this topic. I also have no idea how to datamine (trust me, I tried), nor would I be able to make something similar to MeteoNook due to my kind of terrible coding skills.
However, you can manually track you weather patterns for each day if you choose to! You can track the weather for each hour, using the list of patterns above as a reference, and then keep track of the weather pattern for every date. If you do go this route, please keep in mind that you can only reliably tell which state the weather is in for the first 20 minutes of the hour. Recording your observations any later in the hour may give you inaccurate data. You can use anything for this, but I personally like using Microsoft Excel or Google Sheets because of the grid layout and ability to color-code the different squares.
Sources
- ACNL Wiki - Weather
- Animal Crossing Wiki - Weather
- ACNL weather source code
- Nookipedia - Weather
- ACNL RAM editing thread - IDs and pseudorandomness
Further Reading
If you find this topic interesting and want to look into it further, here are some other resources I found interesting in my research, but decided not to include because the information was only tangentially related to this topic:
- ACNL RAM editing thread - IDs and building colors (and the rest of this thread, honestly)
- ACNL season source code
- ACNL data spreadsheet