NFish - The optimized GMod fishing game system - Script
NFish is an optimized addon for Garry's Mod that introduces an immersive and realistic fishing system for servers. With engaging game mechanics, players can choose bait, catch various types of fish, and sell their catches to a Fishermonger NPC to earn money. NFish includes a fishing skill progression system, a competitive ranking system, and a full admin menu to manage server settings. Fully optimized, it ensures high performance without overloading bandwidth, and is compatible with various other GMod addons to enhance the gameplay experience.
❮
❯
Description of NFish - The optimized GMod fishing game system
Summary:- 🎣 What is NFish? Discover NFish - The Optimized GMod Fishing Game System
- 🚀 Skill System and Level Progression for Fishing
- 🐟 Types of Entities in NFish: Fish, Bait, and Equipment
- 👤 A Fishermonger NPC
- 🎮 Realistic and Immersive Gameplay Mini-game
- 🏆 Leaderboard System and Competitions on Your Server
- 💰 Reward System Based on Fish Size
- ⚙️ Full Admin Menu in NFish
- ✔️ Customizable Server Options via Admin Menu
- ⚡ Advanced Optimization for Enhanced Performance
- 🪙 Monetize your Gmod server with VIPs
- 🧩 GMod Addons Compatible with NFish
🎣 What is NFish? Discover NFish - The Optimized GMod Fishing Game System
NFish is a GMod addon designed to add rich and fun gameplay to your server without sacrificing performance. Fully optimized, it is built for efficient server resource usage, minimizing bandwidth and CPU load. It allows you to introduce an immersive and dynamic fishing system while ensuring maximum stability. You can check server load at any time using the command net_graph 3.
Players can choose from different customizable bait, with each fish species having its preferences and capture conditions, such as distance from the shore, water depth, or the map used. NFish offers a realistic fishing environment where each session is unique.
🚀 Skill System and Level Progression for Fishing
NFish includes a skill system that tracks player progress in fishing. Each player can level up based on the number of fish caught, with levels directly influencing gameplay. Players can save their progress between sessions, encouraging long-term engagement.
At higher levels, the green comfort zone (needed to reel in the fish) expands, and players can cast the hook farther, allowing them to reach rare fish in deep waters. This progression adds an RPG aspect to fishing, making the experience more rewarding as players level up.
🐟 Types of Entities in NFish: Fish, Bait, and Equipment
NFish offers a variety of entities to enrich the gameplay, including a range of elements for fishing:
-12 types of bait that players can choose and use to attract different species of fish.
-12 spawnable fish species with unique behaviors and preferences.
-11 types of fishing rods, each with specific characteristics (though variation is mainly aesthetic, stats depend on the fishing level).
-Fishermonger NPC who acts as a merchant for selling fish and buying additional bait.
Players can interact with these entities in an immersive and fluid manner, based on their preferences and the game's situation.
👤 A Fishermonger NPC
The Fishermonger NPC is a central character in NFish. He allows players to sell their caught fish in exchange for virtual money. Every fish caught is automatically stored in a fish basket (an inventory dedicated to fishing), and players can visit the Fishermonger to sell their catch and replenish their bait.
This NPC enhances immersion by adding an economic dimension to the game, creating a local economy based on fishing. In addition to managing fish and bait stocks, the Fishermonger can also display the server leaderboard and provide information on the fish.
If the Gmod Advanced Inventory System is installed, you can store your fishing loot directly in your inventory.
🎮 Realistic and Immersive Gameplay Mini-game
NFish offers realistic yet accessible gameplay. Fishing in NFish is much more than just passive waiting: it requires patience and technique. The fishing system works interactively, requiring quick reactions when the fish bites the bait.
Here’s how it works:
-Hooking the fish: The player must pull the line at the right moment when the fish starts nibbling on the bait. Pulling too early or too late will cause the fish to escape.
-Reeling: By right-clicking, the player starts reeling in the fish while keeping it within a green comfort zone. If the fish leaves this zone, the tension on the line increases, represented by a red bar. If the tension reaches 100%, the line breaks, and the player loses both the fish and the bait.
-Results Display: Each caught fish is evaluated, and a menu appears showing the size, weight, species, and a star rating is assigned. If the player breaks a record, their name will appear on the leaderboard.
Players can choose to keep the fish or release it.
If the Karma and Reputation System is installed, releasing the fish will grant Karma points, improving the player's reputation.
🏆 Leaderboard System and Competitions on Your Server
NFish integrates a leaderboard system based on the size and weight of the caught fish. Players can compare their performance with others, adding a competitive dimension to the game. The leaderboard can be reset by admins to host regular competitions, without resetting players' skill progression.
This helps maintain player interest over time and energizes servers with fishing-centric events.
💰 Reward System Based on Fish Size
If you prefer a more minimalist system without a Fishermonger NPC, NFish offers an automatic reward system based on the size and weight of the fish. As soon as a fish is caught, a reward is calculated and awarded to the player without the need for additional interaction.
Fish can also be integrated into a configurable shop system, providing flexibility for server admins.
⚙️ Full Admin Menu in NFish
The NFish admin menu is a powerful tool that allows admins to manage all system functionalities. From this menu, you can:
-Access player and fish databases
-Reset leaderboard or individual progression
-Manage bait and fish species
-Modify entity characteristics
This comprehensive menu allows fine and efficient management of the NFish system.
✔️ Customizable Server Options via Admin Menu
Admins have access to several customizable options to adapt NFish to the specific needs of their server. These options include NPC configurations, leaderboard systems, and reward systems. You can also disable certain Fishermonger features or modify its 3D model through the config file.
⚡ Advanced Optimization for Enhanced Performance
NFish is optimized to ensure high performance on GMod servers, even with limited resources. The fishing line management system is designed for heavy usage, with no impact on server bandwidth. You can monitor performance in real time using the command net_graph 3.
NFish is ideal for servers looking to provide rich gameplay without compromising stability or performance.
🪙 Monetize your Gmod server with VIPs
To monetize a Garry's Mod (Gmod) server using NFish, VIP players enjoy an advantage when selling fish: NPCs buy their fish at a higher price compared to other players, providing an extra incentive to purchase VIP status. Introduced in version 1.1, this feature is fully customizable and can be disabled if needed. For more details on configuring the VIP groups that benefit from this advantage, refer to the dedicated wiki.
🧩 GMod Addons Compatible with NFish
NFish is compatible with several other GMod addons, such as:
Leveling Systems: Integrate fishing experience with overall character progression.
Gmod Advanced Inventory System: Though NFish has its own inventory, it is compatible with my GMod inventory systems.
Money Systems: Use an external currency system to handle rewards or shop purchases.
Configurable NPC Merchants: Create merchants who buy fish at prices you set, giving more freedom than the included NPC.
Character Systems: Associate fishing skills with specific characters for customized progression.
Karma and Reputation Systems: Releasing a fish gives Karma points, a relaxing way to improve character reputation.
Path: garrysmod/addons/norda_fishing_system
- The AddWorkshop function is automatically added to the script server file and can be deactivated from the configuration file. : resource.AddWorkshop( 3342536415 )
- To add gmod workshop resources to your collection : NFish - The optimized GMod fishing game system [Content Only] | Gmod Workshop
The console command: norda_fishing_system
From the Norda Admin System shortcut menu
-The console command: nfish_wiki
-Talk to NPC Finn the Fishermonger
-From the admin panel
-From the menu displaying the stats of a caught fish
During contests, you can reset the leaderboard and, at the end of the event, easily determine who the winner is. This creates a healthy and engaging competitive atmosphere on the server. You are free to choose the reward.
When you have a fishing rod in hand, click left mouse button to cast the hook into the water. A gauge will fill up, indicating the strength of the cast. As your fishing level increases, your casting power will improve, allowing you to cast further.
Reeling in:
Use the right mouse button to reel in the line or pull the fish when you've hooked one.
Changing bait and managing inventory:
Press the reload key to open your bait inventory. From there, you can attach a new bait to your hook. You will also see your caught fish inventory, which you can sell to the Fishermonger NPC included in the NFish system.
After choosing your bait and casting the hook, you will see it sink slowly into the water. An indicator shows the distance between the hook and the surface, as well as the depth. Note that some fish are only found at the bottom, while others are at different levels.
Waiting for the fish:
If a fish swims near the hook, it may ignore the bait and continue on its way. Be patient. Other fish may become interested in the bait.
Hooking (catching the fish):
When a fish starts nibbling at the bait, it’s time to hook it by clicking the right mouse button. The bar will turn green, indicating that it’s time to start reeling in.
Reeling in:
While holding the right mouse button, you will hear the reel. But be careful! Reeling will move the fish's "comfort zone." During this time, the fish will struggle and try to escape by moving left and right.
Comfort zone:
If you reel in when the bar is green, the fish will get closer to you. However, if the fish leaves its "comfort zone," the tension on the line will increase.
Managing tension:
The tension on the line is represented by a red bar. If this bar reaches 100%, the line will break, and you will lose the fish, as well as the bait.
As you level up, the size of your “comfort zone” while fishing increases, making it easier to catch fish.
cfg.npc_mdl = "models/player/group02/male_08.mdl"
cfg.npc_rebuy = 1 --1= NPC can buy the fish of the player
cfg.npc_sell_baith = 1 --1= NPC can sell bait
cfg.npc_ranking_menu = 1 --1= NPC can show the ranking menu
cfg.npc_fish_info = 1 --1= NPC can show the information about fish
cfg.units_mod=0 --0= centimètre(cm) / kilogramme(kg), 1= inches(") / pound(lb)
To define the VIP groups concerned by the advantage of buying back fish, use the cfg.VIP_GROUP variable in the configuration file:
cfg.VIP_GROUP={vip=2,superadmin=2}
The number is the multiplier.
For third-person view: You likely have something that disables the display of the weapon's world model:
Player:DrawWorldModel( boolean draw )
For first-person view (FPS view): You likely have something that overrides:
WEAPON:ViewModelDrawn( Entity ViewModel )
----- Money System -----
-- 0 = Use my Gmod Money System + HUD Maker
-- 1 = DarkRP money
cfg.Money_System=0