Mods / Catch and Release: Fish

Tags:
Cosmetics Creatures
Author:
MortalityGames
Side:
Both
Created:
Feb 27th at 2:15 PM
Last modified:
3 days ago
Downloads:
1875
Recommended download (for Vintage Story 1.22.0 - 1.22.3):
crfish_1.1.0.zip  1-click install

A companion mod to Catch and Release: Butterflies. Allows fish to be caught live and placed into various sized aquariums.

Requires Catch and Release Lib

Features:

  • Changes the behaviour of fishing pole to catch live fish (instead of killing them on catch)
  • Added 4 types of aquariums of increasing sizes
    • Aquariums must be filled with an appropriate liquid (salt or fresh water). Or just fill them with honey 🀷‍♀️
  • Fish will lazily swim around the aquarium and not get spooked by the player
  • Can place items inside the aquariums just like a display case.
  • Fish that are flopping on the ground can be picked up or 'converted' to a dead fish by using a cleaver
  • Added grid recipe to 'convert' a live fish to a dead fish, by using a knife or cleaver
  • NEW Config options for this mod (see below)
  • NEW Fish must be stored in aquariums or released or otherwise they will become dead fish (configurable)

 

 

Config options

/ModConfig/CR_Fish_Config.json

  • CatchLiveFish: True to catch live fish with fishing pole. False to return to vanilla behaviour (dead fish).
  • InstantFillAquarium: True makes all aquariums require only 1L of liquid to fill. False requires fully filling aquariums.
  • LiveFishPerishHours: How many hours it takes for a fish to die (perish) when not in an aquarium. Default = 48 (2 days). Set to 0 to prevent perishing

 

 


 

 

Known Issues
  • Jumbo aquarium has corner display item slots.

 

Compatibiity

Known supported mods:

 

Supported Languages
  • German
  • Spanish
  • French

 

If anyone is interested in helping to improve the translations, there is a Google Sheet that you can comment on or leave a message on the Catch and Release post in the VS Discord.

 

 

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
1.1.0 crfish
1.22.0 - 1.22.3
403 3 days ago crfish_1.1.0.zip 1-click install

Added feature where fish will die (perish) if they are not stored in an aquarium.

1.0.3 crfish
1.22.1 - 1.22.3
288 5 days ago crfish_1.0.3.zip 1-click install
  • Added new variant for large fishtank (framed or full-glass)
  • Adjusted crafting recipes for large fishtank
  • Retained support for old large fishtank but can no longer be crafted
1.0.2 crfish
1.22.1 - 1.22.3
536 Jul 9th at 2:59 PM crfish_1.0.2.zip 1-click install

Added config to allow: fish not caught live, and tanks instant fill.

1.0.1 crfish
1.22.1 - 1.22.3
360 Jul 6th at 1:17 PM crfish_1.0.1.zip 1-click install

Fixed bug preventing catching fish (when no entity fish present).

1.0.0 crfish
1.22.0 - 1.22.3
288 Jul 5th at 8:57 AM crfish_1.0.0.zip 1-click install

Initial release.


28 Comments (oldest first | newest first) (threaded | flat)

Nicodemus, 5 days ago

MortalityGames Exquisite πŸ‘Œ πŸ˜‰

fishies

Nicodemus, Jul 12th at 4:06 PM

Was making the sides of the 2 blocks aquariums transparent too tricky? Or a personal choice of texture?
If it was a choice, would it be too much to ask for a transparent version of those? ^^ Like the 1 block ones (just for the full transparent look, not the dimensions).

In any case, your mod is already really great ;)

Nicodemus, Jul 9th at 3:38 PM (modified Jul 9th at 9:47 PM)

OMG why the search didn't show me your mod??
I created a useless one ><

Yours looks wayyy better. πŸ‘

MortalityGames , Jul 10th at 1:06 PM
@Nicodemus: OMG why the search didn't show me your mod??I created a useless one ><Yours looks wayyy better. πŸ‘

Oh, I saw your mod. Technically yours was first 😁
This one was intended to be a small mod but it took a couple of months longer than I wanted it to (because of the multi-block aquariums and such).

