Crosschat Ascended

Free + paid Crosschat Ascended 1.3

No permission to download
This resource is free, with optional premium version
Cross chat ascended

Features
  • Focused on performance: The plugin is fully async, meaning that the chat fetch & send does not cause ANY lag or performance decrease on the server
  • Free lifetime basic crosschat
  • Paid access to better features and a discord bot (soon)
  • Easy to set up! You just need a mysql or mariadb server!
  • Works with newer MySQL versions and does not require legacy authentication anymore!
  • Better security, other crosschats expose too much data to the internet. With my new mysql implementation the connections are done trough SSL
  • Use -serverkey=your map name in your launch args to determine the map's name in the cross chat
  • Chat logs! Every chat interaction records a log on the database, with its timestamp so you can make use of them whenever!
Premium features:
  • Fully fledged discord bot integration discord <-> game. Discord bot offers a lot of functionality to interact with discord, including but not limited to:
  • Ingame chat <-> discord
  • Live player lists
  • Remote rcon commands
  • Discord link verification
  • Builtin kickme in the panel. with buttons
  • Custom bot presence.
  • Customizable chat formatting. You can specify a default formatting, or specify a custom one for specific permission groups!
  • Chat tags! Add prefixes to players, choose every aspect of them. Players can even enable/disable them!
  • Tribelogs to discord. Simple system so players can link their tribelogs to a discord webhook
  • Mutes. You can specify the muted permission group, and players with that group will not be able to send any chat message
Buy the plugin here, automatic process (make sure to join discord first!): https://store.pelayori.com/



Screenshots:
imag2.png

imag3e.png

image.png

image4.png

image5.png

If you get error 126 on load, you must install OpenSSL



Config explained

