A modern funscript video player with The Handy integration, experimental Intiface / Buttplug / Direct Serial support, EroScripts browser login, and multi-language support.
| v0.1.4 Preview | Device Settings |
|---|---|
![]() |
![]() |
| Audio Playback + Heatmap | Audio Playback |
|---|---|
![]() |
![]() |
| Timeline Settings | Windows Playback |
|---|---|
![]() |
![]() |
| Heatmap & Timeline | EroScripts Search |
|---|---|
![]() |
![]() |
| Settings | macOS |
|---|---|
![]() |
![]() |
The v0.1.5-exp.4 prerelease focuses on TCode-compatible multi-axis devices with Direct Serial (COM) support, one-line L0/L1/L2/R0/R1/R2 output, smoother timeline and heatmap playback updates, and improved Handy re-sync after timeline seeks.
| Experimental v0.1.5 Preview |
|---|
![]() |
- Download the prerelease: ScriptPlayer+ v0.1.5-exp.4
- Continuous Playback + Shuffle — Move through the current folder automatically or pick a random next file when playback ends
- Playback Speed Control — Switch between
0.5xand2.0xdirectly in the player while keeping Handy timing aligned - Real Handy Stroke Range Support — Handy stroke min/max settings now transform the uploaded script instead of only changing the UI
- Inverse Stroke Mode — Flip funscript positions before upload for alternate mounting or reversed motion setups
- Video + Audio Player — Play local video files (MP4, MKV, AVI, WebM, MOV, WMV) and audio files (MP3, WAV, FLAC, M4A, AAC, OGG, OPUS, WMA)
- Artwork Detection For Audio — Automatically picks matching cover art from the media folder when available
- Playback Modes — Continuous playback, shuffle playback, and adjustable playback speed controls
- Funscript Support — Automatically loads matching
.funscriptfiles alongside local media - Timeline Visualization — Real-time scrolling timeline showing script action points with speed-based colors
- Heatmap — Full-media intensity heatmap (green → yellow → orange → red → purple)
- Configurable Default View — Timeline and heatmap can be enabled or disabled by default from Settings
- The Handy Integration — Connect and sync The Handy device via HSSP protocol
- Auto-connect & connection history
- Script auto-upload to Handy servers
- Time offset adjustment
- Stroke range customization
- Inverse stroke toggle
- EroScripts Integration — Search and download funscripts directly from EroScripts via in-app browser login (no API key needed)
- Session-based login persisted locally
- Direct download into the configured script storage folder
- Multi-Language — English, 한국어, 日本語, 中文
- Drag & Drop — Drop video or audio files directly into the player
- Folder Browser — Browse folders with subfolder grouping and script detection (green checkmark)
- Keyboard Shortcuts — Space, Arrow keys, F (fullscreen), M (mute), and more
- Cross-Platform — Windows (standalone) and macOS (via GitHub Actions)
- Download the latest
ScriptPlayerPlus-0.1.4-Windows-x64.zipfrom Releases - Extract and run
ScriptPlayerPlus.exe— no installation required - For the experimental Direct Serial / Intiface build, download
ScriptPlayerPlus-0.1.5-exp.4-Windows-x64.zipfrom the v0.1.5-exp.4 prerelease
- Download
ScriptPlayerPlus-1.0.0-MacOS-Universal.zipfrom Releases - Extract and move
ScriptPlayerPlus.appto Applications
git clone https://github.com/sioaeko/scriptplayer-plus.git
cd scriptplayer-plus
npm installDevelopment:
npm run electron:devBuild Windows:
npm run build:winBuild macOS (requires macOS):
npm run build:mac| Key | Action |
|---|---|
Space / K |
Play / Pause |
← / → |
Seek ±5s |
Shift + ←/→ |
Seek ±10s |
↑ / ↓ |
Volume ±5% |
F |
Toggle fullscreen |
M |
Toggle mute |
Ctrl + , |
Open settings |
- Electron — Desktop application framework
- React + TypeScript — UI components
- Tailwind CSS — Styling
- Vite — Build tool
- Handy API v2 — Device communication
- Discourse API — EroScripts integration
PolyForm-Noncommercial-1.0.0
This project is distributed as source-available software for noncommercial use only. Commercial use requires separate permission from the copyright holder.
Built with Electron, React, and Tailwind CSS










