post title
Back

How To Make Custom Events In Minecraft: Fishing

This post will give you some guidance on setting up an ingame fishing event for your players to enjoy on Minecraft Java! Keeping your players engaged with your

by Louise Posted on 13 July 2022

This post will give you some guidance on setting up an ingame fishing event for your players to enjoy on Minecraft Java! Keeping your players engaged with your server is something you should be focusing on so you can increase player retention and always give your players something to look forward to. This guide aims to show you some basics to get you started, and the rest is down to your creativity!


This guide will use the following plugins: Custom Fishing, World Guard, WorldEdit, and LuckPerms. Use the versions that are compatible with your server version. For our example, we are using the latest (1.19) versions for our Spigot server. You should check if the plugins you are using are compatible with any existing plugins on your server and switch to an alternative if you need to. We are also using GTXGaming as our server host for this guide, other server hosts may differ but the instructions should be largely the same. For the purpose of this example, we wanted to have a nice-looking shipwreck to fit the theme of our event, so we used a pirate island schematic by Krevelir.

At the end of this guide, you should have built an event so your players will fish up custom rewards but only in our event area! This can be great so players can relax fishing with their friends while participating in your community event, and you can schedule this to happen weekly or at set times.

💡
Use a staging server if you can to avoid errors or mishaps on your live server.

 

Here is what we are going to achieve in this guide:

0:00
/

The theme of our event: a fierce storm during the night caused this pirate ship to lose cargo in the waves! After shoring in our cove for safety, the pirates are healing their wounded and gathering food supplies. Players fishing anywhere in this region have a chance to loot 'Lost Gold'. This gold could be turned in to a custom pirate NPC in exchange for rewards, or just used for personal wealth. It's up to you how you configure the reward system for your event.


Installation

We recommend using a staging server, (if you have one) to test and configure your rewards before releasing this live for your players.

Install the plugins into your /plugins folder in your server directory. Start your server to check the installation went ok, and just to see the demo, you can also fish up once where you will see the custom fishing reward in action. By default, the demo file for the custom reward is being used, and you should receive a lored Diamond_Sword. Now you have seen the fishing plugin in action, let's get to work configuring the rewards.


Configuring The Custom Fishing Rewards

Go to your /plugins directory, /CustomFishing and then /Rewards where you will see the demo_reward.yml. Let's download this file and make a copy, now we can easily edit and make as many custom rewards as we want for our event. Open the demo_reward.yml file in Notepad. If you ever lose your original file and you want it for reference, go to the main config to see the original demo. Each custom reward you create will use a separate reward.ml file.

As you will see in the file, you need to follow the instructions and edit your custom reward to your liking. We've decided to make our item GOLD_NUGGET, we've called it Lost Gold, and edited our text ingame and on the item. Use this item list, and this enchant list as you'll probably need them! Don't be put off if you make a mistake and you aren't getting the loot you have set when you should be, if in doubt, reload the original reward.yml and start fresh being careful with what you are entering.

The plugin has several options, including requirements for the special rewards to be obtainable for players. This allows you some scope in how you design your event. You could set up quest chains, at the end, the player gets given a hidden permission, unlocking participation in the fishing event! You would just need to set the permission requirement in the rewards.yml file. You could also have greater depth to your event by including several tiers of permission and scale up the rewards accordingly! We are using LuckPerms, which is a great permission system, if you want help setting it up, watch Ted's video.

We've created a Fisherman permission so that players need to have this role in order to take part in the event. What privileges you give this role is entirely up to you. You can skip the permission requirement entirely if you want.

In our example, we're going to give this role temporarily and then remove it automatically.

You can now restart your server, as we need to set a region for our event to take place in.


Setting A Custom Region

If you want players to fish up event rewards anywhere in game, you can skip this section.

Now we have tested (and hopefully set up) a basic reward, we're able to customise this a little bit more. In our example, we only want this event to take place at our shipwreck, it's where our gold was lost from the ship and we want to see all of our players taking part together!

If you don't want to set a region for the fishing rewards, then your players will be able to fish up the event loot anywhere ingame, and that's ok too. In our example, we want our players to be together at our shipwreck, they can interact with one another, and it's also a great opportunity for screenshots or video clips to share online. These clips are great for people to see what's happening on your server, and they may decide to join you after seeing your video online!

You will need to use WorldEdit to set a region, use the Quick Start guide if you need help. You can use //wand to receive your tool so you can quickly select the area that you want to mark as your region. Once you have selected both point A and point B you need to set your region. We'll use '/region define <name>' using the World Guard guide. We want to call our event area 'Fishermans cove', so we would type '/region define Fishermans cove'.

We've got our region defined, and by default, no one can build or place blocks here, which is great. This means our players will just be able to fish in our event at this location.


Requiring The Permission And Region For The Event Items To Drop

We now need to go back to our rewards.yml file. Scroll down to the bottom where you will see the requirements section, we want to use this so that our reward items will only drop if both requirements are met!

requirement:
type: permission
value: Fisherman
type: region
value: Fishermans Cove

Anyone fishing in the Fishermans Cove area without the Fisherman role won't be able to loot the event items and will just receive normal loot such as fish. You should now check to make sure you are able to loot the items in the region with the role, and that you can't if you don't have the role!


Optional Extras

At this point, you can add extra options and this all depends on you and what you want for your event. Would you want this custom item to be exchanged at custom NPCs? Would you want these NPCs to be wearing custom skins? Trading special items in exchange for lost gold? How much you customise this event is very individual to server owners, so explore some plugins and play around with some ideas. Here's a few plugin suggestions that might be just what you need:

  • Citizens plugin - allows many NPC configurable options so you can really bring your NPCs and event to life.
  • Custom Villager Modifications - allows modifications to NPCs.
  • ExecutableItems - allows you to easily create custom items. Perhaps your NPC could sell these awesome custom items in exchange for the event currency?
  • Player Emotes Pro - create your own emotes for your players. Your players could earn fun custom emotes by exchanging their event currency.
  • Tebex Spigot - allows you to automate commands when a player receives a store package. Useful if you want players to claim a package on the store to be eligible for the fishing event.

Starting The Event

Well, we're just doing this for practice but if you were to start an event like this for real, you need to make sure you've advertised it to players. Use your forums, Discord news channels and social media to get word of your event out to your players.

Each server will have preferences for how they initiate this event. Perhaps you want to grant your players the role temporarily so they can fish in the event area? Perhaps, the role is permanent if they have done a quest, but they cannot gain access to the event area outside of the event times. What will you choose?

For our example, we'll run a simple command that promotes every player in the default group to our fisherman role for a set duration. '/lp group default parent addtemp fisherman 2h'. Everyone in the default group now has access to our event for 2 hours before their role is returned to default. If you didn't want to use the default group, you could create a free package on the store that gives a role, for example; wanderer, vagabond, nomad, drifter, or whatever name you want to give this group. That would mean only players who have claimed the free package are eligible to take part in the event.


I hope this guide has helped you understand the basics of creating an event using roles. There's huge possibilities with creating your event, and you should spend plenty of time researching what the possibilities are with the plugins you can use! Remember that you can't build a great server in a day, so don't be disheartened if it feels like work on your project is moving slowly. Keep working on it, and hopefully your players will enjoy your fantastic community for a long time to come!

More from Tebex Blog