Add help system, deployment docs, and improve setup
Introduces a new interactive help command with button navigation, adds a detailed DEPLOYMENT.md guide, and improves server setup validation and error handling. Updates command registration to include all 9 games, adds version reporting, enhances Docker deployment with a multi-platform script, and removes local .env files from the repo. Also refactors bot startup for better diagnostics and graceful shutdown.
This commit is contained in:
@@ -3,8 +3,28 @@ require("dotenv").config();
|
||||
|
||||
const commands = [
|
||||
new SlashCommandBuilder()
|
||||
.setName("ping")
|
||||
.setDescription("Replies with Pong!"),
|
||||
.setName("help")
|
||||
.setDescription("Get help with BattleBot commands and features")
|
||||
.addStringOption((option) =>
|
||||
option
|
||||
.setName("category")
|
||||
.setDescription("Select a help category")
|
||||
.setRequired(false)
|
||||
.addChoices(
|
||||
{ name: "Big Ballers VR", value: "Big Ballers VR" },
|
||||
{ name: "Blacktop Hoops", value: "Blacktop Hoops" },
|
||||
{ name: "Breachers", value: "Breachers" },
|
||||
{ name: "Echo Arena", value: "Echo Arena" },
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
),
|
||||
new SlashCommandBuilder()
|
||||
.setName("version")
|
||||
.setDescription("Show bot version and system information"),
|
||||
new SlashCommandBuilder()
|
||||
.setName("finduser")
|
||||
.setDescription("Find a user by username")
|
||||
@@ -21,6 +41,7 @@ const commands = [
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
)
|
||||
@@ -40,7 +61,21 @@ const commands = [
|
||||
.setRequired(true)
|
||||
)
|
||||
.addStringOption((option) =>
|
||||
option.setName("game").setDescription("Filter by game").setRequired(false)
|
||||
option
|
||||
.setName("game")
|
||||
.setDescription("Filter by game (optional)")
|
||||
.setRequired(false)
|
||||
.addChoices(
|
||||
{ name: "Big Ballers VR", value: "Big Ballers VR" },
|
||||
{ name: "Blacktop Hoops", value: "Blacktop Hoops" },
|
||||
{ name: "Breachers", value: "Breachers" },
|
||||
{ name: "Echo Arena", value: "Echo Arena" },
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
),
|
||||
new SlashCommandBuilder()
|
||||
.setName("subscribe")
|
||||
@@ -59,6 +94,7 @@ const commands = [
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
)
|
||||
@@ -85,6 +121,7 @@ const commands = [
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
),
|
||||
@@ -112,6 +149,7 @@ const commands = [
|
||||
{ name: "Echo Combat", value: "Echo Combat" },
|
||||
{ name: "Gun Raiders", value: "Gun Raiders" },
|
||||
{ name: "Nock", value: "Nock" },
|
||||
{ name: "Orion Drift", value: "Orion Drift" },
|
||||
{ name: "VAIL", value: "VAIL" }
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user