Fruit tree

From Vintage Story Wiki
Fruit trees
Resource Surface


Fruit trees are tree species that produce edible fruit . These contrast with lumber trees , which are grown and harvested for wood .

Fruit trees produce a harvest every year after cycling through several stages: dormancy, flowering, fruiting, and ripe. They have strict growing requirements, but yield fruits with a long shelf life and in large amounts.

Finding fruit trees

Finding fruit trees through exploration can be challenging. Unless they are in the flowering stage, they can be difficult to distinguish from other trees inside a forest. Fruit trees have 3 distinct features: their leaf block pattern, leaf block color, and slimmer trunk.

Fruit trees can be found in areas with the following temperature , precipitation ,[1] and forestation .[2] These values represent the average climate in a year, which can be viewed by running the command /wgen pos climate.

Species Temperature (°C) Rainfall Forestation
Minimum Maximum Minimum Maximum Minimum Maximum
Red apple -9 18 0.5 0.9 0.3 0.8
Pink apple -5 18 0.5 1 0.3 0.8
Yellow apple 0 22 0.6 1 0.3 0.8
Peach 10 17 0.55 1 0.3 0.8
Pear -10 19 0.5 1 0.3 0.8
Cherry 0 24 0.6 1 0.3 0.8
Orange 25 30 0.45 1 0.3 0.8
Olive 22 50 0.3 0.5 0.3 0.8
Mango 28 50 0.6 1 0.3 0.8
Breadfruit 28 50 0.6 1 0.3 0.8
Lychee 22 50 0.6 1 0.3 0.8
Pomegranate 22 50 0.3 0.7 0.3 0.8

Collecting fruit tree cuttings

A fruit tree consists of 3 block types: the stem, branches, and leaves. Fruit tree cuttings are used to grow new fruit trees, and can be acquired by breaking the branches with an axe . Branches drop 1 cutting each, mature stems drop 1 firewood each, and leaves drop nothing (unless they bear ripe fruit). Branches that have been removed have a chance to regrow every 5 days.

Growing fruit trees

Fruit tree cuttings can be planted on the ground to grow a new fruit tree, or grafted onto the stem of an existing fruit tree.

Planting fruit trees

Fruit tree cuttings can be placed on any soil , sand , or gravel . Cuttings have a 40% chance of taking root. If successful, the cutting will become a young tree stem and begin growing into a full tree. If unsuccessful, the cutting will die and drop 2 firewood when broken.

Grafting fruit trees

 
An open cut on a mango tree, ready for a graft
 
A mango host tree with a grafted orange branch

Fruit tree cuttings can be grafted onto pre-existing fruit trees. To do so, the host tree must have an "open cut": a segment of the tree stem that has a horizontal opening. This can be created by breaking a leaf and branch block that are horizontally adjacent to the stem. If the central block of the fruit tree still reads as a "branch" in the block info HUD, it is too young to attempt grafting there.

A cutting can be grafted by pressing Shift +   on an open cut, with a 60% chance of union. If successful, the cutting will become a grafted branch and begin growing a maximum of 6 leaf blocks of its respective species. While normal fruit trees' foliage extends a maximum of 2 blocks outwards from the stem, grafted branches' foliage can extend a maximum of 3 blocks outwards.

Grafted fruit tree branches retain their original species' temperature requirements and flowering behavior. For this reason, it is not recommended to graft fruit trees with drastically different temperature requirements. Even if the grafted branch survives, its flowering time might differ from the host tree and result in a mismatched seasonal appearance.

Temperature ranges

A fruit tree cutting's survival is only a matter of probability; its continued growth depends on whether it can withstand the changing temperatures throughout the year.

  • Fruit trees can only grow when the temperature is at least 12°C at 12:00.[3]
  • Very low temperatures can cause fruit trees to die from the cold, depending on the species. Because fruit trees' seasonal cycles occur on a yearly basis, it is recommended to check the area's lowest temperature before placing cuttings (in the northern hemisphere, the coldest day of the year is in late January at 04:00).

Temperature thresholds and times will vary randomly between individual trees. The tables below show average temperature thresholds, followed by the full range of randomization.

Fruit trees are divided into 2 categories: deciduous and evergreen.

Deciduous trees

Deciduous fruit trees will enter dormancy when the temperature drops below freezing. While in the dormant stage, they undergo vernalization, a real-life process in which fruit trees must be exposed to the cold and then experience a warm day to flower. Vernalization requires a cumulative total of 220 to 280 in-game hours during dormancy. The fruit tree must have at least grown into a young stem—cuttings that have not yet taken root or united with a host tree cannot vernalize. When the requirements are met, the block info HUD will show "Dormant (Vernalized)."

Fruit trees will exit dormancy when the temperature rises. If vernalized, they will enter the flowering stage.

