quest

Private

Content

102 lines
{=(COMMENT):Channel desired for redirection}
{=(redirChannel):740391613599318027}
 
{=(COMMENT): Requirements for channel and error message}
{require(Please keep all Quest submissions to <#740333365458370671>):740333365458370671,}
 
{=(COMMENT):Deletes the user input for a cleaner chat.}
{delete}
 
{=(COMMENT):Properly formats the user arguments to use and check for later. Basically separates them into two parts. One before and one after the image link.}
{=(userArgs):{join():{args(1):http}} {args(2):http}}
 
{=(COMMENT):---CHECKS AND CONDITIONAL STATEMENTS---}
{=(COMMENT):Lowercases the first argument that's the joined quest name the user inputs. Allows the quest name to not be case sensitive.}
{=(l1):{lower:{userArgs(1)}}}
{=(COMMENT):Returns the second argument (that will be the image link) if it has been provided, otherwise returns nothing.}
{=(l2):{if({userArgs(2)}!={1}):http{userArgs(2)}}}
 
{=(COMMENT):Checks if there is a user argument. Returns "true" or "false" conditionally. To reuse later.}
{=(isArgs):{if({1}!=):true|false}}
 
{=(COMMENT):Available quests names the user is allowed to input. Allows for their multi-word variation. Example: "Dunk Master" will work for "dunkmaster".}
{=(quests):bard artificer ranger paladin juggernaut executioner bountyhunter cowboy gunslinger shellsmasher dunkmaster sweettooth candycoma sugaraddict conqueror slayer butcher ghostjason warmachine castleclimber braindead hardmode eggcracker headhunter doombringer eggorg-elite eggorgelite eggssassin bracketbuster rumbleroyalty matmaestro badtothebone zombieslayer escapeartist golddis-member jumpedtheshark beastmode goldenboot questcrusher speeddemon touchdownhero}
 
{=(COMMENT):Checks if the quest name input is a valid quest name. Returns "true" if so, otherwise "false".}
{=(isValidQuest):{contains({l1}):{quests}}}
 
{=(COMMENT):Checks if the input link is a valid image link. Returns "true" or "false" accordingly.}
{=(isImage):{if({index(true):{in(.jpg):{l2}} {in(.png):{l2}} {in(.gif):{l2}} {in(.webp):{l2}}}!=-1):true|false}}
 
{=(len.l1):{index($&!):{args(1):http} $&!}}
 
{=(isLenLT2):{if({len.l1}<=2):true|false}}
 
{=(COMMENT):Full check to determine if the submission is successful in the end or not.}
{=(fullCheck):{all({l2}!=|{isLenLT2}==true|{isValidQuest}==true|{isImage}==true):true|false}}
 
{=():}
 
{=(COMMENT):---REACTION---}
{=(COMMENT):Up and down custom reactions made by me using Figma.}
{=(react.up):<:t_upd:725594371130654720>}
{=(react.down):<:t_down:725593075111559279>}
{=(COMMENT):Conditionally reacts to the redirected embed when the submission is successful.}
{{if({fullCheck}==true):react: {react.up} {react.down}}}
 
{=(COMMENT):---REDIRECT---}
{=(COMMENT):Conditionally redirects the tag's attached embed when the submission is successful.}
{{if({fullCheck}==true):redirect:{redirChannel}}}
 
{=(COMMENT):---OUTPUT MANAGEMENT (CURRENT CHANNEL)---}
{=(COMMENT):We save emojis as variables we will eventually use in outputs.}
{=(emoji.cmark):<:GreenTick:699124840879226922>}
{=(emoji.cross):<:RedTick:699124870352732251>}
{=(COMMENT):Capitalizes the first letter of each word in the quest input.}
{=(preformattedQuest):{replace( z, Z):{replace( y, Y):{replace( x, X):{replace( w, W):{replace( v, V):{replace( u, U):{replace( t, T):{replace( s, S):{replace( r, R):{replace( q, Q):{replace( p, P):{replace( o, O):{replace( n, N):{replace( m, M):{replace( l, L):{replace( k, K):{replace( j, J):{replace( i, I):{replace( h, H):{replace( g, G):{replace( f, F):{replace( e, E):{replace( d, D):{replace( c, C):{replace( a, B):{replace( a, A): {lower:{args(1):http}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
{=(formattedQuest):{preformattedQuest(+3)}}
 
{=(COMMENT):Image variable to call in the embed's image URL field. Breaks the tag's attached embed if the submission is not successfull, otherwise returns the valid image link.}
{=(image):{if({fullCheck}==true):{l2}|plaintext}}
 
{=(COMMENT):Detects the Domain Name of the image link provided. It's just for extra security for staff who reviews before clicking on a link.}
{=(DNS):{image(3):/}}
 
{=(COMMENT):Embed Description. Contains the formatted name of the quest from the user input, as well as a hyperlink to the submission with the DNS used for the image hosting service for extra security.}
{=(description):Requested by: {user(mention)}
Role requested: **{formattedQuest}**
[Submission ({DNS} Link)]({image})}
 
{=(COMMENT):Messages to display in the CURRENT CHANNEL.}
{=(COMMENT):Message when the request is complete and has been submitted.}
{=(msg.sub):{emoji.cmark}Huzzah {user(mention)}! Your Epic Quest to capture the **{formattedQuest}** role has **successfully** been submitted.
 
It will be reviewed by the QuestMaster and we will sing of your grand deeds or lament your terrible failure in <#742515283620528230>}
 
{=(COMMENT):Message when the request is incomplete and has not been submitted.}
{=(msg.notsub):{emoji.cross}Alas {user(mention)}, your Epic Quest to capture the **{formattedQuest}** role has **not** been submitted.
 
Make sure that both the Quest name and the image link you provided are valid.}
 
{=(COMMENT):Message to return conditionally.}
{=(msg.current):{if({fullCheck}==true):{msg.sub}|{msg.notsub}}}
 
{=(COMMENT):Saves green and red colors' hex code as variables, to then return the right color accordingly.}
{=(color.green):#22F522}
{=(color.red):#F11515}
{=(color.current):{if({fullCheck}==true):{color.green}|{color.red}}}
 
{=(COMMENT):Sends the success or error message in the current channel accordingly.}
{c:embed {channel(id)} {color.current} |{msg.current}}
{=(COMMENT):The override block below makes sure the current channel's embed will send even if the user normally doesn't have the permissions to use the embed command.}
{override}
 
{=(COMMENT):---EMBED FIELDS MANAGEMENT (REDIRECTED)---}
{=(authorName):{user(name)}}
{=(COMMENT):Returns the static version of the user avatar in case it's animated. You can remove the replace block if you don't mind. I just think it's overall distracting, but it's up to personal preference.}
{=(authorAvatar):{replace(.gif,.png):{user(avatar)}}}
{=(COMMENT):Embed Title.}
{=(title):Quest Submission #{uses}}
 
{=(COMMENT):Embed Side Color.}
{embed(color):#0060FA}

Embed

1 line
{"color": 2290978, "image": {"url": "{image}"}, "title": "{title}", "author": {"name": "{authorName}", "icon_url": "{authorAvatar}"}, "description": "{description}"}
Raw JSON
{
  "id": 294881,
  "created_at": "2020-08-19T02:30:56.000Z",
  "tag_name": "quest",
  "nsfw": false,
  "owner_id": "474006005840216069",
  "uses": 8704,
  "description": null,
  "restricted": false,
  "shared": false,
  "deleted": false,
  "safe": "",
  "hidden": false,
  "guild_id": "350339162177798154",
  "sharer": "474006005840216069",
  "content": "{=(COMMENT):Channel desired for redirection}\n{=(redirChannel):740391613599318027}\n \n{=(COMMENT): Requirements for channel and error message}\n{require(Please keep all Quest submissions to <#740333365458370671>):740333365458370671,}\n \n{=(COMMENT):Deletes the user input for a cleaner chat.}\n{delete}\n \n{=(COMMENT):Properly formats the user arguments to use and check for later. Basically separates them into two parts. One before and one after the image link.}\n{=(userArgs):{join():{args(1):http}} {args(2):http}}\n \n{=(COMMENT):---CHECKS AND CONDITIONAL STATEMENTS---}\n{=(COMMENT):Lowercases the first argument that's the joined quest name the user inputs. Allows the quest name to not be case sensitive.}\n{=(l1):{lower:{userArgs(1)}}}\n{=(COMMENT):Returns the second argument (that will be the image link) if it has been provided, otherwise returns nothing.}\n{=(l2):{if({userArgs(2)}!={1}):http{userArgs(2)}}}\n \n{=(COMMENT):Checks if there is a user argument. Returns \"true\" or \"false\" conditionally. To reuse later.}\n{=(isArgs):{if({1}!=):true|false}}\n \n{=(COMMENT):Available quests names the user is allowed to input. Allows for their multi-word variation. Example: \"Dunk Master\" will work for \"dunkmaster\".}\n{=(quests):bard artificer ranger paladin juggernaut executioner bountyhunter cowboy gunslinger shellsmasher dunkmaster sweettooth candycoma sugaraddict conqueror slayer butcher ghostjason warmachine castleclimber braindead hardmode eggcracker headhunter doombringer eggorg-elite eggorgelite eggssassin bracketbuster rumbleroyalty matmaestro badtothebone zombieslayer escapeartist golddis-member jumpedtheshark beastmode goldenboot questcrusher speeddemon touchdownhero}\n \n{=(COMMENT):Checks if the quest name input is a valid quest name. Returns \"true\" if so, otherwise \"false\".}\n{=(isValidQuest):{contains({l1}):{quests}}}\n \n{=(COMMENT):Checks if the input link is a valid image link. Returns \"true\" or \"false\" accordingly.}\n{=(isImage):{if({index(true):{in(.jpg):{l2}} {in(.png):{l2}} {in(.gif):{l2}} {in(.webp):{l2}}}!=-1):true|false}}\n \n{=(len.l1):{index($&!):{args(1):http} $&!}}\n \n{=(isLenLT2):{if({len.l1}<=2):true|false}}\n \n{=(COMMENT):Full check to determine if the submission is successful in the end or not.}\n{=(fullCheck):{all({l2}!=|{isLenLT2}==true|{isValidQuest}==true|{isImage}==true):true|false}}\n \n{=():}\n \n{=(COMMENT):---REACTION---}\n{=(COMMENT):Up and down custom reactions made by me using Figma.}\n{=(react.up):<:t_upd:725594371130654720>}\n{=(react.down):<:t_down:725593075111559279>}\n{=(COMMENT):Conditionally reacts to the redirected embed when the submission is successful.}\n{{if({fullCheck}==true):react: {react.up} {react.down}}}\n \n{=(COMMENT):---REDIRECT---}\n{=(COMMENT):Conditionally redirects the tag's attached embed when the submission is successful.}\n{{if({fullCheck}==true):redirect:{redirChannel}}}\n \n{=(COMMENT):---OUTPUT MANAGEMENT (CURRENT CHANNEL)---}\n{=(COMMENT):We save emojis as variables we will eventually use in outputs.}\n{=(emoji.cmark):<:GreenTick:699124840879226922>}\n{=(emoji.cross):<:RedTick:699124870352732251>}\n{=(COMMENT):Capitalizes the first letter of each word in the quest input.}\n{=(preformattedQuest):{replace( z, Z):{replace( y, Y):{replace( x, X):{replace( w, W):{replace( v, V):{replace( u, U):{replace( t, T):{replace( s, S):{replace( r, R):{replace( q, Q):{replace( p, P):{replace( o, O):{replace( n, N):{replace( m, M):{replace( l, L):{replace( k, K):{replace( j, J):{replace( i, I):{replace( h, H):{replace( g, G):{replace( f, F):{replace( e, E):{replace( d, D):{replace( c, C):{replace( a, B):{replace( a, A): {lower:{args(1):http}}}}}}}}}}}}}}}}}}}}}}}}}}}}}\n{=(formattedQuest):{preformattedQuest(+3)}}\n \n{=(COMMENT):Image variable to call in the embed's image URL field. Breaks the tag's attached embed if the submission is not successfull, otherwise returns the valid image link.}\n{=(image):{if({fullCheck}==true):{l2}|plaintext}}\n \n{=(COMMENT):Detects the Domain Name of the image link provided. It's just for extra security for staff who reviews before clicking on a link.}\n{=(DNS):{image(3):/}}\n \n{=(COMMENT):Embed Description. Contains the formatted name of the quest from the user input, as well as a hyperlink to the submission with the DNS used for the image hosting service for extra security.}\n{=(description):Requested by: {user(mention)}\nRole requested: **{formattedQuest}**\n[Submission ({DNS} Link)]({image})}\n \n{=(COMMENT):Messages to display in the CURRENT CHANNEL.}\n{=(COMMENT):Message when the request is complete and has been submitted.}\n{=(msg.sub):{emoji.cmark}Huzzah {user(mention)}! Your Epic Quest to capture the **{formattedQuest}** role has **successfully** been submitted.\n \nIt will be reviewed by the QuestMaster and we will sing of your grand deeds or lament your terrible failure in <#742515283620528230>}\n \n{=(COMMENT):Message when the request is incomplete and has not been submitted.}\n{=(msg.notsub):{emoji.cross}Alas {user(mention)}, your Epic Quest to capture the **{formattedQuest}** role has **not** been submitted.\n \nMake sure that both the Quest name and the image link you provided are valid.}\n \n{=(COMMENT):Message to return conditionally.}\n{=(msg.current):{if({fullCheck}==true):{msg.sub}|{msg.notsub}}}\n \n{=(COMMENT):Saves green and red colors' hex code as variables, to then return the right color accordingly.}\n{=(color.green):#22F522}\n{=(color.red):#F11515}\n{=(color.current):{if({fullCheck}==true):{color.green}|{color.red}}}\n \n{=(COMMENT):Sends the success or error message in the current channel accordingly.}\n{c:embed {channel(id)} {color.current} |{msg.current}}\n{=(COMMENT):The override block below makes sure the current channel's embed will send even if the user normally doesn't have the permissions to use the embed command.}\n{override}\n \n{=(COMMENT):---EMBED FIELDS MANAGEMENT (REDIRECTED)---}\n{=(authorName):{user(name)}}\n{=(COMMENT):Returns the static version of the user avatar in case it's animated. You can remove the replace block if you don't mind. I just think it's overall distracting, but it's up to personal preference.}\n{=(authorAvatar):{replace(.gif,.png):{user(avatar)}}}\n{=(COMMENT):Embed Title.}\n{=(title):Quest Submission #{uses}}\n \n{=(COMMENT):Embed Side Color.}\n{embed(color):#0060FA}",
  "embed": "{\"color\": 2290978, \"image\": {\"url\": \"{image}\"}, \"title\": \"{title}\", \"author\": {\"name\": \"{authorName}\", \"icon_url\": \"{authorAvatar}\"}, \"description\": \"{description}\"}",
  "last_fetched": "2026-10-20T22:15:43.477Z"
}