DeepRising
A fishing overhaul: 12 new fish, waters, rods and baits, angler levels, a codex, four Legendary fish and a haul you play by hand. Server and client.DeepRising
A fishing overhaul for V Rising. Fishing becomes a hobby of its own: twelve new fish in four families, waters that matter, rods and bait to work up, an angler level to 100, a codex, four Legendary fish with spots the whole server hears about, and a haul you play by hand.
Everything the server decides - bites, quality, catches, progress - is decided on the server; the client module only shows it. The mod speaks English and Polish, following the game's language.
What it adds
The fishing loop
- The bite comes when the server says; hook it quickly and the catch is better. A run of good catches builds a streak that raises quality further.
- Catch quality decides how many fish come up, how rare they are and how much experience they give.
- Rare fish put up a fight: a haul you play as a game of the line's tension - keep the marker on the fish until the haul is full. A trigger of a controller pulls as hard as it is pressed.
Fish and waters
- 12 new fish in four families (Hunt, Blood, Shadow, Slaughter), beside the fish of the game, each region with its own table.
- Shallow, deep and silver water: some fish only bite in deep or silver water, and from angler level 10 the waters are outlined on the map.
- A roaming school of fish now and then, where rarer fish bite more often.
- Now and then creatures come out of the deep instead of a fish.
Gear
- Fishing rods in four tiers, upgraded with materials.
- Baits made from fish, each drawing a family or a fish.
- Rod accessories: Bone Float, Magnet, Reel, Sinker.
Legendary fish
- Four legends - Old Mossback, the Crimson Matriarch, the Argent Leviathan and Voltfang - each asking for something of its own (a full streak and a Perfect hook, a Blood Moon, daylight, the night), and all of them for a legendary spot, the best rod and the bait of a Rare fish of their family.
- Their spots rise in every region in turn. From angler level 100 an angler hears when and where, and sees a circle to search on the map; anyone may fish one they come upon, and the whole server hears who landed a legend.
- Voltfang sends waves of creatures from the deep; the Argent Leviathan's spot burns with holy radiation and the fish must be hauled through it.
- The first catch of a legend gives a Seal, a small lasting bonus of its family.
What fish are good for
- Brews brewed from fish at the Alchemy table, in three tiers.
- Fish fed to prisoners: each family helps the prisoner in its own way.
- Every new fish refines in the Blood Press and the Advanced Blood Press; legends and some rare fish give gems too.
- Servants on missions by the water bring back no fish rarer than Uncommon (configurable), so the fish worth having are fished by hand.
Progress
- Angler levels 1-100 with milestones: a longer time to hook, easier Perfect catches, the waters on the map, the news of every legend.
- A codex of every region; a complete region gives a bonus to quality there.
- Trophies of the best Perfect catches, and a server record of anglers and first legends.
The client module
- A Fishing tab in the game's menu: codex, angler, gear and records.
- A bait slot beside the action bar and a list of baits and accessories.
- News across the screen, search circles and water outlines on the map, the haul panel.
- Full controller support, with the game's own button pictures.
Requirements
- V Rising 1.1 on a dedicated server. The server part does not run in a game hosted from the client (single player or a private game started from the main menu).
- BepInExPack V Rising on the server and on every client.
- VampireCommandFramework on the server.
- The mod on the server and on every player's game, in the same version. A player without the client module, or with another version, is told so in the chat when joining.
Installation
With a mod manager (r2modman, Thunderstore Mod Manager), install DeepRising for the server and for every player; the dependencies come with it.
By hand:
- Install BepInExPack V Rising on the server and on the game, and VampireCommandFramework on the server.
- Copy the
plugins/DeepRisingfolder of the package intoBepInEx/plugins/on the server and on every player's game. The same files serve both: the server part only runs on the server, the client part only in the game. - Start the server once. It writes
BepInEx/config/DeepRising.cfgand the data files inBepInEx/config/DeepRising/.
To uninstall, remove the DeepRising folder from BepInEx/plugins on both sides. The new fish,
baits and brews vanish from inventories that still hold them.
Configuration
Server, BepInEx/config/DeepRising.cfg - every balance value of the mod, in sections:
[Fishing] (chances, reaction times, bite delays, spots), [Legendary] (how often and how long
legendary spots appear, the search circle, Seals), [Quality], [Progression] (levels, experience,
milestones), [Brews], [Seals], [Gear], [DeepMonsters], [Schools], [Waters], [Servants]
(ServantRarityCap). Each setting is described in the file. [Debug] holds tools for the mod's
development and bug reports (extra logging, dumps, the .fishprobe commands); all of them are off
by default.
Server, BepInEx/config/DeepRising/ - the data the admin edits:
loot_tables.json- every region's fish, junk, legend, monsters of the deep and the hauls of fish; its head describes every field.baits.json- the baits and what they draw.rod_upgrades.json- what each tier of rod costs.
.fish reload reads all of them again without a restart.
Client, BepInEx/config/kpajak.deeprising.client.cfg - the player's keys: [Keys] (rod, bait
list, haul) and [Controller] (the modifier button and what it is pressed with). [Research] holds
tools for the mod's development and bug reports, all off by default.
Controls
| Keyboard and mouse | Controller | |
|---|---|---|
| Fishing pole in hand / away | H |
R3 + D-pad up |
| Bait and accessory list | F6 or a click on the bait slot |
R3 + D-pad down |
| Haul: pull the line | left mouse button | right trigger, as hard as pressed |
| Haul: let the line go | right mouse button or Esc |
B |
| Fishing tab | in the game's menu | LB / RB with the game's tabs |
Chat commands
For players: .fish bait [id|off], .fish gear [id|off], .fish rod, .fish codex [region|all],
.fish trophies, .fish top, .fish status. Everything they do is also in the client module's
interface.
For admins: .fish reload, .fish give <player> <fish> [count], .fish pole,
.fish roll <quality> [count] [region], .fish debug <on|off>, .fish markspot. The
.fishprobe commands are tools for testing the mod (.fishprobe legend, .fishprobe catch,
.fishprobe servanttimers and more); they are off unless [Debug] ProbeCommands = true, as some of
them change characters and the world for good.
Compatibility
- Made for and tested on V Rising 1.1.13 with BepInEx 6 (BepInExPack V Rising 1.733.2) and VampireCommandFramework 0.11.0.
- Tested with two players on a dedicated server. PvP servers and other mods that change fishing, servants, prisoners or the Blood Press have not been tested.
- The mod adds new items under its own fixed GUIDs; a world saved with it keeps them for as long as the mod is installed.
Troubleshooting
- The server's log is
BepInEx/LogOutput.login the server folder; the game's isBepInEx/LogOutput.login the game folder. Lines of the mod start withDeepRising. - "version mismatch" in the chat when joining: the server and the client have different versions of the mod; install the same one on both.
- A rejected
loot_tables.jsonis reported in the server's log and by.fish reloadwith the reason; the mod then leaves fishing as the game has it until the file is fixed.
Credits
- BepInEx, Il2CppInterop and HarmonyX.
- VampireCommandFramework by deca.
- The icons of the twelve new fish, the Seal of the Deep, the brews and the rod accessories come with the mod. The icons of the new fishing rods are drawn by the client module from the game's own icon, recoloured.
- Written with the help of an AI: Claude Code with the Claude Opus model by Anthropic wrote most of the code under the author's direction, and the author tested every feature in the game.
Yes, I used Claude Code so I could figure out how to add new items to it. The README file was also generated by AI. I just didn't feel like writing it myself
License
The code is under the MIT License (see LICENSE).
