RatioMaster.NET 2.0.0
Full rewrite from WinForms / .NET Framework 4.8 to Avalonia 12 / .NET 11.
- UI rewritten — dark Fluent interface, MVVM with compiled bindings, tabs for running several
torrents at once, a live upload graph, and a status line that reports the session state (tracker
OK / empty swarm / error) with a matching colour on each tab. Layout adapts down to phone width. - Pure emulation — the legacy "read the torrent client's process memory" path is gone, so no
client needs to be installed or running and none is ever touched. RatioMaster can run alongside a
real client; if the emulated listening port is already taken it degrades instead of failing. - Client profiles rebuilt — kept only currently-deployed clients, each checked against what the
real client sends: qBittorrent (default), µTorrent, Transmission and Deluge. Dropped BitTorrent
6.0.3, Vuze, KTorrent and BitComet. Corrected the announce key case, µTorrent's partly hardcoded
peer_idtail (a fingerprint shared by every user), and Transmission'speer_id, which requires
a base-36 checksum a tracker can verify. - Engine hardening — announces are time-bounded, bencode parsing survives truncated files,
redirects resolve correctly, IPv6 peer lists (BEP 7) are supported, and the engine never
overwrites your own settings. - Portable session — tabs, speeds and counters are restored on the next launch. Launching a
second time re-opens the running window instead of starting a competing process. - Android support — the same UI ships as an APK/AAB.
- One build script —
Installer\build_RatioMaster_setup.batproduces a single-file Windows
executable (Native AOT, Skia statically linked), a win-arm64 zip, Linux AppImages for x86_64 and
aarch64, and the Android packages.