| |
servers:bsd:games:trinitycore_3.3.5_localhost [2024/12/01 15:53] – [MMaps] Sean Rhone | servers:bsd:games:trinitycore_3.3.5_localhost [2025/09/11 06:43] (current) – external edit 127.0.0.1 |
---|
====== Information ====== | ====== Information ====== |
| |
* TrinityCore ((https://www.trinitycore.org)) | * TrinityCore |
* 3.3.5 ((https://github.com/TrinityCore/TrinityCore/tree/3.3.5)) | * [[https://talk.trinitycore.org/t/singleplayer-scripts-and-desktop-start-launchers-on-windows-linux-freebsd/33293|TrinityCore Forums]] |
| |
* These notes provide a local singleplayer server for World of Warcraft 3.3.5 on FreeBSD | * These notes provide a local single-player server for World of Warcraft 3.3.5 |
| |
| ===== Media ===== |
| |
| * [[https://media.realmofespionage.xyz/index/category/6|Progress Pics]] |
| |
===== Prerequisites ===== | ===== Prerequisites ===== |
| |
* [[bsd;freebsd_14.2_xfce|FreeBSD 14.2 (Xfce)]] | * [[bsd;freebsd_14.3_xfce|FreeBSD 14.3 (Xfce)]] |
* [[servers:bsd:mariadb|MariaDB]] | * [[servers:bsd:mariadb|MariaDB]] |
* [[games;bsd;wine;world_of_warcraft_3.3.5|World of Warcraft 3.3.5]] | * [[games;bsd;wine;world_of_warcraft_3.3.5|World of Warcraft 3.3.5]] |
| |
===== Resources ===== | |
| |
* [[https://trinitycore.org/|TrinityCore]] | |
* [[https://trinitycore.info/|TrinityCore MMo Project Wiki]] | |
| |
====== Dependencies ====== | ====== Dependencies ====== |
| |
| * :?: May require a ''boost'' package ((''keepassxc'' pulls in ''boost-libs'')) |
| |
su - | su - |
| |
pkg install git readline boost-all mariadb114-client cmake bzip2 libressl | pkg install git readline mariadb118-client cmake-core bzip2 libressl |
| |
====== Download Source ====== | ====== Download Source ====== |
| |
====== Databases ====== | ====== Databases ====== |
| |
| ===== Connect ===== |
| |
| su - 'root' -c 'service 'mysql-server' onestart' |
| |
mariadb -u 'root' -p | mariadb -u 'root' -p |
| |
| ===== Databases ===== |
| |
CREATE DATABASE authserver; | CREATE DATABASE authserver; |
| |
CREATE DATABASE worldserver; | CREATE DATABASE worldserver; |
| |
| ===== Users ===== |
| |
CREATE USER 'authserver'@'localhost' IDENTIFIED BY 'x'; | CREATE USER 'authserver'@'localhost' IDENTIFIED BY 'x'; |
CREATE USER 'worldserver'@'localhost' IDENTIFIED BY 'x'; | CREATE USER 'worldserver'@'localhost' IDENTIFIED BY 'x'; |
| |
GRANT ALL PRIVILEGES ON authserver.* to authserver@localhost; | ===== Permissions ===== |
| |
GRANT ALL PRIVILEGES ON characters.* to characters@localhost; | GRANT ALL PRIVILEGES ON authserver.* to 'authserver'@'localhost'; |
| |
GRANT ALL PRIVILEGES ON worldserver.* to worldserver@localhost; | GRANT ALL PRIVILEGES ON characters.* to 'characters'@'localhost'; |
| |
| GRANT ALL PRIVILEGES ON worldserver.* to 'worldserver'@'localhost'; |
| |
FLUSH PRIVILEGES; | FLUSH PRIVILEGES; |
**** | **** |
| |
rm -Rf ~/'Projects/TrinityCore-335/build' && mkdir -p ~/'Projects/TrinityCore-335/build' ~/'Projects/TrinityCore-335/run' && cd ~/'Projects/TrinityCore-335/build' && cmake ~/'Projects/TrinityCore-335/src' -DCMAKE_INSTALL_PREFIX=~/'Projects/TrinityCore-335/run' -DCMAKE_BUILD_TYPE='Release' -DWITHOUT_METRICS='1' -DTOOLS='1' && sync && make -j '8' install && sync | rm -Rf ~/'Projects/TrinityCore-335/build' && mkdir -p ~/'Projects/TrinityCore-335/build' ~/'Projects/TrinityCore-335/run' && cd ~/'Projects/TrinityCore-335/build' && cmake ~/'Projects/TrinityCore-335/src' -DCMAKE_INSTALL_PREFIX=~/'Projects/TrinityCore-335/run' -DCMAKE_BUILD_TYPE='Release' -DWITHOUT_METRICS='1' -DTOOLS='1' && make -j "$(nproc)" install |
| |
====== Update ====== | |
| |
* https://github.com/TrinityCore/TrinityCore/commits/3.3.5/ | |
| |
git -C ~/'Projects/TrinityCore-335/src' pull origin '3.3.5' && cd ~/'Projects/TrinityCore-335/build' && cmake ~/'Projects/TrinityCore-335/src' -DCMAKE_INSTALL_PREFIX=~/'Projects/TrinityCore-335/run' -DCMAKE_BUILD_TYPE='Release' -DWITHOUT_METRICS='1' -DTOOLS='1' && sync && make -j '8' install && sync | |
| |
====== Content ====== | ====== Content ====== |
**** | **** |
| |
cp -f ~/'Projects/TrinityCore-335/run/bin/mapextractor' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'dbc' 'maps' 'Cameras' && ./'mapextractor' -f '0' && sync | cp -f ~/'Projects/TrinityCore-335/run/bin/mapextractor' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'dbc' 'maps' 'Cameras' && ./'mapextractor' -f '0' |
| |
===== VMaps ===== | ===== VMaps ===== |
**** | **** |
| |
cp -f ~/'Projects/TrinityCore-335/run/bin/vmap4extractor' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'Buildings' && ./'vmap4extractor' -l && sync | cp -f ~/'Projects/TrinityCore-335/run/bin/vmap4extractor' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'Buildings' && ./'vmap4extractor' -l |
| |
==== Assemble ==== | ==== Assemble ==== |
**** | **** |
| |
cp -f ~/'Projects/TrinityCore-335/run/bin/vmap4assembler' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'vmaps' && mkdir -p 'vmaps' && ./'vmap4assembler' 'Buildings' 'vmaps' && sync | cp -f ~/'Projects/TrinityCore-335/run/bin/vmap4assembler' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'vmaps' && mkdir -p 'vmaps' && ./'vmap4assembler' 'Buildings' 'vmaps' |
| |
===== MMaps ===== | ===== MMaps ===== |
| |
* :!: Takes about 30 minutes on i5-8400H | * :!: ~30 minutes i5-8400H ((2025/08/29: ''29 Minutes 15 Seconds'' at ''--threads 8'')) |
| * ''--threads $(nproc)'' |
| |
cp -f ~/'Projects/TrinityCore-335/run/bin/mmaps_generator' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'mmaps' && mkdir -p 'mmaps' && ./'mmaps_generator' --bigBaseUnit 'true' --threads 8 && sync | cp -f ~/'Projects/TrinityCore-335/run/bin/mmaps_generator' ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'mmaps' && mkdir -p 'mmaps' && ./'mmaps_generator' --bigBaseUnit 'true' --threads "$(nproc)" |
| |
===== Move Files ===== | ===== Move Files ===== |
ls -d ~/'Projects/TrinityCore-335/run/bin/dbc' ~/'Projects/TrinityCore-335/run/bin/maps' ~/'Projects/TrinityCore-335/run/bin/Cameras' ~/'Projects/TrinityCore-335/run/bin/vmaps' ~/'Projects/TrinityCore-335/run/bin/mmaps' | ls -d ~/'Projects/TrinityCore-335/run/bin/dbc' ~/'Projects/TrinityCore-335/run/bin/maps' ~/'Projects/TrinityCore-335/run/bin/Cameras' ~/'Projects/TrinityCore-335/run/bin/vmaps' ~/'Projects/TrinityCore-335/run/bin/mmaps' |
| |
gio open ~/'Projects/TrinityCore-335/run/bin/' | gio open ~/'Projects/TrinityCore-335/run/bin' |
| |
===== Clean-up ===== | ===== Clean-up ===== |
| |
cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'Buildings' 'mapextractor' 'vmap4extractor' 'vmap4assembler' 'mmaps_generator' 'WoWDL.lnk' && cd ~ && sync | cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'Buildings' 'mapextractor' 'vmap4extractor' 'vmap4assembler' 'mmaps_generator' 'WoWDL.lnk' && cd ~ && sync |
| |
cd ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' && rm -Rf 'dbc' 'maps' 'Cameras' 'vmaps' 'mmaps' && cd ~ && sync | |
| |
gio open ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' | gio open ~/'.wine/World of Warcraft 3.3.5/drive_c/Program Files/World of Warcraft 3.3.5a.12340'*'/' |
| |
* https://github.com/TrinityCore/TrinityCore/releases | * https://github.com/TrinityCore/TrinityCore/releases |
* Download the latest ''TDB 335'' ''.7z'' with a web browser | * Last tested: ''TDB_full_world_335.24111_2024_11_22.7z'' |
| |
* Expects something like ''TDB_full_world_335.24081_2024_08_17.7z'' in ''~/Downloads'' | rm -f ~/'Projects/TrinityCore-335/run/bin/TDB_full_world_335.'*'.sql' && 7z e -o$HOME/'Projects/TrinityCore-335/run/bin' -y ~/'Downloads/TDB_full_world_335.'*'.7z' |
| |
rm -Rf ~/'Projects/TrinityCore-335/run/bin/TDB_full_world_335.'*'.sql' && cd ~/'Projects/TrinityCore-335/run/bin' && 7zz x ~/'Downloads/TDB_full_world_335.'*'.7z' && cd ~ | |
| |
====== Settings ====== | ====== Settings ====== |
| |
===== authserver ===== | ===== authserver ===== |
| |
**** | |
| |
cp -v ~/'Projects/TrinityCore-335/run/etc/authserver.conf.dist' ~/'Projects/TrinityCore-335/run/etc/authserver.conf' | |
| |
==== localhost ==== | |
| |
* Last commit: [[https://github.com/TrinityCore/TrinityCore/commit/68bf7e6d12e1689d688db32c05066b8832922c67|Jul 28, 2021]] ''68bf7e6'' | * Last commit: [[https://github.com/TrinityCore/TrinityCore/commit/68bf7e6d12e1689d688db32c05066b8832922c67|Jul 28, 2021]] ''68bf7e6'' |
* [[https://github.com/TrinityCore/TrinityCore/commits/3.3.5/src/server/authserver/authserver.conf.dist|New commits check]] | * [[https://github.com/TrinityCore/TrinityCore/commits/3.3.5/src/server/authserver/authserver.conf.dist|New commits check]] |
* [[https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/authserver/authserver.conf.dist|Upstream authserver.conf.dist]] ([[https://raw.githubusercontent.com/TrinityCore/TrinityCore/3.3.5/src/server/authserver/authserver.conf.dist|raw]]) | * [[https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/authserver/authserver.conf.dist|Upstream authserver.conf.dist]] ([[https://raw.githubusercontent.com/TrinityCore/TrinityCore/3.3.5/src/server/authserver/authserver.conf.dist|raw]]) |
| |
| cp -f ~/'Projects/TrinityCore-335/run/etc/authserver.conf.dist' ~/'Projects/TrinityCore-335/run/etc/authserver.conf' |
| |
mkdir -p ~/'Projects/TrinityCore-335/authserver.conf.d' && ee ~/'Projects/TrinityCore-335/authserver.conf.d/localhost-authserver.conf' | mkdir -p ~/'Projects/TrinityCore-335/authserver.conf.d' && ee ~/'Projects/TrinityCore-335/authserver.conf.d/localhost-authserver.conf' |
| |
<code>[authserver] | <code>[authserver] |
| |
| # Connection |
| BindIP = "127.0.0.1" |
LoginDatabaseInfo = ".;/var/run/mysql/mysql.sock;authserver;x;authserver" | LoginDatabaseInfo = ".;/var/run/mysql/mysql.sock;authserver;x;authserver" |
Updates.EnableDatabases = 1</code> | AllowLoggingIPAddressesInDatabase = 0 |
| |
===== worldserver ===== | # Etc |
| RealmsStateUpdateDelay = 0 |
| Updates.EnableDatabases = 1 |
| Updates.CleanDeadRefMaxCount = -1 |
| |
**** | # End</code> |
| |
cp -v ~/'Projects/TrinityCore-335/run/etc/worldserver.conf.dist' ~/'Projects/TrinityCore-335/run/etc/worldserver.conf' | ===== worldserver ===== |
| |
==== localhost ==== | |
| |
* Last commit: [[https://github.com/TrinityCore/TrinityCore/commit/65e2474ff264e40f579ce2aa29921e9d72c75c6f|Nov 29, 2024]] ''65e2474'' | * Last commit: [[https://github.com/TrinityCore/TrinityCore/commit/0bd56da09b1f0ae34605a1a6fdd14ca26cd42d4c|June 10th, 2025]] ''0bd56da'' |
* [[https://github.com/TrinityCore/TrinityCore/commits/3.3.5/src/server/worldserver/worldserver.conf.dist|New commits check]] | * [[https://github.com/TrinityCore/TrinityCore/commits/3.3.5/src/server/worldserver/worldserver.conf.dist|New commits check]] |
* [[https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/worldserver/worldserver.conf.dist|Upstream worldserver.conf.dist]] ([[https://raw.githubusercontent.com/TrinityCore/TrinityCore/3.3.5/src/server/worldserver/worldserver.conf.dist|raw]]) | * [[https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/worldserver/worldserver.conf.dist|Upstream worldserver.conf.dist]] ([[https://raw.githubusercontent.com/TrinityCore/TrinityCore/3.3.5/src/server/worldserver/worldserver.conf.dist|raw]]) |
| |
| cp -f ~/'Projects/TrinityCore-335/run/etc/worldserver.conf.dist' ~/'Projects/TrinityCore-335/run/etc/worldserver.conf' |
| |
mkdir -p ~/'Projects/TrinityCore-335/worldserver.conf.d' && ee ~/'Projects/TrinityCore-335/worldserver.conf.d/localhost-worldserver.conf' | mkdir -p ~/'Projects/TrinityCore-335/worldserver.conf.d' && ee ~/'Projects/TrinityCore-335/worldserver.conf.d/localhost-worldserver.conf' |
<code> | <code> |
[worldserver] | [worldserver] |
| |
| # Connection |
| BindIP = "127.0.0.1" |
LoginDatabaseInfo = ".;/var/run/mysql/mysql.sock;authserver;x;authserver" | LoginDatabaseInfo = ".;/var/run/mysql/mysql.sock;authserver;x;authserver" |
WorldDatabaseInfo = ".;/var/run/mysql/mysql.sock;worldserver;x;worldserver" | WorldDatabaseInfo = ".;/var/run/mysql/mysql.sock;worldserver;x;worldserver" |
CharacterDatabaseInfo = ".;/var/run/mysql/mysql.sock;characters;x;characters" | CharacterDatabaseInfo = ".;/var/run/mysql/mysql.sock;characters;x;characters" |
| |
| # Server |
| Updates.CleanDeadRefMaxCount = -1 |
| FlashAtStart = 0 |
| Server.LoginInfo = 1 |
| Motd = "Welcome to your localhost server!" |
| AllowTickets = 0 |
| CharDelete.Method = 1 |
| CharDelete.KeepDays = 0 |
| WhoList.Update.Interval = 300 |
| HotSwap.Enabled = 0 |
| HotSwap.EnableReCompiler = 0 |
| |
| # Quests |
Quests.LowLevelHideDiff = -1 | Quests.LowLevelHideDiff = -1 |
Quests.HighLevelHideDiff = -1 | Quests.HighLevelHideDiff = -1 |
Motd = "Welcome to your localhost server!" | |
Server.LoginInfo = 1</code> | |
| |
====== Launch ====== | # Character |
| GM.LoginState = 0 |
| |
* Two separate Terminal windows for ''authserver'' and ''worldserver'' | # Protections |
* Ctrl + C to exit | MaxOverspeedPings = 0 |
| PacketSpoof.Policy = 0 |
| ChatFakeMessagePreventing = 0 |
| ChatFlood.MessageCount = 0 |
| |
cd ~/'Projects/TrinityCore-335/run/bin' && ~/'Projects/TrinityCore-335/run/bin/authserver' --config-dir ~/'Projects/TrinityCore-335/authserver.conf.d' | # End</code> |
| |
cd ~/'Projects/TrinityCore-335/run/bin' && ~/'Projects/TrinityCore-335/run/bin/worldserver' --config-dir ~/'Projects/TrinityCore-335/worldserver.conf.d' | ====== Scripts ====== |
| |
===== Script ===== | ===== Server Start ===== |
| |
* This is attached to the [[games;bsd;wine;world_of_warcraft_3.3.5#desktop_launcher|WoW 3.3.5 desktop launcher]] Server action | mkdir -p ~/'Projects/TrinityCore-335/scripts' && ee ~/'Projects/TrinityCore-335/scripts/localhost-server-start.sh' && chmod +x ~/'Projects/TrinityCore-335/scripts/localhost-server-start.sh' |
| |
mkdir -p ~/'Projects/TrinityCore-335/scripts' && ee ~/'Projects/TrinityCore-335/scripts/tc-335-server-start.sh' && chmod +x ~/'Projects/TrinityCore-335/scripts/tc-335-server-start.sh' | |
| |
<code> | <code> |
cd ~/'Projects/TrinityCore-335/run/bin' | cd ~/'Projects/TrinityCore-335/run/bin' |
| |
xfce4-terminal -T 'WoW 3.3.5 localhost — authserver' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -e "./'authserver' --config-dir ../../'authserver.conf.d'" & | xfce4-terminal -T 'WoW — authserver' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -e "./'authserver' --config-dir ../../'authserver.conf.d'" & |
xfce4-terminal -T 'WoW 3.3.5 localhost — worldserver' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -e "./'worldserver' --config-dir ../../'worldserver.conf.d'" | xfce4-terminal -T 'WoW — worldserver' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -e "./'worldserver' --config-dir ../../'worldserver.conf.d'" |
| |
# End</code> | # End</code> |
| |
~/'Projects/TrinityCore-335/scripts/tc-335-server-start.sh' | ~/'Projects/TrinityCore-335/scripts/localhost-server-start.sh' |
| |
| ==== Xfce TODO ==== |
| |
| <code>xfce4-terminal --minimize -T 'WoW 3.3.5 — [auth]' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -x ~/'Projects/TrinityCore-335/run/bin/authserver' --config-dir ~/'Projects/TrinityCore-335/authserver.conf.d'</code> |
| |
| <code>xfce4-terminal --minimize -T 'WoW 3.3.5 — [world]' -I ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' -x ~/'Projects/TrinityCore-335/run/bin/worldserver' --config-dir ~/'Projects/TrinityCore-335/worldserver.conf.d'</code> |
| |
| ===== Server Update ===== |
| |
| * TODO |
| |
| ===== Database Back-up ===== |
| |
| mkdir -p ~/'Projects/TrinityCore-335/scripts' && ee ~/'Projects/TrinityCore-335/scripts/localhost-databases-backup.sh' && chmod +x ~/'Projects/TrinityCore-335/scripts/localhost-databases-backup.sh' |
| |
| <code> |
| #!/bin/sh |
| |
| cd ~/'Downloads' |
| mariadb-dump -u 'root' -p --opt -r 'localserver-authserver-database-'$(date +%Y-%m-%d-%s)'.sql' 'authserver' |
| mariadb-dump -u 'root' -p --opt -r 'localserver-characters-database-'$(date +%Y-%m-%d-%s)'.sql' 'characters' |
| sync |
| notify-send -i ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' 'WoW 3.3.5 Databases Backed-up Successfully to Downloads' |
| |
| # End</code> |
| |
| ~/'Projects/TrinityCore-335/scripts/localhost-databases-backup.sh' |
| |
====== Create GM Account ====== | ====== Create GM Account ====== |
| |
* ''worldserver'' | * Done from ''worldserver'' console |
* Change ''x'' to password | * Change ''x'' to password |
| |
| ~/'Projects/TrinityCore-335/scripts/localhost-server-start.sh' |
| |
account create Espionage724 x | account create Espionage724 x |
server shutdown 1 | server shutdown 1 |
| |
====== Database Data ====== | ====== Extras ====== |
| |
===== Backup ===== | ===== Items ===== |
| |
==== Commands ==== | ==== Northshire Gift Voucher ==== |
| |
* Dumps ''authserver'' and ''characters'' databases as ''.sql'' in ''~/Downloads'' | * https://www.wowhead.com/classic/item=14646/northshire-gift-voucher |
| * https://www.wowhead.com/wotlk/item=13584/diablo-stone |
| * Gives Diablo Stone for Mini Diablo pet |
| |
cd ~/'Downloads' && mariadb-dump -u 'root' -p --opt -r 'localserver-authserver-database-'$(date +%Y-%m-%d-%s)'.sql' 'authserver' | .additem 14646 |
| |
cd ~/'Downloads' && mariadb-dump -u 'root' -p --opt -r 'localserver-characters-database-'$(date +%Y-%m-%d-%s)'.sql' 'characters' | ==== Tyrael's Hilt ==== |
| |
==== Script ==== | * https://www.wowhead.com/wotlk/item=39656/tyraels-hilt |
| * :?: Mini Tyrael might have buggy movement and not follow more-often than other pets (Mini Diablo seems fine) |
| |
* This is attached to the [[games:bsd:wine:world_of_warcraft_3.3.5#desktop_launcher|WoW 3.3.5 desktop launcher]] Saves action | .additem 39656 |
| |
mkdir -p ~/'Projects/TrinityCore-335/scripts' && ee ~/'Projects/TrinityCore-335/scripts/tc-335-save-backup.sh' && chmod +x ~/'Projects/TrinityCore-335/scripts/tc-335-save-backup.sh' | ====== Character Data ====== |
| |
<code> | ===== Backup ===== |
#!/bin/sh | |
| |
cd ~/'Downloads' | su - 'root' -c 'service 'mysql-server' onestart' |
mariadb-dump -u 'root' -p --opt -r 'localserver-authserver-database-'$(date +%Y-%m-%d-%s)'.sql' 'authserver' | |
mariadb-dump -u 'root' -p --opt -r 'localserver-characters-database-'$(date +%Y-%m-%d-%s)'.sql' 'characters' | |
sync | |
notify-send -i ~/'.local/share/icons/hicolor/48x48/apps/WBE5_Wow.0.png' 'WoW 3.3.5 Databases Backed-up Successfully to Downloads' | |
| |
# End</code> | mariadb-dump -u 'root' -p --single-transaction --quick 'authserver' -r ~/'Downloads/localhost-authserver-'$(date +%Y-%m-%d-%s)'.sql' |
| |
| mariadb-dump -u 'root' -p --single-transaction --quick 'characters' -r ~/'Downloads/localhost-characters-'$(date +%Y-%m-%d-%s)'.sql' |
| |
| su - 'root' -c 'service 'mysql-server' onestop' |
| |
===== Restore ===== | ===== Restore ===== |
| |
| * [[#databases|Initial set-up]] |
| |
| su - 'root' -c 'service 'mysql-server' onestart' |
| |
==== authserver ==== | ==== authserver ==== |
| |
* ''x'' is path to ''localserver-authserver-database-*.sql'' | * ''x'' is path to a ''authserver'' ''.sql'' database dump |
| |
mariadb -u 'root' -p | mariadb -u 'root' -p --execute='CREATE DATABASE authserver;' |
| |
DROP DATABASE authserver; | mariadb -u 'root' -p 'authserver' < x |
| |
CREATE DATABASE authserver; | ==== characters ==== |
| |
EXIT | * ''x'' is path to a ''characters'' ''.sql'' database dump |
| |
mariadb -u 'root' -p -f 'authserver' < x | mariadb -u 'root' -p --execute='CREATE DATABASE characters;' |
| |
==== characters ==== | mariadb -u 'root' -p 'characters' < x |
| |
* ''x'' is path to ''localserver-characters-database-*.sql'' | ====== Quick Commands ====== |
| |
mariadb -u 'root' -p | ===== Execute ===== |
| |
DROP DATABASE characters; | ==== MariaDB ==== |
| |
CREATE DATABASE characters; | **** |
| |
EXIT | su - 'root' -c 'service 'mysql-server' onestart' |
| |
mariadb -u 'root' -p -f 'characters' < x | ==== authserver ==== |
| |
==== Reapply Permissions ==== | **** |
| |
mariadb -u 'root' -p | cd ~/'Projects/TrinityCore-335/run/bin' && ~/'Projects/TrinityCore-335/run/bin/authserver' --config-dir ~/'Projects/TrinityCore-335/authserver.conf.d' |
| |
CREATE USER 'authserver'@'localhost' IDENTIFIED BY 'x'; | ==== worldserver ==== |
| |
CREATE USER 'characters'@'localhost' IDENTIFIED BY 'x'; | **** |
| |
GRANT ALL PRIVILEGES ON authserver.* to authserver@localhost; | cd ~/'Projects/TrinityCore-335/run/bin' && ~/'Projects/TrinityCore-335/run/bin/worldserver' --config-dir ~/'Projects/TrinityCore-335/worldserver.conf.d' |
| |
GRANT ALL PRIVILEGES ON characters.* to 'characters'@'localhost'; | ===== Update ===== |
| |
FLUSH PRIVILEGES; | * https://github.com/TrinityCore/TrinityCore/commits/3.3.5/ |
| |
EXIT | git -C ~/'Projects/TrinityCore-335/src' pull origin '3.3.5' && cd ~/'Projects/TrinityCore-335/build' && cmake ~/'Projects/TrinityCore-335/src' -DCMAKE_INSTALL_PREFIX=~/'Projects/TrinityCore-335/run' -DCMAKE_BUILD_TYPE='Release' -DWITHOUT_METRICS='1' -DTOOLS='0' && make -j "$(nproc)" install |
| |