Jump to content

Spikeydragoon

Cross Ark Chat Program now with discord bot and linux support

Recommended Posts

Cross Ark Chat connects all of your Ark Survival Evolved Servers chat together allowing you to talk to anyone from anywhere on your servers/clusters. Cross Ark Chat also has discord support to allow talking to and from servers using discord.
 

This program uses pure Rcon so it can be ran from anywhere however for best performance i would run it from the same pc that is hosting your Ark servers.
 
For more information on how to use the bot, patch notes, and what it does check out our github page.
 
Going forward patch note list will only be updated on the github release page to keep things less redundant, however i will still reply to the thread with patch notes.

Join us on discord for support and for latest updates.

https://discord.gg/HAk4BmN

Download link for the different versions (windows and linux)
https://github.com/spikeydragoon/Cross-Ark-Chat/releases

Edited by Spikeydragoon
  • Like 4

Share this post


Link to post
Share on other sites

Released a fixed a bug not allowing certain name lengths to talk in chat.

Added links for version with discord.

Updated discord version to be able to send some rcon commands to your ark servers.

Added link and update for Discord bot to work on windows 7 and older.


Updates:
V1.0

  • Added the option to hide or show Admin commands in chat.(Discord, CrossChat)
  • Added status replys for commands.(Discord)
  • Added Stop and restart commands (Discord)
  • Renamed commands from chatstart to startchat, stopchat, and restartchat. (Discord)
  • Added versioning. (Discord, CrossChat)

V1.1

  • Added the option to hide or show chat prefix on the discord side. Example Rag: spikey hello or spikey hello is what this changes. (Discord)
  • Added in a chat buffer in the recent code overhaul. This allows for faster sending/receiving messages. Also removes chat bugs. (Discord, CrossChat)
  • Fixed Admin commands toggle when set to show admin commands it should now show the Admin command they used. (Discord, CrossChat)


V1.2

  • Added logging for both chat and error messages. Logs have a date stamp with Chat or Error at the end of the file name. Once in the file the logs are stamped via hour/min/second. (Discord, CrossChat)

V1.3

  • Added auto start feature. You no longer have to run d!startchat (Discord)
  • Added logging for tribe logs if enabled in config. Note it only logs if you turn tribe logs on in chat. (Discord, CrossArk)
  • Massive code clean up program runs smoother and uses less resources. (Discord, CrossArk)

V1.4

  • Added in feature to allow tribe logs to be sent to their own discord channels.(Discord)
  • Added linux support by porting over to .net core.
  • Updated config notes for windows versions.

V1.5

  • Added feature to use a prefix to send chat to other servers. If enabled you will have to type the prefix before you message to send it. Example default is /cc so message would look like this. /cc hello to send to all servers.

V1.6

  • Added Server replies to Rcon commands. Example Saveworld server will reply with world saved. (Discord)
  • Added replies to Rcon commands for when sending to all servers you know which server the bot is running the command on. (Discord)
  • Update. Discord only will now get chat even if chat prefix is enabled.

V1.6.1

  • Fixed Discord not sending to chat when using chat prefix. (Discord)
  • Fixed DestroyWildDinos command not woking. (Discord)

V1.7

  • Added option for servers to have their own channel in discord that only sends to that one server however you still must have a all channel set to where all servers chat goes to. (Discord)
  • Updated tribe formatting to be the same as servers format. (Discord)

V1.8

  • Merged Windows discord versions together program should now run code based on os version. (Discord)
  • Separated discord chat from server chat to be able to handle discord 5/5 rate limit better. There will now be a 2 second delay on the discord side of the chat. (Discord)
V1.9
  • Admin commands now have option for their own channel and logging. (non Discord, Discord)
  • You can now set your own discord prefix for in-game chat. (Discord)
  • Added option to allow setting Rcon commands to certain discord roles. Discord role name must be typed EXZACTLY like it is listed in your role list in discord server settings. (Discord)
  • Added Custom Rcon command. This command allows you to run any api extended rcon commands through discord. d!rcon rconcommand is the default use. This also allows you to run any normal ark rcon as well so make sure to only give admins this command. (Discord)
  • Added option to make your own discord support channel for in-game use. Default prefix is /help. When typing the /help message in-game it will send the message to the set discord channel and if enabled ping a set discord role IE if you have a GM role for helping people. (Discord)
 
