push
This commit is contained in:
		
						commit
						a94b563d5a
					
				
							
								
								
									
										11
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| # WORLD OF WARCRAFT SERVER INSTALL (VERSION 1.12) | ||||
| 
 | ||||
| - debian 12 | ||||
| - user wow | ||||
| 
 | ||||
| - ports: | ||||
|   - TCP: 1119, 3724, 6012 | ||||
|   - UDP: 1119, 3724, 6012 | ||||
| 
 | ||||
| - WOW 1.12 client: https://drive.usercontent.google.com/download?id=1TDoNNUXCtsgIUhLw96biPCqjv3AcLYkg&export=download | ||||
| 
 | ||||
							
								
								
									
										201
									
								
								install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										201
									
								
								install.sh
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,201 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| MANGOS_ETC="/home/wow/vmangos/etc" | ||||
| MANGOS_DATA="/home/wow/vmangos/data" | ||||
| MANGOS_LOGS="/home/wow/vmangos/logs" | ||||
| 
 | ||||
| MYSQL_ROOT_PASS="greg" | ||||
| MANGOS_DB_PASS="mangos" | ||||
| 
 | ||||
| REALM_IP=$(hostname -I | awk '{print $1}') | ||||
| REALM_NAME="wow-greg" | ||||
| 
 | ||||
| # CONFIG | ||||
| echo "[INFO] Configuration & dependencies installation ..." | ||||
| 
 | ||||
| sudo systemctl stop apt-daily.timer | ||||
| sudo systemctl disable apt-daily.timer | ||||
| 
 | ||||
| sudo apt update && sudo apt install git wget g++ cmake openssl libssl-dev build-essential checkinstall zlib1g-dev mariadb-server mariadb-client libmariadb-dev libmariadb-dev-compat libreadline-dev -y | ||||
| 
 | ||||
| sudo apt install -qq libace-dev -y | ||||
| export ACE_ROOT=/usr/include/ace | ||||
| 
 | ||||
| sudo apt install -y libtbb-dev -y | ||||
| export TBB_ROOT_DIR=/usr/include/tbb | ||||
| 
 | ||||
| # CLONING PROJECT | ||||
| echo "[INFO] Cloning project ..." | ||||
| 
 | ||||
| sudo mkdir -p /home/wow/vmangos | ||||
| sudo chown -R $USER:$USER /home/wow | ||||
| cd /home/wow/vmangos | ||||
| git clone -b development https://github.com/vmangos/core && git clone https://github.com/brotalnia/database vmangos/db | ||||
| 
 | ||||
| mkdir -p /home/wow/build | ||||
| cd /home/wow/build | ||||
| sudo cmake /home/wow/vmangos/core -DDEBUG=0 -DSUPPORTED_CLIENT_BUILD=5875 -DUSE_EXTRACTORS=0 -DCMAKE_INSTALL_PREFIX=$HOME/vmangos | ||||
| 
 | ||||
| # BUILDING PROJECT | ||||
| echo "[INFO] building wow ..." | ||||
| 
 | ||||
| sudo make -j $(nproc) install | ||||
| 
 | ||||
| # GETTING DATAS | ||||
| echo "[INFO] Getting datas ..." | ||||
| 
 | ||||
| cd /home/wow/vmangos | ||||
| wget https://www.mediafire.com/file_premium/j6cyqjeif3dvrv2/data.7z | ||||
| 7z x data.7z | ||||
| rm -r data.7z | ||||
| 
 | ||||
| # MISE EN PLACE DES FICHIERS | ||||
| echo "[INFO] Mise en place des fichiers ..." | ||||
| mkdir /home/wow/vmangos/etc | ||||
| 
 | ||||
| sudo cp /home/wow/vmangos/etc/realmd.conf.dist /home/wow/vmangos/etc/mangosd.conf | ||||
| sudo cp /home/wow/vmangos/etc/mangosd.conf.dist /home/wow/vmangos/etc/realmd.conf | ||||
| 
 | ||||
| sudo chown -R wow:wow /home/wow/vmangos/etc | ||||
| 
 | ||||
| mkdir -p /home/wow/vmangos/logs/{mangosd,realmd,honor} | ||||
| 
 | ||||
| sudo chown -R wow:wow /home/wow/vmangos/bin | ||||
| 
 | ||||
| # CONFIG AGAIN | ||||
| echo "[INFO] Configuration de mangosd.conf ..." | ||||
| sed -i \ | ||||
|     -e "s|^DataDir.*|DataDir = \"$MANGOS_DATA\"|" \ | ||||
|     -e "s|^LogsDir.*|LogsDir = \"$MANGOS_LOGS/mangosd\"|" \ | ||||
|     -e "s|^HonorDir.*|HonorDir = \"$MANGOS_LOGS/honor\"|" \ | ||||
|     "$MANGOS_ETC/mangosd.conf" | ||||
| 
 | ||||
| echo "[INFO] Configuration de realmd.conf ..." | ||||
| sed -i \ | ||||
|     -e "s|^LogsDir.*|LogsDir = \"$MANGOS_LOGS/realmd\"|" \ | ||||
|     "$MANGOS_ETC/realmd.conf" | ||||
| 
 | ||||
| # MYSQL SECURE INSTALLATION | ||||
| echo "[INFO] Sécurisation de MySQL ..." | ||||
| 
 | ||||
| sudo mysql <<EOF | ||||
| DELETE FROM mysql.user WHERE User=''; | ||||
| DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost'); | ||||
| DROP DATABASE IF EXISTS test; | ||||
| DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'; | ||||
| FLUSH PRIVILEGES; | ||||
| EOF | ||||
| 
 | ||||
