Add instant-replay plugin - #14211
Conversation
Rolling-buffer gameplay clip recorder. Adds JCodec (pure-Java MP4 encoder) to the third-party verification metadata. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
New plugin |
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
This plugin requires a review from a Plugin Hub maintainer. The reviewer will request any additional changes if needed. Internal use only: Reviewer details Maintainer details |
|
Thanks for the automated feedback. To clarify where those flags come from: The I can confirm the split: a scan of the plugin source has zero matches, while ~11 of JCodec's bundled classes reference those APIs internally. A couple of options, whichever you prefer:
Let me know which you'd prefer and I'll adjust the PR accordingly. Thanks for your time reviewing! |
|
use of jcodec dependency is not allowed |
Remove the JCodec third-party dependency and its verification metadata per maintainer feedback. Plugin is now pure-JDK; manifest points at the AVI-only commit. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Understood, thanks - I've removed JCodec entirely. The plugin now ships AVI-only (MJPEG-in-AVI via its own muxer) and is 100% pure-JDK with no third-party dependencies. I've also reverted the verification-template and verification-metadata changes, so this PR is now just the single |
Got it removed and updated, check it out! |
|
set build=standard in runelite-plugin.properties since you arnt using any additional dependencies anymore |
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Done - switched to build=standard and updated the manifest commit. Thanks! |
|
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Done - removed it, the encode pool now uses a fixed thread count. Updated the manifest commit, build is green. |
|
i should have been more descriptive before, it wasnt just the processors, but also maxMemory getting flagged, really any runtime inspection |
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
No worries - removed maxMemory too. There's no runtime inspection left anywhere now; the buffer just uses a fixed 256 MB ceiling that's safe on the stock client. Manifest updated. |
Let me know if there's anything else |
anyway I can get an update on my progress here? :) |
|
going forward we only allow one pr open at a time (github itself will also enforce this), pick the one you want to submit first and create a fresh pr for it |
Sounds good - opened a fresh PR for Instant Replay here: #15098. Thanks! |
Instant Replay
A rolling-buffer clip recorder for OSRS — like ShadowPlay's instant replay. Keeps the last N seconds of gameplay in memory and automatically saves a video clip on new personal bests, valuable drops, collection log slots, pets, quests, combat achievements, and deaths, or on a manual hotkey.
How it captures: via
DrawManager— the same API the core screenshot plugin uses. It only sees the game's rendered frames (never the desktop or other windows), only runs while logged in, keeps frames in memory only, and writes to disk only on a trigger. Nothing is uploaded anywhere.Compliance: Java only, no native code, no external processes, no reflection, no runtime downloads. One third-party dependency — JCodec, a pure-Java MP4 encoder — used for the optional MP4 output; verification metadata is included in this PR. Clips are written as MJPEG-AVI by a small hand-rolled muxer, or as MP4 via JCodec (encoded in parallel chunks off the game thread).
Video only — capturing game audio from inside the JVM isn't practical under Hub rules; this is noted in the README.
Repo: https://github.com/georgeparamore/instant-replay