Skip to content
Games by Hyper
Sign Up / Login
Games by Hyper

Generic

  • QuickStart
  • Support
  • Purchase Options
  • Roadmap
  • FAQ
  • Learning
  • For Professional Studios

Templates

  • Template Logic and flexibility

Shared Infrastructure

  • Gameplay Tags
  • Datamanagement
  • Folder Structure

Item Management

  • Inventory
  • Jigsaw Inventory
  • List Inventory
  • Respawn Actor Manager
  • Hotbar
  • Crafting
  • Item Allocator
  • Vendor
  • Icon Creator
  • Interactive Foliage
  • Inspection System

Interaction and Feedback

  • Interaction System
  • Outliner System

UI

  • Main Menu
  • HUD
  • Information Prompt

Locomotion

  • Animation Framework
  • Extended Movement Component
  • Leader Posing
  • Custom-Skeletal-Meshes

Combat

  • Attribute Manager
  • Team Affiliation
  • Equipment Manager
  • Ragdoll System
  • Ability System
  • Target Locking
  • Weapon Attachment System
  • Limb System
  • Combat-framework

Construction and Survival Mechanics

  • Building System
  • Mineable Rocks
  • Tree Cutting
  • Farming System
  • Fishing System
  • Swimming System

Game Management

  • Global Save System
  • Respawn System
  • Session Manager
  • Game Mode System
  • Spectate System
  • Player Manager
  • Team Manager
  • Score Manager
  • Guild Manager
  • Party Manager

Multiplayer

  • Online Multiplayer Framework
  • Replication Subsystem
  • Chat System
  • Console Command Manager

AI

  • Basic AI
  • NPC Behavior System
  • Perception System
  • Companion System

Exploration and Narrative

  • Dialogue System
  • Memory System
  • Quest Manager
  • Map System
  • Teleport System
  • Guide System
  • Event Manager
  • Visual Novel System
  • Dungeon Adventure Kit
  • Region Manager

Progression and Leveling

  • Level Manager
  • Unlock System
  • Reputation System

Security and Control Systems

  • Drone System
  • Lock System
  • Security System
  • Defense System
  • Defense System – Modern
  • Defense System – Primitive

Character and Player Systems

  • Character Creator
  • Class System
  • Mount System
  • First Person

Environmental Control and Immersion

  • Time and Day Night Cycle management
  • Weather System
  • Background Music System
  • Footstep System

Environment Building

  • Mesh to Actor Swap System
  • Auto Landscape
  • Cave
  • Deform
  • Ditch
  • Exclusion
  • Forest
  • Forest-Basic
  • Lake
  • Level Instances
  • Mesh
  • Path
  • Props
  • Spline
  • Village
View Categories
  • Home
  • Docs
  • Fishing System

Fishing System

14 min read

Fishing System #

Videos #

Check out this video which explains all the core principles of the fishing system:

Play


Introduction #

This documentation explains the Fishing System, which allows players to catch fish using fishing rods, bobbers, and fishing spots with configurable fish, water types, and environmental conditions.

What Is the Fishing System?:

The Fishing System is a complete fishing implementation with equipment integration, minigames, fish spawning, and environmental factors.

Key Features:

  • ✅ Two Fishing Methods: Rod fishing (traditional) and spear fishing (melee-based)
  • ✅ Equipment Integration: Works with Equipment Manager (equip fishing rods or spears)
  • ✅ Fishing Component: Character-based component managing fishing state
  • ✅ Bobber System: Spawns bobber that detects fishing spots (rod fishing)
  • ✅ Spear Fishing: Melee attack fish in water, attach to spear, auto-drop after time
  • ✅ Minigame: Interactive catching minigame for rod fishing (customizable)
  • ✅ Fish Data: Complete fish configuration (difficulty, behavior, XP, meshes)
  • ✅ Fishing Waters: Define which fish spawn in specific waters
  • ✅ Environmental Factors: Weather, time of day, season affect fish spawns
  • ✅ Fish Quality: Bronze, Silver, Gold quality tiers
  • ✅ Fishing Spots: Spawnable areas where fish roam
  • ✅ Example Map: Pre-configured fishing spots ready to copy

