User Tools

Site Tools


servers:windows:games:trinitycore_3.3.5_localhost

Information

Media

Prerequisites

Dependencies

Visual Studio 2022

  • Pause installer to prevent initial auto-download of unnecessary components

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.3916)
"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\setup.exe"

Boost

CMake

  • [ ] Add CMake to the PATH environment variable

OpenSSL

  • Copy OpenSSL DLLs to:
    • [x] The OpenSSL binaries (/bin) directory

Download Source

"%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

Connect

"%ProgramFiles%\MariaDB 12.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"
"%ProgramFiles%\MariaDB 12.0\bin\mariadb.exe" -u "root" -p

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

CMake

"%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_88_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.0\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.0\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="1"

Compile

  • 8 minutes i5-8400H
"%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"

DLLs

COPY /Y "%ProgramFiles%\MariaDB 12.0\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

DBCs, Maps, and Cameras

COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mapextractor.exe" "%ProgramFiles(x86)%\World of Warcraft 3.3.5"
CD "%ProgramFiles(x86)%\World of Warcraft 3.3.5" && "%ProgramFiles(x86)%\World of Warcraft 3.3.5\mapextractor.exe" -f "0"

VMaps

Extract

COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4extractor.exe" "%ProgramFiles(x86)%\World of Warcraft 3.3.5"
CD "%ProgramFiles(x86)%\World of Warcraft 3.3.5" && "%ProgramFiles(x86)%\World of Warcraft 3.3.5\vmap4extractor.exe" -l

Assemble

COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\vmap4assembler.exe" "%ProgramFiles(x86)%\World of Warcraft 3.3.5"
CD "%ProgramFiles(x86)%\World of Warcraft 3.3.5" && "%ProgramFiles(x86)%\World of Warcraft 3.3.5\vmap4assembler.exe" "Buildings" "vmaps"

MMaps

COPY /Y "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\mmaps_generator.exe" "%ProgramFiles(x86)%\World of Warcraft 3.3.5"
CD "%ProgramFiles(x86)%\World of Warcraft 3.3.5" && "%ProgramFiles(x86)%\World of Warcraft 3.3.5\mmaps_generator.exe" --bigBaseUnit "true" --threads "8"

Move Files

MOVE /Y "%ProgramFiles(X86)%\World of Warcraft 3.3.5\Cameras" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && MOVE /Y "%ProgramFiles(X86)%\World of Warcraft 3.3.5\dbc" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && MOVE /Y "%ProgramFiles(X86)%\World of Warcraft 3.3.5\maps" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && MOVE /Y "%ProgramFiles(X86)%\World of Warcraft 3.3.5\mmaps" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && MOVE /Y "%ProgramFiles(X86)%\World of Warcraft 3.3.5\vmaps" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"

Clean-up

RMDIR /S /Q "%ProgramFiles(X86)%\World of Warcraft 3.3.5\Buildings" && DEL /Q "%ProgramFiles(X86)%\World of Warcraft 3.3.5\mapextractor.exe" "%ProgramFiles(X86)%\World of Warcraft 3.3.5\mmaps_generator.exe" "%ProgramFiles(X86)%\World of Warcraft 3.3.5\vmap4assembler.exe" "%ProgramFiles(X86)%\World of Warcraft 3.3.5\vmap4extractor.exe"

World Database

TDB

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"

Settings

authserver

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"
"notepad.exe" "%UserProfile%\Projects\TrinityCore-335\conf\authserver\localhost.conf"
[authserver]

# Connection
BindIP = "127.0.0.1"
MySQLExecutable = "C:\Program Files\MariaDB 12.0\bin\mariadb.exe"
LoginDatabaseInfo = ".;3306;authserver;x;authserver"
AllowLoggingIPAddressesInDatabase = 0

# Etc
RealmsStateUpdateDelay = 0
Updates.EnableDatabases = 1
Updates.CleanDeadRefMaxCount = -1

# End

worldserver

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"
"notepad.exe" "%UserProfile%\Projects\TrinityCore-335\conf\worldserver\localhost.conf"
[worldserver]

