Aquarium51-MinimapFriends icon

MinimapFriends

Highlights your Steam friends on the minimap with a colored dot drawn on top of everyone else

Last updated 3 hours ago
Total downloads 1
Total rating 0 
Categories
Dependency string Aquarium51-MinimapFriends-1.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2304 icon
BepInEx-BepInExPack

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

Preferred version: 5.4.2304

README

Minimap Friends

A small BepInEx plugin for On-Together that makes your Steam friends easy to spot on the minimap.

When you open the map (M), every player who is a Steam friend of yours is drawn with a colored dot instead of the default white one, and their dot is rendered on top of the other players' dots (the same way your own dot is), so friends never get hidden underneath a crowd.

Minimap Friends in action

Features

  • Steam friends show up as a green dot on the minimap.
  • Friend dots are drawn above non-friend dots so they're always visible.
  • Your own dot is unchanged and still stays on top.
  • No configuration required.

Installation

With a mod manager (recommended)

Install with Thunderstore Mod Manager or r2modman — it pulls in BepInEx automatically.

Manual

  1. Install BepInEx 5 for On-Together.
  2. Drop MinimapFriends.dll into On-Together/BepInEx/plugins/.

Building from source

Requires the .NET SDK.

dotnet build -c Release src/MinimapFriends.csproj

By default the build compiles against the stripped reference assemblies committed in libs/, so it works without the game installed (this is what CI uses). To build against your live game instead — e.g. to catch API changes after a game update — point ManagedPath at the game's Managed folder:

dotnet build -c Release src/MinimapFriends.csproj \
  -p:ManagedPath="/path/to/On-Together.app/Contents/Resources/Data/Managed"

The built plugin lands at src/bin/MinimapFriends.dll.

CI/CD

Two GitHub Actions workflows drive builds and releases:

  • build.yml — on every push to main, pull request, or manual dispatch: builds the plugin and the Thunderstore package, and uploads the package as a build artifact.
  • release.yml — on a v* tag: builds and publishes the package to Thunderstore, then attaches the .zip to a GitHub Release.

Both build against libs/, so no game files or Steam credentials are needed in CI.

One-time setup

  1. Create a Thunderstore service account token for your team (Thunderstore → team settings → Service Accounts).
  2. Add it to a GitHub Environment named store as a secret called THUNDERSTORE_TOKEN (repo → Settings → Environments → store).
  3. Set namespace in thunderstore.toml to your Thunderstore team.

Cutting a release

The tag drives the version — no manual version bumping required:

git tag v1.2.3
git push origin v1.2.3

release.yml derives 1.2.3 from the tag, stamps it into the plugin and the package, publishes to Thunderstore, and creates the matching GitHub Release.

You can also publish manually:

dotnet tool install -g tcli
dotnet build -c Release src/MinimapFriends.csproj
tcli publish --token <token> --package-version 1.2.3

Updating reference assemblies

The assemblies in libs/ are public-API-only reference stubs generated with Refasmer from the game's Managed DLLs (no game code is redistributed). Regenerate them after a game update that changes the API:

./scripts/generate-libs.sh "/path/to/On-Together.app/Contents/Resources/Data/Managed"

License

See LICENSE.