For example, a red apple tree must be exposed to temperatures between -7°C and 1°C to enter dormancy, and then be exposed to temperatures lower than 1.5°C to 2.5°C for 220 to 280 in-game hours to vernalize. When the temperature rises to between 14°C and 24°C, it will exit dormancy and flower.

Species Temperature (°C)
Die below Vernalization Enter dormancy Exit dormancy
Red apple -28 (-38 to -28) 2 (1.5 to 2.5) -3 (-5 to -1) 19 (14 to 24)
Pink apple -24 (-34 to -24) 3 (2.5 to 3.5) -3 (-5 to -1) 19 (14 to 24)
Yellow apple -22 (-32 to -22) 4 (3.5 to 4.5) -3 (-5 to -1) 19 (14 to 24)
Cherry -20 (-30 to -20) 5 (4.5 to 5.5) -3 (-7 to 1) 19 (14 to 24)
Peach -12 (-22 to -12) 5 (4.5 to 5.5) -3 (-5 to -1) 19 (14 to 24)
Pear -28 (-41 to -28) 2 (1.5 to 2.5) -4.5 (-6.5 to -2.5) 19 (14 to 24)

Evergreen trees

Evergreen fruit trees do not undergo vernalization. Instead, they flower depending on the time of year. These species tend to be native to the tropics and are more susceptible to dying from the cold. Evergreen fruit trees cannot flower within the first 30 days after taking root or uniting with a host tree.[4] Afterwards, they can flower at any time within 13.5 days of the stated threshold below.[5]

Species Temperature (°C) Flowering time
Die below Year relative Date range
Orange 6 (1 to 6) 0.5 (0.5 to 0.6) 1 June to 2 July
Olive 7 (2 to 7) 0.3 (0.3 to 0.4) 5 March to 7 April
Mango 10 (6 to 10) 0.2 (0.2 to 0.3) 4 February to 5 March
Breadfruit 10 (6 to 10) 0.3 (0.3 to 0.4) 5 March to 7 April
Lychee 10 (6 to 10) 0.3 (0.3 to 0.4) 5 March to 7 April
Pomegranate 10 (6 to 10) 0.3 (0.3 to 0.4) 5 March to 7 April

Greenhouse

Fruit trees can be planted in a greenhouse and will receive a +5°C bonus to their detected temperature, affecting all thresholds accordingly (die-below, vernalization, and dormancy). Greenhouses can protect fruit trees that would otherwise die during winter. Additionally, greenhouses can allow fruit trees to reach the threshold for exiting dormancy and bear fruit earlier in the year.

A single greenhouse with the maximum floor dimensions of 14x14 can fit 5 fruit trees without overcrowding, with one in each corner and one in the center.

Growth stages

All fruit trees go through several stages of growth, reaching a maximum height of 6 blocks and a maximum width of 5 blocks. Growth is independent of the seasonal cycle, and mainly affects how many branch and leaf blocks there are to bear fruit. Fruit trees perform a growth calculation every 5 days, which can rarely vary from 4 to 6 days.[6] If the temperature is lower than 12°C at 12:00, or the tree is in the dormant stage, no change will occur until the next growth calculation.

  • On the first successful calculation (5 days passed), nothing happens.[7]
  • On the second successful calculation (10 days passed), a planted cutting has a 40% chance to become a young stem and grow 1 leaf block. A grafted cutting has a 60% chance of becoming a branch and growing 1 leaf block. If neither occurs, it will become a dead cutting.[8]
  • On successful calculations thereafter, the tree has a chance of growing a stem, branch, or leaf block, possibly multiple blocks at once.

Each growth stage adds blocks either vertically or horizontally. Fruit trees alternate between growing 1 block taller and then several blocks wider until the full "volume" for their current height is reached. Individual trees can also randomly skip growing a branch, resulting in an uneven final appearance and a stem with fewer than the maximum number of cuts.

Seasonal changes

Deciduous trees have 5 seasonal stages: dormant, empty, flowering, fruiting, and ripe. Evergreen trees have only 4 stages, as they do not experience dormancy.

Fruit trees tick 3 times per day (every 8 hours in a default 24-hour day)[9] to evaluate whether to change seasonal stages, including dying from the cold. For deciduous trees, the dormancy and flowering stages are triggered by temperature. For evergreen trees, the flowering stage is triggered by the time of year. Vernalization progress is evaluated under this tick rate; if the temperature measured at that time is within the vernalization range, 8 hours are added to the counter.[10]

Once fruit trees enter the flowering stage, the following stages last a fixed number of days, as shown in the block info HUD. This includes the ripe stage—if fruits are left unharvested by the player, the tree will automatically revert to being empty.

Species Stage length (days) Dormant Empty Flowering Fruiting Ripe
Red apple Flowering: 3-6
Fruiting: 18 (18-30)
Ripe: 12 (12-22)
         
Pink apple Flowering: 3-6
Fruiting: 21 (21-33)
Ripe: 9 (9-19)
         
Yellow apple Flowering: 3-6
Fruiting: 23 (23-35)
Ripe: 10 (10-20)
         
