GimCommandsDocsStatusDiscord
Dashboard

Embed script

Every custom message (welcome, goodbye, punishment DMs, tickets, level-ups, tags…) is plain text or an embed written in this script.

Plain text

Anything that doesn't start with {embed} is sent as a normal message, with variables filled in.

A plain message
Welcome {user.mention} to **{guild.name}**! You're member #{guild.count}.

Embeds

Start with {embed}, then add parts separated by $v. Each part is {name: value}. Parts with several values separate them with &&.

A simple embed
{embed}$v{title: Welcome, {user.display_name}!}$v{description: Read the rules and have fun.}$v{color: #5865f2}$v{thumbnail: {user.display_avatar}}

Every part

PartWhat it does
{message: text}Normal text sent above the embed (put pings here)
{title: text}The embed's title
{url: link}Makes the title a link
{description: text}The main text; Markdown works
{color: #5865f2}The side colour: a hex code or a colour name
{image: link}A big image at the bottom
{thumbnail: link}A small image in the top right
{author: name && icon link && link}A small line above the title; the icon and link are optional
{field: name && value}A field. Add inline to put fields side by side: {field: Members && 1,204 inline}
{footer: text && icon link}Small text at the bottom; the icon is optional
{timestamp}Shows the time it was sent, in each reader's own time zone
{button: …}A button under the message (see below)
Text above an embed
{embed}$v{message: Hey {user.mention}!}$v{title: Welcome to {guild.name}}$v{description: You're our {user.join_position_suffix} member.}
Fields, side by side
{embed}$v{title: Server info}$v{field: Members && {guild.count} inline}$v{field: Boosts && {guild.boost_count} inline}$v{field: Created && <t:{guild.created_at_timestamp}:R>}
Author, footer and timestamp
{embed}$v{author: {user.name} && {user.display_avatar}}$v{description: Thanks for joining!}$v{footer: {guild.name} && {guild.icon}}$v{timestamp}

Buttons

  • Link buttons open a website: {button: https://example.com && Label && 🔗} (the emoji is optional).
  • Coloured buttons are for decoration (clicking does nothing): {button: green && Label}. Colours: blurple, gray, green, grey, red.
  • Add disabled as another value to grey a button out.
Buttons
{embed}$v{description: Pick where to go next.}$v{button: https://gim.fyi/commands && Commands}$v{button: https://gim.fyi/discord && Support && 💬}$v{button: green && Just looking}

Discord's limits

When you save a template, the bot tells you if a part is too long. The limits are Discord's:

PartUp to
Message text2,000 characters
Title256 characters
Description4,096 characters
Fields25 fields; name 256, value 1,024 characters
Author / footer256 / 2,048 characters
The whole embed6,000 characters
Buttons25, labels up to 80 characters

Who gets pinged

A message only pings what you wrote yourself: a {….mention} variable like {user.mention}, or a mention you typed. Mentions that arrive inside other values (someone's nickname, for example) show up but never ping, and @everyone / @here never ping.

Building and copying embeds

  • ,createembed sends an embed straight away. It doesn't need {embed} at the start.
  • ,embedcode gives you the code of an existing message, to copy and change.
  • ,embed create saves an embed under a name to reuse it later.
Add logic with conditionals ({if}…{/if}), for example a different welcome for bots.