Modding:Fish Pond data

From Stardew Valley Wiki
Revision as of 18:41, 2 September 2024 by Pathoschild (talk | contribs) (→‎Format: rewrite to use standardized table format, add missing info, update for Stardew Valley 1.6 (e.g. item IDs are no longer integers))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Index

This page explains how the game stores and parses Fish Pond data. This is an advanced guide for mod developers.

Raw data

Object data is stored in Content\Data\FishPondData.xnb, which can be unpacked for editing. Here's the raw data as of 1.5.1 for reference.

Data 
[
  {
    "RequiredTags": [
      "item_lionfish"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 857,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 7,
        "Chance": 0.2,
        "ItemID": 831,
        "MinQuantity": 2,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 4,
        "Chance": 0.1,
        "ItemID": 831,
        "MinQuantity": 2,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 1,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "829 3",
        "832 1"
      ],
      "6": [
        "834 1"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_blue_discus"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.1,
        "ItemID": 91,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 791,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 7,
        "Chance": 0.05,
        "ItemID": 91,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 4,
        "Chance": 0.02,
        "ItemID": 91,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 1,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "830 3"
      ],
      "6": [
        "830 10"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_stingray"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.1,
        "ItemID": 787,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.06,
        "ItemID": 852,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 7,
        "Chance": 0.1,
        "ItemID": 848,
        "MinQuantity": 2,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 4,
        "Chance": 0.05,
        "ItemID": 851,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 5,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 1,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "848 7"
      ],
      "6": [
        "852 1"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_squid"
    ],
    "SpawnTime": 3,
    "ProducedItems": [
      {
        "RequiredPopulation": 7,
        "Chance": 1.0,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.6,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.45,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.25,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "393 3",
        "397 1"
      ],
      "6": [
        "131 2"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_midnight_squid"
    ],
    "SpawnTime": 3,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.25,
        "ItemID": 814,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 7,
        "Chance": 0.8,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.6,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.45,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.2,
        "ItemID": 814,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "393 3",
        "397 2"
      ],
      "6": [
        "131 2"
      ],
      "9": [
        "560"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_carp"
    ],
    "SpawnTime": 1,
    "ProducedItems": [
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "153 2"
      ],
      "6": [
        "78 2"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_herring"
    ],
    "SpawnTime": 1,
    "ProducedItems": [
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "169 3"
      ],
      "6": [
        "393"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_sunfish"
    ],
    "SpawnTime": 1,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.08,
        "ItemID": 768,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.9,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "535 2",
        "309 2"
      ],
      "6": [
        "66",
        "770 3"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_blobfish"
    ],
    "SpawnTime": 4,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 797,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 688,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 6,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.9,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "393 3",
        "397 2",
        "84 2"
      ],
      "4": [
        "306",
        "433 5",
        "206"
      ],
      "6": [
        "348",
        "614",
        "223"
      ],
      "8": [
        "232",
        "394"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_lava_eel"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.033,
        "ItemID": 537,
        "MinQuantity": 10,
        "MaxQuantity": 10
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 537,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.04,
        "ItemID": 226,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.033,
        "ItemID": 812,
        "MinQuantity": 3,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.15,
        "ItemID": 812,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.1,
        "ItemID": 384,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 6,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "82 3"
      ],
      "4": [
        "98",
        "570",
        "72 2"
      ],
      "6": [
        "288 2"
      ],
      "8": [
        "337"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_woodskip"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 309,
        "MinQuantity": 1,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 310,
        "MinQuantity": 1,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 311,
        "MinQuantity": 1,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 8,
        "Chance": 0.08,
        "ItemID": 388,
        "MinQuantity": 5,
        "MaxQuantity": 10
      },
      {
        "RequiredPopulation": 6,
        "Chance": 0.1,
        "ItemID": 709,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.66,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.66,
        "ItemID": 388,
        "MinQuantity": 1,
        "MaxQuantity": 5
      }
    ],
    "PopulationGates": {
      "2": [
        "709 10"
      ],
      "4": [
        "404 2 3",
        "420 2 3"
      ],
      "6": [
        "725",
        "726"
      ],
      "8": [
        "70 2",
        "815"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_tiger_trout"
    ],
    "SpawnTime": 999999,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.4,
        "ItemID": 812,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": null
  },
  {
    "RequiredTags": [
      "fish_desert"
    ],
    "SpawnTime": 4,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.05,
        "ItemID": 802,
        "MinQuantity": 2,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 10,
        "Chance": 0.25,
        "ItemID": 812,
        "MinQuantity": 3,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 8,
        "Chance": 0.5,
        "ItemID": 812,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.75,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "88 3",
        "90 3"
      ],
      "6": [
        "125"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_void_salmon"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 305,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 8,
        "Chance": 0.08,
        "ItemID": 769,
        "MinQuantity": 5,
        "MaxQuantity": 10
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.83,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "769 5"
      ],
      "4": [
        "767 10"
      ],
      "6": [
        "305",
        "72"
      ],
      "8": [
        "386"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_slimejack"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 680,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.075,
        "ItemID": 766,
        "MinQuantity": 50,
        "MaxQuantity": 50
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.12,
        "ItemID": 766,
        "MinQuantity": 30,
        "MaxQuantity": 30
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.2,
        "ItemID": 766,
        "MinQuantity": 10,
        "MaxQuantity": 10
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.1,
        "ItemID": 153,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "766 20"
      ],
      "4": [
        "684 10"
      ],
      "6": [
        "774 5",
        "456"
      ],
      "8": [
        "557"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_stonefish"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 535,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.075,
        "ItemID": 390,
        "MinQuantity": 30,
        "MaxQuantity": 30
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.12,
        "ItemID": 535,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.01,
        "ItemID": 72,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.1,
        "ItemID": 378,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.5,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.25,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "378 10"
      ],
      "4": [
        "86 5"
      ],
      "6": [
        "382 10",
        "535 5"
      ],
      "8": [
        "334 4",
        "338 5"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_ice_pip"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 536,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.075,
        "ItemID": 84,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.12,
        "ItemID": 536,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.01,
        "ItemID": 72,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.1,
        "ItemID": 380,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.5,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.25,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "380 10"
      ],
      "4": [
        "84 5"
      ],
      "6": [
        "382 10",
        "536 5",
        "414"
      ],
      "8": [
        "335 4",
        "338 10"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_ghostfish"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 157,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 457,
        "MinQuantity": 3,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.12,
        "ItemID": 80,
        "MinQuantity": 3,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 338,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.08,
        "ItemID": 80,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "80 5"
      ],
      "4": [
        "78 5"
      ],
      "6": [
        "157 5"
      ],
      "8": [
        "96",
        "97",
        "338 2"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_sturgeon"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 10,
        "Chance": 0.25,
        "ItemID": 812,
        "MinQuantity": 2,
        "MaxQuantity": 2
      },
      {
        "RequiredPopulation": 10,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 6,
        "Chance": 0.6,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 3,
        "Chance": 0.4,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.2,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "2": [
        "72"
      ],
      "4": [
        "724 2",
        "342",
        "344"
      ],
      "6": [
        "749 3"
      ],
      "8": [
        "392"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_super_cucumber"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 386,
        "MinQuantity": 1,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 66,
        "MinQuantity": 1,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "338 3",
        "340",
        "393 3",
        "723"
      ],
      "6": [
        "422 2 3",
        "60 2",
        "749 2 3",
        "116"
      ],
      "8": [
        "342",
        "336 3",
        "344",
        "386",
        "72"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_octopus"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.066,
        "ItemID": 749,
        "MinQuantity": 3,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.01,
        "ItemID": 749,
        "MinQuantity": 10,
        "MaxQuantity": 10
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.1,
        "ItemID": 749,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "338 3",
        "340",
        "393 3",
        "723"
      ],
      "6": [
        "422 2 3",
        "60 2",
        "749 2 3",
        "116"
      ],
      "8": [
        "614"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_rainbow_trout"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 394,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.001,
        "ItemID": 74,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "338 3",
        "340",
        "393 3",
        "723"
      ],
      "6": [
        "422 2 3",
        "60 2",
        "749 2 3",
        "116"
      ],
      "8": [
        "342",
        "336 3",
        "344",
        "386",
        "72"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_semi_rare"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.003,
        "ItemID": 166,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "338 3",
        "335 3",
        "393 3",
        "420 3",
        "723",
        "66 3"
      ],
      "6": [
        "422 2 3",
        "569",
        "60 2",
        "749 2 3",
        "116"
      ],
      "8": [
        "342",
        "336 3",
        "306",
        "386",
        "72"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_catfish"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "334 3",
        "420 3",
        "66 2",
        "68 2"
      ],
      "6": [
        "422 2 3",
        "767 10",
        "86 2",
        "770 5"
      ],
      "8": [
        "342",
        "335 3",
        "306",
        "72"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_carnivorous"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.05,
        "ItemID": 684,
        "MinQuantity": 20,
        "MaxQuantity": 20
      },
      {
        "RequiredPopulation": 0,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "142 2",
        "132 2",
        "702 2"
      ],
      "6": [
        "136 2",
        "700 2"
      ],
      "8": [
        "734 2",
        "164 2",
        "156 2"
      ]
    }
  },
  {
    "RequiredTags": [
      "item_coral"
    ],
    "SpawnTime": 2,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.06,
        "ItemID": 543,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.06,
        "ItemID": 571,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": null
  },
  {
    "RequiredTags": [
      "item_sea_urchin"
    ],
    "SpawnTime": 4,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 812,
        "MinQuantity": 5,
        "MaxQuantity": 5
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.33,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.2,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.1,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": null
  },
  {
    "RequiredTags": [
      "fish_freshwater",
      "fish_crab_pot"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.075,
        "ItemID": 689,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 153,
        "MinQuantity": 1,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.05,
        "ItemID": 770,
        "MinQuantity": 2,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 168,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 169,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 170,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 171,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 172,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 168,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.2,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "330 5",
        "771 15"
      ],
      "6": [
        "709 5",
        "78",
        "684 10"
      ],
      "8": [
        "768 5",
        "774",
        "403"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_ocean",
      "fish_crab_pot"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 9,
        "Chance": 0.02,
        "ItemID": 392,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 9,
        "Chance": 0.075,
        "ItemID": 690,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.088,
        "ItemID": 152,
        "MinQuantity": 1,
        "MaxQuantity": 3
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.05,
        "ItemID": 397,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 5,
        "Chance": 0.075,
        "ItemID": 393,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 168,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 169,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 170,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 171,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 172,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.05,
        "ItemID": 168,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.2,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "330 5"
      ],
      "6": [
        "80 5",
        "684 10"
      ],
      "8": [
        "768 5",
        "774",
        "397"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_ocean"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 5,
        "Chance": 1.0,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.7,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "536",
        "152 1 2",
        "169 3"
      ],
      "6": [
        "393 2",
        "372 2"
      ],
      "8": [
        "397 2",
        "62 2",
        "719"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_river"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 0,
        "Chance": 0.9,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "309 3",
        "310 3",
        "311 3",
        "684 10"
      ],
      "6": [
        "384 3",
        "724",
        "770 5"
      ],
      "8": [
        "70 2",
        "340",
        "716",
        "722"
      ]
    }
  },
  {
    "RequiredTags": [
      "fish_lake"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 0,
        "Chance": 0.9,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "153 2 3",
        "330 2 3",
        "766 5",
        "684 10"
      ],
      "6": [
        "86 1 2",
        "404 2 3",
        "571"
      ],
      "8": [
        "574",
        "721",
        "774 5"
      ]
    }
  },
  {
    "RequiredTags": [
      "category_fish"
    ],
    "SpawnTime": -1,
    "ProducedItems": [
      {
        "RequiredPopulation": 5,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      },
      {
        "RequiredPopulation": 0,
        "Chance": 0.8,
        "ItemID": 812,
        "MinQuantity": 1,
        "MaxQuantity": 1
      }
    ],
    "PopulationGates": {
      "4": [
        "685"
      ],
      "6": [
        "774"
      ]
    }
  }
]

