The tip menu

Each model has one menu; she edits it in her panel. Until she does, a default applies. The shape follows Lovense's getSettings():

{
  "version": 3,
  "levels": [
    { "min": 1,   "max": 9,    "vLevel": 4,  "time": 3 },
    { "min": 10,  "max": 49,   "vLevel": 8,  "time": 8 },
    { "min": 250, "max": null, "vLevel": 20, "time": 60 }
  ],
  "specials": [
    { "id": "earthquake", "label": "Earthquake", "amount": 222, "tag": "earthquake",
      "kind": "preset", "preset": "earthquake", "vLevel": 18, "time": 30 }
  ],
  "perks": { "fanClubBonusPct": 50 }
}

Levels

A tip of min–max tokens (max: null = and up, last band only) vibrates at vLevel (0–20) for time seconds. Bands never overlap.

Specials

A special fires on an exact amount, or on a #tag in the tip note when the tip is at least the amount (so a 1-token #earthquake doesn't buy an earthquake). Tag first, then exact amount, then the bands.

kind
presetpreset: Lovense's pulse, wave, fireworks, earthquake, or a toy mode (constant, slow-pulses, fast-pulses, soar, step-up, random, rhythm, double-wave, knocking, burst, rolling-wave), at vLevel
patternsteps: [{ vLevel, ms }] (1–50 steps, each ≥ 100 ms), looped for time

Perks

fanClubBonusPct: fan-club members' tips last that much longer (0–200 %).

How tips play

  • One at a time, in order. Tips from the same tipper within 2 s add up into one band.
  • When more than a minute is queued, small tips (1–9 tokens) play as a one-second pulse so the queue keeps moving.
  • The model's Stop clears the queue and pauses it until she resumes. Pause keeps the queue; Skip drops the current tip.
  • With the toy off, tips wait (held).