Loot

Loot configuration is closely integrated with item/block/entity configurations. This integration is vital to ensure that items/blocks/entities are properly registered as loot and can be invoked within the condition system.

Unique Key Names for Loot:

Every piece of loot should have a unique key name. No two loot items can have the same key name, preventing any potential conflicts.

Integration with Other Configurations:

For an item/block/entity to be registered as loot, it must be combined with its respective configuration. This ensures that the system recognizes the loot and its associated properties.

Condition System Invocation:

Once registered, the loot can be called upon within the condition system. This allows for more complex gameplay mechanics, such as spawning specific loot under certain conditions or scenarios.

Nick:

Determines what the loot shows like in fish finder and the return value of {nick} Every loot should have a nick, but most of the cases you don't have to manually set it. If a loot is item type, it would use "display.name" as nick if nick is not set, otherwise the nick would the loot ID.

  • Example:

    nick: "<gold>This is a nick</gold>"

Visibility in Fish Finder:

Determines if the loot is visible or detectable when using a fish finder tool.

  • Example:

    show-in-fishfinder: true

Disable Statistics:

If enabled, statistics related to this specific loot won't be tracked or displayed.

  • Example:

    disable-stat: true

Disable Global Event:

If enabled, those events configurated in config.yml would no longer take effects on this loot

  • Example:

    disable-global-event: true

Disable Mini-Games:

Indicates if mini-games associated with this loot are disabled. Some items might be too worthless, making it preferable to skip the mini-game phase.

  • Example:

    disable-game: true

Immediate Mini-Game Start:

If set to true, upon encountering the loot, the related mini-game will commence immediately without any delay.

  • Example:

    instant-game: true

Competition Score:

Represents the score or value of the loot when used within competitions.

  • Example:

    score: 10.5

Loot Group:

The group of the loot, making it easier to modify the weight. If you don't know what weight is, read the article below

pageWeight system
  • Example:

    group: golden_star
    
    group:
      - golden_star
      - ocean

Statistics key:

If you want different loots to share the same statistics you can add statistics key to the loot. For instance you have "tuna_fish", "tuna_fish_silver_star" and "tuna_fish_golden_star", if you want %fishingstats_size-record_tuna% to return the max size of three, you can add this section to the three loots as follows:

statistics:
  # for amount of fish caught
  amount: tuna
  # for the best size record
  size: tuna

Event Triggers & Actions:

Details the specific events for actions to activate.

pageEvent
  • Example:

    events:
      success:
        action_mending:
          type: mending
          value: 9
          chance: 1.0

Effects

You can set some basic effects for certain loots. Following are the available effects for loot:

wait-time
wait-time-multiplier
difficulty
difficulty
game-time
game-time-multiplier

They are not the same as the effects of the fishing rod and are limited to the above 6 types. But the meaning of the effect type is the same (You can check them on the following page). You can understand it as the basic property of a loot. With this option, it's easier to make some loots harder to fish, or need more time to wait for the bite.

pageEffect

Example:

effects:
  difficulty: '{level} * 2'
  game-time: 15
  wait-time-multiplier: 1.5

Understand loot-condition.yml

loot-condition.yml decides which loot player would get in next bite.

