Skip to content

FH2MP v1.1.0

Choose a tag to compare

@github-actions github-actions released this 27 Oct 04:19
· 16 commits to main since this release

Added

  • Friends, online presence, direct messages and club chat in the launcher, with unread badges and notification sounds.
  • A lobby browser with five-minute seat reservations for the next normal Free Roam or Road Trip matchmaking request.
  • Azimuth 1.0/1.0.1 shim hook layouts, FH2-only startup checks for shared multi-game installations, and native account-picture sync.

Changed

  • Update the upstream FH2 Mod Platform dependency to 2.7.3.
  • Restore mismatched Azimuth TLS helpers only from a local backup verified against the installed executable.
  • Show readable diagnostic attachment names and omit Infinity logs from crash reports.

Fixed

  • Relay owner IDs exceeding the game's 128-entry table after repeated joins, causing lobby-wide crashes. IDs are now bounded and quarantined before reuse. Addresses #97, #98, #102, #103 and #104.
  • FH2MP's XSAPI scanner directly reading memory that was unmapped during inspection, as reported in #155. Header reads now use the safe memory-copy helper.
  • Event settings from a returning host being discarded, and mixed partial car-selection updates leaving the server with an outdated class or PI. Restrictions are delivered before invitations and checked throughout event setup.
  • Azimuth 1.0.1 being identified as 0.9.10 because its executable retains an older settings-migration message.
  • FH2 folder discovery selecting another title's folder in a shared Azimuth installation.
  • Malformed player updates and invalid part combinations being relayed to other players. Player setups are now decoded before relay, with invalid combinations repaired according to server policy. Addresses the captured setups from #84, #85, #86 and #88.
  • Invalid torque-curve counts reaching native physics construction. The game now uses its unavailable-car fallback for rejected curves, addressing that failure path in #88, #106, #128 and #145.
  • Native receive handlers passing oversized or truncated strings to the game's decoder, causing the string-reader bounds failure in #144.
  • Speed traps and speed zones announcing a new personal best on slower passes when the online result was missing or lower than the saved record.