Use Cases:

  • Survival games with fishing mechanics
  • RPGs with fishing professions
  • Open-world games with fishing activities
  • Any game needing fishing gameplay

Core concepts #

What Is the Fishing System? #

The Fishing System provides complete fishing gameplay with two methods: traditional rod fishing and spear fishing.

Rod Fishing:

  • Wait-based fishing using fishing rods and bobbers
  • Bobber must land inside fishing spot bounds
  • After configurable wait time, minigame triggers
  • Fish selected randomly from DT_FishingWaters spawn list (ignores visible swimming fish)
  • Success adds fish to inventory

Spear Fishing:

  • Action-based fishing using spears and melee attacks
  • Visible fish actors swim in fishing spots
  • Player directly attacks swimming fish
  • Hit fish attaches to spear, then auto-drops as item on ground
  • Player picks up dropped fish item

System Flow:

Rod Fishing: Equipment Manager → Fishing Component → Bobber → Fishing Spot → Minigame → Inventory

Spear Fishing: Equipment Manager → Melee Attack → Fish Actor → Spear Attachment → Drop → Inventory

Fishing Methods #

Rod Fishing (Traditional):

  • Requires fishing rod equipped
  • Throws bobber into water
  • Wait-based gameplay
  • Minigame challenge
  • Works in fishing spots
  • Good for relaxed fishing experience

Spear Fishing (Active):

  • Requires spear equipped
  • Melee attack fish directly
  • Action-based gameplay
  • No minigame (skill-based aiming)
  • Fish must be visible in water
  • Good for active hunting experience

Key Components #

Fishing Component (AC_Fishing):

  • Attached to player character
  • Manages fishing state (rod fishing)
  • Communicates with Equipment Manager
  • Spawns bobber
  • Triggers minigame
  • Handles catch results

Bobber Actor (BP_Bobber):

  • Spawned when rod fishing starts
  • Must land inside fishing spot bounds
  • Detects fishing spot and retrieves fish spawn data
  • Visual feedback (floating in water)

Fishing Spot Actor (BP_FishingSpot):

  • Defines fishing areas with bounds
  • Spawns visible fish actors for spear fishing
  • Manages fish population (spawns new fish when one is removed)
  • References DT_FishingWaters for fish spawn configuration

Fish Actor (BP_Fish):

  • Visible swimming actors in fishing spots
  • Used for spear fishing (can be attacked with melee)
  • Roams within fishing spot bounds
  • NOT used for rod fishing (rod picks randomly from data table)
  • Attaches to spear when hit

System Integration #

Equipment Manager Integration:

Player equips fishing rod:

  1. Equipment Manager detects rod equipped
  2. Equipment Manager notifies Fishing Component
  3. Fishing Component becomes active (rod fishing mode)
  4. Player can start rod fishing

Player equips spear:

  1. Equipment Manager detects spear equipped
  2. Equipment Manager enables melee attack
  3. Player can attack fish directly

Player unequips:

  1. Equipment Manager notifies Fishing Component
  2. Fishing Component becomes inactive
  3. Player cannot fish

Inventory Integration:

Rod Fishing – Fish caught:

  1. Minigame success
  2. Fish item determined (from DT_Fishes)
  3. Fish added to player inventory
  4. Catch XP awarded
  5. UI updated

Spear Fishing – Fish caught:

  1. Fish hit with spear melee attack
  2. Fish attaches to spear
  3. After time duration, fish drops on ground
  4. Fish item spawned on ground
  5. Player picks up fish item
  6. Fish added to inventory
  7. Catch XP awarded

Attribute Integration (Optional):

Fishing awards XP:

  • Catch XP configured per fish
  • XP added to fishing skill attribute
  • Level up fishing skill over time

Components #

Fishing Component #

Purpose: Manages all fishing logic on the player character.

Properties:

  • Current fishing state (Idle, Fishing, Minigame)
  • Equipped fishing rod reference
  • Bobber actor reference
  • Fishing spot reference
  • Current fish being caught

Bobber Actor #

Purpose: Visual bobber that floats in water and detects fishing spots.

Functionality:

Spawning:

