Player Activity View (0.0.0-beta.3)
Curse Maven Snippet
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:
glReadPixelsreads the framebuffer bottom-row first andglTexImage2Dstores that same first row atv=0. Because Minecraft's GUI projection flips Y when drawing into the framebuffer, the buffer'sv=0row 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.
ParticleRotatingoverridesParticle.tick()and was not syncingxo/yo/zo, which vanilla does first. Since the mod repositions these particles every tick, the render-timeMth.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 theinstanceofbindings declared but unused. Since typing detection requires non-empty input,CHAT_TYPINGwas never sent. The live text of the screen is now read properly — from the chat and command blockEditBox, and from theTextFieldHelpersupplier 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_TYPINGstate, but opening chat reportsCHAT_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 thanNONE.
Technical Changes
- The size setting now works.
particleSizeScaleexisted 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 stays1.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 additional files

