Flectone Logo FlectonePulse

Replacement

Used to replace triggers with specific values

ping

tps

online

coords

stats

skin

item

url

image

spoiler

bold

italic

underline

obfuscated

strikethrough


Localization

Path localizations → language.yml → message.format.replacement
replacement:
  spoiler_symbol: "█"
  values:
    smile: "<click:suggest_command:\":)\"><hover:show_text:\":)\">☺</hover></click>"
    big_smile: "<click:suggest_command:\":D\"><hover:show_text:\":D\">☻</hover></click>"
    sad: "<click:suggest_command:\":(\"><hover:show_text:\":(\">☹</hover></click>"
    ok_hand: "<click:suggest_command:\":ok:\"><hover:show_text:\":ok:\">🖒</hover></click>"
    thumbs_up: "<click:suggest_command:\":+1:\"><hover:show_text:\":+1:\">🖒</hover></click>"
    thumbs_down: "<click:suggest_command:\":-1:\"><hover:show_text:\":-1:\">🖓</hover></click>"
    cool_smile: "<click:suggest_command:\":cool:\"><hover:show_text:\":cool:\">😎</hover></click>"
    cool_glasses: "<click:suggest_command:\"B)\"><hover:show_text:\"B)\">😎</hover></click>"
    clown: "<click:suggest_command:\":clown:\"><hover:show_text:\":clown:\">🤡</hover></click>"
    heart: "<click:suggest_command:\"<3\"><hover:show_text:\"<3\">❤</hover></click>"
    laughing: "<click:suggest_command:\"XD\"><hover:show_text:\"XD\">😆</hover></click>"
    confused: "<click:suggest_command:\"%)\"><hover:show_text:\"%)\">😵</hover></click>"
    happy: "<click:suggest_command:\"=D\"><hover:show_text:\"=D\">😃</hover></click>"
    angry: "<click:suggest_command:\">:(\"><hover:show_text:\">:(\">😡</hover></click>"
    ascii_idk: "<click:suggest_command:\":idk:\"><hover:show_text:\":idk:\"\\_(ツ)_/¯</hover></click>"
    ascii_angry: "<click:suggest_command:\":angry:\"><hover:show_text:\":angry:\">(╯°□°)╯︵ ┻━┻</hover></click>"
    ascii_happy: "<click:suggest_command:\":happy:\"><hover:show_text:\":happy:\">\(^O^)/</hover></click>"
    ping: "<fcolor:2><value>"
    tps: "<fcolor:2><value>"
    online: "<fcolor:2><value>"
    coords: "<fcolor:2><x> <y> <z>"
    stats: "<color:#ff7171><hp>♥</color> <color:#3de0d8><armor>🛡 <color:#e33059><attack>🗡 <color:#4eff52><exp>⏺ <color:#f0a01f><food>🍖"
    skin: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2><pixels>\"><fcolor:2><u>👨 Skin</u></hover></click>"
    item: "<fcolor:2>[<message_1>]"
    url: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2>Open url <br><u><message_1>\"><fcolor:2><u>🗗 Url</u></hover></click>"
    image: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2><pixels>\"><fcolor:2><u>🖃 Image</u></hover></click>"
    spoiler: "<hover:show_text:\"<fcolor:2><message_1>\"><fcolor:2><symbols></hover>"
    bold: "<b><message_1></b>"
    italic: "<i><message_1></i>"
    underline: "<u><message_1></u>"
    obfuscated: "<obf><message_1></obf>"
    strikethrough: "<st><message_1></st>"
