Stardew Valley

File information

Last updated

Original upload

Created by

aedenthorn

Uploaded by

aedenthorn

Virus scan

Safe to use

Tags for this mod

About this mod

Lets you set custom loot dropped by trees. Also lets trees grow bigger every day beyond normal maximum growth..

Requirements
Permissions and credits
Changelogs
Donations
This mod aims to tweak all things tree.

It has two main functions:

  • it opens up the tree loot system for custom configuration
  • it allows trees to grow beyond their maximum size.


Loot

Tree loot is a bit complex, so there are several types of loot a tree might drop.

Each type can be set to any item you like, but they are affected specially as follows:

  • wood - amount affected by luck and skills
  • sap - dropped specially when a stump is destroyed by non-farmer means
  • hardwood - affected by skills and chance
  • items - not affected specially, dropped as specified in the json file.

For each tree type (1-8), you can specify lists of items for each of the above categories both for stumps and trees separately.

The mod is set up by default to mimic the vanilla behaviour for loot dropping, but you can tweak all the values by editing the assets/default.json file as you like.

Alternatively, and more properly, you can override any of the entries in default.json using Content Patcher. The dictionary path to edit is tree_tweaks_dictionary, and the syntax of the dictionary is as follows:

{
  "1": {
"stumpWood": [ { "id": "388" } ],
"stumpSap": [ { "id": "92" } ],
"stumpHardwood": [],
"stumpItems": [],
"wood": [
{
  "id": "388",
  "min": "12",
  "max": "12"
}
],
"sap": [
{
  "id": "92",
  "min": 5,
  "max": 5
}
],
"hardwood": [
{
  "id": "709",
  "min": 0,
  "max": 0
}
],
"items": [
{
  "id": "309",
  "min": 1,
  "max": 2
}
]
  },
}


Entry keys refer to tree type, as follows:

  • Oak
  • Maple
  • Pine
  • Winter Tree 1
  • Winter Tree 2
  • Palm Tree
  • Mushroom Tree
  • Mahogany Tree

Each entry can have up to ten sub keys as shown above. For each of the ten keys, the value is a list of item data entries.

Each item data entry can have the following fields:

  • id - the item to drop, can be index or name, should support JA and DGA names
  • min - minimum base amount to drop (default 1)
  • max - maximum base amount to drop (default 1)
  • minQuality - minimum quality item to drop (default 0)
  • maxQuality - maximum quality item to drop (default 0)
  • mult - final multiplier to multiply loot by (default 1)
  • chance - percent chance to drop (default 100)

An example Content Patcher content.json that makes oak trees output a lot of wood is as follows:

{
 "Format": "1.23.0",
 "Changes": [
 {
"Action": "EditData",
"Target": "tree_tweaks_dictionary",
"Entries": {
 "1": {
 "stumpWood": [
{
 "id": "388"
}
 ],
 "stumpSap": [
{
 "id": "92"
}
 ],
 "stumpHardwood": [],
 "stumpItems": [],
 "wood": [
{
 "id": "388",
 "min": "120",
 "max": "120"
}
 ],
 "sap": [
{
 "id": "92",
 "min": 5,
 "max": 5
}
 ],
 "hardwood": [
{
 "id": "709",
 "min": 100,
 "max": 100
}
 ],
 "items": [
{
 "id": "309",
 "min": 10,
 "max": 20
}
 ]
 }
}
 }
 ]
}


Tree Size

By default this mod increases a tree's size by 0.1% per day once it is fully grown.

By default, oversized trees also produce 0.1% more loot per day over fully grown when chopped down.

By default, maximum days oversized is 100.

You can edit the above variables using Generic Mod Config Menu, or editing the config.json file.


Technical

Requires SMAPI, uses Harmony.

Compatible with Mod Updater for automatic updates.

Code is at https://github.com/aedenthorn/StardewValleyMods.

If you want to complain or ask for help or help me test my mods, you can visit my Discord server.

A list of all my mods for Stardew Valley is available at https://www.nexusmods.com/stardewvalley/articles/895.