Peach Flowering: 3-6
Fruiting: 17 (17-27)
Ripe: 8 (8-16)
         
Pear Flowering: 3-6
Fruiting: 20 (20-32)
Ripe: 28 (28-38)
         
Cherry Flowering: 3-6
Fruiting: 11 (11-19)
Ripe: 9 (9-19)
         
Orange Flowering: 3-6
Fruiting: 60 (60-72)
Ripe: 12 (12-22)
         
Olive Flowering: 3-6
Fruiting: 40 (40-52)
Ripe: 24 (24-34)
         
Mango Flowering: 3-6
Fruiting: 50 (50-62)
Ripe: 10 (10-20)
         
Breadfruit Flowering: 3-6
Fruiting: 50 (50-62)
Ripe: 10 (10-20)
-        
Lychee Flowering: 3-6
Fruiting: 50 (50-62)
Ripe: 10 (10-20)
-        
Pomegranate Flowering: 3-6
Fruiting: 50 (50-62)
Ripe: 10 (10-20)
-        

Harvest

For cooking and other usages, see Fruit .

Fruit trees can be harvested by pressing   on blocks containing ripe fruit, leaving behind empty leaves. The harvest amount is somewhat random, as shown in the table below.

Icon Item Satiety Fresh time (days) Harvest per block
  Red apple 80 40 4 (4-8)
  Pink apple 80 40 6 (6-10)
  Yellow apple 80 40 5 (5-9)
  Peach 80 2 5 (5-9)
  Pear 80 40 5 (5-9)
  Cherry 40 2 8 (8-12)
  Orange 80 15 5 (5-9)
  Olive 100 21 4 (4-8)
  Mango 80 15 4 (4-8)
  Breadfruit 200 40 3 (3-7)
  Lychee 40 15 8 (8-12)
  Pomegranate 80 15 5 (5-9)

Notes

  • Growth times are given based on the default 9-day month and scale with changes to month length.
  • To obtain an approximation of an area's yearly temperatures for planning, the command /debug exptempplot can be run to export a graph to the main installation folder, such as %AppData%\Roaming\Vintagestory\temperatureplot.csv.
  • Deciduous trees gain additional cold resistance while dormant, and can survive temperatures 3°C below their stated die-below threshold.[11]

History

Version Description
1.16.0 pre.1 Fruit trees were introduced.
rc.1 Breadfruit, lychee, and pomegranate species were added.
rc.4 A new foliage tint for olive trees was added.
1.16.4 rc.2 The survival rate of planted cuttings was increased from 25% to 40%.
The growth speed of fruit trees was increased by 37%.
1.17.0 pre.1 The "processCrops" world configuration was added, making it possible to disable fruit trees growth.
1.17.4 The vernalization temperature for pink apple, yellow apple, cherry, and peach trees was increased.
1.18.4 The speed of fruit tree ticks was greatly increased. Cold resistance for dormant deciduous trees was added. Adjusted the fruiting time of peach trees to be earlier.
1.20.10 The survival rate of grafted cuttings was increased from 50% to 60%.

References

  1. ↑ Lines 14 to 25 of %AppData%\Roaming\Vintagestory\assets\survival\blocktypes\plant\fruittreebranch.json
  2. ↑ Lines 191 to 192 of "%AppData%\Roaming\Vintagestory\assets\survival\worldgen\blockpatches\other.json
  3. ↑ Line 116 of FruitTreeGrowingBranchBH.cs
  4. ↑ Line 30 of FruitTreeRootBH.cs
  5. ↑ Line 180 of FruitTreeRootBH.cs
  6. ↑ %AppData%\Roaming\Vintagestory\assets\survival\blocktypes\plant\fruittreebranch.json
  7. ↑ Line 182 of FruitTreeGrowingBranchBH.cs
  8. ↑ Lines 197 to 210 of FruitTreeGrowingBranchBH.cs
  9. ↑ Line 28 of FruitTreeRootBH.cs
  10. ↑ Line 324 of FruitTreeRootBH.cs
  11. ↑ Line 164 of FruitTreeRootBH.cs




Wiki Navigation
Vintage Story Guides[[::Category:Guides| ]] • Frequently Asked Questions • Soundtrack • Versions • Controls
Game systems Crafting • Knapping • Clay forming • Smithing • Cooking • Temperature • Hunger • Mining • Temporal stability • Mechanical power • Trading • Farming • Animal husbandry
World World generation • Biomes • Weather • Temporal storms
Items Tools • Weapons • Armor • Clothing • Bags • Materials • Food
Blocks Terrain • Plants • Decorative • Lighting • Functional • Ore
Entities Hostile entities • Animals • NPCs • Players
Miscellaneous List of client commands • List of server commands • Creative Starter Guide • Bot System • WorldEdit • Cinematic Camera • Adjustable FPS Video Recording • ServerBlockTicking • Adding Mods • Troubleshooting Mods