replacement:
  spoiler_symbol: "█"
  values:
    smile: "<click:suggest_command:\":)\"><hover:show_text:\":)\">☺</hover></click>"
    big_smile: "<click:suggest_command:\":D\"><hover:show_text:\":D\">☻</hover></click>"
    sad: "<click:suggest_command:\":(\"><hover:show_text:\":(\">☹</hover></click>"
    ok_hand: "<click:suggest_command:\":ok:\"><hover:show_text:\":ok:\">🖒</hover></click>"
    thumbs_up: "<click:suggest_command:\":+1:\"><hover:show_text:\":+1:\">🖒</hover></click>"
    thumbs_down: "<click:suggest_command:\":-1:\"><hover:show_text:\":-1:\">🖓</hover></click>"
    cool_smile: "<click:suggest_command:\":cool:\"><hover:show_text:\":cool:\">😎</hover></click>"
    cool_glasses: "<click:suggest_command:\"B)\"><hover:show_text:\"B)\">😎</hover></click>"
    clown: "<click:suggest_command:\":clown:\"><hover:show_text:\":clown:\">🤡</hover></click>"
    heart: "<click:suggest_command:\"<3\"><hover:show_text:\"<3\">❤</hover></click>"
    laughing: "<click:suggest_command:\"XD\"><hover:show_text:\"XD\">😆</hover></click>"
    confused: "<click:suggest_command:\"%)\"><hover:show_text:\"%)\">😵</hover></click>"
    happy: "<click:suggest_command:\"=D\"><hover:show_text:\"=D\">😃</hover></click>"
    angry: "<click:suggest_command:\">:(\"><hover:show_text:\">:(\">😡</hover></click>"
    ascii_idk: "<click:suggest_command:\":idk:\"><hover:show_text:\":idk:\"\\_(ツ)_/¯</hover></click>"
    ascii_angry: "<click:suggest_command:\":angry:\"><hover:show_text:\":angry:\">(╯°□°)╯︵ ┻━┻</hover></click>"
    ascii_happy: "<click:suggest_command:\":happy:\"><hover:show_text:\":happy:\">\(^O^)/</hover></click>"
    ping: "<fcolor:2><value>"
    tps: "<fcolor:2><value>"
    online: "<fcolor:2><value>"
    coords: "<fcolor:2><x> <y> <z>"
    stats: "<color:#ff7171><hp>♥</color> <color:#3de0d8><armor>🛡 <color:#e33059><attack>🗡 <color:#4eff52><exp>⏺ <color:#f0a01f><food>🍖"
    skin: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2><pixels>\"><fcolor:2><u>👨 Skin</u></hover></click>"
    item: "<fcolor:2>[<message_1>]"
    url: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2>Открыть ссылку <br><u><message_1>\"><fcolor:2><u>🗗 Ссылка</u></hover></click>"
    image: "<click:open_url:\"<message_1>\"><hover:show_text:\"<fcolor:2><pixels>\"><fcolor:2><u>🖃 Image</u></hover></click>"
    spoiler: "<hover:show_text:\"<fcolor:2><message_1>\"><fcolor:2><symbols></hover>"
    bold: "<b><message_1></b>"
    italic: "<i><message_1></i>"
    underline: "<u><message_1></u>"
    obfuscated: "<obf><message_1></obf>"
    strikethrough: "<st><message_1></st>"

spoiler_symbol

The symbol that will replace each letter of the words in a spoiler

values

A list of messages where the key is the name and the value is what will be shown instead of the trigger


Setting

Path message.yml → format.replacement
replacement:
  enable: true
  triggers:
    smile: "(?<!\\\\)(?<!\\S):-?\\)(?!\\S)"
    big_smile: "(?<!\\\\)(?<!\\S):-?D(?!\\S)"
    sad: "(?<!\\\\)(?<!\\S):-?\\((?!\\S)"
    ok_hand: "(?<!\\\\)(?<!\\S)(?i):ok:(?!\\S)"
    thumbs_up: "(?<!\\\\)(?<!\\S):\\+1:(?!\\S)"
    thumbs_down: "(?<!\\\\)(?<!\\S):-1:(?!\\S)"
    cool_smile: "(?<!\\\\)(?<!\\S)(?i):cool:(?!\\S)"
    cool_glasses: "(?<!\\\\)(?<!\\S)B-?\\)(?!\\S)"
    clown: "(?<!\\\\)(?<!\\S)(?i):clown:(?!\\S)"
    heart: "(?<!\\\\)(?<!\\S)<3(?!\\S)"
    laughing: "(?<!\\\\)(?<!\\S)(?i)xd(?!\\S)"
    confused: "(?<!\\\\)(?<!\\S)%-?\\)(?!\\S)"
    happy: "(?<!\\\\)(?<!\\S)=D(?!\\S)"
    angry: "(?<!\\\\)(?<!\\S)>:-?\\((?!\\S)"
    ascii_idk: "(?<!\\\\)(?<!\\S)(?i):idk:(?!\\S)"
    ascii_angry: "(?<!\\\\)(?<!\\S)(?i):angry:(?!\\S)"
    ascii_happy: "(?<!\\\\)(?<!\\S)(?i):happy:(?!\\S)"
    ping: "(?<!\\\\)(?<!\\S)%ping%(?!\\S)"
    tps: "(?<!\\\\)(?<!\\S)%tps%(?!\\S)"
    online: "(?<!\\\\)(?<!\\S)%online%(?!\\S)"
    coords: "(?<!\\\\)(?<!\\S)%coords%(?!\\S)"
    stats: "(?<!\\\\)(?<!\\S)%stats%(?!\\S)"
    skin: "(?<!\\\\)(?<!\\S)%skin%(?!\\S)"
    item: "(?<!\\\\)(?<!\\S)%item%(?!\\S)"
    image: "(?<!\\\\{2,})(?<=\\s|^)((?i:https?)://(?:[a-zA-Z0-9-@]{1,63}\\.)*(?i:imgur\\.com|discordapp\\.net|cdn\\.discordapp\\.com)/[\\w\\-./?=&%!#$'()*+,;:=~@]*\\.(?:jpg|jpeg|png|gif|webp|bmp))(?!\\S)"
    url: "(?<!\\\\{2,})(?<=\\s|^)((?i:https?|ftp)://(?:[\\p{L}a-zA-Z0-9-@]{1,63}\\.)+[\\p{L}a-zA-Z]{2,6}(?::\\d{1,5})?(?:/[\\w\\-./?=&%!#$'()*+,;:=~@]*)?)(?!\\S)"
    spoiler: "(?<!\\S)\\|\\|([^\\|\\|\\n]+)\\|\\|(?!\\S)"
    bold: "(?<!\\S)\\*\\*([^\\*\\*\\n]+)\\*\\*(?!\\S)"
    italic: "(?<!\\S)\\*([^\\*\\n]+)\\*(?!\\S)"
    underline: "(?<!\\S)__([^__\\n]+)__(?!\\S)"
    obfuscated: "(?<!\\S)\\?\\?([^\\?\\?\\n]+)\\?\\?(?!\\S)"
    strikethrough: "(?<!\\S)~~([^~~\\n]+)~~(?!\\S)"

