How to Fish
Install with App

Details

Latest version
1.6.1
Last Updated
First Uploaded
Downloads
13.2K
Likes
1
Size
156KB
Dependants

CustomIslands Loader

Play custom, community-made islands in How to Fish.

An island comes with its own terrain and scenery, and the real game working on top of it: NPCs that talk and trade, working shops with price tags, the boat, creature spawns, even a casino. Built by players, played like the real thing.

Two kinds of island, one mod

Replacement islands stand in for one of the game's five. The map says which one it replaces. A map built from scratch borrows that island's NPCs, shops and progression; a map forked from the game's own island carries its own copies, and the loader makes those copies the real thing at load (see below). Either way everything on it works exactly as the original did.

Added islands are brand new places out in open water. They do not replace anything. They appear on the radar in their own colour, you sail to them like anywhere else, and they carry their own NPCs, shops and wildlife rather than borrowing.

Added islands do not touch your progression. Reaching one needs nothing unlocked, and nothing here writes to your save's island unlocks.

What the loader does to a map at load

A map cannot carry the game's items, bait cards, attachment cards or NPCs: those live inside the game, and a copy of one in a map is a different object as far as the game is concerned. So the map's json carries its paperwork: which stand sells which item, which bait card a bait stand holds, which creature a spawner spawns, and the prefab every NPC is spawned from, all written down when the map was built.

At load the loader does the one thing the game itself does: it loads those assets from the game and hands them to the map, and it stands the game's own NPCs where the map put them. Nothing is opened beside the map, nothing is matched by name, nothing is guessed. The casino, the slot machine and the grill are scene objects of the game's islands rather than loadable assets, so those alone are lifted out of the island the paperwork names and put where the map's copies stand.

Older maps have no paperwork. They keep loading the way they always did: the loader opens the original island beside them and takes what the copy could not carry.

None of this needs a setting. If something on a map still looks wrong, the log says what the loader found and what it changed.

Installing islands

An island is two files that share a name.

  • Replacement: somemap.bundle and somemap.json in BepInEx/plugins/HTFMaps/
  • Added: somemap.island and somemap.json in BepInEx/plugins/HTFExtraIslands/

From Thunderstore, install the island pack with your mod manager and it lands in the right place on its own. There is nothing to configure: the json carries the island's design, including which island it replaces or where in the world it sits.

Installing this mod

With a mod manager (easiest)

  1. Install r2modman or the Thunderstore Mod Manager.
  2. Select How to Fish, search for CustomIslandsLoader, click Install. BepInEx comes automatically.
  3. Install an island pack, then press Start modded.

Manual

  1. Install BepInEx 5 x64 into the game folder, run the game once, quit.
  2. Copy HTFMapLoader.dll into How to Fish/BepInEx/plugins/.
  3. Drop island files into BepInEx/plugins/HTFMaps/ or BepInEx/plugins/HTFExtraIslands/.

Seeing where you are

This used to have a full screen chart on M. It has been dropped: the game already has a radar for direction, and a map that has to draw islands bigger than life to make them visible has to bend the sea around them to match, which is a lot of machinery to end up less accurate than a camera pointed at the ground.

Minimap is that camera. It is a separate download and it shows the world under you live, with your boat in it, on any island including custom ones.

Switching an island back to the original

No file deleting needed. The config has an on/off per island:

[Maps]
UseCustomIsland1 = true
...
UseCustomIsland5 = true

Set one to false and that island loads the ORIGINAL next launch, with the map files left installed for later. Mod manager users can edit this in the manager's built-in Config editor; manual installs edit BepInEx/config/yoxi.htf.maploader.cfg.

This applies to replacement islands. Added islands are separate and are not affected.

Co-op

Everyone in a lobby needs the same mod and the same islands. The game syncs which island is loaded as a number, so a player without them either stands in different scenery than the rest of the crew, or cannot follow you to an added island at all.

Players who join a host stay in step with the wallet: the map's NPCs are registered on their side too, and an NPC the host sold to can never make a joining player drop the wallet update that travels with it.

Any map, whoever built it

A map is two files with the same name: a Unity asset bundle holding the island scene, and a json beside it saying what the island is called, which of the game's islands it replaces (or where it sits if it is an added one) and, for newer maps, the paperwork above. Drop both into BepInEx/plugins/HTFMaps and the loader takes it from there. It does not matter which tool built them.

Skies: players running Living Skies get the full day-night cycle and storms over every island, custom ones included.

A note on testing

This build is tested, but not thoroughly, as I am only one person. There are a lot of combinations I cannot cover on my own. If you hit an issue, please DM me on Discord: yoxiui. Tell me what you were doing and send your BepInEx/LogOutput.log if you can, and I will get it fixed.

Notes

  • Contains no game assets. Islands and tools are all generated content.
  • An island's bundle must sit beside its json, both named the same.

More from Yoxi

  • Minimap - a live minimap in the corner, and the companion to this mod
  • BetterIslands - an island pack: hand-built replacements for the game's islands
  • MoreIslands - an island pack of brand new places out in open water
  • Living Skies - day-night cycle plus storms, rain, lightning and thunder
  • Better Oceans - a better sea to sail and fish in
  • Torch - a torch you can carry and light the dark with

A note on AI

I used AI to help with parts of this mod, which is why it has the AI-generated tag. But let me be straight about it: AI did not make this mod, I did. Every idea in here is mine. I worked out how the game loads its islands, I built and tested every custom island this runs, I sat in the game for hours watching maps load, break and load again, and I threw out and redid anything that was not right, over and over, until it was. AI helped me write some of the code faster. There is only so much AI can do, and the rest, which is most of it, is me.


Built by Yoxi.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.