Skip to content

Releases: Refilewski/Azimuth-RPC

AzimuthRPC 0.9.9 — Discord Log Upload TEST 2

Choose a tag to compare

@github-actions github-actions released this 18 Oct 21:21
977e01b

AzimuthRPC - Discord Log Upload TEST 2

Fixes live log sharing errors from TEST 1.

  • The Send logs to Discord option can read an active log file without closing AzimuthRPC or the game.
  • Opens a shared read handle compatible with the running logger's write handle.
  • New Windows smoke regression reads the log while the writer remains open.
  • Keeps the preview, manual confirmation, redaction, HTTPS relay, and rate limiting.

This is a standalone test pre-release with the v0.9.9 vehicle reader. It does not include pending PR #5 / v1.0.0 car identification changes, and the server upload still needs real-world validation.

Source: #9

AzimuthRPC 0.9.9 — Discord Log Upload TEST 1

Choose a tag to compare

AzimuthRPC Discord Log Upload Test 1

This is a test pre-release, not the official v1.0.0. It is built from PR #8 and contains the new standalone tray menu action: Send logs to Discord...

  • Manual opt-in only; no automatic upload.
  • Shows a read-only preview and requires explicit confirmation.
  • Sends selected recent diagnostics with common credential and Windows profile redaction.
  • Uses a rate-limited HTTPS relay; no Discord webhook credentials embedded in the EXE.
  • You can still use the local Open log folder command.

Known limits: the FH2ML native DLL has no tray UI. Network delivery to Discord needs a live user test. This standalone test build does not include pending PR #5 car-detection changes; it has the regular v0.9.9 car reader.

Source: #8