When player starts fishing:

  1. Fishing Component spawns bobber
  2. Bobber placed at target location (forward from player)
  3. Bobber floats on water surface
  4. Bobber checks for fishing spot overlap

Bobber Actor (BP_Bobber):

  • Spawned when rod fishing starts
  • Must land inside fishing spot bounds to catch fish
  • Detects fishing spot overlap
  • Visual feedback (floating in water)

Rod Fishing Note: The bobber and rod fishing system does NOT interact with the visible swimming fish actors. Rod fishing selects fish randomly from the DT_FishingWaters spawn list after the wait time.

Properties:

  • Bobber mesh (static mesh)
  • Float height (how high above water)
  • Bob animation (idle float)
  • Current fishing spot reference

Fishing Spot Actor #

Purpose: Defines areas where fishing can occur and spawns visible fish actors.

Functionality:

For Rod Fishing:

  • Bobber must land inside fishing spot bounds
  • Fishing spot provides fish spawn list reference (from DT_FishingWaters)
  • Fish selected randomly from spawn list (ignores visible swimming fish)

For Spear Fishing:

  • Spawns visible fish actors in area up to max count
  • Fish roam within bounds as swimming targets
  • When fish is caught (hit with spear), spawns new fish after configurable delay
  • Maintains fish population

Properties:

  • Fishing spot bounds (box or sphere trigger)
  • Max fish count (maximum visible fish actors)
  • Fish spawn list reference (references DT_FishingWaters)
  • Current spawned fish (array of visible fish actors)
  • Fish respawn delay (configurable time before new fish spawns)

Fish Actor #

Purpose: Individual fish that swims in fishing spots, visible for spear fishing.

Functionality:

Swimming Behavior:

Fish actor:

  1. Spawned by fishing spot
  2. Roams within spot bounds
  3. Swimming animation plays
  4. Moves randomly in water
  5. Can be targeted by player

Spear Interaction:

When player attacks with spear:

  1. Melee attack hits fish actor
  2. Fish gets attached to spear mesh (attach point on spear tip)
  3. Fish follows spear position
  4. After configured time, fish auto-drops
  5. Fish item spawned on ground
  6. Player can pick up fish item

Properties:

  • Fish mesh (skeletal mesh with swim animation)
  • Fish data reference (from DT_Fishes)
  • Roaming speed
  • Roaming bounds (from fishing spot)
  • Attached to spear (boolean)
  • Drop timer (configurable time until fish auto-drops from spear)

Equipment integration #

Fishing Rods #

Fishing Rod as Equipment:

Fishing rods are equipment items configured in the Equipment Manager that enable rod fishing.

Setup:

DT_Equipment:

Row Name: FishingRod_Basic

  • Item Reference: (reference to DT_Items entry for fishing rod)
  • Equipment Type: Tool or Weapon
  • Equip Animations: Fishing rod equip/unequip
  • Special Properties: IsFishingRod = True

DT_Items:

Row Name: FishingRod_Basic

  • Display Name: “Basic Fishing Rod”
  • Description: “A simple fishing rod for catching fish”
  • Item Type: Tool
  • Icon: Icon_FishingRod
  • Mesh: SM_FishingRod_Basic
  • Weight: 2.0
  • Value: 50
Note: Fishing rods currently do not have special properties (like difficulty modifiers or quality bonuses), but this is implementable if needed.

Spears #

Spear as Equipment:

Spears are equipment items configured in the Equipment Manager for spear fishing. Setup is similar to fishing rods – see example in DT_Equipment and DT_Items.


5 fishing process – rod fishing #

Starting to Fish #

Player Action:

  1. Player equips fishing rod (Equipment Manager)
  2. Player presses fishing input
  3. Fishing Component checks if fishing rod equipped
  4. Fishing Component enters “Fishing” state
  5. Cast animation plays
  6. Bobber spawns and lands in water

Bobber and Fishing Spot #

Bobber Placement:

  • Bobber spawns at target location
  • Must land inside fishing spot bounds to catch fish
  • If outside fishing spot, cannot catch fish
Important: The bobber and rod fishing do NOT use the visible swimming fish actors. Fish are selected randomly from the DT_FishingWaters spawn list.

Wait Time and Minigame #

Wait for Bite:

