From 4616605db0ea679641a2671093e90ce397979852 Mon Sep 17 00:00:00 2001 From: O-S Marin Date: Fri, 16 Jan 2026 15:55:40 +0100 Subject: [PATCH 1/5] New command to list documentation websites Updated command responses JSON to include additional documentation links and resources for Ark modding. --- am_bot/cogs/command_responses.json | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/am_bot/cogs/command_responses.json b/am_bot/cogs/command_responses.json index f90ba0e..6fe1d38 100644 --- a/am_bot/cogs/command_responses.json +++ b/am_bot/cogs/command_responses.json @@ -49,6 +49,35 @@ "amcvids": { "duplicate": "amcv" }, + "docs": { + "embed": { + "author": { + "name": "Documentation Websites", + "icon_url": "https://i.imgur.com/Rt7vu2j.png", + "proxy_icon_url": "https://media.discordapp.net/attachments/1194039176920834120/1461728918531870893/ADKLogo_128.png?ex=696b9ca3&is=696a4b23&hm=a6a7547b5f7b2d1aff9f24f07fe1fd5299cd8f81c4deea5d88b411e075513728&=&format=webp&quality=lossless" + }, + "fields": [ + { + "name": "===========================", + "value": "[Official modding documentation](https://devkit.studiowildcard.com/)\n + [Blog, snippets & tutorials](https://arkmodding.net/)\n + [Wiki, general FAQ & tutorials](https://wiki.arkmodding.net/)\n + [CurseForge - Ark knowledge base](https://support.curseforge.com/en/support/solutions/folders/9000199294/)\n + [CurseForge - Premium mods documentation](https://support.curseforge.com/en/support/solutions/articles/9000235469-ark-premium-mods/)\n + [CurseForge - Suggest your premium mod](https://arksa.curseforge.com/#premium)\n + [CurseForge - Moderation guidelines](https://support.curseforge.com/en/support/solutions/articles/9000232898-moderation-guidelines-for-ark-survival-ascended)", + "inline": true + } + ], + "color": 2921542, + "type": "rich", + "description": "Links to documentation websites, where you can find various info and guides.", + "title": "" + } + }, + "links": { + "duplicate": "docs" + }, "gso": { "content": "__**SAH Discord**__: https://discord.gg/h2k7agJJGS" }, @@ -64,3 +93,4 @@ } } + From 8f28e46c66395e26f7551b1ab01f05a90576d493 Mon Sep 17 00:00:00 2001 From: O-S Marin Date: Fri, 16 Jan 2026 15:58:08 +0100 Subject: [PATCH 2/5] Fixed JSON format --- am_bot/cogs/command_responses.json | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/am_bot/cogs/command_responses.json b/am_bot/cogs/command_responses.json index 6fe1d38..199c522 100644 --- a/am_bot/cogs/command_responses.json +++ b/am_bot/cogs/command_responses.json @@ -59,13 +59,7 @@ "fields": [ { "name": "===========================", - "value": "[Official modding documentation](https://devkit.studiowildcard.com/)\n - [Blog, snippets & tutorials](https://arkmodding.net/)\n - [Wiki, general FAQ & tutorials](https://wiki.arkmodding.net/)\n - [CurseForge - Ark knowledge base](https://support.curseforge.com/en/support/solutions/folders/9000199294/)\n - [CurseForge - Premium mods documentation](https://support.curseforge.com/en/support/solutions/articles/9000235469-ark-premium-mods/)\n - [CurseForge - Suggest your premium mod](https://arksa.curseforge.com/#premium)\n - [CurseForge - Moderation guidelines](https://support.curseforge.com/en/support/solutions/articles/9000232898-moderation-guidelines-for-ark-survival-ascended)", + "value": "[Official modding documentation](https://devkit.studiowildcard.com/)\n[Blog, snippets & tutorials](https://arkmodding.net/)\n[Wiki, general FAQ & tutorials](https://wiki.arkmodding.net/)\n[CurseForge - Ark knowledge base](https://support.curseforge.com/en/support/solutions/folders/9000199294/)\n[CurseForge - Premium mods documentation](https://support.curseforge.com/en/support/solutions/articles/9000235469-ark-premium-mods/)\n[CurseForge - Suggest your premium mod](https://arksa.curseforge.com/#premium)\n[CurseForge - Moderation guidelines](https://support.curseforge.com/en/support/solutions/articles/9000232898-moderation-guidelines-for-ark-survival-ascended)", "inline": true } ], @@ -94,3 +88,4 @@ } + From 0931bc4578cf96b0069af2c9bf8d6647344d6923 Mon Sep 17 00:00:00 2001 From: O-S Marin Date: Fri, 16 Jan 2026 16:07:02 +0100 Subject: [PATCH 3/5] Better CurseForge link (see details) * Changed moderation guidelines link to the more general page (which contains general guidelines and a link to the ASA-specific guidelines). * Removed extra new lines at the end of JSON file. --- am_bot/cogs/command_responses.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/am_bot/cogs/command_responses.json b/am_bot/cogs/command_responses.json index 199c522..b2238c4 100644 --- a/am_bot/cogs/command_responses.json +++ b/am_bot/cogs/command_responses.json @@ -59,7 +59,7 @@ "fields": [ { "name": "===========================", - "value": "[Official modding documentation](https://devkit.studiowildcard.com/)\n[Blog, snippets & tutorials](https://arkmodding.net/)\n[Wiki, general FAQ & tutorials](https://wiki.arkmodding.net/)\n[CurseForge - Ark knowledge base](https://support.curseforge.com/en/support/solutions/folders/9000199294/)\n[CurseForge - Premium mods documentation](https://support.curseforge.com/en/support/solutions/articles/9000235469-ark-premium-mods/)\n[CurseForge - Suggest your premium mod](https://arksa.curseforge.com/#premium)\n[CurseForge - Moderation guidelines](https://support.curseforge.com/en/support/solutions/articles/9000232898-moderation-guidelines-for-ark-survival-ascended)", + "value": "[Official modding documentation](https://devkit.studiowildcard.com/)\n[Blog, snippets & tutorials](https://arkmodding.net/)\n[Wiki, general FAQ & tutorials](https://wiki.arkmodding.net/)\n[CurseForge - Ark knowledge base](https://support.curseforge.com/en/support/solutions/folders/9000199294/)\n[CurseForge - Premium mods documentation](https://support.curseforge.com/en/support/solutions/articles/9000235469-ark-premium-mods/)\n[CurseForge - Suggest your premium mod](https://arksa.curseforge.com/#premium)\n[CurseForge - Moderation policies & guidelines](https://support.curseforge.com/en/support/solutions/articles/9000197279-project-and-modpack-moderation-policies)", "inline": true } ], @@ -86,6 +86,3 @@ } } } - - - From a1c60037864804f76f87b2c95de6a50593241263 Mon Sep 17 00:00:00 2001 From: O-S Marin Date: Fri, 16 Jan 2026 17:03:55 +0100 Subject: [PATCH 4/5] Can now output multiple commands at once. Command handling now supports multiple commands at once if the `commands` attribute is defined in JSON. --- am_bot/cogs/responses.py | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/am_bot/cogs/responses.py b/am_bot/cogs/responses.py index d16b793..c01faab 100644 --- a/am_bot/cogs/responses.py +++ b/am_bot/cogs/responses.py @@ -30,17 +30,36 @@ async def on_message(self, message: discord.Message): message.content[0] in COMMANDS and message.content[1:] in COMMANDS[message.content[0]] ): + # Grab command info from JSON. command = COMMANDS[message.content[0]][message.content[1:]] - if "duplicate" in command: - # Handle duplicate commands, - # grab original defined by `duplicate` - command = COMMANDS[message.content[0]][command["duplicate"]] + # Prepare the list of commands to send. + to_send = [] + if "commands" in command: + # Handle multiple commands, + # grab the list of commands defined by `commands`. + commands_list = command["commands"].split(", ") + for current_command in commands_list: + if current_command in COMMANDS[message.content[0]]: + to_send.append( + COMMANDS[message.content[0]][current_command] + ) + else: + to_send.append(command) + logger.info(f"Executing response command: {message.content}") - if "embed" in command: - await message.channel.send( - embed=discord.Embed.from_dict(command["embed"]) - ) - elif "content" in command: - await message.channel.send(content=command["content"]) + # Send messages. + for command_to_send in to_send: + final_cmd = command_to_send + if "duplicate" in final_cmd: + # Handle duplicate commands, + # grab original defined by `duplicate`. + final_cmd = COMMANDS[message.content[0]][ + final_cmd["duplicate"]] + if "embed" in final_cmd: + await message.channel.send( + embed=discord.Embed.from_dict(final_cmd["embed"]) + ) + elif "content" in final_cmd: + await message.channel.send(content=final_cmd["content"]) From 5606e5f84ee285f936d62c7e8db99d7523196430 Mon Sep 17 00:00:00 2001 From: O-S Marin Date: Fri, 16 Jan 2026 17:07:49 +0100 Subject: [PATCH 5/5] Added `?tutorials` command. Added `?tutorials` command, which will run the following commands at once: `?docs`, `?wcws`, `?amcv` --- am_bot/cogs/command_responses.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/am_bot/cogs/command_responses.json b/am_bot/cogs/command_responses.json index b2238c4..7a7fbc9 100644 --- a/am_bot/cogs/command_responses.json +++ b/am_bot/cogs/command_responses.json @@ -83,6 +83,10 @@ }, "cf": { "content": "https://discord.gg/Q4bB5zE75f" + }, + "tutorials": { + "commands": "docs, wcws, amcv" } } } +