These rates and information are all datamined from the game executable and EventFlow files.
Special thanks to @_Ninji for their scripts and tools which saved me a tremendous amount of time and energy getting everything set up!
What is GrowUp
?
This page refers to GrowUp
a lot. This is the routine that runs right before Isabelle’s announcement. It only runs once for each time you see her announcement.
Catalogued Items
This page occasionally talks about “items that you have not catalogued,” which, unless otherwise specified, refers to item IDs for which your save file has ItemCollectBit[itemId] = 0
.
Generally speaking, clothing variants (e.g. red giant ribbon vs blue giant ribbon) have different item IDs, whereas furniture variants have the same item ID.
GrowUp
order
The order in which GrowUp
processes various things is:
- System_GrowUp::Continue flow runs
- Trees grow
- Tree branches appear on the ground (up to 15 cap)
- Wasps are added to random trees (up to 5 cap)
- Furniture is added to random trees (up to 2 cap)
- 100-bell coins are added to random trees (up to 15 cap)
- Flowers grow, then flowers that were bud/bloom before
GrowUp
roll for reproduction (reproduction rolled only once perGrowUp
) - Bushes grow
- Pumpkins grow
- Weeds grow+spread and random weeds appear (up to 20 times/
GrowUp
) - Mushrooms spawn (max 5/
GrowUp
, up to 30 cap) - Lily-of-the-valley spawns
- Rocks are generated (max 1/day, up to 6 cap)
- Fossils are generated (max 4/day, up to 6 cap)
- Star fragment counters are set for each existing player
- Star fragments are spawned (from current player’s cap, up to a max of 10 on beach)
- Cedar trees are decorated
- A message bottle is generated (max 1 on beach, not generated if one already present on beach)
Lily-of-the-valley
Spawn Rate
The spawn rate for lily-of-the-valley is influenced by the cLand:FlwLilyGrowCounter
counter and the cLand:FlwLilyFirstGrow
flag.
During GrowUp
, your island evaluation is recalculated. Then,
- if you are at 5 stars, and K.K. Slider has performed his first live,
cLand:FlwLilyGrowCounter
is incremented by 1 - if you are not at 5 stars,
cLand:FlwLilyGrowCounter
is set to 0
Then, if cLand:FlwLilyGrowCounter
is not 0, the game rolls to spawn a lily-of-the-valley. Consequently, if you are not at 5 stars, as recalculated at the start of the day, no lily-of-the-valley can appear.
If your island has never spawned a lily-of-the-valley before, then cLand:FlwLilyFirstGrow
is 0, and you have a 50% chance to spawn a lily-of-the-valley. This rate does not change until your first lily-of-the-valley has appeared.
Once you have spawned a lily-of-the-valley, cLand:FlwLilyFirstGrow
is set to 1, and the rate each day is instead cLand:FlwLilyGrowCounter
^2 + 6%. That is,
cLand:FlwLilyGrowCounter | Rate |
---|---|
1 | 7% |
2 | 10% |
3 | 15% |
4 | 22% |
5 | 31% |
6 | 42% |
7 | 55% |
8 | 70% |
9 | 87% |
10 | 100% |
If a lily-of-the-valley is spawned, then cLand:FlwLilyGrowCounter
is set to 0. If there are no valid spawn spaces for a lily-of-the-valley, the counter is not reset.
Spawn Location
This is a list of conditions for a lily-of-the-valley to appear on a specific tile. It is not entirely comprehensive (there are a few obscure conditions on top which I am not sure about) but should convey the general idea of where a lily-of-the-valley may spawn.
Consider the following layout (tiles labeled A are the three adjacent tiles behind the tile labeled T):
| | | |---+---+---+---+--- | A | A | A |---+---+---+---+--- | B | T | B |---+---+---+---+--- | | B | |---+---+---+---+--- | | | |
For the tile T to be a valid spawn location for a lily-of-the-valley,
- you should be able to plant a flower on tile T (i.e. there’s no river on it, there’s no item on it, etc.)
- T must not be on a level 3 cliff (the highest level, unclimbable)
- none of the A or B labeled tiles may contain water
- all of the A tiles must be the same (not higher or lower) cliff level as T
- at least one of the B tiles must either be one level lower, or be a half-cliff
Other Notes
Lily-of-the-valley spawning only happens once per GrowUp
. If you do not open the game for a week, this is still only counted as one day passing for the purposes of lily-of-the-valley spawning (i.e. counter only increments once, and at most one lily-of-the-valley may appear).
Weeds
Existing weeds may grow (advance in stage) and spread (new weeds appearing in an adjacent tile), and new weeds may randomly appear on your island, in that order. The moment you hit 150 weeds, all processing stops. If you do not open the game for a while, up to 20 days’ worth of missed weed processing occurs, as follows:
for (int i = 0; i < min(20, numDaysSinceLastGrowUp); ++i) {if (numWeeds >= 150) return;for (weed : island) {roll_for_weed_to_grow(weed);}for (weed: island) {if (roll_for_weed_to_spread(weed)) {if (++numWeeds >= 150) return;}}for (int j = 0; j < numWeedsToSpawn; ++j) {spawn_new_weed(weed);if (++numWeeds >= 150) return;}}
If multiple days have passed, tile watering information is only considered for the first day’s processing.
There is (at least as of 1.4.2) an off-by-one error when rolling for anything related to weeds, which is why the following rates are not nice multiples of 5.
Rates for a weed to grow
Current Stage | Not Watered | Watered |
---|---|---|
1 | 21% | 51% |
2 | 6% | 11% |
3 | 0% | 0% |
Each of the three variants of Stage 1 weeds has a specific Stage 2 weed it grows into. All Stage 2 weeds grow into the same Stage 3 weed.
Rates for a weed to spread
Current Stage | Not Watered | Watered |
---|---|---|
1 | 1% | 6% |
2 | 11% | 21% |
3 | 81% | 100% |
Adjacent tiles at the same level as the original weed are preferred, but weeds will grow up and down cliffs if no such tile is free. The type of Stage 1 weed is randomly picked with equal odds.
Number of new weeds spawned randomly each day
Number of Weeds on Island | Number of New Weeds |
---|---|
0 ~ 30 | 2 |
31 ~ 149 | 1 |
150+ | 0 |
Random weed spawns will not occur in visually-obstructed locations (criteria for visual obstruction is the same as for rock spawns). The type of Stage 1 weed is randomly picked with equal odds.
Fossils
There is a cap of 6 buried fossils - any more and no new fossils will appear during GrowUp
. The fossil that the unassessed fossil will be assessed to is picked when the fossil is generated, and not changed afterwards. Up to 4 fossils will spawn each day.
Fossils will not spawn in visually-obstructed locations (criteria for visual obstruction is the same as for rock spawns).
Trees
Growth
Trees are partitioned into two groups.
- Group 1: all trees not in Group 2, notably including money saplings and fruit saplings
- Group 2: cedar saplings, hardwood saplings, palm saplings, and bamboo saplings
A tree is permitted to grow only if:
- within the 9x9 box surrounding the tree, fewer than 12 Group 1 trees (excluding itself) are present
- within the 3x3 box surrounding the tree, there are no Group 1 trees, and no stumps or rocks present at the start of
GrowUp
First, all Group 1 trees (in random order) are processed for growth. When processed, if multiple days have elapsed since the last GrowUp
, the tree may grow up multiple stages at once.
Then, all Group 2 trees (in random order) are processed for growth. When processed, if multiple days have elapsed since the last GrowUp
, the tree may grow up multiple stages at once. The Group 2 tree is immediately converted to a Group 1 tree on growth, and may affect processing of later trees’ growth.
Axe Hits
During Bunny Day Event
Type of Tree | soft wood | wood | hard wood | wood egg |
---|---|---|---|---|
Cedar | 30% | 25% | 25% | 20% |
Palm | 20% | 15% | 20% | 45% |
Hardwood* | 25% | 25% | 30% | 20% |
*including Fruit/Money/Leaf Egg trees
Normal Rates
Type of Tree | soft wood | wood | hard wood |
---|---|---|---|
Cedar | 35% | 35% | 30% |
Palm | 35% | 30% | 35% |
Hardwood* | 30% | 35% | 35% |
*including Fruit/Money trees
Bamboo rates
During Spring, there is a 30% chance of young spring bamboo, and 70% chance of bamboo.
During other seasons, there is a 100% chance of bamboo.
Shake
Up to 5 wasp nests, 2 pieces of furniture, and 15 100-bell coins are added to your trees during GrowUp
, in that order. If you already have 3 wasp nests in your trees (e.g. because you didn’t shake them all), then only 2 new wasp nests are added.
Then, if it is the correct time of year (December 15 - January 6 for both hemispheres), random cedar trees are converted into decorated cedar trees one by one until at least half of the now-fully-grown cedar trees with no items in them, rounded up, are decorated.
The furniture placed inside a tree is determined by picking (uniformly at random) an item ID with ItemKind=Ftr
and ItemFrom in (ShopDefault, ShopMiscGoods, ShopLargeGoods, ShopLv1, ShopLv2)
.
When you shake a tree, if there is an item in the tree, or if the tree is a fruit/money tree with fruits/money on it, the item/fruits/money bags are dropped. Otherwise…
Non-decorated trees, Acorn/Pinecone season
There is a 70% chance of nothing dropping, 27% chance of a tree branch dropping, and 3% chance of a pinecone (cedar tree) or acorn (other trees) dropping.
Non-decorated trees, other seasons
There is a 70% chance of nothing dropping, and a 30% chance of a tree branch dropping.
Decorated cedar tree
There is a 80% chance of nothing dropping, 7.5% chance of a red ornament dropping, 7.5% chance of a blue ornament dropping, and a 5% chance of a gold ornament dropping.
There are two types of decorated cedar trees, which are chosen randomly (50%/50%) when the cedar tree is decorated. This is entirely cosmetic and does not affect ornament rates at all.
Rocks
Axe/Shovel hit
As of 1.4.0, if a gold nugget is spawned from a rock, the cPlayer:PopDiyGoldFromStoneToday
flag is set. If any gold nugget is picked up while cPlayer:PopDiyGoldFromStoneToday
is set, the player learns the DIY for king tut’s mask.
Money Rock
Hit Count | Coin/Bag dropped |
---|---|
1 | 100 |
2 | 200 |
3 | 300 |
4 | 500 |
5 | 1000 |
6 | 2000 |
7 | 4000 |
8 | 8000 |
Normal rates
Item Name | Your Island | NMT Island |
---|---|---|
stone | 50% | 9% |
iron nugget | 34% | 50% |
clay | 15% | 40% |
gold nugget | 1% | 1% |
Bunny Day rates
Nook’s Cranny built (MarketBuilt = 1)
Item Name | Your Island | NMT Island |
---|---|---|
stone egg | 20% | 35% |
stone | 40% | 5% |
iron nugget | 29% | 35% |
clay | 10% | 24% |
gold nugget | 1% | 1% |
Nook’s Cranny not built (MarketBuilt = 0)
Item Name | Your Island | NMT Island |
---|---|---|
stone egg | 20% | 30% |
stone | 30% | 4% |
iron nugget | 34% | 50% |
clay | 15% | 15% |
gold nugget | 1% | 1% |
Axe/Shovel hit with Fruit Powerup
These rates apply for when you break a rock that you have not hit before, in which case one item is rolled and dropped, along with a guaranteed stone.
Item Name | Normal Rock | Money Rock |
---|---|---|
clay | 49% | 0% |
iron nugget | 49% | 0% |
gold nugget | 2% | 0% |
8000 bells | 0% | 100% |
Spawn Locations
This is not a comprehensive list of criteria for rock spawn locations, but it covers most cases. These criteria were datamined using version 1.4, and have not changed with version 1.5.
This section is fairly technical, and not recommended reading for people who are only interested in making a rock garden.
Special thanks to Zertolurian#9617 for helping test/verify rock spawning criteria.
Terminology
For the sake of brevity, this section uses the following abbreviations:
- tile: 1.0 x 1.0 tile (e.g. the space that a dropped item takes up)
- 0.5-tile: 0.5 x 0.5 area (from splitting a tile into four pieces)
- 0.25-tile: 0.25 x 0.25 area (from splitting a 0.5-tile into four pieces)
The game allows players to move things in 0.5-tile increments. Collision data (files with pbc in their name in romfs/Models) is maintained in 0.25-tile increments - the pbc file stores row indices of ColGroundAttributeParam.bcsv rows (not UniqueIds) for each 0.25-tile.
For each 0.25-tile, the game maintains two ColGroundAttributeParam indices - one for the foreground (e.g. part of a building) and one for the background (e.g. the grass under the building). Unless otherwise stated, the ColGroundAttributeParam this section refers to is always the foreground if not Null (index 7), and background if the foreground is Null.
Basic Criteria
The following are conditions for a tile to be able to spawn a rock:
- The tile is empty (e.g. no custom design, dropped item, etc.).
- The ColGroundAttributeParam for contained 0.25-tiles in the top-left 0.5-tile must have
WaterCheck=0
(i.e. tile is not water). - The ColGroundAttributeParam for contained 0.25-tiles in the top-left 0.5-tile must have
PlayerNoEntry=0
(i.e. tile can be walked over by the player). - The ColGroundAttributeParam for contained 0.25-tiles in the top-left 0.5-tile must have
Sand=0
(i.e. tile is not beach). - The ColGroundAttributeParam for contained 0.25-tiles in the top-left 0.5-tile must not be Pier (桟橋, index 45).
- The tile is not on the highest level of cliff.
- The tile is not visually obstructed.
- The tile is reachable (see following sections).
- The ColGroundAttributeParam for contained 0.25-tiles in the top-left 0.5-tile of all adjacent tiles must have
WaterCheck=0
(i.e. no adjacent tile is water). - All adjacent tiles should be flat (maximum height difference of 0.11 between 0.5-tiles within each tile individually). The height is 0 for dropped/buried items,
Height
for placed furniture whoseItemAct
hasCollision = 1
, andCollisionHeight
for Fg objects (such as trees, flowers, etc.) - All adjacent tiles should be at the same level of elevation as the tile (height difference delta within 5.0).
Visual Obstruction
Various objects obstruct more area than the space they take up. There are five classes of visual obstruction used internally (names not official), which are applied at 0.5-tile granularity.
- 1-vertical: tiles within a 2 x 2 region with the bottom left tile directly above the the obstructing 0.5-tile are obstructed
- 2-vertical: tiles within a 2 x 4 region with the bottom left tile directly above the the obstructing 0.5-tile are obstructed
- 3-vertical: tiles within a 2 x 6 region with the bottom left tile directly above the the obstructing 0.5-tile are obstructed
- 4-vertical: tiles within a 2 x 8 region with the bottom left tile directly above the the obstructing 0.5-tile are obstructed
- horizontal: tiles within a 6 x 2 region with the bottom left tile three 0.5-tiles above and two 0.5-tiles to the left of the obstructing 0.5-tile are obstructed
The following image shows the five obstruction classes, applied on the red 0.5-tile:
Obstruction classes are calculated for each 0.5-tile, but only 0.5-tiles which are the top left corner of a tile are processed (the red 0.5-tile in the above image would therefore not actually block anything).
The top left 0.5-tile (and only the top left 0.5-tile) of tiles occupied by…
- cedar trees (all stages) obstruct 4-vertical and horizontal.
- non-cedar trees (all stages) obstruct 3-vertical and horizontal.
- bushes obstruct 1-vertical.
- fences obstruct 1-vertical.
All occupied 0.5-tiles of furniture whose Height
(column in ItemParam.bcsv, which is calculated by taking the highest point in the model) is…
- at least 8.0 and less than 12.0 obstruct 1-vertical.
- at least 12.0 and less than 16.0 obstruct 2-vertical.
- at least 16.0 and less than 20.0 obstruct 3-vertical.
- at least 20.0 obstruct 4-vertical.
All 0.5-tiles of structures that satisfy either of the following criteria obstruct 4-vertical:
- any contained 0.25-tile is marked as a building (建物, index 8) in the foreground (or if null, the background)
- any contained 0.25-tile is not marked null (Null, index 7) in the foreground
Most (if not all) structures one would normally consider as a “building” satisfy the second condition for the entire top row, and therefore the entire structure effectively blocks 4 tiles vertically from the back. The same thing happens with inclines (in any orientation).
The plaza itself (not the resident services tent/building), as well as bridges, are placed in the background, and thus, do not satisfy either of the two conditions (and do not obstruct vertically).
Finally, any tile whose top left 0.5-tile is obstructed is considered to be obstructed.
Reachability
Certain tiles are marked as unreachable during earlier stages of the game (e.g. before you unlock the ladder), and certain tiles are always marked as unreachable (e.g. highest level of cliff).
A tile is considered reachable if all the following are true:
- all contained 0.25-tiles have
PlayerNoEntry=0
- it is not on the highest level of cliff
VillageExtensionLevel2
set or ???*VillageExtensionLevel2
not set orVillageExtensionLevel3
set or it is not on a cliff (of any level)
*unsure what this condition is checking, but it’s probably along the lines of “reachable from plaza without a vaulting pole”
Variants
There are five different variants of rocks. The difference is entirely aesthetic, and each variant has an equal chance of being chosen when a rock is spawned.
Mushrooms
Up to 5 mushrooms will spawn each GrowUp
, but only up to a maximum of 30 mushrooms on the island. The rates of each type of mushroom depend on your island evaluation, as calculated at the start of GrowUp
.
Item Name | 1~3 Stars | 4 Stars | 5 Stars |
---|---|---|---|
skinny mushroom | 35% | 30% | 25% |
flat mushroom | 30% | 30% | 25% |
round mushroom | 30% | 25% | 25% |
elegant mushroom | 4% | 10% | 15% |
rare mushroom | 1% | 5% | 10% |
Shells
During Summer
Shell Name | Rate |
---|---|
summer shell | 10% |
conch | 6% |
giant clam | 10% |
coral | 10% |
venus comb | 10% |
sea snail | 10% |
cowrie | 17% |
sand dollar | 27% |
Other Seasons
Shell Name | Rate |
---|---|
summer shell | 0% |
conch | 5% |
giant clam | 11% |
coral | 11% |
venus comb | 11% |
sea snail | 11% |
cowrie | 20% |
sand dollar | 31% |
Star Fragments on Beach
The zodiac star fragments that appear on the beach are always of the zodiac of the night before, on your own island (regardless of where you wished).
If the zodiac (of the previous night) is the same zodiac as the zodiac of your birthday, your rates are:
Item Name | Rate |
---|---|
star fragment | 70% |
large star fragment | 10% |
zodiac fragment | 20% |
Otherwise, your rates are:
Item Name | Rate |
---|---|
star fragment | 85% |
large star fragment | 5% |
zodiac fragment | 10% |
The game keeps track of the following during the night before, which determines how many fragments can spawn:
cPlayer:PrayStarToday
- the number of times a player wished, capped at 20. This is per resident.cLand:VisitorPrayStarToday
- the number of times that a visitor wished on your island, capped at 100. This is per island.
During GrowUp
, cPlayer:StarPieceGrowCount
for each resident is set to cPlayer:PrayStarToday + cLand:VisitorPrayStarToday / 5
. This is the number of star fragments that each resident can spawn during the day - whenever a star fragment spawns, the current player’s cPlayer:StarPieceGrowCount
is decremented once.
There is a cap of 10 star fragments on the beach at any given time. That is, if there are 10 star fragments, no more fragments will appear until they are picked up. If the current player’s cPlayer:StarPieceGrowCount
is nonzero, and there are fewer than 10 star fragments on the beach, more star fragments will slowly appear on the beach, regardless of the number of shells on your beach, or the time of day (as long as the next day’s GrowUp
has not run yet).
During GrowUp
, as many star fragments as possible are spawned, for the current player.
Things to note:
- Star fragments left on the beach from previous days do not count against
cPlayer:StarPieceGrowCount
, but do count toward the “10 star fragments at a time” cap. - If two profiles have nonzero
cPlayer:StarPieceGrowCount
, it is necessary to open the game on both profiles to spawn all the star fragments. cLand:VisitorPrayStarToday
is per island, so having a visitor wish 100 times results in 20 star fragments per profile, even if you don’t open the game on each profile the night before.cPlayer:StarPieceGrowCount
is set atGrowUp
, so profiles made the day after your meteor shower get no star fragments.
Celeste
First Visit
If this is the first time talking to Celeste, you get the DIY recipe for a star wand.
Zodiac DIYs
If you have not received a zodiac DIY from Celeste since the last time the zodiac changed on your island*, and you do not have the zodiac DIY for the current zodiac**, then you get the current zodiac’s DIY**.
*since the last time GrowUp
ran, where the zodiac was different from the zodiac of the date the GrowUp
before that ran
**based on the date of the island Celeste is on, not the date of your island
Non-Zodiac DIYs
If you are not eligible for a zodiac DIY, and have not learned all of Celeste’s non-zodiac DIYs, then you get a non-zodiac DIY, as follows:
- Take the list of DIYs you have not yet learned from Celeste, in order of the following list.
- flying saucer
- moon
- asteroid
- astronaut suit
- starry wall
- sci-fi wall
- starry-sky wall
- lunar rover
- satellite
- space shuttle
- lunar lander
- rocket
- nova light
- starry garland
- crescent-moon chair
- crewed spaceship
- sci-fi flooring
- lunar surface
- galaxy flooring
- star clock
- star wand
- hyacinth wand
- windflower wand
- tulip wand
- pansy wand
- cosmos wand
- rose wand
- lily wand
- mums wand
- wand
- tree-branch wand
- golden wand
- iron wand
- star pochette
- star head
- If there is only one DIY you have not yet learned, you get that DIY.
- Otherwise, remove the last DIY from the list, and pick one of the remaining DIYs, each with equal chance.
Note: this means that star head is always the last DIY, unless you obtain it earlier via trading.
Star Fragments
If you are not eligible for any DIY, then,
- there is a 60% chance that she gives you 5 star fragments
- there is a 20% chance that she gives you 1 large star fragment
- there is a 20% chance that she gives you 1 zodiac fragment (based on the date of the island Celeste is on)
Snowboy DIYs
Snowboy DIYs function similarly to Celeste DIYs.
- Take the list of DIYs you have not yet learned, in order of the following list.
- frozen arch
- frozen sculpture
- frozen chair
- frozen counter
- frozen tree
- frozen table
- frozen partition
- frozen pillar
- frozen bed
- frozen-treat set
- ice flooring
- ice wall
- three-tiered snowperson
- ice wand
- snowperson head
- If there is only one DIY you have not yet learned, you get that DIY.
- Otherwise, remove the last DIY from the list, and pick one of the remaining DIYs, each with equal chance.
Note: this means that snowperson head is always the last DIY, unless you obtain it earlier via trading.
Message Bottles
First, a random villager is picked (equal odds for all villagers, must not be living on your island).
Then, the game rolls whether to give a personality-specific or general DIY recipe:
- 5% chance of the recipe being an ALL_NPC recipe
- 95% chance of the recipe being a personality-specific recipe (with the personality being that of the randomly picked villager)
A recipe is then picked from the personality category (or ALL_NPC), uniformly at random with no consideration to learned recipes.
The very first message bottle generated on your island is special-cased to be one of wooden full-length mirror and wooden table mirror (50%/50% chance). This is controlled by the cLand:PickedUpMessageBottle
flag.
Fossils and Message Bottles on NMT Islands
There is a 30% chance for there to be a fossil buried on an NMT island.
There is a 30% chance for there to be a message bottle on the beach of an NMT island.
Water Eggs
During Bunny Day, there is a flat 30% chance of a water egg spawning instead of a fish.
Wisp
Wisp’s rates and logic changed with the 1.2.0 update, and with the 1.3.0 update. Min Value/Max Value refer to the item’s buy price (Price
column in ItemParam.bcsv
).
1.3.0 and later
Category
The rate of each category depends on whether you have a tent or a house.
Category | Tent Rates | House Rates |
---|---|---|
furniture | 75% | 40% |
wallpaper | 0% | 24% |
flooring | 0% | 24% |
clothing | 25% | 12% |
Pieces of furniture are determined by picking (uniformly at random) an item ID with ItemKind=Ftr
, ItemCatalogType=Sale
, and ItemFrom in (ShopDefault, ShopMiscGoods, ShopLargeGoods, ShopHighClass, ShopLv1, ShopLv2)
that is in the price range and (if Something new is picked) not cataloged.
Wallpaper is determined by picking (uniformly at random) an item ID with ItemKind=RoomWall
, ItemCatalogType=Sale
, and ItemFrom in (MarketingRouteA, MarketingRouteB, MarketingRouteC, MarketingRouteD)
that is in the price range and (if Something new is picked) not cataloged.
Flooring is determined by picking (uniformly at random) an item ID with ItemKind=RoomFloor
, ItemCatalogType=Sale
, and ItemFrom in (MarketingRouteA, MarketingRouteB, MarketingRouteC, MarketingRouteD)
that is in the price range and (if Something new is picked) not cataloged.
Clothing is determined by picking (uniformly at random) an item ID with ItemKind in (Tops, OnePiece, Bottoms, Accessory, Cap, Helmet, Shoes, Socks)
, ItemCatalogType=Sale
, and ItemFrom in (Tailor, TailorMarketOnly)
that is in the price range and (if Something new is picked) not cataloged.
The item variant is always of the native variant (based on your VillageLotID
).
Something I don’t have
The item is always an item that you have not cataloged yet, unless you have cataloged everything in the pool of items, in which case it picks randomly from the pool of items.
Category | Min Value | Max Value |
---|---|---|
furniture | 300 | 2999 |
wallpaper | 300 | 2499 |
flooring | 300 | 2499 |
clothing | 300 | 1999 |
Something expensive
There is a 90% chance of using the first table, and a 10% chance of using the second table.
Table 1
Category | Min Value | Max Value |
---|---|---|
furniture | 2000 | 14999 |
wallpaper | 1850 | 9999 |
flooring | 1850 | 9999 |
clothing | 1800 | 9999 |
Table 2
Category | Min Value | Max Value |
---|---|---|
furniture | 10 | 14999 |
wallpaper | 10 | 2999 |
flooring | 10 | 2999 |
clothing | 10 | 4999 |
1.2.0
Category
The rate of each category depends on whether you have a tent or a house.
Category | Tent Rates | House Rates |
---|---|---|
furniture | 75% | 40% |
wallpaper | 0% | 24% |
flooring | 0% | 24% |
clothing | 25% | 12% |
If you request something expensive, and it’s the first time you request something expensive since updating to 1.2.0, then you are instead guaranteed a piece of furniture.
Something I don’t have
The item is always an item that you have not cataloged yet, unless you have cataloged everything in the pool of items, in which case it picks randomly from the pool of items.
Category | Min Value | Max Value |
---|---|---|
furniture | 300 | 2999 |
wallpaper | 300 | 2499 |
flooring | 300 | 2499 |
clothing | 300 | 1999 |
Something expensive
There is a 90% chance of using the first table, and a 10% chance of using the second table. If this is the first time you request something expensive since updating to 1.2.0, then the first table is always used.
Table 1
Category | Min Value | Max Value |
---|---|---|
furniture | 2000 | 14999 |
wallpaper | 1850 | 9999 |
flooring | 1850 | 9999 |
clothing | 1800 | 9999 |
Table 2
Category | Min Value | Max Value |
---|---|---|
furniture | 10 | 14999 |
wallpaper | 10 | 2999 |
flooring | 10 | 2999 |
clothing | 10 | 4999 |
1.0.0 - 1.1.4
Category
The rate of each category depends on whether you have a tent or a house.
Category | Tent Rates | House Rates |
---|---|---|
furniture | 75% | 40% |
wallpaper | 0% | 24% |
flooring | 0% | 24% |
clothing | 25% | 12% |
Something I don’t have
The item is always an item that you have not cataloged yet, unless you have cataloged everything in the pool of items, in which case it picks randomly from the pool of items.
Category | Min Value | Max Value |
---|---|---|
furniture | 0 | 1999 |
wallpaper | 0 | 1499 |
flooring | 0 | 1499 |
clothing | 0 | 1499 |
Something expensive
Category | Min Value | Max Value |
---|---|---|
furniture | 0 | 14999 |
wallpaper | 0 | 14999 |
flooring | 0 | 14999 |
clothing | 0 | 14999 |
Pascal
The first time you give Pascal a scallop, you will always get a mermaid furniture DIY (ItemFrom = DIYPearl
), even if you have already learned all the DIYs (e.g. by trading).
Otherwise, if you have not learned all the DIYs* and cataloged all the mermaid clothing, there is a 50% chance of receiving a pearl, and a 50% chance of receiving either a DIY you don’t have or a piece of mermaid clothing you have not cataloged (equal chance of receiving any particular reward).
Otherwise, there is an 80% chance of receiving a pearl and 20% chance of receiving a piece of mermaid clothing.
*before 1.4.0, this condition was “have not cataloged all the DIYs”.
Balloons
Once you pop 300 balloons, a golden balloon will appear containing the golden slingshot DIY. After this, every 20th balloon that appears (not every 20th balloon you actually pop, just every 20th that appears) will be a golden balloon until you have learned the golden slingshot DIY.
The following table contains rates for different items in balloons (original table from @cestislife with rates datamined by @_Ninji; I have also double-checked the information myself).
Furniture is determined by picking (uniformly at random) an item ID with ItemFrom in (ShopDefault, ShopMiscGoods, ShopLargeGoods, ShopLv1, ShopLv2)
.
Clothing is determined by picking (uniformly at random) an item ID with ItemFrom in (Tailor, TailorMarketOnly)
with Price <= 4000
.
cPlayer:BalloonShootCountToday
contains the number of balloons shot down by the player on the current day.
Seasonal DIYs available, not all learned
Category | cPlayer:BalloonShootCountToday <10 | cPlayer:BalloonShootCountToday >=10 |
---|---|---|
furniture | 35% | 5% |
clothing | 20% | 5% |
5x iron nugget | 5% | 15% |
5x clay | 5% | 15% |
gold nugget | 1% | 1% |
unlearned DIY | 15% | 15% |
random DIY | 5% | 5% |
1000 bells | 0% | 25% |
5000 bells | 8% | 8% |
10000 bells | 5% | 5% |
30000 bells | 1% | 1% |
Seasonal DIYs available, all learned
Category | cPlayer:BalloonShootCountToday <10 | cPlayer:BalloonShootCountToday >=10 |
---|---|---|
furniture | 45% | 5% |
clothing | 25% | 5% |
5x iron nugget | 5% | 20% |
5x clay | 5% | 20% |
gold nugget | 1% | 1% |
unlearned DIY | 0% | 0% |
random DIY | 5% | 5% |
1000 bells | 0% | 30% |
5000 bells | 8% | 8% |
10000 bells | 5% | 5% |
30000 bells | 1% | 1% |
Seasonal DIYs not available
Category | cPlayer:BalloonShootCountToday <10 | cPlayer:BalloonShootCountToday >=10 |
---|---|---|
furniture | 50% | 5% |
clothing | 25% | 5% |
5x iron nugget | 5% | 23% |
5x clay | 5% | 22% |
gold nugget | 1% | 1% |
unlearned DIY | 0% | 0% |
random DIY | 0% | 0% |
1000 bells | 0% | 30% |
5000 bells | 8% | 8% |
10000 bells | 5% | 5% |
30000 bells | 1% | 1% |
Friendship Consecutive Talk Bonus
There is a bonus for talking to villagers for several days in a row:
Days in a Row | Friendship Increase |
---|---|
1 | 1 |
2 | 2 |
3 or more | 3 |
Due to a bug in the game's programming, the counter (cNpcMemory:ConsecutiveTalkDays
) was reset upon loading the game from 1.0.0 to 1.4.2, resulting in the increase in Friendship always being 1. This was fixed with the 1.5.0 patch, and daily increases in Friendship up to 3 are now possible.
Friendship Return Gifts
This section pertains to the gifts that villagers give you when you give them a gift worth at least 250 bells. This data has only been checked for 1.4.0+, and not for earlier versions.
The return gift is based on your friendship level with the villager if your gift is worth at least 750 bells. Otherwise, it is treated the same as a friendship level 1/2 gift.
Friendship Level 1/2
The return gift satisfies:
ItemFrom in (ShopMiscGoods, ShopLv1, ShopLv2, Tailor, TailorMarketOnly*)
(TailorMarketOnly is only included if Able Sisters is built)Price <= 1999
ItemKind in (Tops, OnePiece)
or (ItemKind=Ftr
and layout is not Wall/Rug)
Friendship Level 3/4
There is a 10% chance of getting a wallpaper/flooring instead of a normal gift if the return gift is handed back to you (instead of mailed to you).
Normal return gifts satisfy:
- Either
ItemFrom in (ShopMiscGoods, ShopLv1, ShopLv2, Tailor, TailorMarketOnly*)
(TailorMarketOnly is only included if Able Sisters is built), orItemKind=Ftr
andSeasonality
is the current season (notAllYear
) Price <= 2999
ItemKind in (Tops, OnePiece, Cap)
or (ItemKind=Ftr
and layout is not Rug)
Friendship Level 5/6
There is a 15% chance of getting a wallpaper/flooring instead of a normal gift or photo if the return gift is handed back to you (instead of mailed to you).
There is a floor(4 * friendshipPoints / 100)%
chance of receiving the villager’s framed photo instead of a normal gift, if the return gift is not rolled to be a wallpaper/flooring.
Normal return gifts satisfy:
ItemFrom in (ShopMiscGoods, ShopLv1, ShopLv2, ShopLargeGoods, Tailor, TailorMarketOnly*)
(TailorMarketOnly is only included if Able Sisters is built)Price <= 2999
ifItemKind != Ftr
,Price <= 4999
otherwiseItemKind in (Tops, OnePiece, Cap, Accessory)
or (ItemKind=Ftr
and layout is not Rug)
If possible, the return gift will be an item that you have not yet cataloged. Otherwise, the return gift must also satisfy Price >= 2000
.
General Restrictions
There are some additional restrictions which apply for non-wallpaper/flooring return gifts:
- The return gift cannot have
ItemCatalogType = NotForSale
- The return gift cannot be in both the villager’s
FtrStockList
andNpcHouse.FtrList
(i.e. it cannot be furniture that is currently placed in the house) - The return gift cannot be the villager’s
TopData
,AccessoryData
, orCapData
(i.e. the villager cannot currently be wearing the gift) - The return gift cannot be the villager’s default top
- The return gift cannot be a DIY item
- If the return gift is clothing, the gift’s
Seasonality
must either be the current season orAllYear
(i.e. the gift cannot be out of season) - If the return gift is gender-specific (either
NpcGender
orItemGender
set), then it must match both the villager’s gender and the player’s gender - The return gift cannot be in
WearStockList
orFtrStockList
withPastDays < 2
(should mainly apply to default furniture not being gifted before the third day of coming into existence) - The return gift cannot be in
WearStockList
orFtrStockList
withSavePlayerBaseId
equal to the player’s ID (i.e. cannot be an item from the current player) - The return gift cannot be in
WearStockList
orFtrStockList
withSavePlayerBaseId
not equal to the player’s ID andPastDays < 11
(i.e. cannot be an item gifted from another player within the last 10 days) - The return gift cannot be in
ReleaseItemList
withSavePlayerBaseId
equal to the player’s ID (i.e. cannot be an item that the villager remembers giving to the player in the past) - The return gift cannot be in
ReleaseItemList
withSavePlayerBaseId
not equal to the player’s ID andPastDays < 11
(i.e. cannot be an item that the villager remembers giving to another player in the past 10 days) - The return gift cannot be something you are currently wearing
Furniture Variant
Furniture return gifts will always be your island variant (the ReBodyPatternNum
is set based on your island’s VillageLotId
) unless you are receiving a friendship level 5-6 gift not in your catalogue, in which case it be random.
The variant for framed photos is fixed (variant 0).
Wallpaper/Flooring
Wallpaper/Flooring return gifts satisfy:
ItemKind in (RoomWall, RoomFloor)
ItemCatalogType = Sale
Price <= 2000
ItemFrom=MarketingRouteX
whereX
is one ofA
,B
,C
, orD
, picked randomly with weights depending on your island’sVillageMarketingType
.
The gory little details on which MarketingRoute is chosen:
VillageMarketingType
is an unsigned 8-bit integer, which should be a permutation of the four dibits (00, 01, 10, 11).- These dibits correspond to the four different marketing routes: 00 corresponds to A, 01 corresponds to B, 10 corresponds to C, and 11 corresponds to D
- There is a 40% chance of using the highest dibit (top two bits) to pick the route.
- There is a 30% chance of using the third dibit (bits 4-5) to pick the route.
- There is a 20% chance of using the second dibit (bits 2-3) to pick the route.
- There is a 10% chance of using the lowest dibit (top two bits) to pick the route.
In summary: the distribution of the four marketing routes is 40%/30%/20%/10%, but which route is assigned to which percentage depends on your island.
Other notes
The return gift is added to the villager’s ReleaseItemList
when you receive it (either when the mail reaches your mailbox, or when the gift is handed to you). The ReleaseItemList
is effectively a 64-item queue of gifts that the villager remembers giving to a player - oldest item gets removed to make space for a new item. There is only one list per villager, not one list per villager per resident.
Cupcake Gifts
This section pertains to the item received in return for a cupcake, on your birthday.
The game keeps track of several flags, which represent whether you have gotten a particular type of item before.
cPlayer:GetBirthdayTable
- whether you have received a birthday table beforecPlayer:GetBirthdayHat
- whether you have received a birthday hat beforecPlayer:GetBirthdayBoard
- whether you have received a birthday board beforecPlayer:GetBirthdayCandle
- whether you have received a birthday candle beforecPlayer:GetBirthdaySunglasses
- whether you have received birthday sunglasses beforecPlayer:GetBirthdayCake
- whether you have received a birthday cake beforecPlayer:GetBirthdayFloorParty
- whether you have received a birthday flooring beforecPlayer:GetBirthdayWallParty
- whether you have received a birthday wallpaper before
The reward you get depends on your friendship level with the villager.
Friendship Level 1/2
The cupcake is simply treated as a Level 3/4 normal friendship gift (see Friendship Return Gifts), except that it can be an item that you are currently wearing.
Friendship Level 3/4
If cPlayer:GetBirthdayCandle
and cPlayer:GetBirthdaySunglasses
are both set, the cupcake is simply treated as a Level 3/4 normal friendship gift (see Friendship Return Gifts), except that it can be an item that you are currently wearing.
If neither flag is not set, the gift pool contains: candle, board, cake, flooring, wallpaper, and sunglasses.
Otherwise, if cPlayer:GetBirthdayCandle
is not set, the gift pool contains: candle, board, cake, flooring, and wallpaper.
Otherwise, the gift pool contains: cake, flooring, wallpaper, and sunglasses.
Each type of gift has equal weight, and variants are randomized after picking a type.
Friendship Level 5/6
If any flag is not set, the corresponding type of item is added to the pool. Then, a type of gift is picked (with each type of gift having equal weight), and variants are randomized after picking a type.
If all flags are set (i.e. you have received one of everything), the cupcake is simply treated as a Level 3/4 normal friendship gift (see Friendship Return Gifts), except that it can be an item that you are currently wearing.
Museum Donations
The EventFlow query OwlDonationItemType
returns the following values, for the type of item you
just donated to the museum:
Value | Type of Item Donated |
---|---|
0 | Bug |
1 | never returned |
2 | Unidentified Fossil |
3 | Fossil |
4 | Fish (as of 1.4.0, including sea creatures obtained via diving) |
5 | Art (as of 1.2.0) |
6 | Fake Art (as of 1.2.0) |
Notably, there is an unused gap (value=1) present since 1.0.0 that is both never returned by the executable and never used in the game’s EventFlow (through 1.11.0).
Fleas
Note: I’m not 100% confident about everything here, but it should give a good idea of how fleas spawn.
TL;DR: assuming you are far enough in the game, it is probably the case that when in season, there is a 0.5-1.0% chance of a single flea spawning on one of your villagers, each hour if fleas are in season.
Fleas are spawned entirely separately from the normal bug spawning system.
They cannot spawn (on any of your villagers) if any of the following is true:
- There is already a flea currently spawned
- There was a flea spawned within the 60 minutes
FinishiPC1Prologue
flag is off- It is the day of an event
- It is the birthday of any one of your villagers
- K.K. Slider is on your island
- The current date is not at least 7 days after some date (likely the day you created your island, but not sure)
- There are no valid villagers to spawn on (unsure exactly what this entails, but you must have at least greeted the villager on your island after they moved in)
(there may be a few more conditions)
If all conditions are met, a flea is spawned with (bcsv spawn rate / 1000)
chance. As fleas have a spawn rate of 0, 5, or 10 depending on the month, this corresponds to a 0% (out of season), 0.5%, or 1.0% chance of spawning.
This routine appears to be tied to other handling of villager activity, and likely runs once an hour regardless of whether a flea was successfully spawned.
FAQs
What is data mining quizlet? ›
Data Mining. the use of techniques for the analysis of large collections of data and the extraction of useful and possibly unexpected patterns in data.
What is data warehouse quizlet? ›Data warehouse. A data warehouse is a subject-oriented, integrated, time-variant, and non-volatile collection of data in support of management's decision making process. Logical Measures. Measures populate the cells of a logical cube with the facts collected about business operations.
Which is the best definition of customer alchemy? ›Customer alchemy: converting iron and gold customers into platinum customers. add on selling: as a way to achieve customer alchemy; involves offering and selling more products and services to existing customers and increasing the retailer's share of wallet.
Which of the following is a reason for consumers to have privacy concerns regarding cookies? ›Which of the following is a reason for consumers to have privacy concerns regarding cookies? Customers cannot realize the amount of information being collected without their knowledge.