Developers
Build on top of S&G products. Every product that emits events broadcasts on one channel โ listen once, then branch on the product prefix.
One channel for everything channel 8008135
Every Shits & Giggles product that emits events does so on the same
channel. Each message starts with a product prefix so you can tell them
apart โ SLAP/โฆ from the Face Slapper, LOVENSE/โฆ from the Lovense
HUD, and so on. One listener handles them all.
| Field | Value | Notes |
|---|---|---|
| Channel | 8008135 | Products only talk here; they never listen on it. |
| Format | <PRODUCT>/<โฆ> | Slash-delimited. First token is the product. |
| Prefixes | SLAP ยท LOVENSE | More are added as products gain events. |
One listener, branching on the prefix:
integer SG_CHANNEL = 8008135;
default
{
state_entry()
{
llListen(SG_CHANNEL, "", NULL_KEY, "");
}
listen(integer chan, string name, key id, string msg)
{
list p = llParseString2List(msg, ["/"], []);
string product = llList2String(p, 0); // SLAP, LOVENSE, ...
if (product == "SLAP")
{
string area = llList2String(p, 1); // FACE_LEFT / FACE_RIGHT
key by = (key)llList2String(p, 2);
// react to a slap
}
else if (product == "LOVENSE")
{
string action = llList2String(p, 1); // vibrate, stop, throb...
string value = llList2String(p, 2);
key by = (key)llList2String(p, 3);
// react to a toy command
}
}
}
Face Slapper โ events
Fires every time a slap lands.
| Payload | Parts | Values |
|---|---|---|
SLAP/<area>/<by> |
areaby |
FACE_LEFT ยท FACE_RIGHTavatar UUID of who slapped |
Example: SLAP/FACE_LEFT/3f9a7c20-1b6e-4a8d-9f02-7c1e2b4a6d8e
Lovense HUD โ events
Fires every time the HUD drives the toy โ drive moans, animations, arousal systems, etc.
| Payload | Part | Values |
|---|---|---|
LOVENSE/<action>/<value>/<by> |
action |
vibrate ยท special ยท all ยท preset ยท custom ยท throb ยท edge ยท inverse ยท stop |
value | level 0โ20, preset/slot name, or on/0 | |
by | avatar UUID of whoever pressed it (owner or partner) |
Example: LOVENSE/vibrate/15/3f9a7c20-1b6e-4a8d-9f02-7c1e2b4a6d8e
Face Slapper โ trigger a slap
The slapper can be fired by chat as well as by touch, so any gesture or script can swing it.
It listens on two channels for builders coming from ONI and
Good Moaning setups. Say the exact string on the matching channel:
| Platform | Channel | Say this | Result |
|---|---|---|---|
| ONI | 69 | slapLeft | Left cheek |
| ONI | 69 | slapRight | Right cheek |
| Good Moaning | 1482784366 | SLAP/FACE_LEFT | Right cheek (mirrored) |
| Good Moaning | 1482784366 | SLAP/FACE_RIGHT | Left cheek (mirrored) |
The ONI strings are case-insensitive โ slapLeft, slapleft and SLAPLEFT all work. From a gesture:
/69 slapLeft /1482784366 SLAP/FACE_RIGHT
SLAP/FACE_LEFT lands on the wearer's right cheek.
If you're triggering the slapper yourself, the ONI channel (69) maps sides
literally and is the cleaner choice.
/69 slap reopens the menu, so it
won't fire a slap.
Ideas โ what you could build
A few starting points. Anything that listens lives in another attachment on the same avatar (or the furniture they're sitting on); anything that triggers just says the string on the right channel.
React to an event โ listen on 8008135:
- Reaction animator โ play a flinch, recoil, wince or blush the moment a
SLAP/lands; pick the expression from which cheek it hit. - Marks & blushes โ a skin, tattoo or blush layer that reddens or bruises the struck side and fades over time.
- Counters & overlays โ a floating tally, scoreboard or stream overlay that counts hits and tracks who landed them (the
byUUID). - Sound & voice packs โ your own yelps, giggles, gasps or themed audio on each hit, layered on top of the built-in sounds.
- Effects โ particles (stars, sweat, sparks, hearts) keyed to the area and the avatar who set it off.
- Reactive furniture โ a spanking bench, throne or couch that animates, counts or escalates when the seated avatar gets slapped.
- Stats & relationships โ feed an arousal meter, an affection/relationship system, a pet-play mood, or an RLV rule off each hit.
- Toy sync โ mirror a
LOVENSE/<action>command to a second device so two toys pulse together.
Swing the slapper โ say the string on ch 69 or 1482784366:
- Gesture packs โ animated gestures that land a real slap from a hotkey.
- Games & dares โ truth-or-dare, a spin wheel, dice or a punishment game that delivers an actual slap on the outcome.
- Interactive props โ a paddle, throne or bondage rig with a button wired to the worn slapper.
- Automation โ a timer or "training" device that slaps on a schedule. Non-owner triggers still pass the wearer's whitelist, range and cooldown, so it stays consensual.
One listener handles new <PREFIX>/โฆ events too, so whatever you build grows as more S&G products start emitting.
Owner menu commands
Each clicker reopens its own menu when the owner says its keyword on channel
69 โ handy to wire to a gesture or HUD button. These only open the menu; they
don't fire an action, and they're owner-only.
| Product | Say this | Result |
|---|---|---|
| Lips Kisser | /69 kiss | Opens the kisser menu |
| Nose Booper | /69 boop | Opens the booper menu |
| Face Slapper | /69 slap | Opens the slapper menu |
Products with an API
These products expose developer hooks. Open a product for its full page and integration notes.
-
Nose Booper
Interactive -
Face Slapper
Interactive