v2.1
  • Fixed bug where discord would duplicate messages if you changed the discord prefix. (Discord)
  • Added purge command to purge discord messages that are not older than 2weeks. You can purge a max of 100 at a time. Example command is d!purge 50 (Discord)
  • Added option to enable/disable sending messages to discord. If enabled it will require you to use the set discordprefix in game. example is /discord hello discord. (Discord)
  • Changed the name of PrefixToSendChat to PrefixToSendAllServers (Discord)
  • Changed the /cc to /all (Discord)
  • Added a option to enable replys when someone uses the supportprefix. You can also edit the message that is sent. (Discord)
 
v3.0
  • Note this massively changes the config so make sure to use the new configs.
  • Bot will now check for new versions at startup. If a new version is available it will show up in green in the console window.
  • New look for the console format. (Discord , Non Discord)
  • Massive code improvements. (Discord, Non Discord)
  • Added option to enable/disable servers and tribes without having to delete them from the config. (Discord, Non Discord)
  • Changed port to RconPort in the config. (Discord, Non Discord)
  • Added Query port to the config. (Discord, Non Discord)
  • Rolenames, servernames, and prefixes are no longer case sensitive. (Discord, Non Discord)
  • Added Rcon command timers. You also have option to set them to active or no so you dont have to delete unused timers. Any rcon supported command can be added to timers. (Discord, Non Discord)
  • Added new bot command serverinfo. This allows you to poll any server for info you just need the ip and query port. (Discord)
  • Added new bot command serverlist. This will list all servers that are active in your config. This will give info on the servers plus give a steam direct connect link. (Discord)
  • Added new commands in the discord role config. (Discord)

v3.1

  • Bot will now check for new versions at startup. If a new version is available it will show up in green in the console window.
  • Added option to disable/enable logging for different things.. (Discord , Non Discord)
  • Added option to make custom in-game commands that have text replys. (Discord, Non Discord)

v3.2 Note due to major updates to the config make sure to use the new config.

  • Fixed all rcon commands. All rcon commands are not bound to the correct value per arks updated wiki page.
  • Added reboot bot command. This should close and restart the bot itself. I have not tried this on linux version so if it doesn't work properly let me know.
  • Added option to add custom filter tags. This allows you to add mod tags so the bot will ignore them. IE for the ACM mod can add ACM[CMD] to ignore all commands from that bot so they dont get added to chat.
  • Combined Discord and non discord versions. You now just enable or disable the discord side
  • Massive code reworks and clean ups due to merging the discord and non discord versions.

v3.3 Note due to changes to the config file make sure to use the config file.

  •  Fixed both admin commands not sending and prefixs not working.
  •  Added option to enable/disable player join/leave notifications for discord.
  • Added option to use the Word replacement list. This allows you to replace words/lettings with another word/letter. (This is mostly for unicode based languages to replace some of their letters/words to a non unicode version however it can be used to replace anything) Note this doesn't completely fix Arks rcon not support unicode due to any chat coming from ark will still have ? for unicode based words however it does allow all unicode from discord to ark to be corrected.

V3.4 Note due to changes to the config file make sure to use the new one.

  • Fixed player notifications not going to the correct channel.
  • Fixed chat not going to discord when both prefixes and send to discord was enabled.
  • Fixed game commands not working.
  • Added Rcon tags and settings to the config file. (Gives you more control of how the bot works)
  • Added option to change what the player notification says in the config file.