After bobber lands:

  1. Configurable wait time passes (simulates fish biting)
  2. Minigame triggers
  3. Player completes minigame

Minigame:

  • Fish selected randomly from fishing spot's spawn list (DT_FishingWaters)
  • Fish catch difficulty (1-100) affects minigame challenge
  • Higher difficulty = harder minigame (smaller success zones, faster timing, etc.)

Catch Results #

Success:

Minigame success:

  1. Fish item added to inventory (from DT_Fishes)
  2. Quality determined (bronze, silver, gold)
  3. Catch XP awarded
  4. Fishing ends, bobber removed

Failure:

Minigame failure:

  1. No fish caught
  2. No XP awarded
  3. Fishing ends, bobber removed

6 FISHING PROCESS – SPEAR FISHING

How Spear Fishing Works #

Spear Fishing Overview:

Spear fishing is an active, skill-based fishing method where you directly attack visible fish swimming in water.

Requirements:

  • Spear equipped (Equipment Manager)
  • Fishing spot with visible swimming fish actors
  • Melee attack capability

Attacking Fish #

Attack Process:

  1. Player equips spear
  2. Player sees fish swimming in fishing spot (visible actors)
  3. Player aims at fish
  4. Player performs melee attack
  5. If hit:
 - Fish attaches to spear
 - Fish stops swimming
 - Drop timer starts
  1. If miss:
 - No catch, try again

Skill-Based Gameplay:

  • No minigame for spear fishing
  • Success depends on player aiming and timing
  • Fish are moving targets

Fish Drops and Pickup #

Auto-Drop:

After configured time:

  1. Fish detaches from spear
  2. Fish item spawns on ground at player location
  3. Fish actor removed
  4. Spear available for next attack

Pickup:

  1. Player walks to dropped fish item
  2. Player presses pickup input
  3. Fish added to inventory
  4. Catch XP awarded

Minigame system #

Default Minigame #

Included Minigame:

The Fishing System includes a default minigame already implemented for rod fishing.

Default Minigame Mechanics:

Timing-based minigame:

  1. Moving bar with success zone
  2. Player presses button when marker in success zone
  3. Success → Fish caught
  4. Failure → Fish escapes

Fish catch difficulty (1-100) affects minigame challenge:

  • Higher difficulty = smaller success zones, faster timing, more stages
Note: Spear fishing does not use minigames – it's pure skill-based aiming.

Data tables #

DT_Fishes #

Location: Hyper/FishingSystem/Blueprints/DataTables/DT_Fishes

Purpose: Defines all fish in the game with properties and catch settings.

Structure:

Struct_FishData:

  • Fish ID (String): Unique identifier (row name)
  • Display Name (String): Fish name shown to player
  • Description (Text): Fish description
  • Item Reference (DataTable Row): Reference to DT_Items entry
  • Catching Difficulty (Integer): 1-100 (affects minigame challenge)
  • Catching Behavior (Enum): Smooth, Erratic, Darting, Lazy
  • Catch XP (Integer): XP awarded when caught
  • Static Mesh (Static Mesh): Fish mesh for displaying (optional)
  • Skeletal Mesh (Skeletal Mesh): Fish mesh with animations (optional)
  • Fish Icon (Texture): Icon for UI (can use item icon)
Example Entries:

Row Name: Fish_Bass

  • Display Name: “Bass”
  • Description: “A common freshwater fish”
  • Item Reference: (DT_Items → Item_Bass)
  • Catching Difficulty: 30
  • Catching Behavior: Smooth
  • Catch XP: 10
  • Static Mesh: SM_Bass
  • Skeletal Mesh: None
  • Fish Icon: Icon_Bass

Row Name: Fish_Salmon

  • Display Name: “Salmon”
  • Description: “A prized fish known for swimming upstream”
  • Item Reference: (DT_Items → Item_Salmon)
  • Catching Difficulty: 60
  • Catching Behavior: Darting
  • Catch XP: 25
  • Static Mesh: SM_Salmon
  • Skeletal Mesh: SK_Salmon (has swimming animation)
  • Fish Icon: Icon_Salmon

