
Vintage Story Mod DB · Vintage Story mod
Piles!
This a modding library/tool for adding custom piles in the style of coal and charcoal from Vanilla entirely through external content mods. By default piles for Rot, Salt, and All types of vanilla Grain and included. These piles have now been extracted out to
Quick answer
Which Piles! release should I use?
Piles! 1.2.0 targets 1.19.0, 1.19.1, 1.19.2. It must be installed on the client. Installation on the dedicated server is optional. No extra mods listed for this file.
Where it goes
Is Piles! required on the client, server, or both?
It must be installed on the client. Installation on the dedicated server is optional.
This release supports both sides, but the source does not require it on the server.
What else does Piles! 1.2.0 need?
1.2.0. Change the file and its required mods may change too.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add Piles! without breaking your instance.
Built for Piles! 1.2.0. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.2.0. It targets 1.19.0, 1.19.1, 1.19.2; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
It must be installed on the client. Installation on the dedicated server is optional.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.2.0. It opens that exact file at the source.
About this project
What does Piles! add?
This a modding library/tool for adding custom piles in the style of coal and charcoal from Vanilla entirely through external content mods.
By default piles for Rot, Salt, and All types of vanilla Grain and included.
These piles have now been extracted out to their own mod.
Check out: Granary
This library adds the following relevant classes: BlockPile, BlockEntityPile, & BehaviorPileItem
To add your own pile with this mod installed it is as follows:
- Create a new content mod with a blocktype file for each of the piles you wish to create (if they are variant piles such as grain, you only need 1 with variant groups)
- Each of these blocktypes assign them the class BlockPile and entityclass BlockEntityPile
- (Optional) add an attributes section to the block type to specify parameters of that pile. Any not-specified attribute will be given a default value. If the attributes array is not presnt at all, all values will be default.
The attributes are as follows:"attributes":
{
"addItemLabel" : "String" or "LangKey",
"removeItemLabel": "String" or "LangKey",
"defaultAddQuantity": Integer (default: 2),
"defaultTakeQuantity": Integer (default: 2),
"bulkTakeQuantity": Integer (default: 4),
"maxStackSize": Integer (default: 16),
"interactSoundPath" : "domain:pathToSound",
"allowUnstablePlacement": true/false (default: false)
} - Assign a texture to the blockPile you created just as you would a vanilla block.
- The piles support assignment by face if desired (such as defining a different texture for "up"/the top face and a seperate texture for the sides. If wanting the same texture for all sides use the vanilla "all" key for the textures field
- Create a patch adding/appending BehaviorPileItem to the item you wish to pileable, with a properties array pointing to the corresponding code of the newly created blocktype.
- If using variants such as for example "grain" they may be defined as "grain-flax" or generically "grain-{type}", in which case you can specify the code of the pile blocktype created as "grainPile-{type}" and make sure that the blocktype for "grainPile" as the corresponding variantgroups array to have different piles per type of grain with only one blocktype file.
- For specifying those variant textures simply point the texture-path to the location and use the variant group {type} as you would with normal variant texturing
The source code and example implementation from the default piles can be found at: https://github.com/Pursec/PilesPilesPiles
Example of a patch file for grain supporting variantgroups:
```
[
{
"file": "game:itemtypes/food/grain",
"op": "add",
"path": "/behaviors",
"value": [
{
"name": "BehaviorPileItem",
"properties": { "pileBlockCode": "gespiles:grainPile-{type}"}
}
]
}
]
```
Example of grainPile.json
```
{
"code": "grainPile",
"class": "BlockPile",
"entityClass": "BlockEntityPile",
"variantgroups": [
{
"code": "type",
"states": [ "spelt", "rice", "flax", "rye", "amaranth", "sunflower" ]
}
],
"creativeinventory": {
"general": [ "" ],
"decorative": [ "" ]
},
"behaviors": [
{ "name": "UnstableFalling" }
],
"attributes": {
"addItemLabel": "Add Grain",
"removeItemLabel": "Remove Grain",
"allowUnstablePlacement": true
},
"blockmaterial": "Soil",
"lightAbsorption": 0,
"sidesolid": { "all": false },
"sideopaque": { "all": false },
"textures": {
"all": { "base": "game:block/food/grain/{type}" }
},
"replaceable": 100,
"resistance": 2,
"collisionbox": {
"x1": 0,
"y1": 0,
"x2": 1,
"y2": 0,
"z2": 1
},
"selectionbox": {
"x1": 0,
"y1": 0,
"x2": 1,
"y2": 0,
"z2": 1
},
"drops": [],
"materialDensity": 600
}
```
If you wish to support me do so at:
Ko-fi
Patreon
Project description from Vintage Story Mod DB.
Pick your setup
Piles! releases for each Vintage Story version.
Choose the version and loader you play, then open the matching release.
1.19.2
1 loader build1.19.1
1 loader build1.19.0
1 loader buildCheck the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Piles! versions and loaders
1.2.0
GoosePiles.zip
2 Feb 2024
1.1.1
GoosePiles.zip
26 Jan 2024
1.1.0
GoosePiles.zip
25 Jan 2024
Looking for an older file? The official Vintage Story Mod DB project page is in Resources.