On-Together: Virtual Co-Working
You are viewing a potentially older version of this package. View Latest Version
Install

Details

Date Uploaded
2 weeks ago
Downloads
79
Size
23KB
Dependency string
Aquarium51-MinimapFriends-1.0.0

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.

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