Mods / Resource Crates

Tags:
Technology Survival Loot automation user experience User interface Chutes Ancient Tools
Author:
not_william
Side:
Both
Created:
Apr 18th at 4:38 PM
Last modified:
Apr 18th at 5:23 PM
Downloads:
72
Follow Unfollow 8
Latest release (for Vintage Story 1.21.6, outdated):
notwilliamresourcecrates_0.0.2-alpha_1.21.6.zip  1-click install

Resource Crates (WIP / Experimental)

Fully JSON Configurable

Turn time into resources.

Resource Crates are passive generators that slowly produce items over time based on a configurable tier system. Set a target item, upgrade the crate, and let it work while you do something else.

⚠️ This mod is currently experimental. Expect rough edges.


Why?

Making a 10 minute grass-and-sticks errand run is fun for the first 50 times or so. Then one begins to ask: "I'm in the iron age, is there really no better way?"
This mod aims to solve that frustration in relation to various items.


Crafting

Craft a Resource Crate using:

  • 1 Knife

  • 4 Sticks (surrounding the knife)

  • 4 Dry Grass in the corners
    (see screenshot)


Basic Usage

1. Place the crate

Place it like any normal block.


2. Set a target item

  • Shift + Right Click the crate while holding a valid item (see JSON config)

  • That item becomes the generation target

✔ The crate will now begin generating that item over time


3. Upgrade the crate

  • Shift + Right Click with valid upgrade materials (see JSON config)

  • Each upgrade increases the crate’s tier

  • Upgrade material is consumed on use

Higher tiers:

  • Generate faster

  • Allow higher-tier items mathematically and greatly increase speed for lower-tier items mathematically


4. Open the crate

  • Right Click (no shift) to open the UI

The crate has a single output slot.

