PonyFisher-NewRadioTracks icon

NewRadioTracks

Adds six custom radio tracks to How to Fish using dynamic unused-frequency placement.

Last updated a day ago
Total downloads 119
Total rating 1 
Categories Mods Audio
Dependency string PonyFisher-NewRadioTracks-0.4.1
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

New Radio Tracks

Note: My other radio tracks mods are deprecated and may not work properly with this mod. NewRadioTracks is the main radio tracks mod that will be maintained from now on.

A How to Fish radio expansion mod that adds six extra stations to the handheld radio while keeping the vanilla stations.

Included songs

  • Dockside Lo-Fi - Chillout ambience
  • Fish Fish - Bubbly background music
  • Lock in - Music for fighting fish
  • Casino Royale - Full house boogie
  • Let it Ride! - Spin to win
  • Tropicalada - Groovy Island vibes

What the mod does

  • Keeps the original in-game radio stations.
  • Adds 6 new radio tracks as extra stations.
  • Loads the included bundled OGG files automatically.
  • Reads the vanilla station frequencies at runtime.
  • Finds open spots in the radio band and places the six custom stations there.
  • Automatically narrows station overlap if needed so adjacent stations stay distinct.

How the frequency placement works

The plugin reads the current vanilla RadioChannel frequencies from the game when the radio spawns. It then searches the actual radio band (normally 88–108) and inserts the six custom stations into the largest open spaces.

The original vanilla station centers are not moved.

The exact chosen custom frequencies are printed to the BepInEx log when the radio is initialized.

Included audio files

This package ships with:

  • music/Dockside.ogg
  • music/Fishing3.ogg
  • music/LockIn.ogg
  • music/CasinoRoyale.ogg
  • music/LetItRide.ogg
  • music/Tropicalada.ogg

Install for testing

After building locally, copy the built mod folder to:

How to Fish/BepInEx/plugins/ThreeNewRadioTracks/

or run:

.\build.ps1 -GameDir "C:\path\to\How to Fish" -Deploy

Building

Requirements:

  • How to Fish installed
  • BepInEx installed for How to Fish
  • .NET SDK

This project does not redistribute any game or BepInEx assemblies.
The build script copies the required reference DLLs from your own game install.

Run:

.\build.ps1 -GameDir "C:\Program Files (x86)\Steam\steamapps\common\How to Fish" -Deploy

The script will:

  1. copy needed Unity/BepInEx references into refs/
  2. compile the plugin
  3. place the output in dist/FishingRadioExpansion/
  4. optionally deploy it into the game's BepInEx/plugins folder

Thunderstore packaging

To create the final Thunderstore staging folder after you build locally:

.\package.ps1 -GameDir "C:\Program Files (x86)\Steam\steamapps\common\How to Fish"

That creates:

dist/Thunderstore/

with:

  • manifest.json
  • README.md
  • CHANGELOG.md
  • icon.png
  • FishingRadioExpansion.dll
  • music/ folder with the six OGG files

Zip the contents of dist/Thunderstore/ and upload that ZIP to Thunderstore.

Current implementation status

Implemented

  • Loads the three bundled OGG tracks
  • Keeps vanilla channels
  • Adds three new RadioChannel entries
  • Dynamically chooses three open frequencies
  • Preserves vanilla station centers
  • Automatically adjusts tuning width to reduce bleed
  • Logs the selected custom frequencies

Not yet implemented

  • Additional physical visual dial marker objects on the radio model

The functional radio stations are implemented first. After testing in-game, visual dial markers can be added safely with UnityExplorer if desired.

Compatibility target

Designed around current public How to Fish radio internals used by mods targeting:

  • How to Fish 1.0.9
  • Unity 6000.4.4f1 Mono
  • BepInEx 5.4.23.5 / Harmony 2.x

If the game updates and private field names change, the plugin will log clear radio-target errors in BepInEx.