enable

Enables or disables the functionality of the module

triggers

A list of all available triggers, where the key is the name and the value is the trigger itself in regular expression format

Warning

If you add a new trigger, you must also add it to the localization file to define what it will be replaced with.


Permissions

Path permission.yml → message.format.replacement
replacement:
  name: "flectonepulse.module.message.format.replacement"
  type: "TRUE"
  values:
    smile:
      name: "flectonepulse.module.message.format.replacement.smile"
      type: "TRUE"
    big_smile:
      name: "flectonepulse.module.message.format.replacement.big_smile"
      type: "TRUE"
    sad:
      name: "flectonepulse.module.message.format.replacement.sad"
      type: "TRUE"
    ok_hand:
      name: "flectonepulse.module.message.format.replacement.ok_hand"
      type: "TRUE"
    thumbs_up:
      name: "flectonepulse.module.message.format.replacement.thumbs_up"
      type: "TRUE"
    thumbs_down:
      name: "flectonepulse.module.message.format.replacement.thumbs_down"
      type: "TRUE"
    cool_smile:
      name: "flectonepulse.module.message.format.replacement.cool_smile"
      type: "TRUE"
    cool_glasses:
      name: "flectonepulse.module.message.format.replacement.cool_glasses"
      type: "TRUE"
    clown:
      name: "flectonepulse.module.message.format.replacement.clown"
      type: "TRUE"
    heart:
      name: "flectonepulse.module.message.format.replacement.heart"
      type: "TRUE"
    laughing:
      name: "flectonepulse.module.message.format.replacement.laughing"
      type: "TRUE"
    confused:
      name: "flectonepulse.module.message.format.replacement.confused"
      type: "TRUE"
    happy:
      name: "flectonepulse.module.message.format.replacement.happy"
      type: "TRUE"
    angry:
      name: "flectonepulse.module.message.format.replacement.angry"
      type: "TRUE"
    ascii_idk:
      name: "flectonepulse.module.message.format.replacement.ascii_idk"
      type: "TRUE"
    ascii_angry:
      name: "flectonepulse.module.message.format.replacement.ascii_angry"
      type: "TRUE"
    ascii_happy:
      name: "flectonepulse.module.message.format.replacement.ascii_happy"
      type: "TRUE"
    ping:
      name: "flectonepulse.module.message.format.replacement.ping"
      type: "TRUE"
    tps:
      name: "flectonepulse.module.message.format.replacement.tps"
      type: "TRUE"
    online:
      name: "flectonepulse.module.message.format.replacement.online"
      type: "TRUE"
    coords:
      name: "flectonepulse.module.message.format.replacement.coords"
      type: "TRUE"
    stats:
      name: "flectonepulse.module.message.format.replacement.stats"
      type: "TRUE"
    skin:
      name: "flectonepulse.module.message.format.replacement.skin"
      type: "TRUE"
    item:
      name: "flectonepulse.module.message.format.replacement.item"
      type: "TRUE"
    url:
      name: "flectonepulse.module.message.format.replacement.url"
      type: "TRUE"
    image:
      name: "flectonepulse.module.message.format.replacement.image"
      type: "TRUE"
    spoiler:
      name: "flectonepulse.module.message.format.replacement.spoiler"
      type: "TRUE"
    bold:
      name: "flectonepulse.module.message.format.replacement.bold"
      type: "TRUE"
    italic:
      name: "flectonepulse.module.message.format.replacement.italic"
      type: "TRUE"
    underline:
      name: "flectonepulse.module.message.format.replacement.underline"
      type: "TRUE"
    obfuscated:
      name: "flectonepulse.module.message.format.replacement.obfuscated"
      type: "TRUE"
    strikethrough:
      name: "flectonepulse.module.message.format.replacement.strikethrough"
      type: "TRUE"

name

Permission name

type

Permission type

TypeExplanation
TRUEAvailable to any player
FALSEAvailable to no one, must be granted separately (e.g., using LuckPerms)
OPAvailable to server operators
NOT_OPAvailable to NON-operators of the server

values

List of replacements with permissions

Last updated July 21, 2026
Edit on GitHub

On this page

Authors of page