WoW Lab

WoW Lab

Toolkit

Simulate

Quick SimBest in BagsDrop Optimizer

Rotations

BrowseNew Rotation

Plan

Traits
P

Developer

DocsBibleEngineHooksMCP ServerMetricsUI Showcase

Misc

AboutBlog

© 2025 WoW Lab

  1. Home
  2. Bible
  3. Introduction

Introduction

A technical reference for WoW simulation methodology and combat mechanics

February 13, 2026
Edit

Unlike our documentation this so aptly named Bible is meant to provide an in-depth overview of the whole project. If you are looking for general usage instructions on how to configure WoW Lab's features look no further than the introduction of the documentation. If you are looking to contribute to WoW Lab or simply want to understand how it's architecture or simulation internals work you are in the right place.

Prelude

Given the length of this bible, it's natural to skip content. However, I would recommend at least reading the introduction to understand how to find what you are interested in. In contrast to the docs which are written as a user facing guide, this more closely follows the structure of a paper. While I in no way claim accuracy in all areas, the idea behind it is to create a sustainable and lasting resource on how to run combat simulations in World of Warcraft. This includes both the technical aspects behind the infrastructure powering WoW Lab, as well as the relevant game mechanics including parsing and interpreting all required data from the World of Warcraft DBC files.

It is worth highlighting that almost all of the algorithms used and problems solved apply to a wide range of discrete simulations. None of the problems we face are new. They are well documented in simulation literature and game engine design. While I do believe that I have a solid grasp on most subjects, it would be foolish to think any one person knows best. I invite any reader to contribute to the bible on GitHub and question how we do things and why. If one was forced to summarize the idea behind the bible in one sentence, let it be this:

'Tis but a humble attempt to combine well-researched solutions to well-known problems.

It is my firm believe that knowledge belongs to everyone and I hope most people recognize WoW Lab and in extend this bible for what it is meant to be: A way for the community to preserve this knowledge in a lasting and open way.

Finding content

First and foremost the entire bible is searchable. Just hit ⌘ + K or use the search bar on the top of the navigation to the right. If you are not reading this on the WoW Lab website I would highly recommend doing so, due to most of the markdown components used being custom made.

As mentioned earlier the bible roughly follows the structure of a scientific paper. Therefore it starts with the motivation behind the project and follows up with the problems that it tries to solve. Both the infrastructure behind WoW Lab and the actual game specific challenges have been given dedicated sections. Finally it demonstrates my humble solutions to these problems and most importantly why I chose these solutions. The discrete simulation space is vast and for every problem there are multiple solutions. This makes the roads not taken as important as the ones we settled on. I encourage all interested readers to study the references for more in-depth knowledge. Just to re-iterate: The absolute minoriy of things we do here are new and I do believe every single cited source in the bible is worth a read.

Following are the most important sections:

SectionDescription
OverviewMotivation, problem statement, architecture, language evaluation
MechanicsDamage formulas, stats, auras, procs, resources, pets
Game DataDBC files, spell data, talent trees, items, scaling
SimulationDES theory, event system, damage resolution, JIT rotation compiler
InfrastructureDistributed computing, realtime, authentication, WASM, deployment
PortalNext.js architecture, state management, rotation editor, simulation UI

Next steps

Motivation
Architecture
Glossary

Navigation

IntroductionGlossaryReferences

Overview

Mechanics

Game Data

Simulation

Infrastructure

Portal

On this page

PreludeFinding content