Version: 1.1
I'm rating this 3 stars, as its a good start, but has a LOT of work to do.
I'll go over some issues I have found:
1) When catching a fish, the event is cancelled and the player is given a fish. Big flaw here is the player never reels in the fish. They're just given the fish. Nothing about this action speaks "ADVANCED fishing mechanics" to me.
Rather than cancelling the event, you can just change what the item is that is caught, this would give the player a more natural/vanilla fishing feel.
2) When the player gets a fish, the lore contains the price.... but there is nothing in this script to give player money for said fish. I do see that is in the "TODO", but for something label as "ADVANCED fishing mechanics", I personally feel this should be handled already.
3) When catching a fish, the lore says "Time: always", without reading the code, I would have no clue what that means, based on the code I see that is a time of day thing. But it's not mentioned anywhere in game. I do see its in the description, but how are players to know what this is for?
4) When catching fish, the player ONLY ever gets cod or dirt. Now I understand these are supposed to be custom items, but in this scripts current state, the customness of these items isn't handled.... so in reality the player is just getting a bunch of cod and dirt with names/lore that mean nothing to them, as there is 0 functionality for these fish.
5) The code is pretty decent, but it has some flaws:
- in the loadFishFromYaml function, the last line:
""add {_fishItem} to {caught.%{_difficulty}%::*}"" ... all this does is constantly add to this list. Each time this script is loaded (ie: the server starts up) this variable just keeps getting bigger and bigger.
This should be reset.
- in the instructions I am told to run the command "loadfish"... problem tho is this creates the yaml file, but the loadFishFromYaml function is only called on load. So after loading the fish I still need reload the script. Simple fix is to call that method in that command.
- as explained earlier, in the fish event, rather than cancelling the event and giving the player an item, it would be better to just set the item of the dropped item entity... this way the player still gets to feel that vanilla fishing system.
6) In the zip file, theres another zip file. I unzipped it to realize theres a resource pack, a few issues:
- NO WHERE ... ANYWHERE is this mentioned on this page.
- no where in code is this resource pack sent to the player, or loaded or anything. It's there, but it isn't used.
- Based on what I see, it uses Minecraft's now old CustomModelData system, which means this resource pack does not support MC 1.21.4+
(that could relatively easily be fixed tho)
SUMMARY:
All in all I think this resource is off to a great start, but it's severely lacking in what it CAN do.
In its current state the player just gets a bunch of cod and dirt with useless names/lore, but 0 functionality.
I would hope that something that says "ADVANCED fishing mechanics" would actually have some mechanics, not just named cod.
-
Hey, thanks a lot for the detailed feedback — I really appreciate the time you took to test the system and point out what could be improved!
I've already made a few changes based on your suggestions:
- Instead of cancelling the fishing event, the script now replaces the caught item, which gives a much more natural and vanilla-like fishing experience.
- I've added proper mention of the included texture pack, so users are aware of how the custom models are displayed.
- There's no longer a need to reload the Skript file manually after running the YAML setup command — everything loads automatically now.
Regarding the rest of your feedback:
- The `/sellfish` command is now implemented, allowing players to sell their caught fish for in-game money using Vault + EssentialsX.
- The lore for fish now includes more intuitive explanations.
- The variable list for loaded fish is now properly cleared before being repopulated to avoid duplicates on reload.
I still have more features in the works (like rod upgrades, NPC/ Gui shop, achievements, and seasonal fish), but your input really helped push the project forward — thank you again!