Row Name: Fish_GoldenTrout

  • Display Name: “Golden Trout”
  • Description: “A rare and valuable fish”
  • Item Reference: (DT_Items → Item_GoldenTrout)
  • Catching Difficulty: 90
  • Catching Behavior: Erratic
  • Catch XP: 50
  • Static Mesh: SM_GoldenTrout
  • Skeletal Mesh: None
  • Fish Icon: Icon_GoldenTrout

9 dt_fishingwaters #

Purpose: Defines all water types with fish spawn lists, environmental conditions, quality chances, and spawn weights.

Structure:

Struct_FishingWaterData:

  • Water ID (String): Unique identifier (row name)
  • Water Name (String): Water type name
  • Fish Spawn List (Array of Struct_FishSpawnEntry):
 - Fish Reference (DataTable Row): Reference to DT_Fishes
 - Spawn Weight (Float): Likelihood of spawning (1.0 = normal, 2.0 = 2x more likely)
 - Required Weather (Array of Enum): Weather types where this fish spawns
 - Required Time of Day (Array of Enum): Times when this fish spawns
 - Required Season (Array of Enum): Seasons when this fish spawns
 - Quality Chances (Struct):
 - Bronze Chance (Float): 0.0-1.0 (70% = 0.7)
 - Silver Chance (Float): 0.0-1.0 (25% = 0.25)
 - Gold Chance (Float): 0.0-1.0 (5% = 0.05)

Water Types #

Water Types Examples:

  • FreshwaterLake (Bass, Trout, Perch)
  • River (Salmon, Catfish, Pike)
  • Ocean (Tuna, Marlin, Shark)
  • Pond (Goldfish, Koi, Minnow)
  • Swamp (Catfish, Gar, Mudfish)

Fish Spawn Lists #

Fish Spawn List defines which fish can spawn in this water type (configured in DT_FishingWaters).

Spawn Entry Structure:

Each fish in spawn list has:

  1. Fish Reference (which fish from DT_Fishes)
  2. Spawn Weight (relative likelihood – higher = more common)
  3. Environmental Conditions (weather, time, season)
  4. Quality Chances (bronze, silver, gold percentages)

Spawn Weight Example:

Bass: Weight 2.0 (2x more likely)

Salmon: Weight 1.0 (normal)

Golden Trout: Weight 0.2 (rare, 1/5 as likely)

Total Weight: 3.2

When player fishes or fish spawns:

  • Random selection based on weights
  • Bass has 2.0/3.2 = 62.5% chance
  • Salmon has 1.0/3.2 = 31.25% chance
  • Golden Trout has 0.2/3.2 = 6.25% chance

Higher weights = more common fish

Lower weights = rarer fish

Environmental Conditions #

Environmental Filters:

Each fish spawn entry can have required conditions for spawning.

Weather:

Required Weather: [Sunny, Cloudy, Rainy, Stormy, Snowy, Foggy]

Example:
  • Bass: Spawns in Sunny, Cloudy, Rainy
  • Salmon: Only spawns in Rainy, Cloudy (prefers rain)
  • Golden Trout: Only spawns in Sunny (rare, sunny days only)

If current weather is Rainy:

  • Bass can spawn (Rainy in required list)
  • Salmon can spawn (Rainy in required list)
  • Golden Trout cannot spawn (Sunny required)

Time of Day:

Required Time of Day: [Morning, Day, Evening, Night]

Example:
  • Bass: Morning, Day, Evening (not night)
  • Catfish: Evening, Night (nocturnal)
  • Golden Trout: Day only (specific timing)

If current time is Night:

  • Bass cannot spawn
  • Catfish can spawn
  • Golden Trout cannot spawn

Season:

Required Season: [Spring, Summer, Fall, Winter]

Example:
  • Bass: Spring, Summer, Fall (not winter)
  • Ice Fish: Winter only
  • Salmon: Spring, Fall (migration seasons)

If current season is Winter:

  • Bass cannot spawn
  • Ice Fish can spawn
  • Salmon cannot spawn

Multiple Conditions:

All conditions must be met:

Golden Trout:

  • Weather: Sunny
  • Time: Day
  • Season: Summer

Player fishing in Summer, Sunny, Day:

→ Golden Trout CAN spawn

Player fishing in Summer, Rainy, Day:

