MCPcopy Index your code
hub / github.com/Xiao-MoMi/Custom-Fishing

github.com/Xiao-MoMi/Custom-Fishing @2.3.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.3.3 ↗ · + Follow
3,120 symbols 9,228 edges 392 files 1,081 documented · 35%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Custom-Fishing

CodeFactor Grade Gitbook Scc Count Badge Code Size bStats Servers bStats Players GitHub

CustomFishing is a Paper plugin designed to offer an extensive range of minigames and a robust condition and action system for fishing. Introducing a novel weight system concept, CustomFishing provides unparalleled customization opportunities while ensuring optimal performance. The plugin goes beyond standard features by allowing you to register custom mechanism, actions, conditions, games, and even parsers for configuration file formats. This flexibility makes it a powerful API for developers, enabling the creation of innovative fishing experiences, such as lava fishing or void fishing, tailored to your specific needs.

How to Build

Command Line

Install JDK 17 & 21. \ Start terminal and change directory to the project folder.\ Execute ".\gradlew build" and get the artifact under /target folder

IDE

Import the project and execute gradle build action. \ Get the artifact under /target folder

How to Contribute

Translations

Clone this project and create a new language file in the /common/src/main/resources/translations directory. \ Once your changes are ready, open a pull request for review. We appreciate your works!

Support the Developer

Polymart: https://polymart.org/resource/customfishing.2723/ \ BuiltByBit: https://builtbybit.com/resources/customfishing.36361/ \ Afdian: https://afdian.com/@xiaomomi/

CustomFishing API

Maven

<repositories>
  <repository>
    <id>jitpack</id>
    <url>https://jitpack.io/</url>
  </repository>
</repositories>
<dependencies>
  <dependency>
    <groupId>com.github.Xiao-MoMi</groupId>
    <artifactId>Custom-Fishing</artifactId>
    <version>{VERSION}</version>
    <scope>provided</scope>
  </dependency>
</dependencies>

Gradle (Groovy)

repositories {
    maven { url 'https://jitpack.io' }
}
dependencies {
    compileOnly 'com.github.Xiao-MoMi:Custom-Fishing:{VERSION}'
}

Gradle (Kotlin)

repositories {
    maven("https://jitpack.io/")
}
dependencies {
    compileOnly("com.github.Xiao-MoMi:Custom-Fishing:{VERSION}")
}

Fun Facts

I misspelled mechanism as mechanic. I should have realized this earlier XD

Extension points exported contracts — how you extend this code

BlockProvider (Interface)
Interface for providing custom block data and retrieving block IDs. [7 implementers]
api/src/main/java/net/momirealms/customfishing/api/integration/BlockProvider.java
PluginLogger (Interface)
Represents the logger instance being used by CustomFishing on the platform. Messages sent using the logger are sent [6 …
common/src/main/java/net/momirealms/customfishing/common/plugin/logging/PluginLogger.java
DurabilityItem (Interface)
(no doc) [8 implementers]
core/src/main/java/net/momirealms/customfishing/bukkit/item/damage/DurabilityItem.java
LevelerProvider (Interface)
The LevelerProvider interface defines methods to interact with external leveling systems, allowing the management of exp [14 …
api/src/main/java/net/momirealms/customfishing/api/integration/LevelerProvider.java
SchedulerTask (Interface)
Represents a scheduled task [4 implementers]
common/src/main/java/net/momirealms/customfishing/common/plugin/scheduler/SchedulerTask.java
ExternalProvider (Interface)
The ExternalProvider interface serves as a base interface for various external providers [32 implementers]
api/src/main/java/net/momirealms/customfishing/api/integration/ExternalProvider.java
TriConsumer (Interface)
(no doc) [9 implementers]
common/src/main/java/net/momirealms/customfishing/common/util/TriConsumer.java
ItemProvider (Interface)
Interface representing a provider for custom items. This interface allows for building items for players and retrieving [23 …
api/src/main/java/net/momirealms/customfishing/api/integration/ItemProvider.java

Core symbols most depended-on inside this repo

add
called by 253
api/src/main/java/net/momirealms/customfishing/api/mechanic/totem/ActiveTotemList.java
get
called by 248
common/src/main/java/net/momirealms/customfishing/common/helper/GsonHelper.java
arg
called by 210
api/src/main/java/net/momirealms/customfishing/api/mechanic/effect/Effect.java
getInstance
called by 165
api/src/main/java/net/momirealms/customfishing/api/BukkitCustomFishingPlugin.java
evaluate
called by 164
api/src/main/java/net/momirealms/customfishing/api/mechanic/misc/value/MathValue.java
getPluginLogger
called by 148
common/src/main/java/net/momirealms/customfishing/common/plugin/CustomFishingPlugin.java
getValue
called by 135
common/src/main/java/net/momirealms/customfishing/common/plugin/CustomFishingProperties.java
warn
called by 129
common/src/main/java/net/momirealms/customfishing/common/plugin/logging/PluginLogger.java

Shape

Method 2,669
Class 330
Interface 104
Enum 15
Function 2

Languages

Java100%
Kotlin1%

Modules by API surface

api/src/main/java/net/momirealms/customfishing/api/mechanic/config/ConfigManager.java67 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/requirement/BukkitRequirementManager.java57 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/game/BukkitGameManager.java43 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/item/BukkitItemManager.java39 symbols
api/src/main/java/net/momirealms/customfishing/api/mechanic/loot/Loot.java33 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/config/BukkitConfigManager.java32 symbols
api/src/main/java/net/momirealms/customfishing/api/mechanic/loot/LootImpl.java32 symbols
api/src/main/java/net/momirealms/customfishing/api/BukkitCustomFishingPlugin.java32 symbols
api/src/main/java/net/momirealms/customfishing/api/mechanic/competition/CompetitionConfigImpl.java30 symbols
api/src/main/java/net/momirealms/customfishing/api/mechanic/competition/CompetitionConfig.java30 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/fishing/BukkitFishingManager.java29 symbols
core/src/main/java/net/momirealms/customfishing/bukkit/action/BukkitActionManager.java29 symbols

For agents

$ claude mcp add Custom-Fishing \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page