Egg Repository

Pterodactyl Community Egg Repository

Dynamica

An easy-to-use dynamic voice channel bot.

Read Me

Dynamica

Their Github

An easy-to-use dynamic voice channel bot.

Port

You will manual have to change the web port in the src/main.ts on line 24.

Yolks
NameTag
Nodejs 18ghcr.io/ptero-eggs/yolks:nodejs_18
Variables and Startup

Startup Command

npx prisma migrate deploy && yarn start

Variables

Database Path

The path in which to create the sqlite database.

Environment Variable: DATABASE_URL
Default Value: file:/home/container/dynamica/db.sqlite
User Viewable:
User Editable:
Token

The token for the discord bot.

Environment Variable: TOKEN
Default Value:
User Viewable:
User Editable:
Guild ID

Add only if using the bot in a single guild.

Environment Variable: GUILD_ID
Default Value:
User Viewable:
User Editable:
Sentry DSN

The DSN for Sentry.

Environment Variable: SENTRY_DSN
Default Value:
User Viewable:
User Editable:
MQTT URL

The URL for the MQTT broker.

Environment Variable: MQTT_URL
Default Value:
User Viewable:
User Editable:
MQTT Username

The username for the MQTT broker.

Environment Variable: MQTT_USER
Default Value:
User Viewable:
User Editable:
MQTT Password

The password for the MQTT broker.

Environment Variable: MQTT_PASS
Default Value:
User Viewable:
User Editable:
Install Script
#!/bin/bash

apt update
apt -y install tar curl jq git

mkdir -p /mnt/server
cd /mnt/server

GITHUB_PACKAGE="DynamicaBot/Dynamica-V2"

# Find GitHub download URL for Muse for specified version
LATEST_JSON=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases/latest")
RELEASES=$(curl --silent "https://api.github.com/repos/${GITHUB_PACKAGE}/releases")

if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
    DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')
else
    VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tag_name')
    if [ "${VERSION}" == "${VERSION_CHECK}" ]; then
        DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION "${VERSION}" '.[] | select(.tag_name==$VERSION) | .tarball_url')
    else
        echo -e "Could not find version \"${VERSION}\" of Muse. Defaulting to latest release..."
        DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')
    fi
fi

curl -sSL -o dynamica.tar.gz ${DOWNLOAD_URL}
tar xvf dynamica.tar.gz --strip-components=1
rm dynamica.tar.gz

#curl -sSL -o tsconfig.json https://pteropaste.com/xqhjja443pbm

yarn add tsup --dev
yarn install  --frozen-lockfile

yarn generate
yarn build

rm -rf .github/ .vscode/ Dockerfile partial.Dockerfile entrypoint.sh dynamica-egg.json


## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"
Installation Imagenode:18-bookworm-slimInstallation Entrypointbash