# global
global-group:
  list: []
  conditions: {}
  sub-groups:
    loots_in_water:
      conditions:
        lava-fishing: false
        world:
          - world
        '!rod':
          - magical_rod
      list:
        - rubbish:+15
        - seagrass:+5
      sub-groups:
        # parent ocean group
        ocean_fish:
          conditions:
            biome:
              - minecraft:ocean
              - minecraft:deep_ocean
              - minecraft:cold_ocean
              - minecraft:deep_cold_ocean
              - minecraft:frozen_ocean
              - minecraft:deep_frozen_ocean
              - minecraft:lukewarm_ocean
              - minecraft:deep_lukewarm_ocean
              - minecraft:warm_ocean
          list:
            # decrease the chance of getting rubbish when fishing in ocean
            - rubbish:-10
            - apple_crate:+2
            - carrot_crate:+2
            - kelp:+25
            - tuna_fish:+15
            - tuna_fish_silver_star:+3
            - tuna_fish_golden_star:+1
            - pike_fish:+15
            - pike_fish_silver_star:+3
            - pike_fish_golden_star:+1
            - sardine_fish:+15
            - sardine_fish_silver_star:+3
            - sardine_fish_golden_star:+1
            - octopus:+10
            - octopus_silver_star:+2
            - octopus_golden_star:+1
            - sunfish:+15
            - sunfish_silver_star:+3
            - sunfish_golden_star:+1
            - red_snapper_fish:+20
            - red_snapper_fish_silver_star:+5
            - red_snapper_fish_golden_star:+2
          sub-groups:
            # sub warm ocean group
            warm_ocean_fish:
              conditions:
                biome:
                  - minecraft:lukewarm_ocean
                  - minecraft:deep_lukewarm_ocean
                  - minecraft:warm_ocean
              list:
                - blue_jellyfish:+15
                - blue_jellyfish_silver_star:+3
                - blue_jellyfish_golden_star:+1
                - pink_jellyfish:+15
                - pink_jellyfish_silver_star:+3
                - pink_jellyfish_golden_star:+1
        river_fish:
          conditions:
            '!biome':
              - minecraft:ocean
              - minecraft:deep_ocean
              - minecraft:cold_ocean
              - minecraft:deep_cold_ocean
              - minecraft:frozen_ocean
              - minecraft:deep_frozen_ocean
              - minecraft:lukewarm_ocean
              - minecraft:deep_lukewarm_ocean
              - minecraft:warm_ocean
          list:
            - vanilla:+30
            - rainbow_fish:+5
            - stick:+15
            - gold_fish:+15
            - gold_fish_silver_star:+3
            - gold_fish_golden_star:+1
            - perch_fish:+15
            - perch_fish_silver_star:+3
            - perch_fish_golden_star:+1
            - mullet_fish:+15
            - mullet_fish_silver_star:+3
            - mullet_fish_golden_star:+1
            - carp_fish:+25
            - carp_fish_silver_star:+5
            - carp_fish_golden_star:+2
            - cat_fish:+15
            - cat_fish_silver_star:+3
            - cat_fish_golden_star:+1
          sub-groups:
            swamp_fish:
              list:
                - 'woodskip_fish:+30'
                - 'woodskip_fish_silver_star:+5'
                - 'woodskip_fish_golden_star:+2'
              conditions:
                biome:
                  - minecraft:swamp
                  - minecraft:mangrove_swamp
            cave_fish:
              conditions:
                ypos:
                  - -64~0
              list:
                - 'sturgeon_fish:+9'
                - 'sturgeon_fish_silver_star:+3'
                - 'sturgeon_fish_golden_star:+1'
        # Skeletons might appear if player holds the skeleton_rod and fish at night
        curse_rod:
          conditions:
            rod:
              - bone_rod
            time:
              - 14000~22000
          list:
            - 'skeleton:+30'
    loots_in_lava:
      conditions:
        lava-fishing: true
      list: []
      sub-groups:
        overworld_loots:
          conditions:
            world:
              - world
          list:
            - 'cobblestone:+50'
            - 'stone:+30'
            - 'obsidian:+3'
            - 'diamond:+1'
            - 'flint:+6'
        nether_loots:
          conditions:
            world:
              - world_nether
          list:
            - 'netherrack:+20'
            - 'nether_brick:+12'
            - 'obsidian:+5'
            - 'gold_ingot:+3'
            - 'gold_nugget:+8'
            - 'magma_cube:+3'
            - 'salmon_void_fish:+15'
            - 'salmon_void_fish_silver_star:+3'
            - 'salmon_void_fish_golden_star:+1'
          sub-groups:
            curse_rod:
              conditions:
                rod:
                  - bone_rod
                time:
                  - 14000~22000
              list:
                - 'wither_skeleton:+30'


global-group-2:  <- You can create other groups, they will work the same as the global one
  list: []
  conditions: {}
  sub-groups: ...

Global Group:

  • At the top level, there is a global-group that contains three main components: list, conditions, and sub-groups.

  • list is an array that decides the weight of the loot.

  • conditions is an object which could hold global conditions for all sub-groups.

  • sub-groups contains further categorized groups of configurations such as loots_in_water and loots_in_lava.

Sub-Groups:

  • Within sub-groups, there are differentiated environments (loots_in_water and loots_in_lava) each having its own set of conditions and lists of loot items.

  • Each environment has further sub-groups for more specific scenarios (e.g., ocean_fish, river_fish under loots_in_water), with each having its own conditions and loot lists.

Conditions:

  • Conditions dictate when certain loots are available. Conditions can be based on various factors like the biome, world, time, or the type of fishing rod used.

pageCondition

List of Loots:

  • The loot list specifies what items can be obtained in each scenario, with each loot having a chance modifier associated with it (e.g., rubbish:+15 increases the chance of getting rubbish by 15).

pageWeight system

To configure this file:

  • You would need to define or modify the existing groups, sub-groups, conditions, and loot lists as per the desired gameplay alterations.

  • Adding new items, conditions or sub-groups following the given syntax and hierarchy will help in creating a tailored gameplay experience.

Last updated