⚠️ You can insert items into the output slot manually right now, but you should not (and it won't do anything beneficial anyways).


Automation (Highly Recommended)

Because this mod is early-stage:

Best practice setup:

  • Attach a chute

  • Output into a normal crate

Prevents:

  • item loss

  • stalled generation

  • bugs from wiping item-generating progress overall


How Generation Works

Generation uses in-game time, not real time.

Default base rate:

BaseTierRateMinutes = 5

So:

  • Tier 0 items generate every ~5 in-game minutes

  • Other tiers scale from this


Tier Scaling (Asymmetric!)

This system is intentionally asymmetric:

LowerTierFactor = 5
HigherTierFactor = 50

Meaning:

  • Lower-tier items → 5× faster per tier

  • Higher-tier items → 50× slower per tier


Example (Crate Tier 3)

Item Tier Speed
Tier 2 5× faster
Tier 1 25× faster
Tier 4 50× slower
Tier 5 2500× slower

👉 You are strongly encouraged to match crate tier at least to item tier if not higher than item tier 


Default Upgrade Materials Path

  1. Copper Ingot

  2. Tin Bronze Ingot

  3. Iron Ingot

  4. Steel Ingot

  5. Crushed Ilmenite


Default Item Tiers (Non-exhaustive examples list)

Tier 0

  • Logs (game:log-*)

  • Clay (red/blue)

  • Dry grass

  • Sticks

  • Papyrus / cattails

  • Firewood

  • Flint

Tier 1

  • Planks (game:plank-*)

  • Rocks / stone

  • Lime

  • Peat bricks

  • Low soil

  • Calcined flint

Tier 2

  • Copper nuggets

  • Quartz variants

  • Bauxite rocks / stone
  • Resin

  • Charcoal

  • Fire clay

  • Medium soil

Tier 3

  • Tin / zinc / bismuth ores

  • Sulfur / saltpeter

  • Lignite

  • High soil

Tier 4

  • Iron bloom

  • Iron ores

  • Gold

  • Bituminous coal

  • Rot

Tier 5

  • Blister steel

  • Ilmenite / chromite

  • Special items (jonas*)


JSON Configuration (How to Customize)

This mod is fully configurable via JSON.

Where to find the config

After running the game once:

VintageStoryData/ModConfig/resourcecrates.json

What you can change

Generation speed

"BaseTierRateMinutes": 5.0

Lower = faster generation


Tier scaling

"LowerTierFactor": 5.0,
"HigherTierFactor": 50.0

Controls how strongly lower/higher tiers scale.


Upgrade items

"TierUpgradeItems": [
  "game:ingot-copper",
  "game:ingot-tinbronze",
  ...
]

Each entry:

  • Defines an upgrade item

  • Order = upgrade progression


Generated items

"TierItems": [
  ["game:log-*", "game:clay-blue"],
  ["game:plank-*"],
  ...
]

Each sub-list = tier

  • Items defined in multiple tiers at the same time (e.g. stone-* vs stone-bauxite) will have the highest defined tier as the item tier.
    • (tier 2 for bauxite stones, instead of tier 1 for all other stones)

Wildcard support

You can use:

"game:log-*"

This expands automatically into all matching items.

Examples:

  • game:log-*

  • game:plank-*

  • game:soil-low-*


⚠️ Important config notes

  • Wildcards only apply to TierItems

  • Upgrade items must be exact codes

  • Duplicate items across tiers will take the highest tier for an item

  • Config is validated at load — invalid entries may crash startup


Default Config

  • The current default config (generated in the ModConfig folder when first loading a world with the mod active) is below:{
    "BaseTierRateMinutes": 5.0,
    "LowerTierFactor": 5.0,
    "HigherTierFactor": 50.0,
    "TierUpgradeItems": [
      "game:ingot-copper",
      "game:ingot-tinbronze",
      "game:ingot-iron",
      "game:ingot-steel",
      "game:crushed-ilmenite"
    ],
    "TierItems": [
      [
        "game:log-*",
        "game:clay-blue",
        "game:clay-red",
        "game:drygrass",
        "game:stick",
        "game:papyrustops",
        "game:cattailtops",
        "game:firewood",
        "game:flint"
      ],
      [
        "game:plank-*",
        "game:rock-*",
        "game:stone-*",
        "game:lime",
        "game:peatbrick",
        "game:soil-low-*",
        "game:calcined-flint"
      ],
      [
        "game:nugget-nativecopper",
        "game:nugget-malachite",
        "game:rock-bauxite",
        "game:stone-bauxite",
        "game:clearquartz",
        "game:smokyquartz",
        "game:ore-quartz",
        "game:resin",
        "game:charcoal",
        "game:clay-fire",
        "game:soil-medium-*"
      ],
      [
        "game:nugget-cassiterite",
        "game:nugget-sphalerite",
        "game:nugget-bismuthinite",
        "game:ore-olivine",
        "game:nugget-nativesilver",
        "game:nugget-galena",
        "game:ore-sulfur",
        "game:saltpeter",
        "game:soil-high-*",
        "game:ore-lignite"
      ],
      [
        "game:ironbloom",
        "game:nugget-hematite",
        "game:nugget-limonite",
        "game:nugget-magnetite",
        "game:nugget-nativegold",
        "game:ore-bituminouscoal",
        "game:rot"
      ],
      [
        "game:ingot-blistersteel",
        "game:nugget-ilmenite",
        "game:nugget-chromite",
        "game:jonas*"
      ]
    ],
    "HasUpgradeItems": true,
    "HasTierItems": true,
    "MaxTier": 5
    }


⚠️ Known Issues

❌ Some items cannot be set as targets

Items with special right-click behavior:

  • gears

  • fat

  • certain tools

👉 These will NOT work currently due to how the game prioritizes shift-right-click behavior in certain cases


❌ Block items (logs, rock, etc.) only work conditionally

Logs only work if:

  • placement is blocked (you’re standing in the way)

Otherwise:

  • they will place instead


❌ Item loss

  • Breaking crate = destroys contents


❌ UI slot not protected

You can insert items manually — please don’t. It doesn't do anything special, just occupies the slot and may result in bugs.


❌ Chunk unload not handled

  • Crates only generate while the chunk is loaded


Stability Warning

Early version.

👉 Use automation
👉 Expect bugs
👉 Do not rely on critical items


💡 Tips

  • Match crate tier to item tier (or higher tier crate)

  • Use chutes and regular crates to prevent loss in the event of bugs

  • Avoid interactive items as targets

  • Upgrade before targeting rare resources


Planned Improvements

  • Fix held-item interaction conflicts

  • Safe inventory handling

  • Offline generation

  • UI improvements

  • More config options


 

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
0.0.2 notwilliamresourcecrates 57 Apr 18th at 5:23 PM notwilliamresourcecrates_0.0.2-alpha_1.21.6.zip 1-click install

- fix primitive survival overlapping recipe (now 4 grass, 4 stick, 1 knife)

0.0.1 notwilliamresourcecrates 15 Apr 18th at 4:47 PM notwilliamresourcecrates_0.0.1-alpha_1.21.6.zip 1-click install

- Make first alpha version


8 Comments (oldest first | newest first) (threaded | flat)

Alechlo, 2 days ago

Please can we get this updated to support 1.22 love this mod but now not working due to updates

 

rezPARAS, May 2nd at 4:04 PM

Just wanted to ask if this mod is going to be updated to 1.22 at somepoint?

not_william , Apr 20th at 3:23 AM

Also, something I've found as a quirk: Due to drygrass having a shift-right-click behavior, if the crate is on the ground, it will try to make a firepit rather than setting drygrass as the item. But drygrass can still be set as the item for a crate if it's at least one block off the ground.

not_william , Apr 20th at 3:21 AM

KiriRae, in the defaults it's a cassiterite(?) nugget rather than tin bits, but if you know the item codes for items, they can be configured in the JSON config. It will generate above it's tier, but for a higher-item-than-crate discrepancy, it will generate 50x slower than the default rate per tier difference.

 


RumpleRatskin, when you open a world with the mod enabled for the first time, it will put a json config file for the mod within the (VintageStoryDataFolder)/ModConfigs folder. You can edit that default JSON config however you wish to get what you're after. 
(So for example, if you want to use specific Jonas parts as upgrade materials, than you can change the TierUpgradeItems like so:

from 

"TierUpgradeItems": [
  "game:ingot-copper",
  "game:ingot-tinbronze",
  "game:ingot-iron",
  "game:ingot-steel",
  "game:crushed-ilmenite"
],

to

"TierUpgradeItems": [
  "game:ingot-copper",
  "game:jonaspart-name-1",
  "game:jonaspart-name-2",
  etc. if more tiers desired. (and with actual jonas part item names)
],

A similar thing could be done to make them targeted generation items as well by modifying the TierItems list of lists.

Basically, you should be able to fairly flexibly change the configuration values in that configuration JSON file to tweak how the mod works.

 


DejFidOFF, I'm keeping it in the back of my mind, but not sure when I'll be able to work on this again.

RumpleRatskin, Apr 19th at 8:26 AM

Great idea, how about you use Jonas materials for anything above like a copper tier generator

KiriRae, Apr 18th at 9:43 PM

Will crates only reproduce their own tier of items? I am trying to set a tin bit as target on a tier 1 crate, but it won't accept it. Or does it actually need to be cassarite nuggets as opposed to the tin bit?

DejFidOFF, Apr 18th at 6:27 PM

Hello o/ Will be great if there will be some config so server owners can turn the recipe off. So no one can craft that (or can make custom recipe) and only admin from creative mode can place that.

not_william , Apr 18th at 5:25 PM

First release overlapped recipe with primitive survival. Fixed by changing crate recipe.