| sudo mysql --user=root --password="${MYSQL_ROOT_PASS}" <<EOF | ||||
| DROP USER IF EXISTS 'mangos'@'localhost'; | ||||
| 
 | ||||
| CREATE USER 'mangos'@'localhost' IDENTIFIED BY '${MANGOS_DB_PASS}' | ||||
| WITH MAX_QUERIES_PER_HOUR 0 | ||||
|      MAX_CONNECTIONS_PER_HOUR 0 | ||||
|      MAX_UPDATES_PER_HOUR 0; | ||||
| 
 | ||||
| GRANT ALL PRIVILEGES ON *.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| 
 | ||||
| CREATE DATABASE IF NOT EXISTS \`realmd\` | ||||
|     DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; | ||||
| CREATE DATABASE IF NOT EXISTS \`mangos\` | ||||
|     DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; | ||||
| CREATE DATABASE IF NOT EXISTS \`characters\` | ||||
|     DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; | ||||
| CREATE DATABASE IF NOT EXISTS \`logs\` | ||||
|     DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; | ||||
| 
 | ||||
| GRANT ALL PRIVILEGES ON \`realmd\`.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| GRANT ALL PRIVILEGES ON \`mangos\`.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| GRANT ALL PRIVILEGES ON \`characters\`.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| GRANT ALL PRIVILEGES ON \`logs\`.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| 
 | ||||
| FLUSH PRIVILEGES; | ||||
| EOF | ||||
| 
 | ||||
| # not sure of usefullness | ||||
| sudo mysql -u root -p"${MYSQL_ROOT_PASS}" -e "SHOW GRANTS FOR 'mangos'@'localhost';" | ||||
| # end of 'not sure of usefullness' | ||||
| 
 | ||||
| sudo mysql -u root -p"${MYSQL_ROOT_PASS}" <<EOF | ||||
| DROP USER IF EXISTS 'mangos'@'localhost'; | ||||
| CREATE USER 'mangos'@'localhost' IDENTIFIED BY 'mangos'; | ||||
| GRANT ALL PRIVILEGES ON *.* TO 'mangos'@'localhost' WITH GRANT OPTION; | ||||
| FLUSH PRIVILEGES; | ||||
| EOF | ||||
| 
 | ||||
| # FINAL CONFIGS | ||||
| cd /home/wow/vmangos/vmangos/db/ | ||||
| 
 | ||||
| wget https://github.com/brotalnia/database/blob/master/world_full_14_june_2021.7z?raw=true | ||||
| 
 | ||||
| 7z x world_full_14_june_2021.7z | ||||
| sudo mysql -u mangos -pmangos --database=mangos < world_full_14_june_2021.sql | ||||
| rm -r world_full_14_june_2021.sql | ||||
| 
 | ||||
| cd /home/wow/vmangos/core/sql/ | ||||
| 
 | ||||
| mysql -u mangos -pmangos --database=characters < characters.sql | ||||
| mysql -u mangos -pmangos --database=logs < logs.sql | ||||
| mysql -u mangos -pmangos --database=realmd < logon.sql | ||||
| 
 | ||||
| sudo mysql -u root -p"${MYSQL_ROOT_PASS}" <<EOF | ||||
| 
 | ||||
| USE mangos; | ||||
| 
 | ||||
| ALTER TABLE locales_item | ||||
| MODIFY COLUMN name_loc1 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc2 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc3 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc4 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc5 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc6 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc7 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc8 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci'; | ||||
| 
 | ||||
| ALTER TABLE locales_creature | ||||
| MODIFY COLUMN name_loc1 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc2 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc3 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc4 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc5 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc6 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc7 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc8 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci'; | ||||
| 
 | ||||
| ALTER TABLE locales_gameobject | ||||
| MODIFY COLUMN name_loc1 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc2 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc3 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc4 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc5 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc6 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc7 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci', | ||||
| MODIFY COLUMN name_loc8 VARCHAR(100) NULL DEFAULT '' COLLATE 'utf8_general_ci'; | ||||
| 
 | ||||
| USE realmd; | ||||
| 
 | ||||
| DELETE FROM realmlist WHERE id=1; | ||||
| INSERT INTO realmlist (id, name, address, localAddress, localSubnetMask, icon, timezone, realmbuilds) | ||||
| VALUES (1, '${REALM_NAME}', '${REALM_IP}', '127.0.0.1', '255.255.255.0', 1, 2, '5875 6005 6141'); | ||||
| 
 | ||||
| EOF | ||||
| 
 | ||||
| # MIGRATIONS | ||||
| cd /home/wow/vmangos/core/sql/migrations | ||||
| 
 | ||||
| ./merge.sh | ||||
| 
 | ||||
| mysql -u mangos -pmangos --database=mangos < world_db_updates.sql | ||||
| mysql -u mangos -pmangos --database=logs < logs_db_updates.sql | ||||
| mysql -u mangos -pmangos --database=characters < characters_db_updates.sql | ||||
| mysql -u mangos -pmangos --database=realmd < logon_db_updates.sql | ||||
| 
 | ||||
| # START SERVER | ||||
| cd /home/wow/vmangos/bin/ | ||||
| sudo ./realmd | ||||
| 
 | ||||
| # OUVRIR NEW TERMINAL | ||||
| cd /home/wow/vmangos/bin/ | ||||
| 
 | ||||
| sudo ./mangosd | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	