Skip to main content

🎣 Fishing Frenzy

Fishing Frenzy is a built-in EventForge objective where players earn points by catching configured fish and treasure items.

info

Custom items require the relevant plugin to be installed on the server, such as ItemsAdder, Oraxen, Nexo, or MMOItems.


Objective type

Fishing Frenzy uses:

type: FISH_ITEMS

Recommended v1.0.1 format:

objectives:
fish_and_treasure:
type: FISH_ITEMS

The old single-objective format still works:

objective:
type: FISH_ITEMS

Basic example

id: fishing_frenzy
enabled: true
display-name: "{var:event_color}Fishing Frenzy"
duration: 10m

variables:
event_color: "&b"
arena_name: "Main World"

objectives:
fish_and_treasure:
type: FISH_ITEMS
display-name: "Fish & Treasure"
display-items:
- "Cod"
- "Salmon"
- "Tropical Fish"
- "Pufferfish"
- "Name Tag"
- "Nautilus Shell"
weight: 1.0

catches:
COD: 1
SALMON: 2
TROPICAL_FISH: 3
PUFFERFISH: 4
NAME_TAG: 8
NAUTILUS_SHELL: 10

Catches

The catches: section controls which caught items give points.

catches:
COD: 1
SALMON: 2
PUFFERFISH: 4
NAUTILUS_SHELL: 10

This means:

COD gives 1 point
SALMON gives 2 points
PUFFERFISH gives 4 points
NAUTILUS_SHELL gives 10 points

Detailed catch format

You can also use a more detailed format.

catches:
COD:
points: 1
display-name: "Cod"

NAUTILUS_SHELL:
points: 10
display-name: "Nautilus Shell"

Use this if you want clearer display names in menus and event details.


Material names

Fishing catches should use valid Bukkit/Paper material names.

Common examples:

COD
SALMON
PUFFERFISH
TROPICAL_FISH
BOW
FISHING_ROD
NAME_TAG
NAUTILUS_SHELL
ENCHANTED_BOOK
tip

Use /eventforge iteminfo to help identify item information while configuring events.


Objective weight

Each objective can have a weight.

weight: 1.0

This works like a score multiplier.

Examples:

WeightPlayer-facing wordingMeaning
1.0Multiplier: x1Normal score
1.5Multiplier: x1.550% more score
2.0Multiplier: x2Double score

Using variables

Variables help keep the event easy to edit.

variables:
event_color: "&b"
arena_name: "Main World"
reward_name: "Fishing Supplies"

Example:

messages:
start:
- "{var:event_color}&lFishing Frenzy has started!"
- "&eCatch fish and treasure in &f{var:arena_name} &eto earn points."

Actions and triggers

A simple actionbar is a nice fit for Fishing Frenzy.

triggers:
player-score:
actions:
- type: ACTIONBAR
message: "{var:event_color}+{score_change} points &8| &f{score} total"

You can also play a sound when a player scores:

triggers:
player-score:
actions:
- type: SOUND
sound: ENTITY_EXPERIENCE_ORB_PICKUP
volume: 1.0
pitch: 1.2

Cooldown

cooldown:
enabled: true
duration: 30m

Cooldowns start after the event finishes naturally.


Full event example

id: fishing_frenzy
enabled: true
display-name: "{var:event_color}Fishing Frenzy"
duration: 10m

metadata:
category: "Fishing"
tags:
- fishing
- survival
- economy
difficulty: "Easy"
author: "HxZe"
version: "1.0.1"
description:
- "Catch configured fish and treasure items to earn points."

variables:
event_color: "&b"
arena_name: "Main World"
reward_name: "Fishing Supplies"

schedule:
enabled: false
type: INTERVAL
every: 1h
announce-before:
- 5m
- 1m
- 30s

cooldown:
enabled: false
duration: 30m

conditions:
minimum-players: 1
worlds:
- world

permissions: []
blocked-permissions: []

require-op: false
require-non-op: false

time:
enabled: false
min: 0
max: 23999

weather:
allowed: []

objectives:
fish_and_treasure:
type: FISH_ITEMS
display-name: "Fish & Treasure"
display-items:
- "Cod"
- "Salmon"
- "Tropical Fish"
- "Pufferfish"
- "Name Tag"
- "Nautilus Shell"
weight: 1.0

catches:
COD: 1
SALMON: 2
TROPICAL_FISH: 3
PUFFERFISH: 4
NAME_TAG: 8
NAUTILUS_SHELL: 10

triggers:
player-score:
actions:
- type: ACTIONBAR
message: "{var:event_color}+{score_change} points &8| &f{score} total"

bossbar:
enabled: true
text: "{var:event_color}Fishing Frenzy &8| &f{time_left} &8| &eScore: {score} &8| &7Rank: #{rank}"
color: BLUE
style: SOLID

sidebar:
enabled: true
title: "{var:event_color}&l{event_display}"
max-objective-lines: 8
lines:
- "{var:event_color}Objectives:"
- "{objective_lines}"
- ""
- "&7/events toggle"

leaderboard:
announce-results: true
max-shown: 3
no-participants-message: "&7No players scored during this event."
header:
- ""
- "{var:event_color}&lFishing Frenzy Results"
line: "&e#{position} &f{player} &8- &a{score} points"
footer:
- ""

messages:
start:
- "{var:event_color}&lFishing Frenzy has started!"
- "&eCatch fish and treasure in &f{var:arena_name} &eto earn points."

end:
- "{var:event_color}&lFishing Frenzy has ended!"
- "&eRewards have been processed."

announcements:
start-title:
enabled: true
title: "{var:event_color}&l{event_display} Started!"
subtitle: "&eCatch: &f{objective_items}"
fade-in: 10
stay: 60
fade-out: 20

end-title:
enabled: true
title: "{var:event_color}&l{event_display} Ended!"
subtitle: "&eYou placed &f#{rank} &ewith &f{score} &epoints"
subtitle-no-score: "&7You did not participate."
fade-in: 10
stay: 80
fade-out: 20

rewards:
participation:
enabled: true
minimum-score: 1
commands:
- "give {player} cod 4"
- "say {player} earned {var:reward_name}."

chance-rewards:
bonus_shell:
chance: 5.0
commands:
- "give {player} nautilus_shell 1"

leaderboard:
1:
commands:
- "give {player} diamond 3"
2:
commands:
- "give {player} diamond 2"
3:
commands:
- "give {player} diamond 1"

Troubleshooting

Catches do not give points​

Check:

The event is active
The material name is correct
The item is listed under catches
The point value is greater than 0
The player actually caught the item through fishing

Treasure items do not score​

Check that the material name is correct.

Example:

NAUTILUS_SHELL: 10

Scores are higher than expected​

Check the objective weight.

weight: 2.0

That means the objective scores at Multiplier: x2.

The event does not start​

Check:

minimum players
cooldown
conditions
event ID
console validation warnings