Skip to content

Create new format

AlonsoAliaga edited this page Jan 25, 2026 · 5 revisions

Warning

Since v0.3-BETA the plugin AlonsoLib is no longer required when using PaperMC!
⚠️ The version 0.2-BETA requires AlonsoLib installed. ⚠️

Important

Test our new format generator powered by Gemini using AI πŸ’‘
➑️➑️➑️ https://alonsoaliaga.com/AlonsoJoin-Generator ⬅️⬅️⬅️
It has been trained by our Team to be able to give you a working format for your server!

⚠️ Make sure you test the result in your test server. Don't add it to your server without testing.

Creating a new format πŸ†•

To create new format simply follow comments.

#You can create as many formats as you want. Keep in mind they must be ordered in order to work correctly.
#The order goes from higher to lower priority. It means that if you have OP the first one is going to be used for you.
Formats: #This is the main section. Don't change.
  #This is the internal name. It doesn't matter at all, just don't use the same one.
  #Use only lowercase words and include only dashes if necessary.
  owners: #Create your own sections here.
    #If permission is none or is not set it will ignore permission and will always be available.
    #If you want to set a join message for all non-ranked players create the format at the end of
    #this list and give the permission to default group/rank.
    Permission: "alonsojoin.format.owner"
    #Sound sent when player joins with this format.
    #Set to none to disable sound effect.
    Sounds:
      Join: "ENDERDRAGON_GROWL"
      Quit: "ENDERDRAGON_GROWL"
    Join-messages:
      first-part:
        #You can use PlaceholderAPI here
        #You can use {NEWLINE} to move to the next line.
        #REMEMBER YOU MUST ADD THE COLOR AFTER USING {NEWLINE} BECAUSE IT RESETS TO WHITE WHEN YOU CHANGE LINES.
        Text: "%vault_prefix% %player_name%"
        Hover:
        - "&7%vault_prefix% %player_name%"
        - "&7Balance: &a$%vault_eco_balance%"
        - "&7Level: &f%alonsolevels_level_format%"
        - "&7Experience: &f%alonsolevels_progress_format%"
        - "&7League: &f%alonsoleagues_league%"
        - "&7League points: &a%alonsoleagues_points%"
        Click:
          #Can be any ClickEvent.Action available FOR YOUR VERSION.
          #Available typeS: "RUN_COMMAND", "OPEN_URL", "SUGGEST_COMMAND" and "COPY_TO_CLIPBOARD" (if available)
          Type: "OPEN_URL"
          #Value represents the value for the type selected. Can be for commands (requires slash), url, a command for suggestion or text to copy.
          #You can use some placeholders here, available placeholders are:
          # {PLAYER} replaced by player name
          # {UUID} replaced by player uuid
          Value: "https://es.namemc.com/profile/{PLAYER}"
      #Example of text only.
      second-part:
        #You can use PlaceholderAPI here
        #REMEMBER YOU MUST ADD THE COLOR AFTER USING {NEWLINE} BECAUSE IT RESETS TO WHITE WHEN YOU CHANGE LINES.
        Text: "&4 has joined the server!"
      #THE FOLLOWING PARTS ARE JUST EXAMPLES OF HOW TO USE DIFFERENT CLICK TYPES.
      #REMEMBER: This is just an example. You can delete this part.
      suggest-part:
        Text: "&7 (Suggest)"
        Hover:
        - "&eClick to suggest a command!"
        Click:
          Type: "SUGGEST_COMMAND"
          #If type is SUGGEST_COMMAND, enter the command that should be suggested in player text box.
          Value: "/tell {PLAYER} Hello {PLAYER}, this is a test for 'SUGGEST_COMMAND' type!"
      #REMEMBER: This is just an example. You can delete this part.
      message-part:
        Text: "&8 (Message)"
        Hover:
        - "&eClick to welcome %player_name%!"
        Click:
          Type: "RUN_COMMAND"
          #If type is SUGGEST_COMMAND, enter the command that should be sent as the player.
          #Remember you don't need to use slash here to be detected as message.
          Value: "Welcome {PLAYER}, this is a test for 'RUN_COMMAND' type without slash!"
      #REMEMBER: This is just an example. You can delete this part.
      run-command-part:
        Text: "&7 (Run)"
        Hover:
        - "&eClick to message %player_name%!"
        Click:
          Type: "RUN_COMMAND"
          #If type is SUGGEST_COMMAND, enter the command that should be run by the player.
          Value: "/tell {PLAYER} Welcome {PLAYER}, this is a test for 'RUN_COMMAND' type!"
      #REMEMBER: This is just an example. You can delete this part.
      copy-part:
        Text: "&8 (Copy)"
        Hover:
        - "&eClick to copy a text! (Available only in newer versions)"
        Click:
          Type: "COPY_TO_CLIPBOARD"
          #If type is COPY_TO_CLIPBOARD, enter the text that should be copied for player. Only in newer versions.
          Value: "Hello! This is a test for 'COPY_TO_CLIPBOARD' type. You copied this text from {PLAYER} welcome message!"
    #REMEMBER THIS IS SENT ON QUIT. PLACEHOLDERS MIGHT NOT BE AVAILABLE HERE, DEPENDS ON OTHER PLUGINS.
    #Recommended not to use any placeholder from PlaceholderAPI.
    Quit-messages:
      first-part:
        Text: "%vault_prefix% %player_name%"
        Hover:
        - "&7%vault_prefix% &f%player_name%"
        - "&7Balance: &a%vault_eco_balance%"
        - "&7Level: &f%alonsolevels_level_format%"
        - "&7Experience: &f%alonsolevels_progress_format%"
        - "&7League: &f%alonsoleagues_league%"
        - "&7League points: &a%alonsoleagues_points%"
        Click:
          Type: "OPEN_URL"
          Value: "https://es.namemc.com/profile/{PLAYER}"
      second-part:
        Text: "&4 has left the server!"
    Actions:
      #PlaceholderAPI is available here for the player that is joining. ONLY ON JOIN.
      #For more information about command actions/modifiers visit https://alonsoaliaga.com/AlonsoJoin/command-modifiers
      Join:
        - "[FIRST_JOIN][MESSAGE_BROADCAST]&6{PLAYER} joined the server for the first time!"
        - "[KNOWN_PLAYER][MESSAGE]&6{PLAYER} joined the server, but it's not your first time!"
        - "[MESSAGE]&7Hello {PLAYER}, you are using 'owners' format! Only you can read this message ^^"
      #REMEMBER THIS IS RUN ON QUIT. PLACEHOLDERS MIGHT NOT BE AVAILABLE HERE, DEPENDS ON OTHER PLUGINS.
      #Recommended not to use any placeholder from PlaceholderAPI.
      #For more information about command actions/modifiers visit https://alonsoaliaga.com/AlonsoJoin/command-modifiers
      Quit:
      - "[FIRST_JOIN][MESSAGE_BROADCAST]&6{PLAYER} left the server after his first time on the server!"