→ Golden Trout CANNOT spawn (weather wrong)

Player fishing in Winter, Sunny, Day:

→ Golden Trout CANNOT spawn (season wrong)

Fish Quality System #

Quality Tiers:

Each caught fish has a quality that affects rewards.

Quality Types:

Bronze: Normal quality (base rewards)

Silver: Higher quality (improved rewards)

Gold: Highest quality (best rewards)

Quality multipliers and percentages are configurable – set up values as needed for your game.


Fishing spots #

Fishing Spot Setup #

Fishing Spot Actor (BP_FishingSpot):

Defines a physical area where fish spawn and can be caught.

Properties:

Fishing Spot:

  • Bounds (Box or Sphere): Area where fish spawn and bobber must land
  • Max Fish Count (Integer): Maximum visible fish actors
  • Fish Spawn List Reference (DataTable Row): References DT_FishingWaters entry
  • Fish Respawn Delay (Float): Configurable time before new fish spawns after one is removed
  • Current Spawned Fish (Array): Fish currently in spot
Example Setup:

BP_FishingSpot_Lake:

  • Bounds: Box (10m x 10m x 5m depth)
  • Max Fish Count: 10
  • Fish Spawn List: FreshwaterLake (from DT_FishingWaters)
  • Fish Respawn Delay: Configurable (seconds)
  • Current Spawned Fish: (populated on Begin Play)

Fish Spawning #

Spawning Behavior:

On Begin Play:

  1. Fishing Spot reads Fish Spawn List from DT_FishingWaters
  2. Spawns visible fish actors up to Max Fish Count
  3. Fish roam within bounds

When fish removed (caught with spear):

  1. Fish actor removed from world
  2. Wait configurable respawn delay
  3. Spawn new fish to maintain population

Rod Fishing vs Spear Fishing:

Rod Fishing:

  • Uses DT_FishingWaters spawn list data
  • Selects fish randomly after wait time
  • Ignores visible swimming fish actors

Spear Fishing:

  • Uses visible swimming fish actors
  • Player directly attacks fish
  • When fish hit, it's removed and respawned

Example Map #

Purpose: Demonstrates fishing spots with pre-configured setup.

What's Included:

Example Map has:
  • 3-5 fishing spots placed in world
  • Different water types (lake, river, ocean)
  • Pre-configured fish spawn lists
  • Environmental conditions set up
  • Player character with Fishing Component
  • Fishing rods available to equip
  • Example fish in DT_Fishes
  • Example water types in DT_FishingWaters

How to Use:

  1. Open FishingSystem_Example map
  2. Play in editor
  3. Equip fishing rod
  4. Walk to fishing spot
  5. Start fishing
  6. Test minigame
  7. Catch fish
  8. See fish added to inventory

Copying Fishing Spots:

To add fishing spot to your world:

  1. Open FishingSystem_Example map
  2. Find BP_FishingSpot actor
  3. Copy fishing spot (Ctrl+C)
  4. Open your map
  5. Paste fishing spot (Ctrl+V)
  6. Move to desired location (water area)
  7. Adjust bounds to fit water area
  8. Configure fish spawn list (or use default)
  9. Done! Fishing spot ready

How to guides #

Creating a New Fish #

Step 1 – Create Fish Item in DT_Items: #

  1. Open DT_Items
  2. Add new row: Item_Tuna
  3. Configure:
 - Display Name: "Tuna"
 - Description: "A large ocean fish"
 - Item Type: Fish (or Food)
 - Icon: Icon_Tuna
 - Mesh: SM_Tuna
 - Weight: 5.0
 - Value: 75
 - Max Stack Size: 10

Step 2 – Create Fish in DT_Fishes: #

  1. Open DT_Fishes
  2. Add new row: Fish_Tuna
  3. Configure:
 - Display Name: "Tuna"
 - Description: "A large ocean fish"
 - Item Reference: (reference Item_Tuna from DT_Items)
 - Catching Difficulty: 70 (1-100 scale, affects minigame challenge)
 - Catching Behavior: Darting
 - Catch XP: 35
 - Static Mesh: SM_Tuna
 - Skeletal Mesh: (none)
 - Fish Icon: Icon_Tuna