# Connection
BindIP = "127.0.0.1"
MySQLExecutable = "C:\Program Files\MariaDB 12.0\bin\mariadb.exe"
LoginDatabaseInfo = ".;3306;authserver;x;authserver"
WorldDatabaseInfo = ".;3306;worldserver;x;worldserver"
CharacterDatabaseInfo = ".;3306;characters;x;characters"
AllowLoggingIPAddressesInDatabase = 0

# 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

"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"
"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"

Delete Rules

"netsh.exe" advfirewall firewall delete rule name="TrinityCore 3.3.5 localhost (authserver)"
"netsh.exe" advfirewall firewall delete rule name="TrinityCore 3.3.5 localhost (worldserver)"

Scripts

MKDIR "%UserProfile%\Projects\TrinityCore-335\scripts"

Server Start

"notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-start.bat"
@echo off

START "MariaDB Server" "%ProgramFiles%\MariaDB 12.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"
TIMEOUT /T "2" /NOBREAK

CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release"
START "WoW 3.3.5 [auth]" "%UserProfile%\Projects\TrinityCore-335\build\bin\Release\authserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\authserver"
START "WoW 3.3.5 [world]" "%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

"notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update.bat"
@echo off

"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" reset --hard
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\TrinityCore-335\src" pull origin "3.3.5" --rebase

"%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_88_0" -DMYSQL_INCLUDE_DIR="%ProgramFiles%\MariaDB 12.0\include\mysql" -DMYSQL_LIBRARY="%ProgramFiles%\MariaDB 12.0\lib\libmariadb.lib" -DWITHOUT_METRICS="1" -DTOOLS="1"

"%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"

:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-server-update.bat"

Database Back-up

"notepad.exe" "%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.bat"
@echo off

START "MariaDB Server" "%ProgramFiles%\MariaDB 12.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"
TIMEOUT /T "2" /NOBREAK

CD "%UserProfile%\Downloads"

ECHO Root MariaDB user password prompts:
"%ProgramFiles%\MariaDB 12.0\bin\mariadb-dump.exe" -u "root" -p --opt -r "localhost-authserver.sql" "authserver"
"%ProgramFiles%\MariaDB 12.0\bin\mariadb-dump.exe" -u "root" -p --opt -r "localhost-characters.sql" "characters"

:: End
"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.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"
"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

Database Backup

"%UserProfile%\Projects\TrinityCore-335\scripts\localhost-database-backup.bat"
Database Back-up

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.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"
CD "%UserProfile%\Projects\TrinityCore-335\build\bin\Release" && "authserver.exe" --config-dir "%UserProfile%\Projects\TrinityCore-335\conf\authserver"

Create GM Account

  • Requires 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 (Diablo Stone)
.additem 14646
  • Tyrael's Hilt
.additem 39656

Character Data

Backup

"%ProgramFiles%\MariaDB 12.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"
CD "%UserProfile%\Downloads" && "%ProgramFiles%\MariaDB 12.0\bin\mariadb-dump.exe" -u "root" -p --opt -r "localhost-authserver.sql" "authserver"
CD "%UserProfile%\Downloads" && "%ProgramFiles%\MariaDB 12.0\bin\mariadb-dump.exe" -u "root" -p --opt -r "localhost-characters.sql" "characters"

Restore

"%ProgramFiles%\MariaDB 12.0\bin\mariadbd.exe" --defaults-file="%ProgramFiles%\MariaDB 12.0\data\my.ini"

authserver

"%ProgramFiles%\MariaDB 12.0\bin\mariadb.exe" -u "root" -p --execute="CREATE DATABASE authserver"
"%ProgramFiles%\MariaDB 12.0\bin\mariadb.exe" -u "root" -p "authserver" < "%UserProfile%\Downloads\localhost-authserver.sql"

characters

"%ProgramFiles%\MariaDB 12.0\bin\mariadb.exe" -u "root" -p --execute="CREATE DATABASE characters"
"%ProgramFiles%\MariaDB 12.0\bin\mariadb.exe" -u "root" -p "characters" < "%UserProfile%\Downloads\localhost-characters.sql"
C:/www/wiki/data/pages/servers/windows/games/trinitycore_3.3.5_localhost.txt · Last modified: by Sean Rhone