Reload configuration πŸ”ƒ

After modifying the format as your wish, run /alonsochat reload to reload all formats.

Test your format πŸ‘‘

Since OP players have all permissions (same with ranks with * permission), you can test the
format by moving it (temporarily) above all other formats so you can test it as operator.
You can also give yourself the permission for specific format and remove all permission.

Additionally you can test a specific format using /alonsochat testformat <format-identifier>

Special tags 🎴

Important

The following flags are only available for PaperMC, not Spigot.
And only for parts that does not contain {MESSAGE} placeholder.

Head tag (Since PaperMC 1.21.9 / Adventure v4.25.0 πŸ”°)

This tag will display a head with texture.

Note

Format: <tag:head:[identifier][:overlay]>

[identifier] is the target player name. Can be replaced with {PLAYER} for sender name. (Supports name|uuid|texture)
[overlay] is whether or not the head layer should be displayed. (The top skin from head part)

Example: <tag:head:{PLAYER}> or <tag:head:AlonsoAliaga:true>

Sprite tag (Since PaperMC 1.21.9 / Adventure v4.25.0 πŸ”°)

Note

Format: <tag:[atlas]:[sprite]>

[atlas] is the atlas to use, e.g. minecraft:blocks.
[sprite] is the sprite to use, e.g. item/emerald.
Extracted from Adventure documentation.

Example: <tag:sprite:blocks:block/stone> or <tag:sprite:blocks:item/emerald>

Clone this wiki locally