Step 3 – Add Fish to Water Type: #

  1. Open DT_FishingWaters
  2. Find Ocean water type (or create new)
  3. Add to Fish Spawn List:
 - Fish Reference: Fish_Tuna
 - Spawn Weight: 1.0 (adjust for desired rarity)
 - Required Weather: [Sunny, Cloudy]
 - Required Time of Day: [Morning, Day, Evening]
 - Required Season: [Summer, Fall]
 - Quality Chances (configurable):
 - Bronze: 0.50 (50%)
 - Silver: 0.35 (35%)
 - Gold: 0.15 (15%)

Step 4 – Test: #

  1. Open FishingSystem_Example map
  2. Find ocean fishing spot (or create one)
  3. Set fishing spot water type to Ocean
  4. Play game
  5. Fish in ocean
  6. Tuna should spawn (if conditions met)
  7. Catch tuna
  8. Verify added to inventory

Configuring Water Types #

Step 1 – Create Water Type in DT_FishingWaters: #

  1. Open DT_FishingWaters
  2. Add new row: TropicalReef
  3. Configure:
 - Water Name: "Tropical Reef"
 - Fish Spawn List: (see Step 2)

Step 2 – Add Fish to Spawn List: #

For each fish in this water type:

  1. Add new Spawn Entry:
 - Fish Reference: (select fish from DT_Fishes, e.g., Fish_Tuna)
 - Spawn Weight: 1.0 (adjust for rarity)
 - Required Weather: [Sunny, Cloudy]
 - Required Time of Day: [Morning, Day, Evening]
 - Required Season: [Spring, Summer, Fall]
 - Quality Chances:
 - Bronze: 0.60 (60%)
 - Silver: 0.30 (30%)
 - Gold: 0.10 (10%)
  1. Repeat for all fish in this water type

Step 3 – Use in Fishing Spot: #

  1. Open your map
  2. Find or create BP_FishingSpot
  3. In Details panel:
 - Fish Spawn List Reference: TropicalReef (your new water type)
  1. Fish will now spawn based on your configuration

Setting Up a Fishing Spot #

Step 1 – Place Fishing Spot Actor: #

  1. Open your map
  2. Open Content Browser
  3. Find BP_FishingSpot
  4. Drag into level at water location
  5. Position at water surface

Step 2 – Configure Bounds: #

  1. Select fishing spot
  2. In Details panel:
 - Adjust bounds (box or sphere)
 - Cover desired fishing area
 - Ensure bounds overlap water

Step 3 – Configure Fish Spawning: #

  1. In Details panel:
 - Max Fish Count: 10 (how many visible fish actors in spot)
 - Fish Spawn List: FreshwaterLake (or desired water type from DT_FishingWaters)
 - Fish Respawn Delay: Configurable (seconds before new fish spawns)

Step 4 – Test: #

  1. Play in editor
  2. Equip fishing rod
  3. Cast into fishing spot (bobber must land inside bounds)
  4. Wait for configured time
  5. Complete minigame
  6. Catch fish
  7. Verify fish from configured spawn list

Customizing the Minigame #

Step 1 – Create Custom Minigame Widget: #

  1. Create new UI Widget Blueprint
  2. Name: UI_FishingMinigame_Custom
  3. Design your minigame UI:
 - Button prompts
 - Timing bars
 - Visual effects
 - Instructions

Step 2 – Implement Minigame Logic: #

  1. In widget blueprint:
 - Add variables:
 - Fish Difficulty (Integer)
 - Is Success (Boolean)
 - Add events:
 - OnMinigameStart (receive fish difficulty)
 - OnPlayerInput (handle player input)
 - OnMinigameComplete (return success/failure)
  1. Implement your mechanics:
 Example - Button Mashing:
 - Show "Mash Space!" prompt
 - Count space presses
 - Required presses = Fish Difficulty * 5
 - Timer: 5 seconds
 - If presses >= required → Success
 - Else → Failure

Step 3 – Integrate with Fishing Component: #

  1. Open AC_Fishing blueprint
  2. Find the minigame trigger section
  3. Replace default minigame widget spawn with your custom widget
  4. Ensure your widget communicates success/failure back to component
  5. Save