V3.5 Note due to changes to the config file make sure to use the new one.

  • Fixed null errors. Bot will no longer show null errors i ment to fix the null check a while back but forgot.
  • Added new online player tracker. This will keep a count of how many people are on the servers and update the discord channel description with the count. Format looks like 0/100.
  • The new player tracker does two things.
  • If UsePlayerCountChannelUpdater is set to true the bot will update the DiscordChannelID channel description with the total player count of all servers. Example if you have 50 people across 5 servers each server having a max count of 100 the bot will show 50/500 at the top of the channel.
  • If you use the SendServerChatToOwnChannel option the bot will update not only the above channel but will give the online count of each server for its own channel. Example instead of showing 50/500 it would show 10/100 if you had a max player count of 100 with 10 online.
  • BIG NOTICE this uses steams system so it shows what steam can see so if its not showing correct nothing i can do about it. Example if 10 are really online but steam is only saying 6 are on cant help ya.

v4.0 is now live. Note due to massive changes make sure to use the new config.

  • Fixed players name only showing first word when having a multi word name.
  • Fixed tribe logs and messages getting squashed into the same message. I changed the code that runs the getchat command due to changes in ark i can now parse per line to split messages up.
  • Changed the player count system over to rcon from steam. This was due to steam being to inaccurate.
  • Changed the player notification system to use the word filter so you can keep markdowns from happening when not wanted when a player has a special character in their names.
  • Added option to change the format of tribe logs. Tribe logs can now be changed to a short readable message in both plain text or a nice message bubble. You can still chose to the the full tribe log however it will not be formatted by the bot you will have to use the word filter to format it yourself.
  • Added option to change the discord logging severity. This allows you to have the bot just show normal information or extremely detailed for troubleshooting. Default level is now info. I recommend verbose for troubleshooting. Full list of different options. (Critical, Debug, Error, Info, Verbose, and Warning) Note with more details it will fill your log file up.
  • Added option to send a notification to discord when cross ark chat has a new update available.
  • Added option to send the patch notes to discord when a cross ark chat has a new update available.
  • Added option to add words before and after the player count so you can make it show a custom messages instead of just the 0/100 format.

V4.1 Note config has two new options so make sure to use it.

  • Added option to show or hide tribe id in both the main and tribe log channels.
  • Cleaned up the tribe log code to match newer format
Edited by Spikeydragoon

Share this post


Link to post
Share on other sites

For tracking these where Handled over discord chat also added in windows 7 and older os support. Since i dont have a windows 7 pc myself any feed back on that version would be good as i was unable to test all features.

  • Like 1

Share this post


Link to post
Share on other sites

Would be nice if you can switch from dropbox to GitHub (We wanna see the program-code / config-files / screenshots / documentation and so on before we download something).

Your program looks very nice.. but since its an .exe, i have to setup isolated windows and ARK servers to test if this thing is really doing what it should do :)  I personally do not add my Rcon credentials to a program for which i don't know what it really/exactly does :)

So it would be nice if you can add a bit more transparency to your program :)  (The best would be nodejs because lightwight, fully transparent, crossplattform support out of the box, extendable, implementable and so on)

Anyway, keep up your nice work. I will definitely keep an eye on this thread and your program :)

Share this post


Link to post
Share on other sites

Some technical questions:

- How often does the programm poll the ARK servers via RCON?  (get chatlog) (I'm sure it does because ARK still has no websocket support)

- Where does this exe store the chat log locally and in which format? (json, sqlite, ?) (I'm sure it stores it because the program has to know if a message was already broadcasted to the other servers or not). 

Share this post


Link to post
Share on other sites
4 hours ago, Toni said:

Some technical questions:

- How often does the programm poll the ARK servers via RCON?  (get chatlog) (I'm sure it does because ARK still has no websocket support)

- Where does this exe store the chat log locally and in which format? (json, sqlite, ?) (I'm sure it stores it because the program has to know if a message was already broadcasted to the other servers or not). 

Yes via rcon getchat command. Its currently hard coded to poll every 4ms. Tried faster but ark doesnt like this causes lag to much powa i guess :) but 4 is good atm.

It adds the messages to a buffer/concurrent que (built native into c# System.Collection) which upon sending the message it purges it from the que. This is stored in memory/que until sending but nothing is stored on the local pc. I do plan to add more logging into the program once i figure out what i want it to save in a log file. This will be saved to the folder the bot runs from.

4 hours ago, Toni said:

Would be nice if you can switch from dropbox to GitHub (We wanna see the program-code / config-files / screenshots / documentation and so on before we download something).

Your program looks very nice.. but since its an .exe, i have to setup isolated windows and ARK servers to test if this thing is really doing what it should do :)  I personally do not add my Rcon credentials to a program for which i don't know what it really/exactly does :)

So it would be nice if you can add a bit more transparency to your program :)  (The best would be nodejs because lightwight, fully transparent, crossplattform support out of the box, extendable, implementable and so on)

Anyway, keep up your nice work. I will definitely keep an eye on this thread and your program :)

Yeah i thought about Github but haven't had time nor decided what i want to do with it yet since started out just being something i made for my server and decided to share. I am always open to feedback tho.

I do plan to add in my own docs instead of saying to google :P just haven't had time yet. Always about that time tho.

I don't blame you there im the same way for small time projects.

Regarding more transparency im using Query master to handle all Rcon connections to ark and for discord side im using Discord.net. Both these programs are open source public projects. Guess i didn't say it on here but i did on other forum(thought i did :( my bad) but my program and these two projects im using are all written in c#

Query Master does do a lot of cool things with steam/rcon so i might use more of the features later but right now its only being used to handle the connections.

Discord.net handles all discord connections and just makes sure bot is behaving itself and Discords rate limits.

Have some more stuff but getting busy at work so if have more question i can answer.

Share this post


Link to post
Share on other sites

New release is now live. Also have github up and running no more dropbox links in first post.


V1.3
Added auto start feature. You no longer have to run d!startchat (Discord)
Added logging for tribe logs if enabled in config. Note it only logs if you turn tribe logs on in chat. (Discord, CrossArk)
Massive code clean up program runs smoother and uses less resources. (Discord, CrossArk)

Share this post


Link to post
Share on other sites
Guest

Hi SpikeyDragon.  Thanks for producing this, it's looks great.  Just one question if I may before trying it out...

Will the program log all chat to a local file, as well as (or instead of) sending to discord?  

I've started work on a utility to log all chat to daily log files, but you seem to have beaten me to it !

 

Share this post


Link to post
Share on other sites
On 3/27/2018 at 1:54 AM, DuoMog said:

Hi SpikeyDragon.  Thanks for producing this, it's looks great.  Just one question if I may before trying it out...

Will the program log all chat to a local file, as well as (or instead of) sending to discord?  

I've started work on a utility to log all chat to daily log files, but you seem to have beaten me to it !

 

It logs all chat messages (global and local. It doesnt log tribe chat since thats not supported in rcon sadly since could do some cool stuff with that however there is tribe logs if enabled) as soon as it sees it on top of sending the message to discord and other servers so it does both send the message and log. It does this in both discord and non discord version.

Regarding the instead of if you mean you want it to only log chat and not send anything meaning pure logging then no i dont have an option like since it would defeat purpose of cross chat to have logging only option tho easily do able.

If you dont want the discord option you can just use the version of cross chat without discord and it will still do cross chat and log.

Edited by Spikeydragoon

Share this post


Link to post
Share on other sites

V1.5 is now live

Added feature to use a prefix to send chat to other servers. If enabled you will have to type the prefix before you message to send it. Example default is /cc so message would look like this. /cc hello to send to all servers.

Share this post


Link to post
Share on other sites

V1.6 is now live


Added Server replies to Rcon commands. Example Saveworld server will reply with world saved. (Discord)
Added replies to Rcon commands for when sending to all servers you know which server the bot is running the command on. (Discord)
Update. Discord only will now get chat even if chat prefix is enabled.

Share this post


Link to post
Share on other sites

V1.7 is now live
Added option for servers to have their own channel in discord that only sends to that one server however you still must have a all channel set to where all servers chat goes to. (Discord)
Updated tribe formatting to be the same as servers format. (Discord)

Edited by Spikeydragoon

Share this post


Link to post
Share on other sites

V1.8 is now live

Merged Windows discord versions together program should now run code based on os version. (Discord)

Separated discord chat from server chat to be able to handle discord 5/5 rate limit better. There will now be a 2 second delay on the discord side of the chat. (Discord)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...