La base de datos de World of Warcraft (WoW) es el corazón de cualquier servidor privado, ya sea que uses TrinityCore, AzerothCore o Mangos. Aquí se almacena todo: NPCs, objetos, misiones, criaturas, gameobjects y más.
En este tutorial aprenderás cómo está organizada la DB, qué tablas son más importantes y cómo modificarlas para personalizar tu servidor.
¿Qué es la base de datos de WoW?
La base de datos es un conjunto de tablas en MySQL/MariaDB que guarda la información necesaria para que el servidor funcione.
Mientras el core se encarga de las mecánicas y scripts, la DB controla los datos estáticos, como:
Dependiendo de si usas TrinityCore o AzerothCore, tendrás varias bases de datos, normalmente:
Aquí tienes un resumen de las tablas que más usarás al personalizar tu servidor:
Supongamos que quieres crear un NPC custom en tu servidor. Basta con añadir un registro en creature_template:
Para dominar bien estas tablas, siempre puedes consultar las documentaciones oficiales de Trinity Core, Azeroth Core o cualquier emulador que contenga esa documentación. Esto te da una opinión de como puede funcionar la SQL.
En este tutorial aprenderás cómo está organizada la DB, qué tablas son más importantes y cómo modificarlas para personalizar tu servidor.
¿Qué es la base de datos de WoW?
La base de datos es un conjunto de tablas en MySQL/MariaDB que guarda la información necesaria para que el servidor funcione.
Mientras el core se encarga de las mecánicas y scripts, la DB controla los datos estáticos, como:
- NPCs (criaturas, vendedores, bosses).
- Objetos (armas, armaduras, consumibles).
- Misiones y recompensas.
- GameObjects (cofres, portales, decoraciones).
- Puntos de aparición (spawns en el mapa).
Estructura principal de la DB
Dependiendo de si usas TrinityCore o AzerothCore, tendrás varias bases de datos, normalmente:
- world: Contiene el mundo del juego (NPCs, ítems, quests, etc.).
- characters: Guarda la información de los jugadores (niveles, inventario, monturas, logros).
- auth o realmd: Maneja las cuentas y el sistema de login.
Tablas más importantes en la DB de WoW
Aquí tienes un resumen de las tablas que más usarás al personalizar tu servidor:
- creature_template
- Define cómo es cada NPC (nombre, nivel, modelo, facción, gossip, etc.).
- Ejemplo: crear un NPC custom llamado “Maestro de Eventos”.
- creature
- Define dónde aparece un NPC en el mapa (posición X, Y, Z, mapa, orientación).
- Ejemplo: hacer que tu NPC custom aparezca en Ventormenta.
- item_template
- Contiene todos los ítems del juego: armas, armaduras, pociones, monturas, etc.
- Ejemplo: crear una espada custom con +500 fuerza.
- quest_template
- Define las misiones (texto, objetivos, recompensas).
- Ejemplo: añadir una misión que te pida derrotar 10 lobos custom.
- gameobject_template
- Controla objetos interactivos (cofres, portales, mesas, decoración).
- Ejemplo: añadir un cofre que dé oro al abrirlo.
- gameobject
- Controla dónde aparecen esos objetos en el mundo (posición en el mapa).
- Ejemplo: colocar tu cofre custom en Elwynn Forest.
Crear un NPC en la DB
Supongamos que quieres crear un NPC custom en tu servidor. Basta con añadir un registro en creature_template:
SQL:
INSERT INTO creature_template (entry, name, subname, modelid1, minlevel, maxlevel, faction, npcflag, speed_walk, speed_run)
VALUES (60000, "Custom NPC", "TestNPC", 11686, 80, 80, 35, 1, 1, 1.14286);
- entry: ID único del NPC.
- name: Nombre visible en el juego.
- subname: Texto debajo del nombre.
- modelid1: Modelo visual (puedes cambiarlo por otro).
- faction: Determina si es aliado, horda o neutro.
- npcflag: Tipo de NPC (vendor, gossip, trainer, etc.).
Consejos de administración
- Siempre haz backup de la DB antes de editar.
- Usa un programa como HeidiSQL, Navicat o DBeaver para gestionar las tablas.
- Organiza tus custom NPCs, ítems y quests con IDs únicos (ejemplo: Elige un ID alto para empezar a usarlo o ves ampliando de 1 en 1 a partir del último ID.
- Documenta tus cambios para no perder el control de tus modificaciones, haciendo también scripts de base de datos que puedan "restaurar" esos cambios rápidamente..
Conclusión
Para dominar bien estas tablas, siempre puedes consultar las documentaciones oficiales de Trinity Core, Azeroth Core o cualquier emulador que contenga esa documentación. Esto te da una opinión de como puede funcionar la SQL.