JSON:
{

  "MySQL": {

    "Host": "localhost",

    "User": "root",

    "Password": "",

    "Database": "test",

    "Port": 3306

  },

  "General": {

    "FetchChatInterval": 0.25 // How often to fetch chat in seconds

  },

  "Premium": { // Premium features

    "ChatFormat": "{map}: {tags} {sender} {tribe}: {message}", // The format of the chat message.

    "Icon": "", // The icon to show before the name in chat

    "FormattingParts": { // The formatting parts of the chat message

      "map": "[{name}]",

      "tags": "{name}",

      "sender": "<RichColor Color=\"1, 0.9, 0, 1\">{name}</>", // Yellowish color, same as ark

      "tribe": "<RichColor Color=\"1, 0.9, 0, 1\">[{name}]</>", // Yellowish color, same as ark

      "message": "{message}"

    },

    "PermissionsFormatting": { // Formatting override for certain permission groups

      "Admin": {

        "Priority": 9999, // The priority of the permission group. The higher the more priority it is given.

        "ChatFormat": "{map}: {tags} {sender} {tribe}: {message}", // The format of the chat message.

        "Icon": "", // The icon to show before the name in chat

        "FormattingParts": {

          "map": "[{name}]",

          "tags": "{name}",

          "sender": "<RichColor Color=\"1, 0.9, 0, 1\">{name}</>",

          "tribe": "<RichColor Color=\"1, 0.9, 0, 1\">[{name}]</>",

          "message": "<RichColor Color=\"1, 0, 0, 1\">{message}</>"

        }

      }

    },

    "ChatTags": { // The chat tags. Can have multiple tags with different permissions and formatting.

      "Admin": { // The name of the tag

        "Priority": 9999, // The priority of the tag. The higher the more priority it is given.

        "Icon": "", // The icon to show before the name in chat

        "Text": "<RichColor Color=\"1, 0, 0, 1\">[{icon}Admin]</>", // The text to show in chat

        "CanBeDisabled": true // Whether the tag can be disabled or not

      }

    },

    "Tribelogs": { // The settings for the tribe logs

      "Enabled": true, // Whether the tribe logs to discord are enabled or not

      "OnlyTribeOwnerCanSetWebhook": true, // Whether only the tribe owner can set the webhook

      "OnlyTribeAdminsCanSetWebhook": false, // Whether only tribe admins can set the webhook

      "AdminWebhook": "", // The webhook to send the logs to

      "Permission": "CCA.Tribelog", // The permission to set the webhook

      "Format": "{map}: {log}" // The format of the log message

    },

    "MutedPermissionGroup": "Muted" // The permission group for muted players

  },

  "Commands": {

    "EnableTag": "/enabletag",

    "DisableTag": "/disabletag",

    "ChatMode": {

      "Command": "/chatmode",

      "Modes": {

        "Global": "cluster",

        "Tribe": "tribe",

        "Local": "map"

      }

    },

    "SetTribelog": "/tribelog",

    "SetDiscordCode": "/setdiscord"

  },

  "Messages": {

    "SenderName": "Crosschat",

    "TagEnabled": "Tag enabled successfully",

    "TagDisabled": "Tag disabled successfully",

    "NoPermissionTag": "You don't have permission to enable that tag",

    "EnableTagSyntax": "Syntax: /enabletag <tag>",

    "DisableTagSyntax": "Syntax: /disabletag <tag>",

    "TagDisabledAlready": "That tag is already disabled",

    "TagNotFound": "That tag doesn't exist",

    "CannotDisableTag": "You cannot disable this tag",

    "TagAlreadyEnabled": "That tag is already enabled",

    "ChangeChatModeSyntax": "Syntax: /chatmode <cluster|tribe|map>",

    "GlobalChatMode": "Global chat mode enabled",

    "TribeChatMode": "Tribe chat and local map mode enabled",

    "LocalChatMode": "Local map chat mode enabled",

    "Muted": "You are muted and cannot chat. You can check the time left with /groups",

    "SetTribeLogSyntax": "Syntax: /tribelog <webhook>",

    "TribeLogSet": "Tribe log webhook set successfully",

    "OnlyTribeOwnerCanSetWebhook": "Only the tribe owner can set the webhook",

    "OnlyTribeAdminsCanSetWebhook": "Only tribe admins can set the webhook",

    "NoPermissionTribeLog": "You don't have permission to set the tribe log webhook",

    "InvalidWebhook": "Invalid webhook",

    "SetDiscordCodeSyntax": "Syntax: /setdiscord <code>",

    "CheckingDiscordCode": "Checking discord code...",

    "DiscordCodeSet": "Discord code set successfully",

    "InvalidDiscordCode": "Invalid discord code",

    "DiscordCodeAlreadySet": "You are already linked!"

  }

}



