Skills

The fishing skills system tracks player progression, provides level-based bonuses, and rewards players for catching fish.

General Configuration

baseXp = 120,
multiplier = 1.0,
maxLevel = 100,
baseXprequirednumber
120
The base amount of XP required for level 1. Each subsequent level's XP requirement is calculated using this value and the multiplier.
multiplierrequirednumber
1.0
The multiplier applied to the XP requirements for each level. Higher values create a steeper progression curve.
maxLevelrequirednumber
100
The maximum achievable level in the fishing skill.

Fishing Skill Configuration

The fishing section configures how players earn fishing XP:

fishing = {
    enabled = true,
    
    baseXp = 50,
    
    rarityMultipliers = {
        common = 1.0,     
        uncommon = 1.5,   
        rare = 2.5,       
        epic = 4.0,       
        legendary = 6.0,  
        treasure = 3.0    
    },
    
    weightBonus = {
        enabled = true,

        multiplierCap = 2.0,

        divisor = 2.0
    },
    
    rodBonus = {
        enabled = true,
    },
    
    levelBonus = {
        enabled = true,

        xpPerLevel = 2
    }
}
fishing.enabledrequiredboolean
true
Enables or disables the fishing skill system.
fishing.baseXprequirednumber
50
The base amount of XP awarded for catching a fish before any multipliers are applied.
fishing.rarityMultipliersrequiredtable
Multipliers applied to XP based on the rarity of the caught fish.
fishing.rarityMultipliers.commonrequirednumber
1.0
XP multiplier for catching common fish.
fishing.rarityMultipliers.uncommonrequirednumber
1.5
XP multiplier for catching uncommon fish.
fishing.rarityMultipliers.rarerequirednumber
2.5
XP multiplier for catching rare fish.
fishing.rarityMultipliers.epicrequirednumber
4.0
XP multiplier for catching epic fish.
fishing.rarityMultipliers.legendaryrequirednumber
6.0
XP multiplier for catching legendary fish.
fishing.rarityMultipliers.treasurerequirednumber
3.0
XP multiplier for finding treasures while fishing.
fishing.weightBonus.enabledrequiredboolean
true
Whether heavier fish provide additional XP bonuses.
fishing.weightBonus.multiplierCaprequirednumber
2.0
The maximum multiplier that can be applied from fish weight.
fishing.weightBonus.divisorrequirednumber
2.0
Value used to calculate weight bonus. The multiplier is calculated as:
weightMultiplier = math.min(multiplierCap, math.max(1.0, fishWeight / divisor))
fishing.rodBonus.enabledrequiredboolean
true
Whether better fishing rods provide additional XP bonuses.
fishing.levelBonus.enabledrequiredboolean
true
Whether higher player levels provide additional XP bonuses.
fishing.levelBonus.xpPerLevelrequirednumber
2
Additional XP awarded per player level. This creates a compounding effect where higher level players gain XP faster.

Level Rewards Configuration

The levelRewards section configures rewards given to players when reaching certain levels:

levelRewards = {
    enabled = true,

    rewards = {
        [5] = {
            money = 1000,

            items = {
                { name = 'earthworm', amount = 5 }
            }
        },

        [10] = {
            money = 2500,

            items = {
                { name = 'earthworm', amount = 5 },
                { name = 'bobber', amount = 1 }
            }
        },

        [25] = {
            money = 5000,

            items = {
                { name = 'bait_minnow', amount = 5 },
                { name = 'spinner', amount = 1 }
            }
        },

        [50] = {
            money = 10000,

            items = {
                { name = 'corn', amount = 5 },
                { name = 'sinker_set', amount = 1 }
            }
        },

        [100] = {
            money = 25000,
            
            items = {
                { name = 'bloodworm', amount = 5 },
                { name = 'premium_tackle', amount = 1 }
            }
        }
    }
}
levelRewards.enabledrequiredboolean
true
Enables or disables level-based rewards.
levelRewards.rewardsrequiredtable
Table defining what rewards are given at specific levels. Each key is a level number, and the value is a table with reward details.
levelRewards.rewards[level].moneynumber
Amount of money to give the player when reaching this level.
levelRewards.rewards[level].itemstable
Table of items to give the player when reaching this level. Each item has a name and amount.

Commands Configuration

The commands section configures the administrative commands related to the skill system:

commands = {
    enabled = true,
    
    addxp = {
        enabled = true,
        command = 'addxp',
        help = 'Add XP to a player',
        restricted = 'group.admin'
    },
    
    removexp = {
        enabled = true,
        command = 'removexp',
        help = 'Remove XP from a player',
        restricted = 'group.admin'
    },
    
    setlevel = {
        enabled = true,
        command = 'setlevel',
        help = 'Set a player\'s level directly',
        restricted = 'group.admin'
    }
}
commands.enabledrequiredboolean
true
Master toggle to enable or disable all skill-related commands.
commands.addxp.enabledrequiredboolean
true
Whether to enable the command to add XP to players.
commands.addxp.commandrequiredstring
'addxp'
The command name for adding XP to players.
commands.addxp.helprequiredstring
'Add XP to a player'
The help text shown for the add XP command.
commands.addxp.restrictedrequiredstring
'group.admin'
Access restriction for the add XP command. Only players with this permission can use it.
commands.removexp.enabledrequiredboolean
true
Whether to enable the command to remove XP from players.
commands.removexp.commandrequiredstring
'removexp'
The command name for removing XP from players.
commands.removexp.helprequiredstring
'Remove XP from a player'
The help text shown for the remove XP command.
commands.removexp.restrictedrequiredstring
'group.admin'
Access restriction for the remove XP command. Only players with this permission can use it.
commands.setlevel.enabledrequiredboolean
true
Whether to enable the command to set a player's level directly.
commands.setlevel.commandrequiredstring
'setlevel'
The command name for setting a player's level.
commands.setlevel.helprequiredstring
'Set a player\'s level directly'
The help text shown for the set level command.
commands.setlevel.restrictedrequiredstring
'group.admin'
Access restriction for the set level command. Only players with this permission can use it.