ShadeDarkfire, Jul 8th at 8:42 AM

On a server and while we were able to put a fish into the tank. The next day we logged on the fish were invisable and intracting with the tank disconnects us from the game.

MortalityGames , Jul 8th at 7:50 PM
@ShadeDarkfire: On a server and while we were able to put a fish into the tank. The next day we logged on the fish were invisable and intracting with the tank disconnects us from the game.

The server likely has an error in its log. I might be able to do something if I see the error.
Also let me know if this server is running on Linux. I have had reports of entities not rendering on Linux servers.

ShadeDarkfire, Jul 8th at 9:10 PM
@MortalityGames: The server likely has an error in its log. I might be able to do something if I see the error.Also let me know if this server is running on Linux. I have had reports of entities not rendering on Linux servers.

Once I can ill try to run some more test to find a error in the logs. Was pretty late and my tired brain probably missed it. As for type of server I'd try to figure that out I just know its BisectHosting for the hosting.Once I have more time again ill try and figure out if Bisect is using Linux.

ShadeDarkfire, Jul 10th at 3:20 AM
@MortalityGames: The server likely has an error in its log. I might be able to do something if I see the error.Also let me know if this server is running on Linux. I have had reports of entities not rendering on Linux servers.

This is what I could find atm for the disconnect.

Crash Report

9.7.2026 20:09:27 [Server Event] Player ShadeDarkfire got removed. Reason: Threw an exception at the server
9.7.2026 20:09:27 [Server Error] Exception: Object reference not set to an instance of an object.
   at CatchAndRelease_Lib.BlockEntityCage.SpawnEntity_Patch1(BlockEntityCage this, Item item)
   at CatchAndRelease_Lib.BlockEntityCage.UpdateSpawnedEntities() in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockEntityCage.cs:line 502
   at CatchAndRelease_Lib.BlockEntityCage.MarkDirty(Boolean redrawOnClient, IPlayer skipPlayer) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockEntityCage.cs:line 468
   at Vintagestory.API.Common.InventoryBase.DidModifyItemSlot_Patch2(InventoryBase this, ItemSlot slot, ItemStack extractedStack)
   at Vintagestory.API.Common.ItemSlot.OnItemSlotModified(ItemStack sinkStack) in VintagestoryApi\Common\Inventory\ItemSlot.cs:line 459
   at Vintagestory.API.Common.ItemSlot.TakeOutWhole() in VintagestoryApi\Common\Inventory\ItemSlot.cs:line 178
   at CatchAndRelease_Lib.BlockEntityCage.TryTakeCreature(IPlayer byPlayer, BlockSelection blockSel) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockEntityCage.cs:line 294
   at CatchAndRelease_Lib.BlockEntityCage.OnInteract_Creature(IPlayer byPlayer, BlockSelection blockSel) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockEntityCage.cs:line 169
   at CatchAndRelease_Lib.BlockEntityCage.OnInteract(IPlayer byPlayer, BlockSelection blockSel) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockEntityCage.cs:line 130
   at CatchAndRelease_Lib.BlockLiquidCage.OnBlockInteractStart(IWorldAccessor world, IPlayer byPlayer, BlockSelection blockSel) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\BlockLiquidCage.cs:line 103
   at CatchAndRelease_Lib.code.cage.multipart.BlockCageMultiPart.OnBlockInteractStart(IWorldAccessor world, IPlayer byPlayer, BlockSelection blockSel) in D:\TiMMy\Dev\VintageStory_Mods\CatchAndRelease\CatchAndRelease\CatchAndRelease_Lib\code\cage\multipart\BlockCageMultiPart.cs:line 66
   at Vintagestory.Server.ServerSystemBlockSimulation.HandleBlockInteract(Packet_Client packet, ConnectedClient client) in VintagestoryLib\Server\Systems\World\BlockSimulation.cs:line 500
   at Vintagestory.Server.ServerSystemInventory.HandleHandInteraction(Packet_Client packet, ConnectedClient client) in VintagestoryLib\Server\Systems\Inventory.cs:line 335
   at Vintagestory.Server.ServerMain.HandleClientPacket_mainthread(ReceivedClientPacket cpk) in VintagestoryLib\Server\ServerMainNetworking.cs:line 275
   at Vintagestory.Server.ServerMain.ProcessMain() in VintagestoryLib\Server\ServerMain.cs:line 964
