You are viewing a potentially older version of this package. View all versions.
RainbowPonies-Perfect_Shot-1.0.0 icon

Perfect Shot

100% hole-in-one auto-aim solver for Super Battle Golf.

Date uploaded 2 months ago
Version 1.0.0
Download link RainbowPonies-Perfect_Shot-1.0.0.zip
Downloads 18
Dependency string RainbowPonies-Perfect_Shot-1.0.0

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2305 icon
BepInEx-BepInExPack

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

Preferred version: 5.4.2305

README

Perfect Shot

BepInEx plugin for Super Battle Golf. Auto-aim solver that lands 100% hole-in-ones on normal-range shots.

Install

Install via r2modman — it'll pull the BepInEx dependency automatically. Then launch the game and press J to toggle the plugin on.

Keys

  • J — toggle plugin on/off
  • R — auto-aim perfect shot (solver picks pitch, yaw, power — ball goes in)
  • Q — force 100% power in current manual aim
  • M — Metal Mario (KO / freeze immunity from items, swings, carts)
  • L — hole-lock (overcharged homing shot)

Dependencies

  • BepInEx 5 (BepInEx-BepInExPack-5.4.2305) — bundled with Harmony

How it works

Hybrid physics predictor combining:

  • Game's native CalculateFirstGroundHitDistancesJob (Unity Burst, terrain-aware) for drag/gravity/terrain
  • Hand-coded Simulate() for wind + elevation (features the native job doesn't handle)
  • Reflected Wf/Cf from Hittable.settings.Wind — the exact coefficients the game applies in ApplyAirDamping

Two-stage (pitch × yaw) search: coarse sweep of 5 pitches, then refine ±7° around best with 0.2° yaw step for sub-cup-radius lateral accuracy.

Files

File Purpose
Plugin.cs BepInPlugin entry, config bindings, hotkey handling
SwingHook.cs Harmony patches on PlayerGolfer and Hittable; drives the solver each aim frame
WindElevationSolver.cs Two-stage pitch × yaw × power search with native-hybrid physics
NativePhysics.cs Reflection-wrapped access to the game's native physics job
AutoFire.cs R-shot fire coroutine + telemetry (BV-TEL FIRE/LAND lines)
NetworkBugfix.cs Harmony finalizer that swallows CheckpointManager deserialize NREs so player spawns don't abort
INVARIANTS.md First-principles findings, user rulings, and process rules — read before making changes

Research tooling (research/)

Python scripts for parsing telemetry and fitting physics coefficients. Not shipped with the plugin — development use only.

Building

dotnet build -c Release

Output: bin/Release/netstandard2.1/com.lembo.perfectshot.dll — drop into BepInEx/plugins/Lembo-PerfectShot/.