Jellyn Lab
Values
The {words} a Jellyn Lab system fills in. Who used it, the server, the time, options, answers, custom data and what blocks made.
Write a value in braces in any block's words, like Welcome, {user}!, and Jellyn fills it in when the system runs. A value that a system can't have (one its trigger doesn't give) is refused when you save, so a typo never reaches Discord.
Thanks for applying, {user.name}! You joined {server} on {user.joined}.
Reason given: {option.reason}Values never ping anyone: mentions are turned off in everything Lab sends, so {user} shows as a mention without notifying them.
The person and where
usermentionWho used it, or who the run is for.
user.idtextTheir Discord ID.
user.nametextTheir name in the server.
user.accesstextTheir Jellyn access: member, staff, management or admin.
user.avatarlinkTheir avatar.
user.tagtextTheir Discord username.
user.createddateWhen they made their Discord account.
user.joineddateWhen they joined the server.
channelmentionThe channel it was used in. Also {channel.id}.
The server and the time
servertextThe server's name.
server.idtextThe server's ID.
server.membersnumberHow many members it has.
server.iconlinkIts icon.
server.ownermentionIts owner. Also {server.owner.id}.
time.nowdateNow, as Discord shows a time, in each reader's time zone.
time.datedateToday's date.
time.unixnumberNow, in seconds (a Unix time).
randomnumberA random number from 1 to 100.
From the trigger
| Value | Trigger | What it is |
|---|---|---|
{option.name} | A slash command | An option's value; members, channels and roles also have .id and .name |
{player}, {player.id} | ER:LC joins, leaves, in-game commands, punishments | The Roblox player, and their Roblox ID |
{command} | An in-game command | The whole command typed |
{arg.name} | An in-game command | One of its arguments |
{shift.minutes} | A shift ends | Minutes on shift |
{case.number}, {case.action}, {case.reason} | Punishments | The case number, its type and its reason |
{moderator}, {moderator.id} | Staff infractions | Who issued or revoked it |
{infraction.number}, {infraction.type}, {infraction.reason} | Staff infractions | The infraction |
See Triggers for which trigger gives what.
From blocks
Some blocks make a value for the blocks after them:
| Value | Made by | What it is |
|---|---|---|
{answer.id} | Open a form | What they answered to the question with that ID; a member, role or channel picker also gives .id |
{component}, {component.id}, {component.label} | Send buttons or a menu | The choice picked |
{item}, {item.name}, {item.id}, {item.team}, {item.index} | For each | The one it is at, and which turn it is |
{message.id}, {message.channel.id} | Any block that sends a message | The message it sent |
{purged.count} | Purge messages | How many it deleted |
{invite.url}, {invite.code} | Create an invite | The invite |
{created.channel}, {created.channel.id} | Create a channel | The channel made |
{thread}, {thread.id} | Create a thread | The thread made |
{post}, {post.id} | Make a forum post | The post made |
{error}, {error.block} | A block's Error path | What went wrong, and in which block |
Custom data
Variables your systems remember between runs, made under Custom data in Jellyn Lab:
- Kinds: text, number, collection, object, and collection of objects.
- Scope: the whole server, or one for each member, channel or player.
- Written
{var.name}. A member variable needs a run that is for someone; a channel one, a run in a channel.
Change one with the Set a variable block; check one with If / Else.