Open App

Remote Control

Use your phone as a motion controller to record funscript points by tilting your device while the video plays.

Overview

The Remote Control feature lets you use your phone as a motion controller. Tilt and wave your phone to generate funscript points on the desktop timeline in real-time while the video plays. Your phone's gyroscope data is translated into position values (0-100) that become points on the timeline.

Both devices need to be connected to the internet. When your phone and desktop are on the same network, a direct peer-to-peer connection is established automatically for minimal latency.

Opening the Remote

Click the Remote button in the ScriptCompiler toolbar to open the connection dialog. The dialog shows a QR code, a link to the remote app, and a manual code entry field.

Opening the Remote Control dialog in ScriptCompiler

Pairing Your Phone

There are two ways to pair your phone with the desktop:

Option A: Scan the QR Code

  1. Open your phone's camera and point it at the QR code in the dialog
  2. Tap the link that appears to open the remote app
  3. The phone auto-connects to the desktop using the code embedded in the QR

Option B: Enter the Code Manually

  1. Open remote.scriptcompiler.com on your phone
  2. Note the device code shown on your phone's screen
  3. Type that code into the input field on the desktop dialog
  4. Click Connect
Two ways to pair: QR code scan or manual code entry
QR Code is Fastest
Scanning the QR code is the quickest way to connect. It opens the remote app and pairs automatically in one step.

Recording with Motion

Once paired, tap the play button on your phone to start. This does three things:

  1. Activates your phone's motion sensors (gyroscope and accelerometer)
  2. Starts video playback on the desktop
  3. Begins recording points from your phone's motion

Tilt your phone to control the position value. The system automatically picks whichever axis (pitch or roll) has the stronger signal, so you can hold the phone in whatever orientation feels natural.

Tilting the phone generates points on the desktop timeline

Tap pause on your phone to stop recording and pause the video. You can resume at any time by tapping play again.

Controls

Control Description
Play / Pause Starts or stops video playback and point recording. The first tap also activates motion sensors.
Sensitivity Slider from 0.1x to 3.0x. Higher values make smaller movements produce larger position changes. Default is 1.0x.
Sensor Activation
On iOS, the first tap on the play button requests permission to access motion sensors. This is a browser requirement and only needs to happen once per session.

Connection Types

After pairing, the system automatically attempts a direct peer-to-peer (P2P) connection using WebRTC. The connection status is shown on both devices.

Status Meaning
P2P Connected Direct connection between phone and desktop. Lowest latency, best for recording.
Connected via relay Data is routed through the server. Higher latency but still functional.
Reconnecting Connection was lost and is being re-established.

P2P works best when both devices are on the same local network. If P2P fails, the system falls back to server relay automatically. You can retry P2P from the desktop dialog at any time.

Troubleshooting

Phone Won't Connect

  • Make sure the remote app is open and shows a device code
  • Check that both devices have internet access
  • Try refreshing the remote app and scanning the QR code again

No Points Appearing

  • Make sure you tapped play on the phone (sensors must be active)
  • Check that the sensor status shows "streaming"
  • Try increasing the sensitivity slider
  • Ensure the phone is not lying flat on a surface

High Latency or Delayed Response

  • Check if the status shows "P2P Connected" or "Connected via relay"
  • If using relay, try connecting both devices to the same Wi-Fi network and retry P2P
  • Close other apps that may be using the network

Sensors Not Activating (iOS)

  • Safari requires an explicit user gesture to enable motion sensors
  • Make sure you tap the play button directly (not via a script or automation)
  • If the permission dialog was dismissed, refresh the page and try again