Mods / Piles!
Category:
#Library
#QoL
Author: Pursec
Side: Both
Created: Jan 25th at 1:32 AM
Last modified: Feb 2nd at 5:43 AM
Downloads: 5022
Follow Unfollow 52
Author: Pursec
Side: Both
Created: Jan 25th at 1:32 AM
Last modified: Feb 2nd at 5:43 AM
Downloads: 5022
Follow Unfollow 52
Latest file for Various v1.19.x:
GoosePiles.zip
1-click install
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
Version | For Game version | Downloads | Release date | Changelog | Download | 1-click mod install* |
---|---|---|---|---|---|---|
v1.2.0 | 4389 | Feb 2nd at 5:43 AM | Show | GoosePiles.zip | Install now | |
v1.1.1 | 489 | Jan 26th at 7:41 PM | Show | GoosePiles.zip | Install now | |
v1.1.0 | 144 | Jan 25th at 11:41 AM | Show | GoosePiles.zip | Install now |
Please add the verion in the file name
could you please add a version name to your files so i can tell if my server is at newest version. It's really hard to keep it updated.
mods great though, thanks