This commit is contained in:
bash
2024-07-29 18:17:04 +00:00
parent 89a60b61e3
commit 47019a73e8
21 changed files with 343 additions and 279 deletions

View File

@@ -8,6 +8,10 @@ echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
sudo chmod +x ${ROOT_DIR}/*.sh
sudo chmod +x ${ROOT_DIR}/helper/*.sh
##########################################################################################
# General dependencies
##########################################################################################

View File

@@ -1,101 +1,101 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
source ${ROOT_DIR}/variables.sh
read -p "This will configur the server, are you sure? (Y)es/(N)o: " -n 1 -r
echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
##########################################################################################
# Enable mysql server
##########################################################################################
sudo service mysql start
##########################################################################################
# Create acore account
##########################################################################################
sudo mysql -u root -e "CREATE DATABASE IF NOT EXISTS acore_auth;"
sudo mysql -u root -e "CREATE USER IF NOT EXISTS 'acore'@'%' IDENTIFIED BY 'acore';"
sudo mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'acore'@'%';"
sudo mysql -u root -e "FLUSH PRIVILEGES;"
##########################################################################################
# Recompile default conf files
##########################################################################################
sudo ${ROOT_DIR}/_server/azerothcore/acore.sh compiler configure
##########################################################################################
# Ensure all folder and files are accesible for the current user
##########################################################################################
sudo find ${ROOT_DIR}/_server/ -user root -exec sudo chown $USER: {} +
##########################################################################################
# Server config merge
##########################################################################################
sudo cat ${ROOT_DIR}/config/authserver.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/authserver.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/authserver.conf | exit 1
sudo cat ${ROOT_DIR}/config/worldserver.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/worldserver.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/worldserver.conf | exit 1
###########################################################################################
## Modules config merge
###########################################################################################
sudo cat ${ROOT_DIR}/config/modules/playerbots.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/playerbots.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/playerbots.conf | exit 1
sudo cat ${ROOT_DIR}/config/modules/mod_ahbot.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/mod_ahbot.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/mod_ahbot.conf | exit 1
##########################################################################################
# Set alias to start, stop and open wow or auth tmux sessions
##########################################################################################
if grep -R "bash_wow" ~/.bashrc
then
echo "bash_wow exists";
else
echo " " >> ~/.bashrc
echo "if [ -f ~/.bash_wow ]; then" >> ~/.bashrc
echo " . ~/.bash_wow" >> ~/.bashrc
echo "fi" >> ~/.bashrc
fi
echo "ROOT_DIR=${ROOT_DIR}" > ~/.bash_wow
echo "DATAPATH=${DATAPATH}" >> ~/.bash_wow
echo "alias update='${ROOT_DIR}/2_update.sh'" >> ~/.bash_wow
echo "alias build='${ROOT_DIR}/3_build.sh'" >> ~/.bash_wow
echo "alias compile='${ROOT_DIR}/4_compile.sh'" >> ~/.bash_wow
echo "alias config='${ROOT_DIR}/5_config.sh'" >> ~/.bash_wow
echo "alias start='${ROOT_DIR}/6_start.sh'" >> ~/.bash_wow
echo "alias stop='tmux kill-server'" >> ~/.bash_wow
echo "alias wow='cd ${ROOT_DIR}/_server/azerothcore;tmux attach -t ${WORLDSERVER_SESSION}'" >> ~/.bash_wow
echo "alias auth='cd ${ROOT_DIR}/_server/azerothcore;tmux attach -t ${AUTHSERVER_SESSION}'" >> ~/.bash_wow
source ~/.bashrc
echo " "
echo "###########################################################################################"
echo "## After the first install or changes either reboot or TYPE! 'source ~/.bashrc'"
echo "###########################################################################################"
echo "## After the above you can use the following commands:"
echo "### start - starts auth and world in tmux sessions server"
echo "### stop - starts all servers"
echo "### wow - logon world-server tmux session"
echo "### auth - logon auth-server tmux session"
echo "### update - updates the current downloaded source-code, after rerun: build, compile and config."
echo "### build - (re)builds the server based on the downloaded/updated source-codes"
echo "### compile - (re)compiles the server based on the build server"
echo "### config - applies configuration settings defined in the 'config' folder"
echo "###########################################################################################"
fi
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
source ${ROOT_DIR}/variables.sh
read -p "This will configur the server, are you sure? (Y)es/(N)o: " -n 1 -r
echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
##########################################################################################
# Enable mysql server
##########################################################################################
sudo service mysql start
##########################################################################################
# Create acore account
##########################################################################################
sudo mysql -u root -e "CREATE DATABASE IF NOT EXISTS acore_auth;"
sudo mysql -u root -e "CREATE USER IF NOT EXISTS 'acore'@'%' IDENTIFIED BY 'acore';"
sudo mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'acore'@'%';"
sudo mysql -u root -e "FLUSH PRIVILEGES;"
##########################################################################################
# Recompile default conf files
##########################################################################################
sudo ${ROOT_DIR}/_server/azerothcore/acore.sh compiler configure
##########################################################################################
# Ensure all folder and files are accesible for the current user
##########################################################################################
sudo find ${ROOT_DIR}/_server/ -user root -exec sudo chown $USER: {} +
##########################################################################################
# Server config merge
##########################################################################################
sudo cat ${ROOT_DIR}/config/authserver.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/authserver.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/authserver.conf | exit 1
sudo cat ${ROOT_DIR}/config/worldserver.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/worldserver.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/worldserver.conf | exit 1
###########################################################################################
## Modules config merge
###########################################################################################
sudo cat ${ROOT_DIR}/config/modules/playerbots.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/playerbots.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/playerbots.conf | exit 1
sudo cat ${ROOT_DIR}/config/modules/mod_ahbot.conf \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/mod_ahbot.conf.dist > \
${ROOT_DIR}/_server/azerothcore/env/dist/etc/modules/mod_ahbot.conf | exit 1
##########################################################################################
# Set alias to start, stop and open wow or auth tmux sessions
##########################################################################################
if grep -R "bash_wow" ~/.bashrc
then
echo "bash_wow exists";
else
echo " " >> ~/.bashrc
echo "if [ -f ~/.bash_wow ]; then" >> ~/.bashrc
echo " . ~/.bash_wow" >> ~/.bashrc
echo "fi" >> ~/.bashrc
fi
echo "ROOT_DIR=${ROOT_DIR}" > ~/.bash_wow
echo "DATAPATH=${DATAPATH}" >> ~/.bash_wow
echo "alias update='${ROOT_DIR}/2_update.sh'" >> ~/.bash_wow
echo "alias build='${ROOT_DIR}/3_build.sh'" >> ~/.bash_wow
echo "alias compile='${ROOT_DIR}/4_compile.sh'" >> ~/.bash_wow
echo "alias config='${ROOT_DIR}/5_config.sh'" >> ~/.bash_wow
echo "alias start='${ROOT_DIR}/6_start.sh'" >> ~/.bash_wow
echo "alias stop='tmux kill-server'" >> ~/.bash_wow
echo "alias wow='cd ${ROOT_DIR}/_server/azerothcore;tmux attach -t ${WORLDSERVER_SESSION}'" >> ~/.bash_wow
echo "alias auth='cd ${ROOT_DIR}/_server/azerothcore;tmux attach -t ${AUTHSERVER_SESSION}'" >> ~/.bash_wow
source ~/.bashrc
echo " "
echo "###########################################################################################"
echo "## After the first install or changes either reboot or TYPE! 'source ~/.bashrc'"
echo "###########################################################################################"
echo "## After the above you can use the following commands:"
echo "### update - Updates source-code to latest version"
echo "### build - Builds the server based on source-code"
echo "### compile - Compiles the code based on the build server"
echo "### config - Applies the server configration"
echo "### start - starts auth and world in tmux sessions server"
echo "### stop - stops all sessions"
echo "### wow - logon world-server (tmux) session"
echo "### auth - logon auth-server (tmux) session"
echo "###########################################################################################"
fi

View File

@@ -1,71 +1,71 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
source ${ROOT_DIR}/variables.sh
##########################################################################################
# Apply realm settings
##########################################################################################
sudo mysql -u root --database="acore_auth" -e "UPDATE realmlist SET address = '${REALM_IP}' WHERE id = 1;"
sudo mysql -u root --database="acore_auth" -e "UPDATE realmlist SET name = '${REALM_NAME}' WHERE id = 1;"
echo "Realm settings updated..."
echo " "
##########################################################################################
# Apply ah-modbot settings
##########################################################################################
sudo mysql -u root --database="acore_world" -e "UPDATE mod_auctionhousebot SET minitems = ${AH_BOT_MIN_ITEMS}, maxitems = ${AH_BOT_MAX_ITEMS};"
echo "Module ah-modbot updated..."
echo " "
##########################################################################################
# reset playerbots data (enforces performance and bot levels balance)
##########################################################################################
sudo mysql -u root --database="acore_characters" < ${ROOT_DIR}/lib/clear-bots.sql
echo "Module playerbots updated..."
echo " "
##########################################################################################
# handle the tmux sessions
##########################################################################################
if tmux new-session -d -s $AUTHSERVER_SESSION; then
echo "Created authserver session: $AUTHSERVER_SESSION"
else
echo "Error when trying to create authserver session: $AUTHSERVER_SESSION"
fi
echo " "
if tmux new-session -d -s $WORLDSERVER_SESSION; then
echo "Created worldserver session: $WORLDSERVER_SESSION"
else
echo "Error when trying to create worldserver session: $WORLDSERVER_SESSION"
fi
echo " "
if tmux send-keys -t $AUTHSERVER_SESSION "$AUTHSERVER" C-m; then
echo "Executed \"$AUTHSERVER\" inside $AUTHSERVER_SESSION"
#echo "You can attach to $AUTHSERVER_SESSION and check the result using \"tmux attach -t $AUTHSERVER_SESSION\""
else
echo "Error when executing \"$AUTHSERVER\" inside $AUTHSERVER_SESSION"
fi
echo " "
if tmux send-keys -t $WORLDSERVER_SESSION "$WORLDSERVER" C-m; then
echo "Executed \"$WORLDSERVER\" inside $WORLDSERVER_SESSION"
#echo "You can attach to $WORLDSERVER_SESSION and check the result using \"tmux attach -t $WORLDSERVER_SESSION\""
else
echo "Error when executing \"$WORLDSERVER\" inside $WORLDSERVER_SESSION"
fi
echo " "
echo "###########################################################################################"
echo "# type in terminal: "
echo "# - 'wow' : for the worlds-server session"
echo "# - 'auth' : for the auth-server session"
echo "# - 'ctrl+b then d' : detach from session (if not working use ctrl-z)"
echo "# - 'stop' : the kill the world and auth -server sessions"
echo "# - 'update' :
echo "###########################################################################################"
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
source ${ROOT_DIR}/variables.sh
##########################################################################################
# Apply server realm configuration
##########################################################################################
source ${ROOT_DIR}/helper/update_realm_ip.sh ${REALM_IP}
source ${ROOT_DIR}/helper/update_realm_ip.sh ${REALM_NAME}
echo " "
##########################################################################################
# Apply ah-bot custom configuration
##########################################################################################
source ${ROOT_DIR}/helper/update_ahbot_config.sh ${AH_BOT_MIN_ITEMS} ${AH_BOT_MAX_ITEMS}
echo " "
##########################################################################################
# Clear playerbots account and characters (enforces performance and bot levels balance)
##########################################################################################
source ${ROOT_DIR}/helper/clear_playerbots.sh
echo " "
##########################################################################################
# handle the tmux sessions
##########################################################################################
if tmux new-session -d -s $AUTHSERVER_SESSION; then
echo "Created authserver session: $AUTHSERVER_SESSION"
else
echo "Error when trying to create authserver session: $AUTHSERVER_SESSION"
fi
echo " "
if tmux new-session -d -s $WORLDSERVER_SESSION; then
echo "Created worldserver session: $WORLDSERVER_SESSION"
else
echo "Error when trying to create worldserver session: $WORLDSERVER_SESSION"
fi
echo " "
if tmux send-keys -t $AUTHSERVER_SESSION "$AUTHSERVER" C-m; then
echo "Executed \"$AUTHSERVER\" inside $AUTHSERVER_SESSION"
#echo "You can attach to $AUTHSERVER_SESSION and check the result using \"tmux attach -t $AUTHSERVER_SESSION\""
else
echo "Error when executing \"$AUTHSERVER\" inside $AUTHSERVER_SESSION"
fi
echo " "
if tmux send-keys -t $WORLDSERVER_SESSION "$WORLDSERVER" C-m; then
echo "Executed \"$WORLDSERVER\" inside $WORLDSERVER_SESSION"
#echo "You can attach to $WORLDSERVER_SESSION and check the result using \"tmux attach -t $WORLDSERVER_SESSION\""
else
echo "Error when executing \"$WORLDSERVER\" inside $WORLDSERVER_SESSION"
fi
echo " "
echo "###########################################################################################"
echo "## After the above you can use the following commands:"
echo "### update - Updates source-code to latest version"
echo "### build - Builds the server based on source-code"
echo "### compile - Compiles the code based on the build server"
echo "### config - Applies the server configration"
echo "### start - starts auth and world in tmux sessions server"
echo "### stop - stops all sessions"
echo "### wow - logon world-server (tmux) session"
echo "### auth - logon auth-server (tmux) session"
echo "###########################################################################################"

View File

@@ -1,11 +0,0 @@
#!/bin/bash
read -p "This will delete all items of the auction house, are you sure? (Y)es/(N)o: " -n 1 -r
echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
sudo mysql -u root --database="acore_characters" -e "DELETE FROM auctionhouse;"
fi

7
helper/clear_auctionhouse.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
sudo mysql -u root --database="acore_characters" < ${ROOT_DIR}/sql/clear_auctionhouse.sql
echo "Auction house items deleted..."

7
helper/clear_playerbots.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
sudo mysql -u root --database="acore_characters" < ${ROOT_DIR}/sql/clear_playerbots.sql
echo "Playerbots accounts and characters deleted..."

View File

@@ -1,10 +0,0 @@
#!/bin/bash
if [ -z "$1" ]
then
echo "Parameter is null, first paramter 'character name' should not be empty";
exit 1;
fi
# find character and account id by name, mainly used for configuring the ah-bot mod.
sudo mysql -u root --database="acore_auth" -e "select acc.id as accountId, ch.guid as characterId from acore_auth.account as acc inner join acore_characters.characters as ch where acc.id = ch.account and acc.username = '${1}';"

16
helper/find_characters.sh Executable file
View File

@@ -0,0 +1,16 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
ACCOUNT_NAME=$1;
if [ -z "$ACCOUNT_NAME" ]
then
echo "First parameter 'ACCOUNT_NAME' is required";
exit 1;
fi
sed -e "s/{{ACCOUNT_NAME}}/$ACCOUNT_NAME/g" \
"${ROOT_DIR}/sql/find_character.sql" > "/tmp/find_character.sql"
sudo mysql -u root --database="acore_characters" < /tmp/find_character.sql
echo "Find character executed..."

5
helper/git-alias.sh Executable file
View File

@@ -0,0 +1,5 @@
#!/bin/bash
# Alias GIT (git lg for git commits, git ls for commits with changed files)
git config --global alias.lg 'log --graph --abbrev-commit --decorate --date=relative --all'
git config --global alias.ls 'log --stat --pretty=short --graph'

View File

@@ -1,28 +1,28 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
##########################################################################################
# General dependencies
##########################################################################################
sudo apt update && sudo apt install -y git
read -p "Merge the orginal azerothcore code into the playerbot azerothcore, are you sure? (Y)es/(N)o: " -n 1 -r
echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
##########################################################################################
# Try to merge from the orginal azerothcore into the playerbot azerothcore fork branch
##########################################################################################
cd ${ROOT_DIR}/../_download/azerothcore
git reset --hard origin/Playerbot
git fetch upstream
git merge upstream/master
echo " "
echo "###########################################################################################"
echo "## If (conflict) error just run update (2_update.sh) again to restore to the latest"
echo "## version of the playerbot branch"
echo "###########################################################################################"
fi
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
##########################################################################################
# General dependencies
##########################################################################################
sudo apt update && sudo apt install -y git
read -p "Merge the orginal azerothcore code into the playerbot azerothcore, are you sure? (Y)es/(N)o: " -n 1 -r
echo " ";
if [[ $REPLY =~ ^[Yy]$ ]];
then
##########################################################################################
# Try to merge from the orginal azerothcore into the playerbot azerothcore fork branch
##########################################################################################
cd ${ROOT_DIR}/../_download/azerothcore
git reset --hard origin/Playerbot
git fetch upstream
git merge upstream/master
echo " "
echo "###########################################################################################"
echo "## If (conflict) error just run update (2_update.sh) again to restore to the latest"
echo "## version of the playerbot branch"
echo "###########################################################################################"
fi

24
helper/update_ahbot_config.sh Executable file
View File

@@ -0,0 +1,24 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
AH_BOT_MIN_ITEMS=$1;
if [ -z "$AH_BOT_MIN_ITEMS" ]
then
echo "First parameter 'AH_BOT_MIN_ITEMS' is required";
exit 1;
fi
AH_BOT_MAX_ITEMS=$2
if [ -z "$AH_BOT_MAX_ITEMS" ]
then
echo "Second parameter 'AH_BOT_MAX_ITEMS' is required";
exit 1;
fi
sed -e "s/{{AH_BOT_MIN_ITEMS}}/$AH_BOT_MIN_ITEMS/g" \
-e "s/{{AH_BOT_MAX_ITEMS}}/$AH_BOT_MAX_ITEMS/g" \
> "${ROOT_DIR}/sql/update_ahbot_config.sql" > "/tmp/update_ahbot_config.sql"
sudo mysql -u root --database="acore_characters" < /tmp/update_ahbot_config.sql
echo "AH-bot config updated..."

17
helper/update_realm_ip.sh Executable file
View File

@@ -0,0 +1,17 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
REALM_IP=$1;
if [ -z "$REALM_IP" ]
then
echo "First parameter 'REALM_IP' is required";
exit 1;
fi
sed -e "s/{{REALM_IP}}/$REALM_IP/g" \
"${ROOT_DIR}/sql/update_realm_ip.sql" > "/tmp/update_realm_ip.sql"
sudo mysql -u root --database="acore_characters" < /tmp/update_realm_ip.sql
echo "Server realm IP updated..."

17
helper/update_realm_name.sh Executable file
View File

@@ -0,0 +1,17 @@
#!/bin/bash
ROOT_DIR="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"/..
source ${ROOT_DIR}/variables.sh
REALM_NAME=$1;
if [ -z "$REALM_NAME" ]
then
echo "First parameter 'REALM_NAME' is required";
exit 1;
fi
sed -e "s/{{REALM_NAME}}/$REALM_NAME/g" \
"${ROOT_DIR}/sql/update_realm_name.sql" > "/tmp/update_realm_name.sql"
sudo mysql -u root --database="acore_characters" < /tmp/update_realm_name.sql
echo "Server realm name updated..."

View File

@@ -1,13 +0,0 @@
#!/bin/bash
##########################################################################################
# General settings
##########################################################################################
# Setting execute rights for the scripts
sudo chmod +x ${ROOT_DIR}/*.sh
sudo chmod +x ${ROOT_DIR}/lib/*.sh
sudo chmod +x ${ROOT_DIR}/helper/*.sh
# Alias GIT (git lg for git commits, git ls for commits with changed files)
git config --global alias.lg 'log --graph --abbrev-commit --decorate --date=relative --all'
git config --global alias.ls 'log --stat --pretty=short --graph'

2
sql/clear_auctionhouse.sql Executable file
View File

@@ -0,0 +1,2 @@
USE acore_characters;
DELETE FROM auctionhouse;

60
lib/clear-bots.sql → sql/clear_playerbots.sql Normal file → Executable file
View File

@@ -1,30 +1,30 @@
DELETE FROM `acore_playerbots`.`playerbots_random_bots`;
UPDATE `acore_characters`.`playerbots_names` SET `in_use`=0;
DELETE FROM `acore_characters`.`characters` WHERE `account` IN (SELECT `id` FROM `acore_auth`.`account` WHERE `username` LIKE 'RNDBOT%') OR `account` NOT IN (SELECT `id` FROM `acore_auth`.`account`);
DELETE FROM `acore_characters`.`character_account_data` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_achievement` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_achievement_progress` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_action` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_aura` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_glyphs` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_homebind` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`item_instance` WHERE `owner_guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_inventory` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`pet_aura` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`pet_spell` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`pet_spell_cooldown` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_queststatus` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_queststatus_rewarded` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_reputation` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_skills` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_social` WHERE `friend` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_spell` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_spell_cooldown` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_talent` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`corpse` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`groups` WHERE `leaderGuid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`group_member` WHERE `memberGuid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`mail` WHERE `receiver` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`mail_items` WHERE `receiver` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_auth`.`account` WHERE `username` LIKE 'RNDBOT%';
DELETE FROM `acore_playerbots`.`playerbots_random_bots`;
UPDATE `acore_characters`.`playerbots_names` SET `in_use`=0;
DELETE FROM `acore_characters`.`characters` WHERE `account` IN (SELECT `id` FROM `acore_auth`.`account` WHERE `username` LIKE 'RNDBOT%') OR `account` NOT IN (SELECT `id` FROM `acore_auth`.`account`);
DELETE FROM `acore_characters`.`character_account_data` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_achievement` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_achievement_progress` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_action` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_aura` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_glyphs` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_homebind` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`item_instance` WHERE `owner_guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_inventory` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`pet_aura` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`pet_spell` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`pet_spell_cooldown` WHERE `guid` IN (SELECT `id` FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`));
DELETE FROM `acore_characters`.`character_pet` WHERE `owner` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_queststatus` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_queststatus_rewarded` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_reputation` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_skills` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_social` WHERE `friend` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_spell` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_spell_cooldown` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`character_talent` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`corpse` WHERE `guid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`groups` WHERE `leaderGuid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`group_member` WHERE `memberGuid` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`mail` WHERE `receiver` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_characters`.`mail_items` WHERE `receiver` NOT IN (SELECT `guid` FROM `acore_characters`.`characters`);
DELETE FROM `acore_auth`.`account` WHERE `username` LIKE 'RNDBOT%';

5
sql/find_character.sql Executable file
View File

@@ -0,0 +1,5 @@
USE acore_auth;
SELECT acc.id AS accountId, ch.name as characterName, ch.guid AS characterId,
FROM acore_auth.account AS acc
INNER JOIN acore_characters.characters AS ch
WHERE acc.id = ch.account and acc.username = '{{ACCOUNT_NAME}}';

6
sql/update_ahbot_config.sql Normal file → Executable file
View File

@@ -1,3 +1,3 @@
USE acore_world;
UPDATE mod_auctionhousebot
SET minitems = 30000, maxitems = 40000;
USE acore_world;
UPDATE mod_auctionhousebot
SET minitems = '{{AH_BOT_MIN_ITEMS}}', maxitems = '{{AH_BOT_MAX_ITEMS}}';

6
sql/update_realm_ip.sql Normal file → Executable file
View File

@@ -1,3 +1,3 @@
USE acore_auth;
SELECT * FROM realmlist;
UPDATE realmlist SET address='192.168.178.185';
USE acore_auth;
SELECT * FROM realmlist;
UPDATE realmlist SET address='{{REALM_IP}}';

6
sql/update_realm_name.sql Normal file → Executable file
View File

@@ -1,3 +1,3 @@
USE acore_auth;
SELECT * FROM realmlist;
UPDATE realmlist SET name='azerothcore.org';
USE acore_auth;
SELECT * FROM realmlist;
UPDATE realmlist SET name='{{REALM_NAME}}';

View File

@@ -34,9 +34,3 @@ REALM_NAME="azerothcore.org"
AH_BOT_MIN_ITEMS=25000
AH_BOT_MAX_ITEMS=30000
##########################################################################################
# General settings
##########################################################################################
source ${ROOT_DIR}/lib/general-settings.sh