macOS Server Setup
Creating configuration files
- Open a Terminal (Applications > Utilities > Terminal)
cd ~/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/etc
Example: cd ~/TrinityCore/tc-server/etc
cp -v worldserver.conf.dist worldserver.conf
- For 3.3.x:
cp -v authserver.conf.dist authserver.conf
- For 6.x and 7.x:
cp -v bnetserver.conf.dist bnetserver.conf
Extracting DBC, maps, vmaps, and mmaps
RECOMMENDATION: compile tools in release mode to save time, debug mode extraction is much longer and it's only needed if you have a crash to report.
DBC and maps files
The TrinityCore engine depends on two critical pieces of information in order to function properly: DBCs and maps. Data Base Client files (DBCs) give essential values that the TrinityCore engine interprets. These values define races, textures, local models, and other features. The engine interprets these values and loads them up. But in order for the player to interact with those values, they must be placed in a virtual world or 'map.' Maps thus provide the physical values and data that the Trinity engine interprets to create a layout that can be compared with each client, including physical volume definitions in that virtual world.
cd <your_WoW_client_directory> # example: cd /Applications/World\ of\ Warcraft/ /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/bin/mapextractor # example: /Users/myusername/TrinityCore/tc-server/bin/mapextractor mkdir -v /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/data # example: mkdir -v /Users/myusername/TrinityCore/tc-server/data # For 3.3.x: cp -rv dbc maps /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/data # example: cp -rv dbc maps /Users/myusername/TrinityCore/tc-server/data # For 6.x and 7.x: cp -rv dbc maps gt /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/data # example: cp -rv dbc maps gt /Users/myusername/TrinityCore/tc-server/data nano -w /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/etc/worldserver.conf # example: nano -w /Users/myusername/TrinityCore/tc-server/etc/worldserver.conf # change datadir from "." to "../data"
vmaps
Virtual Maps (vmaps) provide the context upon which DBCs and maps interact with each other. For instance, they calculate the possibility of line-of-sight, allowing the Trinity engine to calculate if spell casts are possible (e.g. if a wall is in between the target and caster or not).
Note: If you stop vmap4extractor before finish you will need to delete the Buildings directory before start again.
cd <your_WoW_client_directory> # example: cd /Applications/World\ of\ Warcraft/ /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/bin/vmap4extractor # example: /Users/myusername/TrinityCore/tc-server/bin/vmap4extractor mkdir -v vmaps /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/bin/vmap4assembler Buildings vmaps # example: /Users/myusername/TrinityCore/tc-server/bin/vmap4assembler Buildings vmaps cp -rv vmaps /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/data # example: cp -rv vmaps /Users/myusername/TrinityCore/tc-server/data
mmaps
WARNING
This process may take hours to finish.
Movement maps (mmaps) define how non-player characters (NPCs) move in the virtual world. In essence, they enforce the physical boundaries that NPCs have since their collision with the physical world is not handled by the World of Warcraft client.
cd <your_WoW_client_directory> # example: cd /Applications/World\ of\ Warcraft/ mkdir -v mmaps /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/bin/mmaps_generator # example: /Users/myusername/TrinityCore/tc-server/bin/mmaps_generator cp -rv mmaps /Users/<your_username>/<your_TrinityCore_directory>/<name_of_your_TrinityCore_server_directory>/data # example: cp -rv mmaps /Users/myusername/TrinityCore/tc-server/data