Thanks to visit codestin.com
Credit goes to github.com

Skip to content

An emulation server for World of Warcraft 3.3.5 (build 12340) and 4.4.2 (build 60895). Based on TrinityCore.

License

Notifications You must be signed in to change notification settings

wowemulation-dev/wooly-beast

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

TrinityCore

TrinityCore Logo
Open Source World of Warcraft Server Emulator

Website • Forums • Wiki • Discord

Build Status Documentation License


What is TrinityCore?

TrinityCore is open-source server software that lets you create your own World of Warcraft private server. You can play with friends, learn how MMO servers work, or contribute to game preservation.

Supported Game Versions

  • Wrath of the Lich King (3.3.5a) - This branch
  • Cataclysm Classic - cata_classic branch

Why Choose TrinityCore?

  • Server Features: Authentication, character management, and world simulation
  • Database Support: MySQL/MariaDB database backend
  • Scripting System: Customize quests, NPCs, and game mechanics
  • Cross-Platform: Works on Windows, Linux, and macOS
  • Community: Regular updates and community support
  • Open Source: No costs or limitations

Quick Start Guide

Step 1: What You Need

Before starting, make sure you have:

Required Software

  • Operating System: Windows 10+, Ubuntu 20.04+, or macOS 10.15+
  • C++ Compiler: C++20 compatible - GCC 11+, Clang 14+, or Visual Studio 2022+
  • CMake: Version 3.28 or newer
  • Git: For downloading the source code

Database

  • MySQL/MariaDB: Version 8.0+ recommended

Additional Requirements

  • Boost Libraries: Version 1.74 or newer
  • OpenSSL: Version 3.0 or newer

Step 2: Installation by Platform

Windows Installation

Install Prerequisites

  1. Download and install Visual Studio 2022

    • Choose "Community" (free version)
    • Include "Desktop development with C++"
  2. Install MySQL: Download from MySQL Downloads

  3. Install Git: Download from git-scm.com

Build TrinityCore

  1. Clone the repository:

    git clone https://github.com/wowemulation-dev/wooly-beast.git
    cd wooly-beast
  2. Create build directory:

    mkdir build
    cd build
  3. Configure the build:

    cmake ../ -DCMAKE_INSTALL_PREFIX=../install
  4. Build the project:

    • Open TrinityCore.sln in Visual Studio
    • Right-click the solution and select "Build Solution"
    • Wait for compilation to complete (this may take 20-60 minutes)
Linux Installation (Ubuntu/Debian)

Install Prerequisites

# Update your system
sudo apt update && sudo apt upgrade -y

# Install build tools
sudo apt install -y git cmake make build-essential

# Install MySQL/MariaDB
sudo apt install -y libmysqlclient-dev mysql-server

# Install additional dependencies
sudo apt install -y libssl-dev libboost-all-dev

Build TrinityCore

# Clone the repository
git clone https://github.com/wowemulation-dev/wooly-beast.git
cd wooly-beast

# Create and enter build directory
mkdir build && cd build

# Configure
cmake ../ -DCMAKE_INSTALL_PREFIX=../install

# Build (use all CPU cores for faster compilation)
make -j$(nproc)

# Install
make install
macOS Installation

Install Prerequisites

# Install Homebrew (if not already installed)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install dependencies
brew install git cmake boost openssl mysql

Build TrinityCore

# Clone and build (same as Linux)
git clone https://github.com/wowemulation-dev/wooly-beast.git
cd wooly-beast
mkdir build && cd build

# Configure and build
cmake ../ -DCMAKE_INSTALL_PREFIX=../install
make -j$(sysctl -n hw.ncpu)
make install

Database Setup

Create Databases

CREATE DATABASE trinity_auth;
CREATE DATABASE trinity_characters;
CREATE DATABASE trinity_world;

Import Base Schemas

mysql -u root -p trinity_auth < sql/base/auth_database.sql
mysql -u root -p trinity_characters < sql/base/characters_database.sql

For the world database, you need to download and import the full world database release from the TrinityCore releases page.

Configuration

Edit the configuration files in the etc/ directory:

LoginDatabaseInfo     = "127.0.0.1;3306;root;password;trinity_auth"
WorldDatabaseInfo     = "127.0.0.1;3306;root;password;trinity_world"
CharacterDatabaseInfo = "127.0.0.1;3306;root;password;trinity_characters"

Build Options

Option Description Default Example
SERVERS Build server executables ON -DSERVERS=1
TOOLS Build extraction tools ON -DTOOLS=1
SCRIPTS Script loading method static -DSCRIPTS=dynamic
BUILD_TESTING Enable unit tests OFF -DBUILD_TESTING=1
WITH_WARNINGS Enable compiler warnings ON -DWITH_WARNINGS=0
WITH_COREDEBUG Enable core debugging OFF -DWITH_COREDEBUG=1

Script Loading Options

  • static: Scripts compiled into the server (faster, requires recompile for changes)
  • dynamic: Scripts loaded as libraries (slower, can reload without recompiling)
  • none: No scripts (minimal server for testing)

Getting Help

Documentation

Community Support

Getting Support Tips

  1. Search first - Check if your question has been answered before
  2. Be specific - Include your OS, database type, and error messages
  3. Show your work - Share what you've tried and what did not work
  4. Be patient - Volunteers help in their free time

Contributing

TrinityCore thrives thanks to contributors like you. Here is how to get involved:

For Beginners

  • Report bugs you encounter
  • Improve documentation - fix typos, add clarity
  • Test new features and provide feedback
  • Help others in forums and Discord

For Developers

  1. Fork the repository on GitHub
  2. Create a branch for your feature: git checkout -b feature/amazing-feature
  3. Make your changes following our coding standards
  4. Test thoroughly
  5. Submit a pull request with a clear description

Development Guidelines

  • Follow existing code style and conventions
  • Add tests for new functionality
  • Update documentation for user-facing changes

Frequently Asked Questions

How long does compilation take?

Compilation time varies by system:

  • Modern computer: 10-20 minutes
  • Average computer: 30-60 minutes
  • Older system: 1-2 hours

Using make -j$(nproc) (Linux) or building in Release mode (Windows) will be faster.

Is this legal?

TrinityCore itself is legal open-source software. However:

  • You need a legal copy of World of Warcraft to extract game data
  • Running a private server may have legal implications in your jurisdiction
  • This is for educational and personal use only
  • Check your local laws before proceeding

Legal Information

  • License: TrinityCore is released under the GNU GPL v2 License
  • Purpose: This software is for educational purposes only
  • Trademarks: World of Warcraft and Warcraft are trademarks of Blizzard Entertainment, Inc.
  • Disclaimer: Check your local laws before using this software

Credits

TrinityCore is built on the work of thousands of developers over many years:

  • Original MaNGOS team - Foundation of the codebase
  • TrinityCore developers - Continued development and improvements
  • Community contributors - Bug reports, testing, and code contributions

Thanks to all our contributors


TrinityCore: Making World of Warcraft emulation accessible to everyone

About

An emulation server for World of Warcraft 3.3.5 (build 12340) and 4.4.2 (build 60895). Based on TrinityCore.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 89.5%
  • C 9.6%
  • CMake 0.5%
  • Roff 0.2%
  • Shell 0.1%
  • Python 0.1%