Skip to main content

Lock Data

Lock Data blocks read information; they do not change the lock. Connect their results to conditions, calculations, messages, or variable assignments.

Blocks​

is …

Boolean flags: frozen, unlockable, trusted, remaining time hidden, lock history hidden, self/shared lock, hygiene active, task assigned, in pillory, and supported Device Control, Content Shield, or coach states.

get … — numeric

Numeric value. Time locked/remaining/maximum remaining in seconds, wearer/keyholder last-seen timestamps, task points, configured daily targets, parental self-lock remaining seconds, and Hardcore Mode remaining seconds.

get … — text

Text value. Lock title and wearer/keyholder username, gender, profile location, role, or sexual orientation. Profile location is profile text, not a live geofence position.

get device data

Name, device type, is Cellmate, is BeeSting, supports shock, supports vibration, or connected. The last five are Boolean checks. Device type returns the model ID, or empty text if no device is selected.

event variable

Reads a value supplied by the enclosing event. Its menu follows that event's available fields.

player / bot die at position … value

Reads one saved die from when dice rolled. Positions start at 1, ordered d4, d6, d8, d10, d12, d20. Missing or invalid positions return 0.

Daily-target values cover tasks, writing tasks, dice, wheel, chess, casino, and AI chats. They return the configured full-day target even when penalties are disabled; they do not subtract completed progress or adjust for partial days. Unset targets return 0.

Is Cellmate and is BeeSting check the model, not the custom name or connection. Check connected separately before choosing a device action.

Supports vibration and supports shock are independent capability checks. For example, vibration true and shock false means vibration-only; both true means the device supports both. Both return false when no device is selected or the capability is unavailable. See the device-data code example.

Event values​

Place the block inside the event before choosing its field. A loose block has no enclosing event. For reusable functions, pass the needed event value as a parameter.

See the per-block Event variable / Type / Description tables in Events and Quiz. Custom Events use the common fields without additional event-specific fields.

The common fields include event name, event timestamp in Unix seconds, whether an extension/keyholder/wearer triggered it, and the triggering extension. The latter can be an extension slug or built-in module such as wheel, dice, task, or public_voting; direct participant changes leave it empty. The ordinary wheel-result, wheel-text-action, and dice-roll events instead expose only their event-specific fields.

Event familyUseful additional fields
Time, freeze, timer visibilityTime delta, before/after values, freeze duration, visibility.
Public Voting / pilloryVote type/count, requested versus applied seconds, cards, accumulated vote time.
Tasks and task-photo reviewTask run ID, task ID, status, points, title/description, submission time; review events also expose approval type, rejection reason, and calendar identifiers.
Daily-photo reviewVerification ID/date/code, approval Boolean/type, rejection reason.
HygieneAllowed opening time, penalty, unused/unlocked time, actual delta, and late minutes where relevant.
Dice / wheelPlayer/bot dice values and results; wheel option, result, and text-action values.
QuizRun ID, status, score percentage, answer counts, pass percentage.
GeofenceArea details, event time, and allowed state where supplied.
Device ControlTimer/allowance values, blocked app/package or normalized website domain, rule source, and device ID.
Coach / AI variable changeCoach details or changed variable name, previous/current value, and change source.
CalendarTitle/type/notes, ID, occurrence date, start/end values, duration, all-day flag; changed events also provide changed fields.
Archive/removalArchive source, actor role, and lock ID.

Event values describe that occurrence. Ordinary get blocks read runtime state, which may differ by the time a queued event executes. Missing numeric event fields often read as 0 and text fields as empty text; do not treat a missing submission timestamp as a real date.

Timestamp units​

Event timestamp (Unix seconds), task submission timestamp (Unix seconds), and calendar start timestamp / end timestamp work directly with the date/time formatting and calendar blocks. The legacy last-seen values use milliseconds. The event-specific new maximum timestamp, geofence event timestamp, and timer expiry timestamp also use milliseconds. Divide those by 1000 before connecting them to an input that expects Unix seconds. Prefer the common event timestamp, where available, when you only need the event's time.

Example: explain a time change​

Inside when lock time changed, print a message built from the event's actual time change and triggering extension. Use format duration for durations and create text with to join the pieces. Do not infer the applied change solely from what an earlier action requested; limits may affect the result.