9.7.2026 20:09:27 [Server Event] Client 6 disconnected.
MortalityGames , Jul 10th at 1:12 PM (modified Jul 10th at 1:13 PM)
@ShadeDarkfire: This is what I could find atm for the disconnect. Crash Report 9.7.2026 20:09:27 [Server Event] Player ShadeDarkfire got removed. Reason: Threw an exception at the server9.7.2026 20:09:27 [Server Error] Exception: Object reference not set to an instance o

Ok, for some reason, the game cannot find the fish entities that get placed in the aquarium (these are different from the fish in the world and the fish items in inventory).

  • What version of VS is the server running? You will need to be on 1.22.1 or higher.
  • It is weird that the method name is BlockEntityCage.SpawnEntity_Patch1() - my code does not include the "_Patch1". Are you sure that another mod is not trying to patch the C&R:Fish mod?
  • It would be great if you can test the server with just this mod - if it runs fine then another mod might be causing conflicts.
ShadeDarkfire, Jul 10th at 2:49 PM
@MortalityGames: Ok, for some reason, the game cannot find the fish entities that get placed in the aquarium (these are different from the fish in the world and the fish items in inventory). What version of VS is the server running? You will need to be on 1.22.1 or higher

I can say its on 1.22.3
If its just a compatability issue then very well for now I don't think I'll have the time to look through for the conflict that its from so.
I'll just have to uninstall and look for an alternative for now that works for our server.
But for the little that it worked before when it was first placed down it looked good so I wish you well.

FuegoFish, Jul 5th at 10:22 PM

Having a bit of an issue I can't seem to figure out. Installed this mod, tried using the fishing rod to catch some fish for an aquarium, and the dang things just don't show up in my inventory when I catch 'em. I don't think this is a mod conflict since I tested it without any other fishing-related mods installed, but I'm not sure what it could be.

wXMaddogXw, Jul 5th at 7:56 PM

Does this mod work with ithania fishing expanded?  Would love to use both!  

MortalityGames , Jul 6th at 1:35 PM
@wXMaddogXw: Does this mod work with ithania fishing expanded? Would love to use both!

At a glance it seems that you might be able to run both mods without errors. I tested catching a fish with ithania fish net and they can be placed in C&R aquariums. There might be other issues discovered from longer play.

If you do play with both, let me know if/where compatibility could be improved.

Nubbs, Jul 5th at 2:39 PM

 Do you need to fill the aquariums? Our server has the ability to transport water source blocks turned off. Or is it like how you fill a barrel?

MortalityGames , Jul 5th at 4:51 PM (modified Jul 5th at 4:52 PM)
@Nubbs: Do you need to fill the aquariums? Our server has the ability to transport water source blocks turned off. Or is it like how you fill a barrel?

You do need to fill the aquariums before you can put fish in them. If you have Carry On, you can take the aquarium to the water (except the jumbo aquariums). Otherwise it might take a few bucket trips (maybe make a stack of buckets). Let me know if it is too grueling and I might be able to add a config to not require filling them.

IWillSoonReturn, Jul 5th at 9:58 AM

this is really really cool, do you have plans for even bigger acquariums? 
also do jumbo tanks connect if you place them vertically on top of eachother cause if so that'd be awesome

MortalityGames , Jul 5th at 12:20 PM
@IWillSoonReturn: this is really really cool, do you have plans for even bigger acquariums? also do jumbo tanks connect if you place them vertically on top of eachother cause if so that'd be awesome

Jumbo tanks don't connect, unfortunately. But cool idea 😁

I have been thinking about how to go bigger. I wasn't thinking of a larger aquarium but some way to support a more player-created space - like custom sized aquariums.