AzimuthRPC 0.9.9 - CarProbe TEST 1 (PR #5)

Choose a tag to compare

Experimental build for live FH2 testing: PR #5 (heap-backed car ID reader)

TEST BUILD — NOT A VERIFIED FIX. This is the standalone Windows EXE from PR #5 commit cf92fca. The source changes are NOT merged into main, and the official v0.9.9 remains unchanged.

Fix candidate: when the inline car ID field becomes invalid after changing vehicles, attempt a guarded MSVC-style heap-string decode. The layout is still a hypothesis; CI build and synthetic regression tests passed, but this candidate needs live verification.

Test at least five car changes plus a race/garage transition, including cars with long model IDs. Please report actual vehicle name and CarProbe=ok, ok-heap, heap-*, or invalid-character from the log. If the identifier is still missing or wrong, attach sanitized logs to issue #4.

Related: PR #5 #5 and issue #4 #4.

AzimuthRPC v0.9.9

Choose a tag to compare

@github-actions github-actions released this 17 Oct 23:30

AzimuthRPC v0.9.9

Discord Rich Presence polish and car-detection diagnostics.

  • "Loading Race" now appears without a second line: removes the generic "Forza Horizon 2 via Azimuth" state and prevents a stale car or speed from being shown while loading. This applies to both standalone EXE and native FH2ML DLL.
  • The standalone log now records changes to a compact, privacy-conscious snapshot diagnostic: game UI mode, inferred activity, hook/telemetry status, event context and car ID parse result. No raw game-memory bytes are dumped.
  • Car ID validation now reports a reason such as empty, too-short, unterminated, invalid-character, missing-underscore, or ok so users with missing vehicle names can provide actionable logs.
  • Adds automated regression coverage for race-loading second-line suppression and snapshot diagnostics.
  • Retains v0.9.8 standalone startup log fallback and the log folder shortcut, plus the v0.9.7 native startup diagnostics.

Compatibility

Still targets FH2 Xbox One 1.0.0.64 through Azimuth. This release does not change memory offsets or claim confirmed compatibility with every Azimuth version or mod combination.

Collecting useful reports

Use %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log (or the standalone fallback %TEMP%\AzimuthRPC\AzimuthRPC.log). Include the Snapshot diagnostic: lines with your Azimuth version, other mods such as Extra Options, and whether you used the EXE or FH2ML DLL. Please review/redact any sensitive data before sharing.

AzimuthRPC v0.9.8

Choose a tag to compare

@github-actions github-actions released this 17 Oct 23:20

AzimuthRPC v0.9.8

Standalone EXE and FH2ML DLL diagnostic reliability update.

  • The standalone EXE now shows a startup error if logging cannot be initialized instead of exiting without explanation.
  • If the standard AppData log is unavailable, standalone logging falls back to %TEMP%\AzimuthRPC\AzimuthRPC.log and tells the user where it is.
  • Added an Open log folder item to the Windows system-tray menu and a clear notice when AzimuthRPC is already running.
  • The CI standalone smoke test now verifies the creation of a real startup log, not just the process exit code.
  • Keeps the v0.9.7 native DLL diagnostics: FH2ML_Initialize records startup before checking the host API, including a reason for incompatible API, missing callbacks, and unsupported FH2 image checks.
  • Corrected the documented log path.

This update does not modify car offsets or prove compatibility with Azimuth 0.9.10. It's designed to help investigate installations where the car does not show up or diagnostics never appear.

Logs

Standard location for both EXE and FH2ML DLL: %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log. The previous log is rotated as AzimuthRPC.log.1 when needed.

Standalone fallback when AppData cannot be used: %TEMP%\AzimuthRPC\AzimuthRPC.log.

If no log appears even with v0.9.8, check whether the EXE actually launches (or is already running in the tray), or whether the FH2ML loader calls the DLL initializer. Include your exact Azimuth version, FH2ML version if applicable, EXE vs DLL, active mods (especially Extra Options) and screenshots of any startup errors in your report. Review logs for sensitive info before sharing.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth. Compatibility with individual Azimuth/FH2ML versions requires live testing.

AzimuthRPC v0.9.7

Choose a tag to compare

@github-actions github-actions released this 17 Oct 23:15

AzimuthRPC v0.9.7

Diagnostics and compatibility troubleshooting release.

  • FH2ML native DLL now writes an initialization trace before validating the FH2ML Host API. An incompatible host API, missing callback or unsupported FH2 image can no longer fail without an AzimuthRPC startup entry.
  • Reports the exact startup rejection reason in the local diagnostic log, including FH2ML API version mismatch and rejected game module.
  • Corrected public and native documentation of the log location.
  • Added a CI contract check that protects early startup diagnostics.

This update does not change the car offsets or claim verified compatibility with Azimuth 0.9.10. Please use these logs to investigate reports of missing car detection and compare results with/without other FH2 mods.

The standalone app's runtime behavior is unchanged apart from the shared version bump.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth. Compatibility with individual Azimuth / FH2ML versions must be tested.

Reporting issues

Both the standalone EXE and native FH2ML DLL write logs to %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log; the rotated previous log is AzimuthRPC.log.1. Native diagnostics may also be mirrored to the FH2ML host log. If no log is created, verify that the EXE launches or that the host loads the DLL and invokes FH2ML_Initialize.

When reporting car detection problems, specify the Azimuth version, EXE vs DLL, FH2ML version if applicable, other active mods (particularly Extra Options), and whether Discord Rich Presence itself connects. Review logs for sensitive data before posting.

AzimuthRPC v0.9.6

Choose a tag to compare

@github-actions github-actions released this 16 Oct 20:44
202408e

AzimuthRPC v0.9.6

FH2ML SDK integration for the native mod.

  • The FH2ML native DLL now consumes the official FH2ML Host API v1 instead of ignoring the initializer argument.
  • Registers azimuth-rpc and its version through RegisterMod during native initialization.
  • Mirrors native diagnostics into the FH2ML host log through Log while keeping the existing AzimuthRPC log.
  • Uses GetGameModule() as the authoritative FH2 base address and no longer scans the process address space with VirtualQuery.
  • Validates the FH2ML API table and the supported FH2 1.0.0.64 PE image before starting the RPC worker.
  • Vendors the MIT-licensed FH2ML SDK header used to build the native DLL.
  • Adds a CI contract check so the host-API integration cannot silently regress back to process scanning.

The standalone app behavior is unchanged apart from the shared version bump.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth.

Reporting issues

Logs are stored at %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log. If rotation occurs, the previous log is retained as AzimuthRPC.log.1. Native FH2ML diagnostics are also mirrored into the FH2ML log.

AzimuthRPC v0.9.5

Choose a tag to compare

@github-actions github-actions released this 16 Oct 19:54

AzimuthRPC v0.9.5

Reliability and diagnostics cleanup for both the standalone app and FH2ML native mod.

  • Throttled Discord Rich Presence updates to a minimum 4-second interval while still sending the latest pending state.
  • Moved standalone and native logs to %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log.
  • Logs now rotate to AzimuthRPC.log.1 after 2 MB instead of deleting previous diagnostics.
  • Fixed the FH2ML native version string so it matches the packaged mod version.
  • CI now validates the standalone, manifest and native C++ versions together.
  • Removed the unused public rpc-config.example.json file; the standalone app does not expose file-based configuration.
  • Kept native teardown non-blocking to match FH2ML ABI v1, which has no hot-unload contract.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth.

Reporting issues

Logs are stored at %LOCALAPPDATA%\AzimuthRPC\logs\AzimuthRPC.log. If rotation occurs, the previous log is retained as AzimuthRPC.log.1.

AzimuthRPC v0.9.4

Choose a tag to compare

@github-actions github-actions released this 16 Oct 19:04

AzimuthRPC v0.9.4

Small standalone packaging and diagnostics fix release.

  • The standalone AzimuthRPC.exe now embeds its application icon directly in the published executable.
  • Standalone diagnostics logging writes AzimuthRPC.log beside the executable when possible, with a %LOCALAPPDATA%\AzimuthRPC\AzimuthRPC.log fallback if the application directory is not writable.
  • Fixed a standalone logger naming collision that could break the build after the logging changes.
  • Release notes are now validated against the project version in CI to prevent publishing stale notes under a newer tag.
  • Standalone and FH2ML package versions are aligned at 0.9.4.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth.

Reporting issues

For standalone issues, reproduce the problem and attach AzimuthRPC.log from beside AzimuthRPC.exe. If that folder is not writable, check %LOCALAPPDATA%\AzimuthRPC\AzimuthRPC.log.

For FH2ML car-detection issues, attach the native AzimuthRPC.log; useful lines begin with Car probe: and include the parser result plus the raw bytes around the current car field.

Known limitations

  • The native FH2ML mod does not yet use the full FH2ML host API because the shared SDK header is not vendored in this repository.
  • Native event-vs-free-roam telemetry is not yet promoted into the FH2ML DLL.
  • Mainland location names currently come from coordinate anchors/coarse polygons; native road/region/landmark discovery is still research work.

AzimuthRPC v0.9.3

Choose a tag to compare

@github-actions github-actions released this 16 Oct 16:38

AzimuthRPC v0.9.1

Small diagnostics and Rich Presence cleanup release.

  • Native FH2ML build now writes AzimuthRPC.log beside the Azimuth executable.
  • The log records the AzimuthRPC version, detected FH2 base, Discord IPC connection state, loaded module names and Rich Presence updates.
  • Car detection now logs the AudioEngine + 0x278 probe result, parser reason, raw ASCII and 64 raw bytes in hex whenever that probe changes. This is intended to diagnose reports where RPC works but the current car is missing.
  • Empty fallback state text is no longer sent to Discord. Screens such as Horizon Hub therefore do not show a redundant second line like Forza Horizon 2 via AzimuthRPC when no useful car/state value is available.
  • Standalone and FH2ML package versions remain aligned at 0.9.1.

Supported game build

Forza Horizon 2 Xbox One build 1.0.0.64 via Azimuth.

Reporting car-detection issues

If Rich Presence works but the car is missing, reproduce the issue in-game and attach AzimuthRPC.log from the Azimuth directory. The useful line begins with Car probe: and includes the parser result plus the raw bytes around the current car field.

Known limitations

  • The native FH2ML mod does not yet use the full FH2ML host API because the shared SDK header is not vendored in this repository.
  • Native event-vs-free-roam telemetry is not yet promoted into the FH2ML DLL.
  • Mainland location names currently come from coordinate anchors/coarse polygons; native road/region/landmark discovery is still research work.