promotional bannermobile promotional banner

Player Activity View

Shows what other players are doing — typing, in GUIs, idle — with in-world particle indicators and animations
Back to Files

Player Activity View (0.0.0-beta.3)

File nameplayer_activity_view-1.21.1-neoforge-21.1.249-0.0.0-beta.3.jar
Uploader
LlaGuiT0LlaGuiT0
Uploaded
Oct 2, 2026
Downloads
14
Size
1.5 MB
Mod Loaders
NeoForge
File ID
9042182
Type
B
Beta
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:player-activity-view-1608907:9042182"

Learn more about Curse Maven

What's new

v0.0.0-beta.3 - Screen mirror right way up, no jitter, typing works

Bug-fix beta for Minecraft 1.21.1 / NeoForge 21.1.249. Five separate fixes, all reported while playing with a second player. The mirrored screen now appears the right way up, stops jittering, and typing actually shows — including the arm animation.

Fix

  • The mirrored screen was upside down. The pixel buffer is not an ordinary texture: glReadPixels reads the framebuffer bottom-row first and glTexImage2D stores that same first row at v=0. Because Minecraft's GUI projection flips Y when drawing into the framebuffer, the buffer's v=0 row is the bottom of the screen, so it was being sampled inverted. V is now inverted on the mirror quad. U is untouched — both conventions already agree on X.
  • The panel jittered side to side forever as soon as the player moved. ParticleRotating overrides Particle.tick() and was not syncing xo/yo/zo, which vanilla does first. Since the mod repositions these particles every tick, the render-time Mth.lerp(partialTicks, xo, x) interpolated between the frozen spawn position and the live one, so the quad swung between two anchors and never settled. A single knockback — for example from hitting someone — was enough to make it permanent.
  • Nothing appeared while typing, and the arms did not move. The typed text was being read as an empty string in every branch: the code carried if (mc.screen instanceof ChatScreen cs) chatText = ""; and the like, with the instanceof bindings declared but unused. Since typing detection requires non-empty input, CHAT_TYPING was never sent. The live text of the screen is now read properly — from the chat and command block EditBox, and from the TextFieldHelper supplier behind the book and sign editors.
  • The arms stayed down when the chat was opened, even though they animated once you started typing. The check demanded the strict CHAT_TYPING state, but opening chat reports CHAT_FOCUSED (box focused, nothing typed yet), so the pose only began with the first character. Restored the 1.0.1 behaviour: any typing GUI — chat, book, sign or command block — with a chat state other than NONE.

Technical Changes

  • The size setting now works. particleSizeScale existed in the config but was never read, so the panel size was fixed. It is now applied in a single place, covering the mirrored screen, the sprite icons and the chat animation at once. Default stays 1.0 (current size, unchanged), and the range is narrowed from 0.1–10.0 to 0.5–3.0 so the panel can be enlarged without covering the screen.

Notes

Beta. Building is verified. None of these fixes could be exercised in-game — that needs a live session with a second player. The V inversion is the only change that could not be confirmed by reading the code: if the mirror comes out mirrored left-to-right instead of upside down, the fix is to invert U instead of V in ParticleDynamic. No dependency or loader version changes.
Inspired by WATUT (What Are They Up To) by Corosus. Independent codebase, no dependency on CoroUtil. Not affiliated with or endorsed by the original author.

JAR: player_activity_view-1.21.1-neoforge-21.1.249-0.0.0-beta.3.jar

This mod has no related projects