====== Information ======
* TrinityCore ((https://www.trinitycore.org))
* 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/7|TrinityCore Forums]]
===== Media =====
* [[https://media.realmofespionage.xyz/index/category/6|Progress Pics]]
===== Resources =====
* [[https://trinitycore.info/|TrinityCore MMo Project Wiki]]
===== Crowdfunding =====
* [[https://ko-fi.com/c/4c69c353ad|Solo WoW on Steam Deck - Ko-fi]]
===== Prerequisites =====
* [[windows:10|Windows 10 (21H2)]]
* [[programs;windows;git|Git]]
* [[servers;windows;mariadb|MariaDB]] (Dev components required; no service/networking)
* [[games;windows;world_of_warcraft_3.3.5|World of Warcraft 3.3.5]]
====== Dependencies ======
* https://trinitycore.info/en/install/requirements/windows
===== Visual Studio 2022 =====
* https://aka.ms/vs/17/release/vs_community.exe ([[https://forums.mydigitallife.net/threads/repository-everything-about-windows-rt-woa-v8-x-x-and-v10-arm.57362/page-73#post-1896981|source]])
DEL /Q "%UserProfile%\Downloads\vs_community.exe" & "%SystemRoot%\System32\curl.exe" --output "%UserProfile%\Downloads\vs_community.exe" --location "https://aka.ms/vs/17/release/vs_community.exe" --progress-bar && "%UserProfile%\Downloads\vs_community.exe"
==== Required Components ====
* Desktop development with C++ (C++ core desktop features)
* MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest)
* Windows 11 SDK (10.0.26100.7705)
* MSBuild support for LLVM (clang-cl) toolset
"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\setup.exe"
===== LLVM =====
* https://github.com/llvm/llvm-project/releases
* Last tested: ''LLVM-22.1.0-win64.exe''
* ''[x]'' Do not add LLVM to the system PATH
* ''[ ]'' Create LLVM Desktop Icon
* ''[x]'' Do not create shortcuts
===== Boost =====
* https://sourceforge.net/projects/boost/files/boost-binaries/
* Last tested: ''boost_1_90_0-msvc-14.3-64.exe''
===== CMake =====
* https://cmake.org/download/#dev
* https://cmake.org/files/dev/?C=M;O=D (Ctrl + F)
* Last tested: ''cmake-4.3.20260302-g95a8003-windows-x86_64.msi''
* ''[ ]'' Add CMake to the PATH environment variable
* ''[ ]'' Add CMake shortcut to the Desktop
windows-x86_64.msi
===== OpenSSL =====
* https://slproweb.com/products/Win32OpenSSL.html (:!: not Light)
* Last tested: ''Win64OpenSSL-3_6_1.exe''
* Copy OpenSSL DLLs to:
* ''[x]'' The OpenSSL binaries (/bin) directory
====== Download Source ======
* https://github.com/TrinityCore/TrinityCore/commits/3.3.5
"%ProgramFiles%\Git\bin\git.exe" clone --branch "3.3.5" --depth "1" --recurse-submodules "https://github.com/TrinityCore/TrinityCore.git" "%UserProfile%\Projects\TrinityCore-335\src"
====== Databases ======
===== Settings =====
RMDIR /S /Q "%UserProfile%\Projects\TrinityCore-335\mariadb\database" & MKDIR "%UserProfile%\Projects\TrinityCore-335\mariadb\database" & "%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\mariadb\custom.cnf"
[client]
default-character-set = 'utf8mb4'
[mariadb-client]
default-character-set = 'utf8mb4'
[mariadbd]
character-set-client-handshake = 'FALSE'
character-set-server = 'utf8mb4'
collation-server = 'utf8mb4_unicode_ci'
init-connect='SET NAMES utf8mb4'
expire_logs_days = '7'
max_binlog_size = '100M'
skip-networking = 'On'
table_definition_cache = '1400'
# End
===== Initialize =====
****
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-install-db.exe" --skip-networking --datadir="%UserProfile%\Projects\TrinityCore-335\mariadb\database" --config="%UserProfile%\Projects\TrinityCore-335\mariadb\custom.cnf"
===== Connect =====
"%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
===== Databases =====
CREATE DATABASE authserver;
CREATE DATABASE characters;
CREATE DATABASE worldserver;
===== Users =====
CREATE USER 'authserver'@'localhost' IDENTIFIED BY 'x';
CREATE USER 'characters'@'localhost' IDENTIFIED BY 'x';
CREATE USER 'worldserver'@'localhost' IDENTIFIED BY 'x';
===== Permissions =====
GRANT ALL PRIVILEGES ON authserver.* to 'authserver'@'localhost';
GRANT ALL PRIVILEGES ON characters.* to 'characters'@'localhost';
GRANT ALL PRIVILEGES ON worldserver.* to 'worldserver'@'localhost';
FLUSH PRIVILEGES;EXIT;
====== Initial Compile ======
* https://trinitycore.info/en/install/Core-Installation/windows-core-installation
===== CMake =====
==== CXX_FLAGS Info ====
* [[https://learn.microsoft.com/en-us/cpp/build/reference/eh-exception-handling-model?view=msvc-170|/EHs]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/arch-x64?view=msvc-170|/arch:AVX2]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/favor-optimize-for-architecture-specifics?view=msvc-170|/favor:INTEL64]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/gd-gr-gv-gz-calling-convention?view=msvc-170|/Gz]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/oy-frame-pointer-omission?view=msvc-170|/Oy]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/gs-buffer-security-check?view=msvc-170|/GS-]]
* [[https://learn.microsoft.com/en-us/cpp/build/reference/guard-enable-control-flow-guard?view=msvc-170|/guard:cf-]]
==== Clang ====
* https://clang.llvm.org/docs/UsersManual.html
DIR /B "%ProgramFiles%\LLVM\lib\clang"
SET "LLVMInstallDir=%ProgramFiles%\LLVM"
SET "LLVMToolsVersion=22"
"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="1" -T "ClangCL" -DBoost_COMPILER="-vc143" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0 -Wno-everything"
==== MSVC ====
****
"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="1" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0"
===== Compile =====
* ~5 minutes i5-8400H ((2026/03/03: Clang ''00:04:36.64''))
"%ProgramFiles%\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe" "%UserProfile%\Projects\TrinityCore-335\build\ALL_BUILD.vcxproj" -target:"Rebuild" -property:"Configuration=Release" -maxCpuCount -nodeReuse:"False" -terminalLogger:"off" -binaryLogger:"output.binlog;ProjectImports=None"
SET "LLVMInstallDir="
SET "LLVMToolsVersion="
===== DLLs =====
COPY /Y "%ProgramFiles%\MariaDB 12.3\lib\libmariadb.dll" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
COPY /Y "%ProgramFiles%\OpenSSL-Win64\bin\legacy.dll" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
COPY /Y "%ProgramFiles%\OpenSSL-Win64\bin\libssl-3-x64.dll" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
COPY /Y "%ProgramFiles%\OpenSSL-Win64\bin\libcrypto-3-x64.dll" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
====== Content ======
* Expects [[games;windows;world_of_warcraft_3.3.5|World of Warcraft 3.3.5a]]
DIR "%ProgramFiles(x86)%\World of Warcraft 3.3.5\Wow.exe" | "%SystemRoot%\System32\find.exe" "7,704,216 Wow.exe"
===== DBCs, Maps, and Cameras =====
****
"%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mapextractor.exe" -i "%ProgramFiles(x86)%\World of Warcraft 3.3.5" -o "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" -f "0"
===== VMaps =====
==== Extract ====
****
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4extractor.exe" -d "%ProgramFiles(x86)%\World of Warcraft 3.3.5" -l
==== Assemble ====
****
"%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4assembler.exe" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\Buildings" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmaps"
===== MMaps =====
* :!: 30-40 minutes i5-8400H ((2026/03/03: 32 Minutes at ''--threads 8'' Clang))
* ''--threads %NUMBER_OF_PROCESSORS%''
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mmaps_generator.exe" --silent --skipJunkMaps "true" --debugOutput "false" --bigBaseUnit "true" --threads %NUMBER_OF_PROCESSORS%
==== Check Files ====
* ''TrinityCore-335\build\bin\Release'' needs ''Cameras'', ''dbc'', ''maps'', ''mmaps'', and ''vmaps'' folders
DIR /AD /B "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
"%SystemRoot%\explorer.exe" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
===== Clean-up =====
****
RMDIR /S /Q "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\Buildings" & DEL /Q "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mapextractor.exe" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mmaps_generator.exe" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4assembler.exe" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4extractor.exe"
===== World Database =====
==== TDB ====
* https://github.com/TrinityCore/TrinityCore/releases
* Expects [[windows:10#zip|7-Zip]]
* Last tested: ''TDB_full_world_335.25101_2025_10_21.7z'' (Oct 21, 2025)
DEL /Q "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\TDB_full_world_335."*".sql" & "%ProgramFiles%\7-Zip\7z.exe" x "%UserProfile%\Downloads\TDB_full_world_335."*".7z" -o"%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
DEL /Q "%UserProfile%\Downloads\TDB_full_world_335."*".7z"
====== Settings ======
===== authserver =====
* 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/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]])
COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.conf.dist" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.conf"
MKDIR "%UserProfile%\Projects\TrinityCore-335\conf\authserver" & "%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\conf\authserver\localhost.conf"
[authserver]
# Connection
BindIP = "127.0.0.1"
MySQLExecutable = "C:\Program Files\MariaDB 12.3\bin\mariadb.exe"
AllowLoggingIPAddressesInDatabase = 0
LoginDatabaseInfo = ".;3306;authserver;x;authserver"
# Etc
Updates.EnableDatabases = 1
Updates.CleanDeadRefMaxCount = -1
# End
===== worldserver =====
* 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/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]])
COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\worldserver.conf.dist" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\worldserver.conf"
MKDIR "%UserProfile%\Projects\TrinityCore-335\conf\worldserver" & "%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\conf\worldserver\localhost.conf"
[worldserver]
# Connection
BindIP = "127.0.0.1"
MySQLExecutable = "C:\Program Files\MariaDB 12.3\bin\mariadb.exe"
AllowLoggingIPAddressesInDatabase = 0
LoginDatabaseInfo = ".;3306;authserver;x;authserver"
CharacterDatabaseInfo = ".;3306;characters;x;characters"
WorldDatabaseInfo = ".;3306;worldserver;x;worldserver"
# 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.HighLevelHideDiff = -1
# Character
GM.LoginState = 0
# Protections
MaxOverspeedPings = 0
PacketSpoof.Policy = 0
ChatFakeMessagePreventing = 0
ChatFlood.MessageCount = 0
# End
====== Firewall ======
===== Block =====
****
"%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="TrinityCore 3.3.5 localhost (authserver)" dir="in" action="block" profile="any" program="%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.exe" & "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="TrinityCore 3.3.5 localhost (authserver)" dir="out" action="block" profile="any" program="%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.exe" & "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="TrinityCore 3.3.5 localhost (worldserver)" dir="in" action="block" profile="any" program="%UserProfile%\Projects\TrinityCore-335\build\bin\Release\worldserver.exe" & "%SystemRoot%\System32\netsh.exe" advfirewall firewall add rule name="TrinityCore 3.3.5 localhost (worldserver)" dir="out" action="block" profile="any" program="%UserProfile%\Projects\TrinityCore-335\build\bin\Release\worldserver.exe"
===== Delete Rules =====
****
"%SystemRoot%\System32\netsh.exe" advfirewall firewall delete rule name="TrinityCore 3.3.5 localhost (authserver)" & "%SystemRoot%\System32\netsh.exe" advfirewall firewall delete rule name="TrinityCore 3.3.5 localhost (worldserver)"
====== Scripts ======
MKDIR "%UserProfile%\Projects\TrinityCore-335\scripts"
"%SystemRoot%\explorer.exe" "%UserProfile%\Projects\TrinityCore-335\scripts"
===== Server Start =====
* Shutdown order: ''worldserver'' -> ''authserver'' -> MariaDB
"%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-start.bat"
@echo off
TITLE TrinityCore 335 Launcher
CD "%Temp%"
START "MariaDB Server" /MIN "%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini"
"%SystemRoot%\System32\timeout.exe" /T "2" /NOBREAK
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
START "WoW 3.3.5 [auth]" /MIN "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\authserver"
START "WoW 3.3.5 [world]" /MIN "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\worldserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\worldserver"
:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-start.bat"
===== Server Update =====
"%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update.bat"
@echo off
TITLE TrinityCore 335 Updater
CD "%Temp%"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" reset --hard "origin/3.3.5"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" pull origin "3.3.5" --rebase
:: Clang
SET "LLVMInstallDir=%ProgramFiles%\LLVM"
SET "LLVMToolsVersion=22"
"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="0" -T "ClangCL" -DBoost_COMPILER="-vc143" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0 -Wno-everything"
:: MSVC
::"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="0" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0"
"%ProgramFiles%\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe" "%UserProfile%\Projects\TrinityCore-335\build\ALL_BUILD.vcxproj" -target:"Build" -property:"Configuration=Release" -maxCpuCount -nodeReuse:"False" -terminalLogger:"off" -binaryLogger:"output.binlog;ProjectImports=None"
SET "LLVMInstallDir="
SET "LLVMToolsVersion="
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "WoW 3.3.5 localhost server update complete"
:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update.bat"
===== Server Update (Full) =====
* [[https://learn.microsoft.com/en-us/visualstudio/install/use-command-line-parameters-to-install-visual-studio?view=visualstudio|Visual Studio setup.exe Flags]]
"%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update-full.bat"
@echo off
TITLE TrinityCore 335 Updater (Full)
CD "%Temp%"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" reset --hard "origin/3.3.5"
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" pull origin "3.3.5" --rebase
"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\setup.exe" update --channelId "VisualStudio.17.Release" --channelURI "https://aka.ms/vs/17/release/channel" --productId "Microsoft.VisualStudio.Product.Community" --nocache --norestart --quiet
:: Clang
SET "LLVMInstallDir=%ProgramFiles%\LLVM"
SET "LLVMToolsVersion=22"
"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="0" -T "ClangCL" -DBoost_COMPILER="-vc143" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0 -Wno-everything"
:: MSVC
::"%ProgramFiles%\CMake\bin\cmake.exe" -S "%UserProfile%\Projects\TrinityCore-335\src" -B "%UserProfile%\Projects\TrinityCore-335\build" -G "Visual Studio 17 2022" --fresh -Wno-dev -DBOOST_ROOT="%SystemDrive%/local/boost_1_90_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.3\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.3\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="0" -DCMAKE_CXX_FLAGS="/EHs /arch:AVX2 /favor:INTEL64 /Gz /Oy /GS- /guard:cf- /W0"
"%ProgramFiles%\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe" "%UserProfile%\Projects\TrinityCore-335\build\ALL_BUILD.vcxproj" -target:"Rebuild" -property:"Configuration=Release" -maxCpuCount -nodeReuse:"False" -terminalLogger:"off" -binaryLogger:"output.binlog;ProjectImports=None"
SET "LLVMInstallDir="
SET "LLVMToolsVersion="
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "WoW 3.3.5 localhost server update complete"
:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update-full.bat"
===== Database Back-up =====
"%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.bat"
@echo off
TITLE WoW 3.3.5 Database Back-up
CD "%Temp%"
START "MariaDB Server" /MIN "%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
"%SystemRoot%\System32\timeout.exe" /T "2" /NOBREAK
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-dump.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --opt -r "%UserProfile%\Downloads\%RANDOM%-localhost-authserver.sql" "authserver"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-dump.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --opt -r "%UserProfile%\Downloads\%RANDOM%-localhost-characters.sql" "characters"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-admin.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" "shutdown"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "WoW 3.3.5 Databases Backed-up Successfully to Downloads"
:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.bat"
===== Database Maintenance =====
"%SystemRoot%\System32\notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-maintenance.bat"
@echo off
TITLE WoW 3.3.5 Database Maintenance
CD "%Temp%"
START "MariaDB Server" /MIN "%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
"%SystemRoot%\System32\timeout.exe" /T "2" /NOBREAK
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-check.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --optimize --all-databases --force --extended --auto-repair
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-admin.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" "shutdown"
"%SystemRoot%\System32\msg.exe" %USERNAME% /TIME:"2" "WoW 3.3.5 Database Maintenance Complete"
:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-maintenance.bat"
====== Launcher Shortcuts ======
===== Desktop =====
==== Server Start ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-start.bat"
WoW 3.3.5 Server
===== Start Menu =====
****
MKDIR "%AppData%\Microsoft\Windows\Start Menu\Programs\World of Warcraft 3.3.5" & "%SystemRoot%\explorer.exe" "%AppData%\Microsoft\Windows\Start Menu\Programs\World of Warcraft 3.3.5"
==== Server Start ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-start.bat"
Server Start
==== Update ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update.bat"
Server Updater
==== Update (Full) ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update-full.bat"
Server Updater (Rebuild)
==== Database Backup ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.bat"
Database Back-up
==== Database Maintenance ====
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-maintenance.bat"
Database Maintenance
==== Install Notes ====
"https://wiki.realmofespionage.xyz/servers;windows;games;trinitycore_3.3.5_localhost"
Install Notes (Server)
====== Realm ======
===== authserver =====
* ''authserver'' needs started at least once to create the tables and to start ''worldserver'' for account creation
* Ctrl + C to exit
"%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini"
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && "authserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\authserver"
===== Create GM Account =====
* Requires [[#authserver1|authserver]] running
* Change ''x'' to password
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && "worldserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\worldserver"
account create Espionage724 x
account set password Espionage724 x x
account set gmlevel Espionage724 3 -1
server shutdown 1
====== Extras ======
===== Items =====
==== Northshire Gift Voucher ====
* 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
.additem 14646
==== Tyrael's Hilt ====
* 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)
.additem 39656
====== Character Data ======
===== Backup =====
"%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-dump.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --opt -r "%UserProfile%\Downloads\localhost-authserver.sql" "authserver"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-dump.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --opt -r "%UserProfile%\Downloads\localhost-characters.sql" "characters"
===== Restore =====
* [[#databases|Initial set-up]]
"%ProgramFiles%\MariaDB 12.3\bin\mariadbd.exe" --defaults-file="%UserProfile%\Projects\TrinityCore-335\mariadb\database\my.ini" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock"
==== authserver ====
"%ProgramFiles%\MariaDB 12.3\bin\mariadb.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --execute="CREATE DATABASE authserver"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" "authserver" < x
==== characters ====
"%ProgramFiles%\MariaDB 12.3\bin\mariadb.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" --execute="CREATE DATABASE characters"
"%ProgramFiles%\MariaDB 12.3\bin\mariadb.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" "characters" < x
====== TODOs ======
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-admin.exe" -u "root" --socket="%UserProfile%\Projects\TrinityCore-335\mariadb\mariadb.sock" variables
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-admin.exe" -u "root" --socket="MySQL" variables
"%ProgramFiles%\MariaDB 12.3\bin\mariadb-admin.exe" -u "root" --socket="MySQL" variables | FIND "socket"
character deleted old 1