jellynDocs

Jellyn Lab

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.

A message block
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

usermention

Who used it, or who the run is for.

user.idtext

Their Discord ID.

user.nametext

Their name in the server.

user.accesstext

Their Jellyn access: member, staff, management or admin.

user.avatarlink

Their avatar.

user.tagtext

Their Discord username.

user.createddate

When they made their Discord account.

user.joineddate

When they joined the server.

channelmention

The channel it was used in. Also {channel.id}.

The server and the time

servertext

The server's name.

server.idtext

The server's ID.

server.membersnumber

How many members it has.

server.iconlink

Its icon.

server.ownermention

Its owner. Also {server.owner.id}.

time.nowdate

Now, as Discord shows a time, in each reader's time zone.

time.datedate

Today's date.

time.unixnumber

Now, in seconds (a Unix time).

randomnumber

A random number from 1 to 100.

From the trigger

ValueTriggerWhat it is
{option.name}A slash commandAn option's value; members, channels and roles also have .id and .name
{player}, {player.id}ER:LC joins, leaves, in-game commands, punishmentsThe Roblox player, and their Roblox ID
{command}An in-game commandThe whole command typed
{arg.name}An in-game commandOne of its arguments
{shift.minutes}A shift endsMinutes on shift
{case.number}, {case.action}, {case.reason}PunishmentsThe case number, its type and its reason
{moderator}, {moderator.id}Staff infractionsWho issued or revoked it
{infraction.number}, {infraction.type}, {infraction.reason}Staff infractionsThe infraction

See Triggers for which trigger gives what.

From blocks

Some blocks make a value for the blocks after them:

ValueMade byWhat it is
{answer.id}Open a formWhat 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 menuThe choice picked
{item}, {item.name}, {item.id}, {item.team}, {item.index}For eachThe one it is at, and which turn it is
{message.id}, {message.channel.id}Any block that sends a messageThe message it sent
{purged.count}Purge messagesHow many it deleted
{invite.url}, {invite.code}Create an inviteThe invite
{created.channel}, {created.channel.id}Create a channelThe channel made
{thread}, {thread.id}Create a threadThe thread made
{post}, {post.id}Make a forum postThe post made
{error}, {error.block}A block's Error pathWhat 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.