Pufferfish's Unofficial Additions
This mod is an extension for Pufferfish's Skills, adding new experience sources and reward options. It also includes support for the Iron's Spells 'n Spellbooks mod.
Experience Sources
Harvesting Crops
The system integrates with the loot table mechanism when harvesting agricultural crops. Available operations include:
player- the player harvesting cropsblock- the block being harvestedtool- the tool being useddropped_seeds- number of dropped seedsdropped_crops- amount of harvested crops
Configuration example:
{
"type": "pufferfish_unofficial_additions:harvest_crops",
"data": {
"variables": {
"crops": {
"operations": [
{
"type": "block"
},
{
"type": "puffish_skills:test",
"data": {
"block": "#minecraft:crops"
}
}
]
},
"dropped_crops": {
"operations": [
{
"type": "dropped_crops"
}
]
},
"dropped_seeds": {
"operations": [
{
"type": "dropped_seeds"
}
]
}
},
"experience": [
{
"condition": "crops",
"expression": "dropped_crops + (dropped_seeds 0.2)"
}
]
}
}
Fishing
Experience is awarded for each caught item. Available operations:
player- the player fishingtool- the fishing rod being usedfished- the caught item
Fishing configuration example:
{
"type": "pufferfish_unofficial_additions:fishing",
"data": {
"variables": {
"fishes": {
"operations": [
{
"type": "fished"
},
{
"type": "puffish_skills:test",
"data": {
"item": "#minecraft:fishes"
}
}
]
},
"fished_amount": {
"operations": [
{
"type": "fished"
},
{
"type": "count"
}
]
}
},
"experience": [
{
"condition": "fishes",
"expression": "fished_amount 4"
},
{
"condition": "!fishes",
"expression": "fished_amount * 2"
}
]
}
}
Rewards
Effects
The mod allows applying effects with infinite duration. Important: before removing a reward from the definition, you must reset skills or manually remove the effects.
Example of granting regeneration effect:
{
"type": "pufferfish_unofficial_additions:effect",
"data": {
"effect": "minecraft:regeneration",
"amplifier": 0,
"type": "GRANT"
}
}
Effect immunity:
{
"type": "pufferfish_unofficial_additions:effect",
"data": {
"effect": "minecraft:wither",
"amplifier": 1,
"type": "IMMUNE"
}
}
Effect modification:
{
"type": "pufferfish_unofficial_additions:effect",
"data": {
"effect": "minecraft:slowness",
"amplifier": -2,
"duration_modification": "/2.5",
"type": "MODIFY"
}
}
Walking on Powder Snow
Reward allows walking on powder snow without sinking:
{
"type": "puffish_skills:tag",
"data": {
"tag": "walk_on_powder_snow"
}
}
Iron's Spells 'n Spellbooks Integration
Spell Casting Experience Sources
Added experience source for casting spells. Important: for continuous spells, experience can be awarded multiple times (see expected_ticks parameter).
Available operations include:
player- the castermain_hand- item in main handspellbook- current spell bookschool- magic schoolspell- specific spelllevel- spell levelmana_cost- mana costcooldown- cooldown time- and other parameters
Spell configuration example:
{
"type": "pufferfish_unofficial_additions:spell_casting",
"data": {
"variables": {
"level": {
"operations": [
{
"type": "level"
}
]
},
"rarity": {
"operations": [
{
"type": "rarity_name"
},
{
"type": "puffish_skills:test",
"data": {
"value": "LEGENDARY"
}
},
{
"type": "switch",
"data": {
"true": 5,
"false": 1
}
}
]
},
"mana_cost": {
"operations": [
{
"type": "mana_cost"
}
]
},
"mana_cost_per_second": {
"operations": [
{
"type": "mana_cost_per_second"
}
]
},
"spellbook": {
"operations": [
{
"type": "spellbook"
},
{
"type": "puffish_skills:test",
"data": {
"item": "irons_spellbooks:iron_spell_book"
}
}
]
},
"fire_school": {
"operations": [
{
"type": "school"
},
{
"type": "puffish_skills:test",
"data": {
"school": "irons_spellbooks:fire"
}
}
]
},
"blaze_storm": {
"operations": [
{
"type": "spell"
},
{
"type": "puffish_skills:test",
"data": {
"spell": "irons_spellbooks:blaze_storm"
}
}
]
}
},
"experience": [
{
"condition": "spellbook & !blaze_storm & fire_school",
"expression": "level + (mana_cost / 5) + rarity"
},
{
"condition": "blaze_storm",
"expression": "(level + (mana_cost_per_second / 10)) / 2"
}
]
}
}