Previous Post

XToys Updates - Nov 17 2021

Next Post
no preview
DESCRIPTION

Well all the new functionality continues to be largely put on hold because of a non-stop stream of bugs and performance issues to tackle.

Pattern Lists

People have enough patterns saved now that loading them all at once has been causing issues both with how much data is transmitted and with how much html has to be rendered.

In particular hour or more long patterns are huge and have started hitting size limits on the Firebase backend.

So far I've changed large patterns to only load the first 30s in the preview page and to not load the entire pattern until you actually are using the pattern. The pattern still starts immediately because it can use the loaded 30s, and it just loads the rest in the background.

I've also changed the list of patterns to not render until you actually scroll it into view.

I also want to tackle having all patterns get cached locally and the server to only send patterns that are newer than the cached copy.

Pattern Drawing

Currently the pattern waveform is completely redrawn every frame, which is obviously horribly inefficient. I'm experimenting with an alternate way of drawing the pattern involving not redrawing at all and instead scrolling the underlying canvas. It's not quite finished but so far it looks like it'll work great and make things both look smoother and have better performance.

It'll also allow me to draw the waveform with a color scale which will be useful once I finally implement e-stim frequency for patterns.

Stroker Direct Position Control

I'm experimenting with adding controls for directly setting the position value of stroking toys. That would allow position to be controlled from scripts, a slider, or by using the draw pattern feature.

I had tried months ago and didn't like how it performed so I opted not to implement it. But I'm taking another look and while yes the movement does tend to stutter, it's a cool enough feature that it's probably worth implementing anyway.

Misc Bugs

There's still a ton of bugs that I'm working on tracking down. Of note:

Some Satisfyer toys still stop after a few seconds of a steady pattern

Toys don't get commands when the screen is off on Android 11

Chat notifications aren't working properly

Drawn patterns saved from the toy control page aren't usable

Intensity level script triggers don't work for multi-channel toys

Editing public scripts doesn't work from the toy control page (changes get reverted)

XToys PATREON 2 favs
VIEWS1
FILES1 file
POSTEDNov 8, 2021
ARCHIVEDJun 10, 2026