Important: This is not just changing a variable – you must implement the custom minigame logic in the Fishing Component blueprint.

Step 4 – Test: #

  1. Play game
  2. Equip fishing rod
  3. Start fishing
  4. Your custom minigame should appear
  5. Complete minigame
  6. Verify success/failure works correctly
  7. Verify fish caught on success
  • —

END OF DOCUMENTATION

Summary:

The Fishing System provides complete fishing gameplay with two methods:

Rod Fishing:

  • Equipment Manager integration for fishing rods
  • Fishing Component manages state, bobber spawning, minigame
  • Bobber must land inside fishing spot bounds
  • After configurable wait time, minigame triggers
  • Fish selected randomly from DT_FishingWaters (ignores visible fish actors)
  • Catch difficulty (1-100) affects minigame challenge
  • Wait-based, relaxed fishing experience

Spear Fishing:

  • Equipment Manager integration for spears
  • Melee attack visible swimming fish actors
  • Fish attaches to spear on hit
  • Auto-drops after configured time
  • Skill-based, active hunting experience

Configuration:

  • DT_Fishes: Fish properties (difficulty 1-100, behavior, XP, meshes)
  • DT_FishingWaters: Water types, fish spawn lists with weights, environmental conditions (weather/time/season), configurable quality system (bronze/silver/gold with configurable multipliers)
  • Fishing spots: Spawnable areas with visible fish actors for spear fishing, data-based selection for rod fishing
  • Example map: Pre-configured spots for testing both fishing methods

Create immersive fishing gameplay with two distinct fishing methods, configurable fish spawning, dynamic environmental conditions, and customizable minigames!

What are your Feelings
Still stuck? How can we help?

How can we help?

Table of Contents
  • Fishing System
    • Videos
    • Introduction
    • Core concepts
      • What Is the Fishing System?
      • Fishing Methods
      • Key Components
      • System Integration
    • Components
      • Fishing Component
      • Bobber Actor
      • Fishing Spot Actor
      • Fish Actor
    • Equipment integration
      • Fishing Rods
      • Spears
    • 5 fishing process - rod fishing
      • Starting to Fish
      • Bobber and Fishing Spot
      • Wait Time and Minigame
      • Catch Results
      • How Spear Fishing Works
      • Attacking Fish
      • Fish Drops and Pickup
    • Minigame system
      • Default Minigame
    • Data tables
      • DT_Fishes
    • 9 dt_fishingwaters
      • Water Types
      • Fish Spawn Lists
      • Environmental Conditions
      • Fish Quality System
    • Fishing spots
      • Fishing Spot Setup
      • Fish Spawning
      • Example Map
    • How to guides
      • Creating a New Fish
      • Step 1 - Create Fish Item in DT_Items:
      • Step 2 - Create Fish in DT_Fishes:
      • Step 3 - Add Fish to Water Type:
      • Step 4 - Test:
      • Configuring Water Types
      • Step 1 - Create Water Type in DT_FishingWaters:
      • Step 2 - Add Fish to Spawn List:
      • Step 3 - Use in Fishing Spot:
      • Setting Up a Fishing Spot
      • Step 1 - Place Fishing Spot Actor:
      • Step 2 - Configure Bounds:
      • Step 3 - Configure Fish Spawning:
      • Step 4 - Test:
      • Customizing the Minigame
      • Step 1 - Create Custom Minigame Widget:
      • Step 2 - Implement Minigame Logic:
      • Step 3 - Integrate with Fishing Component:
      • Step 4 - Test:

© 2025 Games by Hyper

X Reddit Patreon Discord Linkedin YouTube

Review Cart

No products in the cart.

We noticed you're visiting from Netherlands. We've updated our prices to Euro for your shopping convenience. Use United States (US) dollar instead. Dismiss

  • Hyper Bundle Configurator
  • Shop
    • Game Templates
    • Courses
    • Loyalty Store
    • Survival Modules
    • RPG Modules
    • Environment Building
    • Browse All
  • My account
  • Become a Member
  • Cart
  • Get Help
    • FAQ
    • Upgrade your Game Template
    • Documentation
  • About Hyper
  • News & Updates