Skip to content

Releases: zerozshare/OpenFriendMod

NeoForgeV1.1.3

25 May 10:41
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.3 — Neoforge

Embeds Core 1.1.3. Connection-reliability release:

  • Heavy-modpack join fix: with a lot of mods installed (anything that makes Minecraft take >60s to reach main menu), the first join attempt previously failed with Player not registered with the service because the presence broadcaster hadn't ticked yet. v1.1.3 does a synchronous presence push at the start of every join, so the race is gone.
  • 6 timing improvements around the join / host lifecycle: overlay-open presence refresh, JOIN_REQUEST auto-retry once on transient signaling error, smarter "friend just went offline" wording with auto-retry, synchronous presence push on host.start / host.stop, and -32000 series signaling errors mapped to human-readable in-game toasts.
  • Windows firewall guidance toast: on Windows, the first launch shows an OpenFriend HUD toast telling you exactly which two .exe files to allow through Windows Defender Firewall and where the setting lives. Core does not touch the firewall itself (no UAC prompt, no netsh call). macOS / Linux are unaffected.

See RELEASE_NOTES_v1.1.3_core.md for full detail (per-improvement breakdown + before/after table).

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.2

  • Core 1.1.3 with join-preflight + 6 timing fixes + Windows firewall guidance toast + IPC notice → HUD toast
  • Mod-side (this jar): overlay refresh tick now pushes presence.set ONLINE every 5s while the friends overlay is open (item #1 of the 6 timing fixes) — keeps Mojang's view of "this player is here right now" fresh while the user browses friends, so the click on a friend lands cleanly. ToastDispatcher also learned to render Core's new notice IPC notification as an OpenFriend HUD toast.

Windows users

An OpenFriend HUD toast on first launch tells you which two .exe files to allow through Windows Defender Firewall. If a friend tries to join your world and the WebRTC handshake fails, a second error toast fires telling you the firewall is the likely cause. See RELEASE_NOTES_v1.1.3_core.md for the step-by-step.

Channels

NeoForgeV1.1.2

24 May 11:59
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.2 — Neoforge — hotfix

Hotfix release. Embeds Core 1.1.2 which fixes a critical bug where a single Mojang 429 on presence broadcasts would cause every subsequent join attempt to fail with Player not registered with the service → connection reset cascade.

If you experienced "join worked the first time then connection reset on every retry" on v1.1.0 or v1.1.1, this is the fix.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.1

  • Core 1.1.2: PostPresence no longer skips Mojang during a client-side cooldown. Mojang's signaling server requires recent Mojang-side presence to honour any signaling RPC, so blocking presence broadcasts during a cooldown window was breaking joins. Mojang's actual 429 (if still throttled) bubbles up unchanged — the fix only removes the local "don't call Mojang" gate.
  • No Mod-side source changes from v1.1.1. The Mod jar simply embeds the fixed Core 1.1.2 binary.

Symptom you'd have seen

core: POST /presence accepted by hybrid (mojang transiently down); replay queued
      {"mojang_err":"mojang in client-side cooldown"}
core: Signaling WebSocket open
core: Failed to send JOIN_REQUEST {"err":"rpc error code=-32000 message=Player not registered with the service."}
java.net.SocketException: Connection reset

Channels

ForgeV1.1.3

25 May 10:39
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.3 — Forge

Embeds Core 1.1.3. Connection-reliability release:

  • Heavy-modpack join fix: with a lot of mods installed (anything that makes Minecraft take >60s to reach main menu), the first join attempt previously failed with Player not registered with the service because the presence broadcaster hadn't ticked yet. v1.1.3 does a synchronous presence push at the start of every join, so the race is gone.
  • 6 timing improvements around the join / host lifecycle: overlay-open presence refresh, JOIN_REQUEST auto-retry once on transient signaling error, smarter "friend just went offline" wording with auto-retry, synchronous presence push on host.start / host.stop, and -32000 series signaling errors mapped to human-readable in-game toasts.
  • Windows firewall guidance toast: on Windows, the first launch shows an OpenFriend HUD toast telling you exactly which two .exe files to allow through Windows Defender Firewall and where the setting lives. Core does not touch the firewall itself (no UAC prompt, no netsh call). macOS / Linux are unaffected.

See RELEASE_NOTES_v1.1.3_core.md for full detail (per-improvement breakdown + before/after table).

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.2

  • Core 1.1.3 with join-preflight + 6 timing fixes + Windows firewall guidance toast + IPC notice → HUD toast
  • Mod-side (this jar): overlay refresh tick now pushes presence.set ONLINE every 5s while the friends overlay is open (item #1 of the 6 timing fixes) — keeps Mojang's view of "this player is here right now" fresh while the user browses friends, so the click on a friend lands cleanly. ToastDispatcher also learned to render Core's new notice IPC notification as an OpenFriend HUD toast.

Windows users

An OpenFriend HUD toast on first launch tells you which two .exe files to allow through Windows Defender Firewall. If a friend tries to join your world and the WebRTC handshake fails, a second error toast fires telling you the firewall is the likely cause. See RELEASE_NOTES_v1.1.3_core.md for the step-by-step.

Channels

ForgeV1.1.2

24 May 11:56
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.2 — Forge — hotfix

Hotfix release. Embeds Core 1.1.2 which fixes a critical bug where a single Mojang 429 on presence broadcasts would cause every subsequent join attempt to fail with Player not registered with the service → connection reset cascade.

If you experienced "join worked the first time then connection reset on every retry" on v1.1.0 or v1.1.1, this is the fix.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.1

  • Core 1.1.2: PostPresence no longer skips Mojang during a client-side cooldown. Mojang's signaling server requires recent Mojang-side presence to honour any signaling RPC, so blocking presence broadcasts during a cooldown window was breaking joins. Mojang's actual 429 (if still throttled) bubbles up unchanged — the fix only removes the local "don't call Mojang" gate.
  • No Mod-side source changes from v1.1.1. The Mod jar simply embeds the fixed Core 1.1.2 binary.

Symptom you'd have seen

core: POST /presence accepted by hybrid (mojang transiently down); replay queued
      {"mojang_err":"mojang in client-side cooldown"}
core: Signaling WebSocket open
core: Failed to send JOIN_REQUEST {"err":"rpc error code=-32000 message=Player not registered with the service."}
java.net.SocketException: Connection reset

Channels

FabricV1.1.3

25 May 10:38
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.3 — Fabric

Embeds Core 1.1.3. Connection-reliability release:

  • Heavy-modpack join fix: with a lot of mods installed (anything that makes Minecraft take >60s to reach main menu), the first join attempt previously failed with Player not registered with the service because the presence broadcaster hadn't ticked yet. v1.1.3 does a synchronous presence push at the start of every join, so the race is gone.
  • 6 timing improvements around the join / host lifecycle: overlay-open presence refresh, JOIN_REQUEST auto-retry once on transient signaling error, smarter "friend just went offline" wording with auto-retry, synchronous presence push on host.start / host.stop, and -32000 series signaling errors mapped to human-readable in-game toasts.
  • Windows firewall guidance toast: on Windows, the first launch shows an OpenFriend HUD toast telling you exactly which two .exe files to allow through Windows Defender Firewall and where the setting lives. Core does not touch the firewall itself (no UAC prompt, no netsh call). macOS / Linux are unaffected.

See RELEASE_NOTES_v1.1.3_core.md for full detail (per-improvement breakdown + before/after table).

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.2

  • Core 1.1.3 with join-preflight + 6 timing fixes + Windows firewall guidance toast + IPC notice → HUD toast
  • Mod-side (this jar): overlay refresh tick now pushes presence.set ONLINE every 5s while the friends overlay is open (item #1 of the 6 timing fixes) — keeps Mojang's view of "this player is here right now" fresh while the user browses friends, so the click on a friend lands cleanly. ToastDispatcher also learned to render Core's new notice IPC notification as an OpenFriend HUD toast.

Windows users

An OpenFriend HUD toast on first launch tells you which two .exe files to allow through Windows Defender Firewall. If a friend tries to join your world and the WebRTC handshake fails, a second error toast fires telling you the firewall is the likely cause. See RELEASE_NOTES_v1.1.3_core.md for the step-by-step.

Channels

FabricV1.1.2

24 May 11:55
377ea4c

Choose a tag to compare

OpenFriend Mod v1.1.2 — Fabric — hotfix

Hotfix release. Embeds Core 1.1.2 which fixes a critical bug where a single Mojang 429 on presence broadcasts would cause every subsequent join attempt to fail with Player not registered with the service → connection reset cascade.

If you experienced "join worked the first time then connection reset on every retry" on v1.1.0 or v1.1.1, this is the fix.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.1

  • Core 1.1.2: PostPresence no longer skips Mojang during a client-side cooldown. Mojang's signaling server requires recent Mojang-side presence to honour any signaling RPC, so blocking presence broadcasts during a cooldown window was breaking joins. Mojang's actual 429 (if still throttled) bubbles up unchanged — the fix only removes the local "don't call Mojang" gate.
  • No Mod-side source changes from v1.1.1. The Mod jar simply embeds the fixed Core 1.1.2 binary.

Symptom you'd have seen

core: POST /presence accepted by hybrid (mojang transiently down); replay queued
      {"mojang_err":"mojang in client-side cooldown"}
core: Signaling WebSocket open
core: Failed to send JOIN_REQUEST {"err":"rpc error code=-32000 message=Player not registered with the service."}
java.net.SocketException: Connection reset

Channels

NeoForgeV1.1.1

24 May 09:58
7b9ae54

Choose a tag to compare

OpenFriend Mod v1.1.1 — NeoForge — hotfix

Hotfix release. Embeds Core 1.1.1 which fixes a critical merge-layer bug where Mojang permanent errors (403 privacy / 404 not-found / 409 already-friends) were silently swallowed by Hybrid, leading to phantom friends in the overlay and connection reset on join. See RELEASE_NOTES_v1.1.1_core.md for full detail.

If you experienced "the friend appears in my overlay but joining their world fails with connection reset" on v1.1.0, this is the fix.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.0

  • Core 1.1.1: PutFriendAction / PostPresence no longer mask permanent Mojang errors when Hybrid succeeds. Permanent 403 / 404 / 409 from Mojang now surface to the user (matches v1.0.9 behaviour). Transient errors (5xx / 429 / timeout) still get the Hybrid + replay-queue treatment unchanged.
  • No Mod-side source changes from v1.1.0.

Phantom friends from v1.1.0 sessions

If you added a friend in v1.1.0 against a privacy-blocked account, that friend exists only in your Hybrid view. To clean up:

  • Right-click the phantom in the overlay → Remove.
  • Or wait — the Hybrid maintenance loop will eventually drop it.

Hybrid does NOT bypass Xbox privacy

To be explicit: Hybrid is purely a friend-list resilience cache. To actually become friends with someone on Mojang's side (required for joining their world), that person must have Xbox privacy → Communication & multiplayer → "You can add friends" enabled. Hybrid cannot work around that.

Downloads

See OpenFriendMod-v1.1.1/uneoforge/ directory for the per-MC-version jars. Coverage matches v1.1.0 — no MC versions added or removed in this hotfix.

Channels

NeoForgeV1.1.0

23 May 21:13
7b9ae54

Choose a tag to compare

OpenFriend Mod v1.1.0 — NeoForge

In-client Friends List UI for Minecraft Java Edition NeoForge, covering MC 1.20.4 / 1.20.6 / 1.21.1 / 1.21.3 / 1.21.4 / 1.21.5 / 1.21.7 / 1.21.8.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.0.9

Embedded Core 1.1.0 with the new Hybrid Friends-List backend, plus an overlay auto-refresh + a screen-transition leak fix.

NEW — Hybrid Friends-List backend (embedded in Core)

Friends List calls now run against both Mojang and https://hybrid.openfriend.net in parallel and merge the results. The overlay stays populated even when Mojang rate-limits or is briefly down. No configuration — works out of the box.

  • Mojang 429 / cooldown → Hybrid serves the list; UI stays populated
  • Accept / decline / cancel during a Mojang outage → Hybrid accepts immediately; the operation queues for replay against Mojang once it recovers
  • Friend categorization is always Mojang-authoritative — Hybrid never overrides incoming vs. outgoing vs. accepted; it only fills gaps Mojang doesn't yet know about
  • Permanent 4xx errors ("Already friend", bad UUID, self-add 400) don't fill the replay queue

Hybrid is operated by ZSHARE. Server posture: TLS + mTLS, AES-256-GCM encryption of every sensitive field, HMAC-SHA256 blind indexes, parameterized SQL only, JSON-only API + nosniff + HSTS. Server source: https://github.com/zerozshare/OpenFriend-HybridServer

To opt out: block hybrid.openfriend.net at your firewall / hosts file. Core will silently fall back to Mojang-only mode. There is no in-mod toggle.

Friends overlay refreshes in real time while open

Previously the overlay loaded the friend list once on open and stayed stale until you closed and reopened it. Now while the overlay is open, the controller polls friends.list every 5 seconds. Accepted requests / new incoming requests / status changes appear without you having to close and reopen.

Bug fix — auto-refresh leak across MC screen transitions

The 5-second poll cleanup only fired on explicit X / Esc close. Joining a world while the overlay was up leaked the polling thread. Fixed in MCScreenWrapper.removed() which now calls the overlay's cleanup hook on every screen tear-down.

Friend-request "accept" notification clears on first press

The accept button on a pending friend request had to be pressed 2–3 times before the notification disappeared. Root cause was the merge dedupe in Core dropping the just-accepted friend back into "incoming" on the next refresh. Fixed by the Core merge rewrite (see RELEASE_NOTES_v1.1.0_core.md — "Merge dedupe fix").

Core 1.1.0 — embedded

Hybrid + all the merge / replay-queue / state-transition fixes. See RELEASE_NOTES_v1.1.0_core.md for the full Core changelog.

Downloads (8 jars)

File MC Minimum NeoForge Java
OpenFriend-neoforge-1.20.4.jar 1.20.4 20.4.237 17
OpenFriend-neoforge-1.20.6.jar 1.20.6 20.6.119 21
OpenFriend-neoforge-1.21.1.jar 1.21.1 21.1.205 21
OpenFriend-neoforge-1.21.3.jar 1.21.3 21.3.92 21
OpenFriend-neoforge-1.21.4.jar 1.21.4 21.4.150 21
OpenFriend-neoforge-1.21.5.jar 1.21.5 21.5.97 21
OpenFriend-neoforge-1.21.7.jar 1.21.7 21.7.25-beta (no stable yet) 21
OpenFriend-neoforge-1.21.8.jar 1.21.8 21.8.53 21

Channels

NeoForgeV1.0.9

18 May 15:41
7b9ae54

Choose a tag to compare

OpenFriend Mod v1.0.9 — NeoForge

In-client Friends List UI for Minecraft Java Edition NeoForge, covering MC 1.20.4 / 1.20.6 / 1.21.1 / 1.21.3 / 1.21.4 / 1.21.5 / 1.21.7 / 1.21.8.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.0.8

UI fix + embedded Core 1.0.9 Mojang-parity P2P pass.

Max Players input remembers what you typed across Friends-menu reopens

Typing 100 and opening to friends actually set the server to 100 — but reopening the Friends menu showed the 8 placeholder again. Cause: MultiplayTab was reconstructed on every overlay open. Fix: cached on FriendsController. State (maxPlayers, gamemode, cheats) survives close/reopen.

Core 1.0.9 — embedded

Mojang-parity P2P pass (anti-spoof OFFER gate, symmetric handshake timeout, signaling error propagation, TURN auth caching, PC-FAILED short-circuit). See RELEASE_NOTES_v1.0.9_core.md for details.

Downloads (8 jars)

File MC Minimum NeoForge Java
OpenFriend-neoforge-1.20.4.jar 1.20.4 20.4.237 17
OpenFriend-neoforge-1.20.6.jar 1.20.6 20.6.119 21
OpenFriend-neoforge-1.21.1.jar 1.21.1 21.1.205 21
OpenFriend-neoforge-1.21.3.jar 1.21.3 21.3.92 21
OpenFriend-neoforge-1.21.4.jar 1.21.4 21.4.150 21
OpenFriend-neoforge-1.21.5.jar 1.21.5 21.5.97 21
OpenFriend-neoforge-1.21.7.jar 1.21.7 21.7.25-beta (no stable yet) 21
OpenFriend-neoforge-1.21.8.jar 1.21.8 21.8.53 21

Channels

ForgeV1.1.1

24 May 09:54
7b9ae54

Choose a tag to compare

OpenFriend Mod v1.1.1 — Forge — hotfix

Hotfix release. Embeds Core 1.1.1 which fixes a critical merge-layer bug where Mojang permanent errors (403 privacy / 404 not-found / 409 already-friends) were silently swallowed by Hybrid, leading to phantom friends in the overlay and connection reset on join. See RELEASE_NOTES_v1.1.1_core.md for full detail.

If you experienced "the friend appears in my overlay but joining their world fails with connection reset" on v1.1.0, this is the fix.

⚠️ Unofficial. Not affiliated with Microsoft, Mojang, or the Xbox brand. Use OpenFriend on accounts you control. You assume all risk.

What changed since v1.1.0

  • Core 1.1.1: PutFriendAction / PostPresence no longer mask permanent Mojang errors when Hybrid succeeds. Permanent 403 / 404 / 409 from Mojang now surface to the user (matches v1.0.9 behaviour). Transient errors (5xx / 429 / timeout) still get the Hybrid + replay-queue treatment unchanged.
  • No Mod-side source changes from v1.1.0.

Phantom friends from v1.1.0 sessions

If you added a friend in v1.1.0 against a privacy-blocked account, that friend exists only in your Hybrid view. To clean up:

  • Right-click the phantom in the overlay → Remove.
  • Or wait — the Hybrid maintenance loop will eventually drop it.

Hybrid does NOT bypass Xbox privacy

To be explicit: Hybrid is purely a friend-list resilience cache. To actually become friends with someone on Mojang's side (required for joining their world), that person must have Xbox privacy → Communication & multiplayer → "You can add friends" enabled. Hybrid cannot work around that.

Downloads

See OpenFriendMod-v1.1.1/uforge/ directory for the per-MC-version jars. Coverage matches v1.1.0 — no MC versions added or removed in this hotfix.

Channels