Format

The fish pond data in Data/FishPondData consists of a list of elements with these fields.

field purpose
Id The unique string ID for this entry.
RequiredTags The context tags for fish which should use this entry. A tag can be prefixed with ! to require that the fish not have that tag.

For example, ["fish_ocean", "fish_crab_pot", "!fish_carnivorous"] will match ocean fish that can be caught in crab pots and aren't carnivorous.

The first matching entry based on the Precedence field is used. If no other entries match, Data/FishPondData has a default entry with the required tags category_fish as a catch-all for any fish without their own entry.

ProducedItems The items that can be produced by the selected fish.

When a fish pond is ready to produce output (based on a hardcoded (15 + 8 * population of pond)% chance), it checks each entry in the list and takes the first one that matches. If no entry matches, no output is produced.

This consists of a list of models with these fields:

field purpose
ItemId The item query or item ID to produce, or the exact string (O)812 (roe) to produce roe for the current fish.
RequiredPopulation (Optional) The minimum number of fish in the pond required to produce this item. Default 0.
Chance (Optional) The probability that this item will be produced, as a value between 0 (never) and 1 (always). This is applied after the base chance of producing any item above. Default 1.
MinQuantity (Optional) The minimum stack size for the produced item. Default 1.
MaxQuantity (Optional) The maximum stack size for the produced item. Default 1.
PopulationGates The rules which decide when the fish pond population can grow (up to a hardcoded limit of 10 fish), and the quests that must be completed to do so. If omitted, the population can grow to 10 fish with no quests.

This consists of a number → item IDs lookup, where:

  • The key is the population number at which this gate applies.
  • The value is a list of possible quest items that may be requested by the fish at random to complete the gate. Each item is represented by 1–3 space-delimited values: the item ID, minimum quantity, and maximum quantity. If both min and max quantity are specified, a random number in that range is used. If only the min quantity is specified, that exact number is used. If neither are specified, the fish will request one.

For example, consider this population gate:

"6": [ "422 2 3", "60 2", "749 2 3", "116" ]

This means that before the population grows to 6, the fish will randomly ask for one of these:

Precedence (Optional) The order in which this entry should be checked, where 0 is the default value used by most entries. Entries with the same precedence are checked in the order listed. Default 0.
SpawnTime (Optional) The number of days needed to raise the population by one if there's enough room in the fish pond.

If omitted, the game chooses a value based on the base fish price: 1 day (0–30g), 2 days (31–80g), 3 days (81–120g), 4 days (121–250g), or 5 days (250g+).