Logo
MINECRAFTBIBLE
Items
Items

All game items

Blocks
Blocks

Building blocks

Mobs
Mobs

Creatures & monsters

Biomes
Biomes

World biomes

Structures
Structures

Generated structures

Recipes
Recipes

Crafting guides

Advancements
Advancements

Achievements

Loot Tables
Loot Tables

Drop rates

Tags
Tags

Item groupings

All Versions
View all data →
Capes
Cape ArchiveNEW

Browse rare Minecon capes, OptiFine capes, and custom capes from players worldwide

Browse

Player Database
Player DatabasePopular

Search any player

Skin Browser
Skin Browser

Browse & download skins

Cape Gallery
Cape GalleryNEW

Minecon & OptiFine capes

Seed Vault
Seed Vault

Curated seeds

Learn

Guides
GuidesNew

Tutorials & tips

Blog
Blog

News & updates

Community

Community Hub
Community HubHub

Posts, discussions & more

All Versions
View community →
Seed Analyzer
Seed Analyzer

World seed analysis

Loot Explorer
Loot Explorer

Drop rates

Crafting Calculator
Crafting Calculator

Material planning

Enchant Calculator
Enchant Calculator

Probability math

Redstone Lab
Redstone Lab

Signal timing

Trading Profit
Trading Profit

Villager ROI

All Versions
View all tools →
Mods
Mods

Browse all mods

Plugins
Plugins

Server plugins

Resource Packs
Resource Packs

Textures & sounds

Shaders
Shaders

Visual enhancements

Datapacks
Datapacks

World logic

Scanner
Mod Intelligence

Scan & analyze any mod

All Versions
View all mods →
Loading...
IntroductionIntroductionVersion HistoryVersion HistoryGuidesGuidesBlog & NewsBlog & News
ItemsItemsBlocksBlocksMobsMobsRecipesRecipesBiomesBiomesStructuresStructuresAdvancementsAdvancementsLoot TablesLoot TablesTagsTags
ModsModsPluginsPluginsResource PacksResource PacksShadersShadersDatapacksDatapacks

MinecraftBible

The Ultimate Wiki

Logo
MINECRAFTBIBLE

The ultimate Minecraft reference. Every item, block, mob, and recipe documented with precision.

Community

  • Skin Browser
  • Cape Gallery
  • Seed Vault
  • Blog
  • Guides

Database

  • Items
  • Blocks
  • Mobs
  • Recipes
  • Biomes
  • Structures

Tools

  • Seed Analyzer
  • Mod Intelligence
  • Crafting Calculator
  • Enchant Calculator

Mods & Packs

  • Mods
  • Plugins
  • Resource Packs
  • Shaders
  • Datapacks

Site & Legal

  • About
  • Authors
  • Editorial Policy
  • Corrections
  • Contact
  • Privacy Policy
  • Terms of Service
  • DMCA
  • Sitemap

© 2026 MinecraftBible. Not affiliated with Mojang or Microsoft.

PrivacyTermsContact
Pufferfish's Unofficial Additions
ModMIT

Pufferfish's Unofficial Additions

Additional experience sources and rewards

163.0K
Downloads
24
Followers
5 months ago
Updated
📦
26
Versions
game-mechanicsforgeneoforge
Download Latestv2.2.8View on Modrinth

📖About Pufferfish's Unofficial Additions

General

Addon to Pufferfish's Skills

Contains support for

  • Iron's Spells 'n Spellbooks

Recommend checking the documentation:

  • https://puffish.net/skillsmod/docs/creators/configuration/calculations/prototypes
  • https://puffish.net/skillsmod/docs/creators/configuration/calculations/operations/operation

Attributes have been moved
to Additional Attributes

Experience Source

Harvesting Crops

Hooks into the method which gets the items from the loot table

Operations:

  • player: The player harvesting the crops (prototype
    is Player)
  • block: The block being harvested (prototype
    is Block State)
  • tool: The tool being used (prototype
    is Item Stack)
  • dropped_seeds: Amount of dropped seeds based on #forge:seeds (prototype is number)
  • dropped_crops: Amount of dropped crops based on #forge:crops (prototype is number)

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

Gets called per fished item

Operations:

  • player: The player who is fishing (prototype
    is Player)
  • tool: The tool being used (prototype
    is Item Stack)
  • fished: The item being fished (prototype
    is Item Stack)

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

Effect

Apply effects (infinite duration):

  • Before removing the reward from the definition you'll have to reset the skills (or manually remove the effects yourself)
{
  "type": "pufferfish_unofficial_additions:effect",
  "data": {
    "effect": "minecraft:regeneration",
    "amplifier": 0,
    "type": "GRANT"
  }
}

Grant immunity up to a certain amplifier:

{
  "type": "pufferfish_unofficial_additions:effect",
  "data": {
    "effect": "minecraft:wither",
    "amplifier": 1,
    "type": "IMMUNE"
  }
}

Modify duration and / or amplifier of incoming effects:

  • If the duration reaches 0 due to modifications the effect will not be applied
    • Valid operations are +, -, x and /
    • This element is optional
  • If the amplifier goes below 0 due to modifications the effect will not be applied
{
  "type": "pufferfish_unofficial_additions:effect",
  "data": {
    "effect": "minecraft:slowness",
    "amplifier": -2,
    "duration_modification": "/2.5",
    "type": "MODIFY"
  }
}

Walkable Powder Snow

Allows walking on powder snow

{
  "type": "puffish_skills:tag",
  "data": {
    "tag": "walk_on_powder_snow"
  }
}

Iron's Spells 'n Spellbooks

Experience Sources

Added an experience source for casting spells

Note: The experience source will trigger for each spell tick, meaning for continuous spells it can happen multiple
times (see the expected_ticks parameter)

Operations:

  • player: The caster (prototype
    is Player)
  • main_hand: Item in main hand (prototype
    is Item Stack)
  • spellbook: The currently equipped spell book (prototype
    is Item Stack)
  • school: The school type of the spell (prototype is custom)
    • The value is defined with school
  • spell: The spell (prototype is custom)
    • The value is defined with spell
    • Contains the following sub-operations:
      • min_level: The minimum level of this type of spell (prototype is number)
      • max_level: The maximum level of this type of spell (prototype is number)
      • cast_type: The way the spell is being cast (INSTANT, LONG, CONTINUOUS) (prototype is custom)
        • The value is defined with value
  • level: The level of the spell (incl. modifications through items etc.) (prototype is number)
  • min_level_rarity: The minimum level of the spell based on the rarity (prototype is number)
  • rarity_name: Name of the rarity (COMMON, RARE, EPIC, LEGENDARY) (prototype is custom)
    • The value is defined with value
  • rarity: The ordinal of the rarity (0 is COMMON and 4 is LEGENDARY) (prototype is number)
  • mana_cost: Mana cost for the spell at that level (if the cast consumes mana) (prototype is number)
  • mana_cost_per_second: Only set for continuous spells (and if the cast costs mana) (prototype is number)
  • cast_duration: Duration of continuous spells (in seconds) (prototype is number)
  • cast_charge_time: Charge-up time of spells (if they have one) (in seconds) (prototype is number)
  • cooldown: Cooldown after the spell was cast (in seconds) (prototype is number)
  • expected_ticks: Will be 1 for instant and long type spells - for continuous it's the amount of spell ticks if the
    whole duration is used (prototype is number)

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"
      }
    ]
  }
}

👥 Team & Contributors

Cadentem
CadentemOwner

⚙️ Compatibility

Environment
🖥️ Server-side
Loaders
forgeneoforge
Minecraft Versions
1.211.21.1

🔗 Links

Modrinth Page