JSON:
{

  "AccountKey": "", // Account key

  "BotToken": "", // Bot token. Get one from https://discord.com/developers/applications

  "MySQL": { // Crosschat MySQL database

    "Host": "",

    "User": "",

    "Password": "",

    "Database": "",

    "Port": 3306

  },

  "PermissionsMySQL": { // Permissions MySQL database

    "Host": "",

    "User": "",

    "Password": "",

    "Database": "",

    "Port": 3306

  },

  "General": {

    "IngameChatChannelId": 1057656944556515368, // Channel id for 2 way ingame chat (ingame <-> discord)

    "IngameChatFormat": "{platform} **[{map}] {player}{tribename}**: {message}", // Message format for ingame chat

    "Platforms": {

      "Steam": "Steam",

      "Xbox": "Xbox",

      "Playstation": "PS"

    },

    "PanelEmbed": { // Panel embed for the crosschat panel that contains various buttons

      "Color": [ 0, 255, 0 ], // RGB Color

      "Url": "",

      "Title": {

        "Text": "Crosschat Ascended Panel",

        "Url": "",

        "IconUrl": ""

      },

      "Description": "Click one of the buttons to do something",

      "Thumbnail": "",

      "Image": "",

      "Footer": {

        "Text": "CrosschatAscended. Provided by Pelayori",

        "IconUrl": ""

      }

    },

    "LinkDiscordButton": {

      "Enabled": true,

      "Text": "Link Discord",

      "Style": "SUCCESS" // Button style. Can be PRIMARY, SECONDARY, SUCCESS, DANGER

    },

    "GetEosButton": {

      "Enabled": true,

      "Text": "Get your EOS ID",

      "Style": "PRIMARY"

    },

    "KickmeButton": {

      "Enabled": true,

      "Text": "Kick you from the cluster",

      "Style": "DANGER"

    }

  },

  "PlayerList": {

    "Enabled": false,

    "Color": [ 0, 255, 0 ],

    "ChannelId": 1202313051366510712, // Channel id for the player list.

    "Thumbnail": "",

    "Image": "",

    "Title": "Cluster. {nmaps} maps, {nplayers} players", // Title of the embed

    "Server": "{map} - {players} players.", // Server line format

    "Players": "{name} {tribe}", // Player line format

    "SurroundPlayersInCodeBlock": true,

    "Footer": {

      "Text": "Provided by CrosschatAscended.",

      "IconUrl": ""

    }

  },

  "BotStatus": {

    "Enabled": true,

    "Statuses": [

      [ "PLAYING", "with {players} players" ], // Statuses. {players} will be replaced with the amount of players

      [ "WATCHING", "{maps} maps, {players} players" ], // {ma} will be replaced with the amount of maps

      [ "LISTENING", "to {players} players" ] // Status can be PLAYING, WATCHING or LISTENING

    ]

  },

  "AdminPlayerList": {

    "Enabled": true,

    "ChannelId": 1202313051366510712, // Channel id for the admin player list

    "Color": [ 0, 255, 0 ],

    "Thumbnail": "",

    "Image": "",

    "Title": "Cluster. {nmaps} maps, {nplayers} players",

    "Server": "{map} - {players} players. Avg fps: {avgfps}. Current fps: {curfps}",

    "SurroundPlayersInCodeBlock": true,

    "Players": "({playtime}s = {play_secs}s {play_mins}m {play_hours}h) {name} {tribe} ({eos}, {playerid}, {tribeid})",

    "Footer": {

      "Text": "Provided by CrosschatAscended.",

      "IconUrl": ""

    }

  },

  "Verification": {

    "RolesToGiveOnVerification": [ // Roles to give on verification

      728358128218931360

    ]

  },

  "RoleSyncing": [ // Roles to be synced discord <-> game. If role is given in discord, it will be given ingame and vice versa

    {

      "RoleId": 728358128218931360, // Discord role id

      "PermissionGroup": "Verified" // Permission group in the game

    }

  ],

  "RconPasswords": { // Rcon passwords for each server

    "Default": "1234", // Default password. Will be used if there is not specific password for the server

    "Island-1": "1234",

    "1.1.1.1:32330": "1234",

    "1.1.1.1": "1234"

  },

  "Messages": {

    "ConnectCode": "Your connect code is: {0}",

    "ServerOffline": "Server is offline",

    "NotLinked": "You are not linked. Please link your account first.",

    "AlreadyLinked": "You are already linked.",

    "Kickme": "You have been kicked from the cluster.",

    "GetEos": "Your EOS ID is: {0}"

  }

}
Author
Pelayori
Downloads
110
Views
2,132
First release
Last update
Rating
5.00 star(s) 3 ratings

More resources from Pelayori

Latest reviews

Everything I ever need from crosschat in one plugin
Chat from game to discord ✔️
Nice player display on discord ✔️
Rcon commands ✔️
Disocrd bot with configurable buttons ✔️
Ingame Chat tags ✔️

Free+pay version with optional subscription (eg subscribe if you want updates).
is also a great concept which why I to buy this plugin
Pelayori
Pelayori
Thank you for the review!
Top plugin with many possibilities
Pelayori
Pelayori
Thanks!
Crosschat is impossible to do without it, players from all maps can talk together, and connect to discord, it allows you to chat without being connected to the game.
Pelayori
Pelayori
Thanks! Glad you like it!
Back
Top