Previous Post

MultiFunPlayer v1.34.5

Next Post
MultiFunPlayer v1.34.5
1 / 6
DESCRIPTION

Download: timed patreon only exclusive

1.34.5

Additional patreon only changelog:

Support SLR script streaming when playing local files downloaded from SLR

File name needs to start with "SLR_", "SLRG_" or "SLRT_", and contain "__"

Changelog:

Add support for TCode cubic commands in PolledUpdate mode

Add support for PChip/Makima interpolation when using PolledUpdate, requires TCode v0.4 firmware

Rework The Handy to support firmware v4 (#218)(#164)

Still experimental and needs testing but should work better than previous implementation

Supports 3 modes:

HSSP: uploads the whole script to The Handy and it is played on device (supports range slider, applied only on script load)

HDSP: sends real-time script actions to The Handy using PolledUpdate (supports speed limit, auto-home, range slider)

HSP: sends buffered position updates to The Handy using FixedUpdate (supports all MultiFunPlayer features)

Add ability to create a static index for script libraries

Static index has near instant script search but requires rebuilding when adding new files

Mainly useful for large script libraries or libraries located on remote servers

Improve pacing of fixed update ticks

Enable precise sleep by default in output targets (does not update currently added outputs)

Fix crash when trying to manually recompile a plugin

Fix ZoomPlayer source sending commands in wrong format (#232)

Fix tooltips sometimes auto closing prematurely

Fix plugin tabs not showing up in main window

Remove support for loading funscripts from .zip files

1.34.4

Fix crash when trying to edit device funscript names

Fix unable to clone or rename devices

1.34.3

Additional patreon only changelog:

Fix SLR video not getting detected after navigating the page when using Web source

Changelog:

Show axes used in script groups

Add support for videojs-vr players in Web source, used for example in Stash

Add AdditionalDuration to PolledUpdate

Process script repositories in parallel

Fix Plex accounts list showing duplicates and empty names

Fix script group color not updating when changing theme

Fix json logging causing UI lag when deserializing even when disabled

Fix funscript reader doing a lot of unnecessary deserializations

Fix script libraries not streaming search results

Fix local script repository causing the script refresh task to still run after cancelling

1.34.2

Fix potential crash when changing media

Fix possibility of wrong scripts or no scripts getting matched when rapidly changing media

Fix mpv generating unnecessary path change events when using playlists

Fix script drag-drop not adding scripts to the list

Fix scroll wheel not changing scripts when hovering over script list popup box

Fix selected script clear button not working

Fix changing link axis target not causing the script to be updated

Fix bypass all/none buttons not working

Fix ability to set smart limit input axis to self

Fix ability to set motion provider update with axis to self

Use accurate UTC time for logging

1.34.1

Allow saving passwords in Web window when not in private mode

Create config backups when migrating to new config version

Fix unable to connect to outputs due to exception when generating TCode

Fix Web window only having 1px resize border

1.34.0

Additional patreon only changelog:

Add support for matching all scene scripts in SLR repository, previously only latest user made or AI made script was used

Add support for watching SLR 2D/VR videos in Web source with script streaming

Add support for multi-axis scripts in SLR repository

Add support for multi-axis scripts in FapTap repository

Add support for matching all scripts in HereSphere repository, previously only first script was used

Fix SLR repository not working with hls_h265 videos

Changelog:

Update to .net 10 (performance improvements)

Add support for matching multiple scripts per axis

Allows matching scripts from multiple sources to a single axis, for example multiple script libraries or HereSphere/SLR repotiory scripts.

Matched scripts are organized into colored groups (except when a group contains a single script, then the group has no color). When switching between groups all other axes also switch to that group, when switching to a script within a group only that axis script changes.

For example when switching L0 from orange to purple group, other axes like R0/R1/R2 will switch to the first script in purple group, while switching L0 from first to second script in orange group will not change scripts in other axes.

Users can add shortcuts for easily switching scripts (actions Axis::Script::):

Next/Previous script

Next/Previous script within current group

Next/Previous group

Add support for alternative script names (#145)

MultiFunPlayer now matches script files that start with video file name, so additional text can be added after. For example if the currently played video file is MyVideo.mp4, valid script file names for the L0 axis would be MyVideo.funscript, MyVideo.slow.funscript, MyVideo [fast].funscript etc., and MyVideo.twist.funscript, MyVideo.slow.twist.funscript, MyVideo [fast].twist.funscript etc. for R0 axis.

Rework sync settings to allow ignoring sync per setting/event

Allow hiding unused heatmaps when heatmap is split per axis (#205)

Rework Plex source to use user sessions instead of clients

This allows use of all Plex clients instead of only few select ones, but control (seek, play/pause etc.) from MultiFunPlayer UI can still only happen for those select clients (needs "Advertise as player" enabled)

Add ZoomPlayer support (#134)

Optimize TCode command generation for high frequency updates

Improve UI responsiveness

Fix possibility of some migrations to not run by changing config version from integer to date

Fix additional elapsed time could cause devices to exceed range limits

Fix stuck keyframes preview when media is reset while the popup is open

Fix heatmap "split axes" and "normalize heat" settings not loading

Fix shortcut action configurations not getting marked as valid when missing action gets registered

Fix pasting actions from clipboard not preserving enabled state

Fix duplicated JSON logging

Fix keyframes tooltip content overflowing available space

Fix motion providers not updating time in UI

Fix possibility of unwanted motion when keyframe collection changes at current script position

Fix The Handy output ignoring range settings

Fix custom curve motion provider time overshooting set duration

Fix Plex timeout exception when using auto-connect

Fix ability to shrink output range size below 1% using actions

Fix mpv downloader using old boostrapper script

Fix mpv download popup showing when trying to connect to external instance with auto-start disabled

Fix keyframes tooltip performance degradation when showing script end

Many other small fixes and improvements

Additional plugin changelog: (plugin samples):

Use ignored preprocessor directives for references (#:reference)

Add ability to set plugin metadata which will be visible in UI (#:name, #:version, #:author, #:description, #:url)

Add OnLaunch() method, called after settings are loaded

Call Close() method before saving settings

Add new helper methods to DynamicKeyframeCollection

Add ability to broadcast PolledUpdate events from actions

Prevent possible object disposed exception in PluginBase when using CancellationToken property

Force actions invoked inside other actions to be run directly to prevent dead locks (#196)

Fix plugin compile/dispose race condition when handling file events

Fix DynamicKeyframeCollection RemoveRange removing additional items

yoooi PATREON 50 favs
VIEWS1
FILES6 files
POSTEDMar 10, 2026
ARCHIVEDMar 10, 2026