Setup/SQL

* move sql files into its own folder.
 * move outdated updates out of the update folder, sorted by github tags
 * split up the db dump so my editor doesn't try to hang itself if i dare to touch that file
This commit is contained in:
Sarjuuk
2025-09-25 16:22:54 +02:00
parent 92c1c59d3a
commit 647be4a946
178 changed files with 3198 additions and 3148 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
ALTER TABLE aowow_mails ADD cuFlags INT UNSIGNED DEFAULT 0 NOT NULL AFTER id;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' talentIcons');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' spell');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' power');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' simpleImg');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' profiler');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' profiler');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' statistics');

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_source`
ADD COLUMN `moreMask` mediumint(9) unsigned DEFAULT NULL AFTER `moreZoneId`;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' source');

View File

@@ -0,0 +1,71 @@
REPLACE INTO `aowow_setup_custom_data` VALUES
("spell", 9787, "reqSpellId", 9787, "Weaponsmith - requires itself"),
("spell", 9788, "reqSpellId", 9788, "Armorsmith - requires itself"),
("spell", 10656, "reqSpellId", 10656, "Dragonscale Leatherworking - requires itself"),
("spell", 10658, "reqSpellId", 10658, "Elemental Leatherworking - requires itself"),
("spell", 10660, "reqSpellId", 10660, "Tribal Leatherworking - requires itself"),
("spell", 17039, "reqSpellId", 17039, "Master Swordsmith - requires itself"),
("spell", 17040, "reqSpellId", 17040, "Master Hammersmith - requires itself"),
("spell", 17041, "reqSpellId", 17041, "Master Axesmith - requires itself"),
("spell", 20219, "reqSpellId", 20219, "Gnomish Engineer - requires itself"),
("spell", 20222, "reqSpellId", 20222, "Goblin Engineer - requires itself"),
("spell", 26797, "reqSpellId", 26797, "Spellfire Tailoring - requires itself"),
("spell", 26798, "reqSpellId", 26798, "Mooncloth Tailoring - requires itself"),
("spell", 26801, "reqSpellId", 26801, "Shadoweave Tailoring - requires itself"),
("spell", 379, "cuFLags", 1073741824, "Earth Shield - hide"),
("spell", 17567, "cuFLags", 1073741824, "Summon Blood Parrot - hide"),
("spell", 19483, "cuFLags", 1073741824, "Immolation - hide"),
("spell", 20154, "cuFLags", 1073741824, "Seal of Righteousness - hide"),
("spell", 21169, "cuFLags", 1073741824, "Reincarnation - hide"),
("spell", 22845, "cuFLags", 1073741824, "Frenzied Regeneration - hide"),
("spell", 23885, "cuFLags", 1073741824, "Bloodthirst - hide"),
("spell", 27813, "cuFLags", 1073741824, "Blessed Recovery - hide"),
("spell", 27817, "cuFLags", 1073741824, "Blessed Recovery - hide"),
("spell", 27818, "cuFLags", 1073741824, "Blessed Recovery - hide"),
("spell", 29442, "cuFLags", 1073741824, "Magic Absorption - hide"),
("spell", 29841, "cuFLags", 1073741824, "Second Wind - hide"),
("spell", 29842, "cuFLags", 1073741824, "Second Wind - hide"),
("spell", 29886, "cuFLags", 1073741824, "Create Soulwell - hide"),
("spell", 30708, "cuFLags", 1073741824, "Totem of Wrath - hide"),
("spell", 30874, "cuFLags", 1073741824, "Gift of the Water Spirit - hide"),
("spell", 31643, "cuFLags", 1073741824, "Blazing Speed - hide"),
("spell", 32841, "cuFLags", 1073741824, "Mass Resurrection - hide"),
("spell", 34919, "cuFLags", 1073741824, "Vampiric Touch - hide"),
("spell", 44450, "cuFLags", 1073741824, "Burnout - hide"),
("spell", 47633, "cuFLags", 1073741824, "Death Coil - hide"),
("spell", 48954, "cuFLags", 1073741824, "Swift Zhevra - hide"),
("spell", 49575, "cuFLags", 1073741824, "Death Grip - hide"),
("spell", 50536, "cuFLags", 1073741824, "Unholy Blight - hide"),
("spell", 52374, "cuFLags", 1073741824, "Blood Strike - hide"),
("spell", 56816, "cuFLags", 1073741824, "Rune Strike - hide"),
("spell", 58427, "cuFLags", 1073741824, "Overkill - hide"),
("spell", 58889, "cuFLags", 1073741824, "Create Soulwell - hide"),
("spell", 64380, "cuFLags", 1073741824, "Shattering Throw - hide"),
("spell", 66122, "cuFLags", 1073741824, "Magic Rooster - hide"),
("spell", 66123, "cuFLags", 1073741824, "Magic Rooster - hide"),
("spell", 66124, "cuFLags", 1073741824, "Magic Rooster - hide"),
("spell", 66175, "cuFLags", 1073741824, "Macabre Marionette - hide"),
("spell", 54910, "cuFLags", 1073741824, "Glyph of the Red Lynx - hide unused glyph"),
("spell", 57231, "cuFLags", 1073741824, "Death Knight Glyph 25 - hide unused glyph"),
("spell", 58166, "cuFLags", 1073741824, "Glyph of the Forest Lynx - hide unused glyph"),
("spell", 58239, "cuFLags", 1073741824, "Glyph of the Penguin - hide unused glyph"),
("spell", 58240, "cuFLags", 1073741824, "Glyph of the Bear Cub - hide unused glyph"),
("spell", 58261, "cuFLags", 1073741824, "Glyph of the Arctic Wolf - hide unused glyph"),
("spell", 58262, "cuFLags", 1073741824, "Glyph of the Black Wolf - hide unused glyph"),
("spell", 60460, "cuFLags", 1073741824, "Glyph of Raise Dead - hide unused glyph"),
("spell", 54910, "skillLine1", 0, "Glyph of the Red Lynx - hide unused glyph"),
("spell", 57231, "skillLine1", 0, "Death Knight Glyph 25 - hide unused glyph"),
("spell", 58166, "skillLine1", 0, "Glyph of the Forest Lynx - hide unused glyph"),
("spell", 58239, "skillLine1", 0, "Glyph of the Penguin - hide unused glyph"),
("spell", 58240, "skillLine1", 0, "Glyph of the Bear Cub - hide unused glyph"),
("spell", 58261, "skillLine1", 0, "Glyph of the Arctic Wolf - hide unused glyph"),
("spell", 58262, "skillLine1", 0, "Glyph of the Black Wolf - hide unused glyph"),
("spell", 60460, "skillLine1", 0, "Glyph of Raise Dead - hide unused glyph"),
("spell", 54910, "iconIdAlt", 0, "Glyph of the Red Lynx - hide unused glyph"),
("spell", 57231, "iconIdAlt", 0, "Death Knight Glyph 25 - hide unused glyph"),
("spell", 58166, "iconIdAlt", 0, "Glyph of the Forest Lynx - hide unused glyph"),
("spell", 58239, "iconIdAlt", 0, "Glyph of the Penguin - hide unused glyph"),
("spell", 58240, "iconIdAlt", 0, "Glyph of the Bear Cub - hide unused glyph"),
("spell", 58261, "iconIdAlt", 0, "Glyph of the Arctic Wolf - hide unused glyph"),
("spell", 58262, "iconIdAlt", 0, "Glyph of the Black Wolf - hide unused glyph"),
("spell", 60460, "iconIdAlt", 0, "Glyph of Raise Dead - hide unused glyph");

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_source`
MODIFY `typeId` mediumint(9) signed NOT NULL AFTER `type`;

View File

@@ -0,0 +1,49 @@
DROP TABLE IF EXISTS `dbc_emotes`;
DROP TABLE IF EXISTS `dbc_emotestext`;
DROP TABLE IF EXISTS `dbc_emotestextdata`;
DROP TABLE IF EXISTS `aowow_emotes`;
CREATE TABLE `aowow_emotes` (
`id` SMALLINT(5) SIGNED NOT NULL,
`cmd` VARCHAR(35) COLLATE utf8mb4_unicode_ci NOT NULL,
`isAnimated` TINYINT(1) UNSIGNED NOT NULL,
`flags` SMALLINT(5) UNSIGNED NOT NULL,
`parentEmote` SMALLINT(5) UNSIGNED NOT NULL,
`soundId` SMALLINT(5) SIGNED NOT NULL,
`state` TINYINT(1) UNSIGNED NOT NULL,
`stateParam` TINYINT(1) UNSIGNED NOT NULL,
`cuFlags` INT(10) UNSIGNED NOT NULL,
`extToExt_loc0` VARCHAR(65) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToExt_loc2` VARCHAR(113) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToExt_loc3` VARCHAR(91) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToExt_loc4` VARCHAR(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToExt_loc6` VARCHAR(89) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToExt_loc8` VARCHAR(123) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc0` VARCHAR(65) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc2` VARCHAR(113) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc3` VARCHAR(91) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc4` VARCHAR(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc6` VARCHAR(89) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToMe_loc8` VARCHAR(123) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc0` VARCHAR(65) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc2` VARCHAR(113) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc3` VARCHAR(91) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc4` VARCHAR(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc6` VARCHAR(89) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToExt_loc8` VARCHAR(123) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc0` VARCHAR(65) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc2` VARCHAR(113) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc3` VARCHAR(91) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc4` VARCHAR(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc6` VARCHAR(89) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`extToNone_loc8` VARCHAR(123) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc0` VARCHAR(65) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc2` VARCHAR(113) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc3` VARCHAR(91) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc4` VARCHAR(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc6` VARCHAR(89) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meToNone_loc8` VARCHAR(123) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' emotes');

View File

@@ -0,0 +1,17 @@
DROP TABLE IF EXISTS `aowow_declinedword`;
DROP TABLE IF EXISTS `aowow_declinedwordcases`;
CREATE TABLE `aowow_declinedword` (
`id` SMALLINT(5) UNSIGNED NOT NULL,
`word` VARCHAR(127) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
CREATE TABLE `aowow_declinedwordcases` (
`wordId` SMALLINT(5) UNSIGNED NOT NULL,
`caseIdx` TINYINT(1) UNSIGNED NOT NULL,
`word` VARCHAR(131) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`wordId`, `caseIdx`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' declinedwords');

View File

@@ -0,0 +1,12 @@
DROP TABLE IF EXISTS `aowow_screeneffect_sounds`;
CREATE TABLE `aowow_screeneffect_sounds` (
`id` SMALLINT(5) unsigned NOT NULL,
`name` VARCHAR(40) COLLATE utf8mb4_unicode_ci NOT NULL,
`ambienceDay` SMALLINT(5) unsigned NOT NULL,
`ambienceNight` SMALLINT(5) unsigned NOT NULL,
`musicDay` SMALLINT(5) unsigned NOT NULL,
`musicNight` SMALLINT(5) unsigned NOT NULL,
KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' sounds');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' source');

View File

@@ -0,0 +1,14 @@
DELETE FROM `aowow_setup_custom_data` WHERE `command` = 'classes' AND `field` = 'roles';
INSERT INTO `aowow_setup_custom_data` VALUES
('classes',1,'roles','10','Warrior - rngDPS'),
('classes',2,'roles','11','Paladin - mleDPS + Tank + Heal'),
('classes',3,'roles','4','Hunter - rngDPS'),
('classes',4,'roles','2','Rogue - mleDPS'),
('classes',5,'roles','5','Priest - rngDPS + Heal'),
('classes',6,'roles','10','Death Knight - mleDPS + Tank'),
('classes',7,'roles','7','Shaman - mleDPS + rngDPS + Heal'),
('classes',8,'roles','4','Mage - rngDPS'),
('classes',9,'roles','4','Warlock - rngDPS'),
('classes',11,'roles','15','Druid - mleDPS + Tank + Heal + rngDPS');
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' classes');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' source');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' zones');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' power');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' objects');

View File

@@ -0,0 +1,11 @@
DELETE FROM aowow_articles WHERE `type` = 13 AND `locale` = 3 AND `typeId` IN (1,2,3,4,5,6,7,8,9,11);
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 1, 3, '[b][color=c1]Krieger[/color][/b] sind eine sehr mächtige Klasse, die sowohl tanken als auch im Nahkampf erheblichen Schaden anrichten kann. Der [icon name=ability_warrior_defensivestance][url=?spells=7.1.257]Schutz[/url][/icon]-Talentbaum des Kriegers enthält viele Talente, um seine Überlebensfähigkeit zu verbessern und Bedrohung gegenüber Monstern zu erzeugen. Schutz-Krieger sind eine der wichtigsten Tank-Klassen des Spiels.\n\nAußerdem verfügen Krieger über zwei schadensorientierte Talentbäume - [icon name=ability_rogue_eviscerate][url=?spells=7.1.26]Waffen[/url][/icon] und [icon name=ability_warrior_innerrage][url=?spells=7.1.256]Furor[/url][/icon]. Der Furor-Talentbaum enthält das Talent [spell=46917], das es dem Krieger erlaubt, zwei Zweihandwaffen gleichzeitig zu führen! Krieger sind in der Lage, mit Fähigkeiten wie [spell=845], [spell=1680] und [spell=46924] starken Flächenschaden im Nahkampf zu verursachen. Ein Krieger kämpft in einer bestimmten [i]Haltung[/i], die ihm Boni und Zugang zu verschiedenen Fähigkeiten gewährt. Zu Beginn verfügen Krieger nur über die [spell=2457], erlernen aber mit Level 10 [spell=71] und mit Level 30 [spell=2458]. Die Verteidigungshaltung wird zum Tanken, die Kampfhaltung oder Berserkerhaltung für erheblichen Nahkampfschaden verwendet.\n\n[ul][li]Alle Krieger können ihren Schlachtzug oder ihre Gruppe mit einem [spell=6673] oder [spell=469] verstärken. Furor-Krieger besitzen den passiven Stärkungszauber [spell=29801], der die Chance auf kritische Treffer im Nah- und Fernkampf für ihre Verbündeten deutlich erhöht.[/li][li]Krieger haben zahlreiche nützliche Fähigkeiten, um schnell an ihr Ziel zu gelangen! Alle Krieger können [spell=100] oder [spell=20252] benutzen, um einen Gegner zu erreichen. Zudem können sie schnell [spell=3411], um ein befreundetes Ziel vor einem Angriff zu schützen.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 2, 3, '[b][color=c2]Paladine[/color][/b] unterstützen ihre Verbündeten mit heiligen Auren und Segen, um sie vor Schaden zu bewahren und ihre Kräfte zu stärken. Sie tragen Plattenrüstungen und können in den härtesten Schlachten verheerenden Schlägen standhalten, während sie ihre Verwundeten heilen und die Gefallenen wiederbeleben. Im Kampf können sie mächtige Zweihandwaffen führen, ihre Feinde betäuben, Untote und Dämonen vernichten und ihre Feinde mit heiliger Vergeltung richten. Paladine sind eine defensive Klasse, die in erster Linie darauf ausgelegt ist, ihre Gegner zu überdauern.\n\nDer Paladin ist hauptsächlich ein Nahkämpfer und in geringem Maße Zauberer, der aufgrund seiner [url=?spells=7.2&filter=cr=109:12;crs=10:1;crv=0:0]Heilzauber[/url], [url=?spells=7.2&filter=na=Segen]Segen[/url] und anderen Fähigkeiten sehr nützlich für die Gruppe ist. Sie können eine aktive [url=?spells=7.2&filter=na=Aura]Aura[/url] pro Paladin auf alle Gruppen- und Schlachtzugsmitglieder legen und bestimmte Segen für bestimmte Spieler verwenden. Dank ihrer zahlreichen defensiven Fähigkeiten vergessen Paladine einfach unglaublich oft zu sterben. Mit ihrer Fähigkeit [spell=25780] sind sie außerdem ausgezeichnete Tanks.\n\n[ul][li]Paladine können effektiv [icon name=spell_holy_holybolt][url=?spells=7.2.594]heilen[/url][/icon], [icon name=spell_holy_devotionaura][url=?spells=7.2.267]tanken[/url][/icon] und im Nahkampf [icon name=spell_holy_auraoflight][url=?spells=7.2.184]Schaden[/url][/icon] verursachen.[/li][li]Sie besitzen eine große Auswahl an Segen, Auren und anderen Verstärkungszaubern.[/li][li]Der Paladin ist die einzige Klasse mit Zugang zu einem echten Unverwundbarkeitszauber: [spell=642].[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 3, 3, '[b][color=c3]Jäger[/color][/b] sind eine besonders einzigartige Klasse in World of Warcraft. Sie sind die einzigen nicht-magischen Fernkämpfer, die mit Bögen und Gewehren kämpfen. Jäger verfügen über verschiedene Arten von Schüssen und Bissen zur Schwächung ihrer Gegner und können [url=?spells=7.3&filter=cr=4;crs=1;crv=0;na=Falle]Fallen[/url] legen, um Schaden zu verursachen oder den Gegner auf andere Weise zu verlangsamen oder kampfunfähig zu machen.\n\nJäger [icon name=ability_hunter_beasttaming][url=?spell=1515]zähmen Wildtiere[/url][/icon], damit diese sie als [url=?pets]Begleiter[/url] im Kampf unterstützen. Zwar sind Jäger nicht die einzige Klasse, die Begleiter einsetzen kann. Ihre Tierbegleiter sind aber insofern einzigartig, als jede Spezies einen [url=?petcalc]eigenen Talentbaum[/url] hat, den der Jäger nutzen kann, um Punkte auf verschiedene Fähigkeiten zu verteilen.\n\nDarüber hinaus hat jede Spezies eine einzigartige Spezialfähigkeit. Jäger können sich die begehrtesten Begleiter aufgrund ihres Aussehens oder ihrer Fähigkeiten aussuchen. Und wenn sie genug Talentpunkte in den Baum der [icon name=ability_hunter_beasttaming][url=?spells=7.3.50]Tierherrschaft[/url][/icon] investieren, können sie besondere, "exotische" Bestien zähmen, wie [url=?pet=46]Geisterbestien[/url] oder [url=?pet=39]Teufelssaurier[/url]!\n\n[ul][li]Jäger haben Zugriff auf 25 (32 als [icon name=ability_hunter_beastmastery][url=?spell=53270]Meister der Tierherrschaft[/url][/icon]) verschiedene Arten von Begleitern mit über 150 verschiedenen Erscheinungsbildern![/li][li]Jäger haben eine Reihe von überlebensorientierten Fähigkeiten, die sie einsetzen können, um potentiellen Gefahren zu entkommen oder ihnen auszuweichen, wie z.B. [spell=5384] und [spell=781].[/li][li]Auf das [icon name=ability_hunter_swiftstrike][url=?spells=7.3.51]Überleben[/url][/icon] spezialisierte Jäger können in ihrem Talentbaum Punkte in das Talent [icon name=ability_hunter_huntingparty][url=?spells=-2.3&filter=na=jagdgesellschaft rel=spell=53292]Jagdgesellschaft[/url][/icon] investieren, welches es ihnen ermöglicht, ihre Gruppen- und Schlachtzugsmitglieder mit dem Stärkungszauber [spell=57669] zu versorgen.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 4, 3, '[b][color=c4]Schurken[/color][/b] sind eine Nahkampfklasse, die Lederrüstungen trägt und ihren Feinden mit sehr schnellen Angriffen großen Schaden zufügen kann. Sie sind Meister der Verstohlenheit und des Meuchelns, die sich ungesehen an Feinden vorbeischleichen, aus den Schatten heraus zuschlagen und dann blitzschnell aus dem Kampf verschwinden.\n\nSie sind in der Lage, [url=?items=0.-3&filter=cr=152;crs=4;crv=0;ty=-3#0+1-2]Gifte[/url] einzusetzen, um ihre Gegner zu verkrüppeln und sie so im Kampf massiv zu schwächen. Schurken verfügen über ein mächtiges Arsenal an Fähigkeiten, von denen viele dadurch verstärkt werden, dass sie in [spell=1784] schleichen und ihre Opfer kampfunfähig machen können.\n\nSchurken können sich auf drei unterschiedliche Kampfstile mithilfe ihrer Talentbäume Meucheln, Kampf und Täuschung spezialisieren.\n\nAuf das [icon name=ability_rogue_eviscerate][url=?spells=7.4.253]Meucheln[/url][/icon] spezialisierte Schurken sind [icon name=ability_creature_poison_06][url=?spells=-2&filter=na=meister+der+gifte rel=spell=58410]Meister der Gifte[/url][/icon] und [icon name=ability_rogue_disembowel][url=?spell=57993]vergiften[/url][/icon] ihre Gegner mit schnellen Dolchen, die mit [icon name=ability_rogue_feigndeath][url=?spells=-2.4.253&filter=na=Üble+Gifte rel=spell=16515]üblen[/url][/icon] und [icon name=ability_poisons][url=?spells=-2.4.253&filter=na=Verbesserte+Gifte rel=spell=14117]verbesserten[/url][/icon] Giften versehen sind.\n\nAuf den [icon name=ability_backstab][url=?spells=7.4.38]Kampf[/url][/icon] spezialisierte Schurken können den Umgang mit [icon name=inv_sword_27][url=?spells=-2&filter=na=Niedermetzeln rel=spell=13964]Axt und Schwert[/url][/icon] oder [icon name=inv_mace_01][url=?spells=-2&filter=na=Streitkolben-Spezialisierung;cl=4 rel=spell=13803]Streitkolben[/url][/icon] meistern und haben mithilfe ihrer Talente auch in langwierigen Kämpfen eine verbesserte Energiezufuhr, um zuverlässig ihre Angriffscombos durchzuführen.\n\nAuf die [icon name=ability_stealth][url=?spells=7.4.39]Täuschung[/url][/icon] spezialisierte Schurken besitzen Fähigkeiten, die unvorhergesehene Aktionen ermöglichen. So können sie dank [spell=51713] etwa kurzzeitig Fähigkeiten nutzen, die eigentlich nur aus der Verstohlenheit heraus nutzbar wären, mit [spell=36554] plötzlich hinter einem Gegner auftauchen oder mit [icon name=ability_rogue_cheatdeath][url=?spells=-2.4.39&filter=cr=15;crs=0;crv=ability_rogue_cheatdeath rel=spell=31230]Von der Schippe springen[/url][/icon] einen sicheren Todesstoß überleben.');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 5, 3, '[b][color=c5]Priester[/color][/b] gelten allgemein als eine der Standard-Heilerklassen in World of Warcraft, da sie über zwei Talentspezialisierungen zur effektiven Heilung verfügen.\n\nIhr [icon name=spell_holy_holybolt][url=?spells=7.5.56]Heilig[/url][/icon]-Talentbaum enthält Talente, die die Heilung auf ihre Verbündeten erheblich verstärken - einschließlich Zaubern, mit denen mehrere Spieler gleichzeitig geheilt werden können, wie z.B. [spell=48089].\nDer [icon name=spell_holy_wordfortitude][url=?spells=7.5.613]Disziplin[/url][/icon]-Talentbaum ist zwar auch in der Lage, eine beträchtliche Menge an Heilung zu bewirken, konzentriert sich aber in erster Linie auf die Schadensabsorption und -verminderung durch den Einsatz von [spell=48066] und [icon name=spell_holy_devineaegis][url=?spells=-2.5&filter=cr=15;crs=0;crv=spell_holy_devineaegis rel=spell=47515]Göttliche Aegis[/url][/icon].\nPriester können außerdem mit ihren [icon name=spell_shadow_shadowwordpain][url=?spells=7.5.78]Schatten[/url][/icon]fähigkeiten sehr mächtigen Fernkampfschaden verursachen. Insbesondere wenn sie ihre [spell=15473] annehmen, erhöht sich ihr Schattenschaden erheblich, aber sie verlieren ihre Fähigkeit, Heiligzauber zu wirken.\n\n[ul][li]Der Disziplin-Talentbaum wird in der Regel zur Heilung verwendet, enthält aber auch einige Talente zur Erhöhung des Schadens des Priesters, wobei Schattenzauber und -fähigkeiten in erster Linie zur Verursachung von Fernkampfschaden verwendet werden sollten.[/li][li]Priester verfügen über einen der am meisten geschätzten Stärkungszauber im Spiel - [spell=48161], welcher allen befreundeten Mitspielern eine unverzichtbare Erhöhung ihrer Ausdauer gewährt. Außerdem können sie ihre Mitspieler mit [spell=48073] und [spell=48169] verstärken und mit einzigartigen Hymnen das [icon name=spell_holy_divinehymn][url=?spell=64843]Leben[/url][/icon] und [icon name=spell_holy_symbolofhope][url=?spell=64901]Mana[/url][/icon] ihres Schlachtzug signifikant wiederherstellen![/li][li]Schattenpriester unterstützen, zusätzlich zu ihrem Schaden, jeden Schlachtzug mit dem beliebten Stärkungszauber [spell=57669] zur Erhöhung der Manaregeneration und mit ihrer [spell=15286], die ihre gesamte Gruppe passiv heilt.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 6, 3, 'Die [b][color=c6]Todesritter[/color][/b] wurden in der Erweiterung Wrath of the Lich King eingeführt und sind die erste Heldenklasse von World of Warcraft. Todesritter beginnen auf Stufe 55 in einer speziellen, instanzierten Zone, die für andere Klassen unzugänglich ist: [url=?maps=4298:511346]Acherus, die Schwarze Festung[/url] in der Scharlachroten Enklave der Östlichen Pestländer. Hier erhalten sie ihre Talentpunkte durch Questbelohnungen und bekommen sogar ein besonderes beschworenes Reittier: das [spell=48778]!\n\nTodesritter haben mehrere sehr starke Möglichkeiten zur Schadensverursachung, da jeder ihrer Talentbäume es erlaubt mit einer Vielfalt an Nahkampffähigkeiten, Zaubern und Schaden-über-Zeit verursachenden Krankheiten überragende Leistung zu erbringen. Sie sind auch sehr fähige Tanks, wobei sowohl ihr Blut- als auch ihr Frost-Talentbaum einzigartige Optionen bietet. [icon name=spell_deathknight_bloodpresence][url=?spells=7.6.770]Blut[/url][/icon] bietet mehr Selbstheilungsfähigkeiten, [icon name=spell_deathknight_frostpresence][url=?spells=7.6.771]Frost[/url][/icon] bietet erhebliche Schadensminderung und starken Flächenschaden.\n\nTodesritter kämpfen mit einem besonderen Verstärkungszauber, der [url=?spells=7&filter=na=präsenz]Präsenz[/url] genannt wird (ähnlich wie die Haltungen eines Kriegers), der ihnen besondere Boni für ihre Rollen verleiht. Todesritter verwenden ein einzigartiges Ressourcensystem, bei dem die meisten Zauber entweder [url=?spells=7.6&filter=cr=45;crs=10;crv=0#50+1+13+3]Runen[/url] kosten, die während des Kampfes wieder aufgefüllt werden, oder [url=?spells=7.6&filter=cr=45;crs=11;crv=0]Runenmacht[/url], die durch verschiedene Fähigkeiten erzeugt werden kann.\n\n[ul][li]Auf [icon name=spell_deathknight_unholypresence][url=?spells=7.6.772]Unheilig[/url][/icon] spezialisierte Todesritter können sich in [spell=52143] spezialisieren, was ihren beschworenen Ghul-Wächter zu einem permanenten Begleiter macht, der sie im Kampf unterstützt![/li][li]Die Klasse der Todesritter verfügt über eine eigene spezielle Waffenverzauberungsfähigkeit namens [spell=53428], die herkömmliche Waffenverzauberungen überflüssig macht.[/li][li]Todesritter sind eine Schadensklasse, die ihren Schaden sowohl durch Nahkampffähigkeiten als auch durch Zauber verursacht![/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 7, 3, '[b][color=c7]Schamanen[/color][/b] beherrschen Elementar- und Naturmagie und bringen einer (Schlachtzugs-) Gruppe die größte Vielfalt an potenziellen Stärkungszaubern in Form von [url=?spells=7&filter=na=Totem;cl=7]Totems[/url]. Ein Schamane kann für jedes Element - Erde, Feuer, Luft und Wasser - ein Totem beschwören, welches zu seinen Füßen erscheint und allen Mitgliedern seiner (Schlachtzugs-) Gruppe in Reichweite einen Stärkungszauber verleiht. Einige Totems, insbesondere Feuer-Totems, fügen Gegnern auch Schaden zu. Der Trick beim Spielen jeder Art von Schamanen besteht darin, zu wissen, welche Totems in welcher Situation beschworen werden müssen, um den verursachten Schaden und die Überlebensfähigkeit ihrer Gruppe zu maximieren.\n\nSchamanen sind in erster Linie Zauberer, wobei ein auf [icon name=spell_nature_lightningshield][url=?spells=7.7.373]Verstärkung[/url][/icon] spezialisierter Schamane Schaden in Nahkampfreichweite verursacht. Ein solcher Schamane erlernt das Führen zweier Waffen durch [spell=30798] und kann mit [spell=51533] zwei Schattenwölfe zur Unterstützung im Kampf beschwören. Obwohl sie hauptsächlich im Nahkampf eingesetzt werden, können auf Verstärkung spezialisierte Schamanen dennoch einen gewissen Nutzen aus ihrer Zaubermacht ziehen und spontane [icon name=spell_nature_lightning][url=?spell=49238]Blitzschläge[/url][/icon] oder [url=?spells=7&filter=cr=109:12:14;crs=10:1:5;crv=0:0:60000;cl=7]Heilungen[/url] durch [icon name=spell_shaman_maelstromweapon][url=?spells=-2&filter=na=waffe+des+mahlstroms rel=spell=51532]Waffe des Mahlstroms[/url][/icon] wirken.\n\nAuf [icon name=spell_nature_lightning][url=?spells=7.7.375]Elementarkampf[/url][/icon] spezialisierte Schamanen wirken Feuer- und Blitzzauber auf Distanz und verursachen so großen Schaden. Sie können Gegner durch [spell=59159] zurückstoßen und mit [icon name=spell_shaman_stormearthfire][url=?spells=-2&filter=na=sturm%2C+erde+und+feuer rel=spell=51486]Sturm, Erde und Feuer[/url][/icon] alle Feinde in einem Gebiet festwurzeln. Außerdem gewähren sie durch [spell=57722] und [icon name=spell_shaman_elementaloath][url=?spells=-2&filter=na=Elementarer+Schwur rel=spell=51470]Elementarer Schwur[/url][/icon] begehrte Stärkungszauber für Zauberer ihres Schlachtzugs.\n\nEin auf [icon name=spell_nature_magicimmunity][url=?spells=7.7.374]Wiederherstellung[/url][/icon] spezialisierter Schamane erhält verbesserte Heilzauber und kann ein ausgezeichneter Schlachtzugs- oder Tankheiler sein. Sie sind bekannt für ihre mächtige Fähigkeit [spell=55459] und dafür, dass sie ein [spell=16190] zur Verfügung stellen, welches der Gruppe hilft Mana wiederherzustellen. Sie erhalten außerdem ein mächtiges [spell=49284], können mit [spell=51886] Flüche entfernen und verfügen durch [spell=61301] über einen Spontanheilungseffekt, der zusätzlich eine Heilung über Zeit verursacht.\n\n[ul][li]Es gibt über zwanzig verschiedene Totems, die ein Schamane erlernen kann![/li][li]Schamanen der Horde können [spell=2825] und Schamanen der Allianz [spell=32182] wirken, wodurch der verursachte Schaden und die gewirkte Heilung der gesamten Gruppe erhöht wird. Dieser Stärkungszauber ist einzigartig und in jeder Schlachtzugsgruppe sehr begehrt.[/li][li]Ein Schamane kann sich ab Stufe 16 in einen [spell=2645] verwandeln und dies mit dem Talent [spell=16287] sogar als Spontanzauber wirken. Dieser Zauber kann im Kampf eingesetzt werden, aber nicht in geschlossenen Räumen.[/li][li]Schamanen können immer nur einen Elementarschild - [spell=49281] oder [spell=57960] - gleichzeitig benutzen. Auf Wiederherstellung spezialisierte Schamanen können zudem [spell=49284] auf einen anderen Spieler wirken.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 8, 3, '[b][color=c8]Magier[/color][/b] bändigen die Elemente Feuer, Frost und Arkan, um ihre Feinde zu vernichten oder unter Kontrolle zu halten. Dazu besitzen sie ein Arsenal voller Zauber zu unterschiedlichen Zwecken.\nStärkungszauber, [icon name=ability_mage_conjurefoodrank10][url=?spell=42956]herbeigezauberte Erfrischungen[/url][/icon] oder arkane [url=?spells=7&filter=na=Portal]Portale[/url] zur schnellen Weltreise in ferne Länder machen einen Magier zu einem idealen Weggefährten.\nUnd wenn man eine Klasse sucht, die Gegner in eine Welt des Schmerzes einführt, ist der Magier eine gute Wahl. Ihren Gegnern können Magier mit verschiedensten Schwächungszaubern die Bedingungen eines jeden Kampfes diktieren, mit Elementarblitzen massiven Schaden aus der Ferne anrichten, oder Zerstörung in einem großen Wirkungsbereich niederregnen lassen.\n\nAuf [icon name=spell_holy_magicalsentry][url=?spells=7.8.237]Arkan[/url][/icon] spezialisierte Magier haben das Potenzial, mit [icon name=spell_arcane_blast][url=?spell=42897]Arkanschlägen[/url][/icon] und [icon name=ability_mage_missilebarrage][url=?spells=-2&filter=na=Geschosssalve rel=spell=54490]Salven[/url][/icon] an [icon name=spell_nature_starfall][url=?spell=42846]Arkanen Geschossen[/url][/icon] in kurzer Zeit enormen Schaden zu verursachen. Das Bändigen der reinen arkanen Mächte hat jedoch ihre Kehrseite: einem unerfahrenen Arkanmagier verzehrt es schon nach kurzer Zeit seine gesamten Kräfte.\n\nAuf [icon name=spell_fire_flamebolt][url=?spells=7.8.8]Feuer[/url][/icon] spezialisierte Magier verfallen durch kritische Treffer mit Feuerzaubern in [icon name=ability_mage_hotstreak][url=?spells=-2&filter=na=Kampfeshitze rel=spell=44448]Kampfeshitze[/url][/icon] und äschern so ihre Gegner mit verheerenden [icon name=spell_fire_fireball02][url=?spell=42891]Pyroschlägen[/url][/icon] ein. Zudem verwandeln sie ihre Gegner in [icon name=ability_mage_livingbomb][url=?spell=55360]Lebende Bomben[/url][/icon] und verursachen dadurch explosiven Flächenschaden.\n\n[icon name=spell_frost_frostbolt02][url=?spells=7.8.6]Frost[/url][/icon]magier können ihre Gegner [icon name=ability_mage_deepfreeze][url=?spell=44572]in Eis erstarren[/url][/icon] lassen. Ihre Spezialisierung auf Kälteeffekte erlaubt ihnen eine starke Kontrolle über ihre Gegner und erhöht dadurch ihre Überlebensfähigkeit enorm.\n\n[ul][li]Magier können Erfrischungen herbeizaubern, um die Gesundheit und das Mana ihrer Verbündeten wiederherzustellen.[/li][li]Sie sind die einzige Klasse, die Portale erschaffen kann, um andere Spieler zu transportieren. Sie können jedoch keine Spieler von einem entfernten Ort herbeirufen - das ist die Aufgabe eines [class=9]![/li][li]Der verursachte Fernkampfschaden von Magiern ist einer der höchsten im Spiel und macht sie zu einem unverzichtbaren Verbündeten in jedem Schlachtzug.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 9, 3, '[b][color=c9]Hexenmeister[/color][/b] sind Meister der dämonischen Künste. Gekleidet in Gewänder sind sie Meister im Wirken von [url=?spells=7&filter=cr=12;crs=1;crv=0;na=Fluch+der;cl=9]Flüchen[/url], dem Schleudern von Feuer- oder Schattenblitzen und der Beschwörung von [url=?spells=7&filter=cr=14;crs=6;crv=48018;na=beschwören;cl=9]Dämonen[/url] unter ihre Kontrolle zur Unterstützung im Kampf. Die Kombination ihrer Flüche und direkten Schadenszauber richten Verwüstung und Zerstörung an und machen Hexenmeister zu sehr gefürchteten Gegnern.\n\nNeben Mana als primäre Ressource können Hexenmeister Gegnern Teile ihrer [icon name=spell_shadow_haunting][url=?spell=47855]Seele stehlen[/url][/icon] und dadurch [item=6265] erzeugen. Seelensplitter ermöglichen mächtige rituelle Magie, etwa zur [icon name=spell_shadow_twilight][url=?spell=698]Beschwörung von anderen Spielern[/url][/icon] oder von [icon name=spell_shadow_shadesofdarkness][url=?spell=58887]Gesundheitssteinen[/url][/icon] mit heilenden Kräften. Insbesondere kann jedoch ein Hexenmeister mit ihnen die Seele eines Verbündeten in einem [icon name=spell_shadow_soulgem][url=?spell=47884]Seelenstein[/url][/icon] speichern, sodass dieser im Todesfall sich selbst wiederbeleben kann.\n\n[ul][li]Hexenmeister können durch ein Ritual der Beschwörung ein Portal erschaffen, um einen anderen Spieler an den Ort des Portals zu beschwören.[/li][li]Sie können Gesundheitssteine beschwören, die den Anwender heilen.[/li][li]Die Flüche eines Hexenmeisters können ihre Feinde schwächen oder ihnen Schaden zufügen.[/li][/ul]');
INSERT INTO aowow_articles (`type`, `typeId`, `locale`, `article`) VALUES (13, 11, 3, '[b][color=c11]Druiden[/color][/b] sind die "Alleskönner"-Klasse in World of Warcraft - das heißt, sie können in einer Vielzahl von verschiedenen Rollen agieren und bieten daher einen der vielfältigsten Spielstile. Durch das [i]Annehmen der Gestalt von verschiedenen Kreaturen[/i] kann der Druide heilen, Schaden im Nah- und Fernkampf verursachen oder als Tank agieren. Mit steigenden Stufen kann der Druide neue, immer mächtigere Gestaltwandlungen erlernen, um sich in eine Kreatur passend zu seiner Rolle zu verwandeln.\n\nAuf niedrigeren Stufen wird ein Druide in seiner humanoiden Gestalt heilen oder im Fernkampf Schaden verursachen. Auf späteren Stufen jedoch erhalten Druiden durch die spezialisierten Talentbäume Zugang zu zwei besonderen Gestalten für jede unterschiedliche Rolle.\n\nAuf [icon name=spell_nature_healingtouch][url=?spells=7.11.573]Wiederherstellung[/url][/icon] spezialisierte Druiden erlernen den [spell=33891], der die Manakosten ihrer Heilzauber reduziert und jegliche Heilung auf ihre Verbündeten verstärkt.\nAuf [icon name=spell_nature_starfall][url=?spells=7.11.574]Gleichgewicht[/url][/icon] spezialisierte Druiden verursachen Schaden im Fernkampf und erlernen die [spell=24858], die ihre Rüstung sowie die Chance auf kritische Treffer mit Zaubern bei ihnen und ihren Verbündeten erhöht.\nEs gibt auch zwei Druidenformen für den [icon name=ability_racial_bearform][url=?spells=7.11.134]Wilden Kampf[/url][/icon]. Zum einen die mächtige [spell=5487] (und [spell=9634] ab einer höheren Stufe) - eine auf das Tanken ausgelegte Gestalt, die zusätzliche Rüstung, Gesundheit und Zugang zu einem Arsenal von Fähigkeiten zur Erhöhung der Bedrohung und Schadensverminderung gewährt. Zum anderen die schurkenähnliche [spell=768], die erheblichen Nahkampfschaden verursachen kann.\n\n[ul][li]Druiden erlernen ihre verschiedenen Gestalten durch das Abschließen von Quests oder durch Training. Einige Gestalten können nur durch Talente erlernt werden.[/li][li]Es gibt einige Gestalten, die alle Druiden erlernen können. Die Bärengestalt erhält man ab Stufe 10, die [spell=1066] und [spell=783] ab Stufe 16, die Katzengestalt ab Stufe 20 und die Terrorbärengestalt ab Stufe 40.[/li][li]Druiden haben sogar ihre eigene fliegende Reisegestalt: die [spell=33943] kann ab Stufe 60 und die [spell=40120] ab Stufe 71 erlernt werden, sofern der Spieler bereits [icon name=spell_nature_swiftness][url=?spell=34093]Gekonntes Reiten[/url][/icon] erlernt hat.[/li][li]Einige Druidengestalten können nur über Talente erlernt werden - die Mondkingestalt kann ab Stufe 40 erlernt werden, wenn ein Spieler viele Talentpunkte im Gleichgewicht-Talentbaum verteilt, und Baum des Lebens ab Stufe 50, wenn er viele Talentpunkte im Wiederherstellung-Talentbaum verteilt.[/li][li]Druiden haben ihre eigene, klassenspezifische [icon name=spell_arcane_teleportmoonglade][url=?spell=18960]Teleportationsfähigkeit[/url][/icon], die es ihnen erlaubt, zur [zone=493] zu reisen - praktisch, wenn sie trainieren müssen![/li][li]Druiden in (Terror-) Bärengestalt oder Katzengestalt schwingen zur Verursachung von Nahkampfschaden keine Waffen. Stattdessen erhalten sie einen speziellen Wert für jede ausgerüstete Nahkampfwaffe: die "Angriffskraft in Tiergestalt". Dieser Wert ist eine Umwandlung des "Schaden pro Sekunde"-Wertes einer Waffe in einen Wert, der Angriffskraft verleiht und den verursachten Schaden des Druiden in Katzen- oder (Terror-) Bärengestalt beeinflusst.[/li][/ul]');

View File

@@ -0,0 +1,24 @@
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'searchplugin', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'power', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'searchboxScript', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'demo', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'searchboxBody', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'realmMenu', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'locales', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'markup', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'itemScaling', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'realms', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'statistics', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'simpleImg', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'complexImg', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'talentCalc', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'pets', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'talentIcons', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'glyphs', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'itemsets', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'enchants', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'gems', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'profiler', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'weightPresets', '');
UPDATE aowow_dbversion SET `sql` = REPLACE(`sql`, 'soundfiles', '');

View File

@@ -0,0 +1,7 @@
SET foreign_key_checks = 0;
ALTER TABLE `aowow_account_weightscales`
DROP PRIMARY KEY,
ADD PRIMARY KEY (`id`);
SET foreign_key_checks = 1;

View File

@@ -0,0 +1,44 @@
-- undo sunken temple data
DELETE FROM aowow_setup_custom_data WHERE `command` = 'zones' AND `entry` IN (1477, 1417);
-- undo icc unused subzone linking (still has EXCLUDE_FOR_LISTVIEW set)
DELETE FROM aowow_setup_custom_data WHERE `command` = 'zones' AND `field` = 'parentAreaId' AND `value` = 4812;
-- undo Hellfire Citadel recategorization
DELETE FROM aowow_setup_custom_data WHERE `command` = 'quests' AND `field` = 'zoneOrSort' AND `entry` IN (9572, 9575, 11354, 9589, 9590, 9607, 9608, 11362, 9492, 9493, 9494, 9495, 9496, 9497, 9524, 9525, 11363, 11364);
INSERT INTO aowow_setup_custom_data VALUES
('zones', 1417, 'cuFlags', 1073741824, 'Sunken Temple [extra area on map 109] - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 22, 'cuFlags', 1073741824, 'Programmer Isle - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 151, 'cuFlags', 1073741824, 'Designer Island - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 3948, 'cuFlags', 1073741824, 'Brian and Pat Test - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 4019, 'cuFlags', 1073741824, 'Development Land - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 3605, 'cuFlags', 1073741824, 'Hyjal Past [extra area on map 560] - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
('zones', 3535, 'cuFlags', 1073741824, 'Hellfire Citadel [extra area on map 540] - set: CUSTOM_EXCLUDE_FOR_LISTVIEW'),
-- move quests from generic Hellfire Citadel to...
-- ...Hellfire Ramparts [3562]
('quests', 9572, 'zoneOrSort', 3562, 'Weaken the Ramparts - category Hellfire Citadel -> Hellfire Ramparts'),
('quests', 9575, 'zoneOrSort', 3562, 'Weaken the Ramparts - category Hellfire Citadel -> Hellfire Ramparts'),
('quests', 11354, 'zoneOrSort', 3562, "Wanted: Nazan's Riding Crop - category Hellfire Citadel -> Hellfire Ramparts"),
-- ...The Blood Furnace [3713]
('quests', 9589, 'zoneOrSort', 3713, 'The Blood is Life - category Hellfire Citadel -> Blood Furnace'),
('quests', 9590, 'zoneOrSort', 3713, 'The Blood is Life - category Hellfire Citadel -> Blood Furnace'),
('quests', 9607, 'zoneOrSort', 3713, 'Heart of Rage - category Hellfire Citadel -> Blood Furnace'),
('quests', 9608, 'zoneOrSort', 3713, 'Heart of Rage - category Hellfire Citadel -> Blood Furnace'),
('quests', 11362, 'zoneOrSort', 3713, "Wanted: Keli'dan's Feathered Stave - category Hellfire Citadel -> Blood Furnace"),
-- ...The Shattered Halls [3714]
('quests', 9492, 'zoneOrSort', 3714, 'Turning the Tide - category Hellfire Citadel -> Shattered Halls'),
('quests', 9493, 'zoneOrSort', 3714, 'Pride of the Fel Horde - category Hellfire Citadel -> Shattered Halls'),
('quests', 9494, 'zoneOrSort', 3714, 'Fel Embers - category Hellfire Citadel -> Shattered Halls'),
('quests', 9495, 'zoneOrSort', 3714, 'The Will of the Warchief - category Hellfire Citadel -> Shattered Halls'),
('quests', 9496, 'zoneOrSort', 3714, 'Pride of the Fel Horde - category Hellfire Citadel -> Shattered Halls'),
('quests', 9497, 'zoneOrSort', 3714, 'Emblem of the Fel Horde - category Hellfire Citadel -> Shattered Halls'),
('quests', 9524, 'zoneOrSort', 3714, 'Imprisoned in the Citadel - category Hellfire Citadel -> Shattered Halls'),
('quests', 9525, 'zoneOrSort', 3714, 'Imprisoned in the Citadel - category Hellfire Citadel -> Shattered Halls'),
('quests', 11363, 'zoneOrSort', 3714, "Wanted: Bladefist's Seal - category Hellfire Citadel -> Shattered Halls"),
('quests', 11364, 'zoneOrSort', 3714, 'Wanted: Shattered Hand Centurions - category Hellfire Citadel -> Shattered Halls');
-- implement SpawnedByDefault
ALTER TABLE aowow_spawns
MODIFY COLUMN `respawn` int signed NOT NULL DEFAULT 0;
-- rebuild spawns
UPDATE aowow_dbversion
SET `sql` = CONCAT(IFNULL(`sql`, ''), ' spawns quests');

View File

@@ -0,0 +1,72 @@
ALTER TABLE aowow_config
MODIFY COLUMN `cat` tinyint unsigned NOT NULL DEFAULT 0,
MODIFY COLUMN `flags` smallint unsigned NOT NULL DEFAULT 0,
ADD COLUMN `default` varchar(255) DEFAULT NULL AFTER `value`;
INSERT IGNORE INTO aowow_config VALUES
('rep_req_border_unco', 5000, 5000, 5, 129, 'required reputation for uncommon quality avatar border'),
('rep_req_border_rare', 10000, 10000, 5, 129, 'required reputation for rare quality avatar border'),
('rep_req_border_epic', 15000, 15000, 5, 129, 'required reputation for epic quality avatar border'),
('rep_req_border_lege', 25000, 25000, 5, 129, 'required reputation for legendary quality avatar border');
UPDATE aowow_config SET `default` = 'UTF-8' WHERE `key` = 'default_charset';
UPDATE aowow_config SET `comment` = 'website title' WHERE `key` = 'name';
UPDATE aowow_config SET `comment` = 'feed title' WHERE `key` = 'name_short';
UPDATE aowow_config SET `comment` = 'another halfbaked javascript thing..' WHERE `key` = 'board_url';
UPDATE aowow_config SET `comment` = 'displayed sender for auth-mails, ect' WHERE `key` = 'contact_email';
UPDATE aowow_config SET `comment` = 'pretend, we belong to a battlegroup to satisfy profiler-related javascripts' WHERE `key` = 'battlegroup';
UPDATE aowow_config SET `comment` = 'points js to executable files', `flags` = `flags` | 768 WHERE `key` = 'site_host';
UPDATE aowow_config SET `comment` = 'points js to images & scripts', `flags` = `flags` | 768 WHERE `key` = 'static_host';
UPDATE aowow_config SET `comment` = 'some derelict code, probably unused' WHERE `key` = 'serialize_precision';
UPDATE aowow_config SET `comment` = 'enter your GA-user here to track site stats' WHERE `key` = 'analytics_user';
UPDATE aowow_config SET `comment` = 'if auth mode is not self; link to external account creation' WHERE `key` = 'acc_ext_create_url';
UPDATE aowow_config SET `comment` = 'if auth mode is not self; link to external account recovery' WHERE `key` = 'acc_ext_recover_url';
UPDATE aowow_config SET `comment` = 'php sessions are saved here. Leave empty to use php default directory.' WHERE `key` = 'session_cache_dir';
UPDATE aowow_config SET `comment` = 'max results for search', `default` = '500' WHERE `key` = 'sql_limit_search';
UPDATE aowow_config SET `comment` = 'max results for listviews', `default` = '300' WHERE `key` = 'sql_limit_default';
UPDATE aowow_config SET `comment` = 'max results for suggestions', `default` = '10' WHERE `key` = 'sql_limit_quicksearch';
UPDATE aowow_config SET `comment` = 'unlimited results (i wouldn\'t change that mate)', `default` = '0' WHERE `key` = 'sql_limit_none';
UPDATE aowow_config SET `comment` = 'time to live for RSS (in seconds)', `default` = '60' WHERE `key` = 'ttl_rss';
UPDATE aowow_config SET `comment` = 'disable cache, enable error_reporting - 0:None, 1:Error, 2:Warning, 3:Info', `default` = '0', `flags` = 145 WHERE `key` = 'debug';
UPDATE aowow_config SET `comment` = 'display brb gnomes and block access for non-staff', `default` = '0' WHERE `key` = 'maintenance';
UPDATE aowow_config SET `comment` = 'vote limit per day', `default` = '50' WHERE `key` = 'user_max_votes';
UPDATE aowow_config SET `comment` = 'enforce SSL, if auto-detect fails', `default` = '0' WHERE `key` = 'force_ssl';
UPDATE aowow_config SET `comment` = 'allowed locales - 0:English, 2:French, 3:German, 4:Chinese, 6:Spanish, 8:Russian', `default` = '0x15D' WHERE `key` = 'locales';
UPDATE aowow_config SET `comment` = 'minimum dimensions of uploaded screenshots in px (yes, it\'s square)', `default` = '200' WHERE `key` = 'screenshot_min_size';
UPDATE aowow_config SET `comment` = 'time to keep cache in seconds', `default` = '60 * 60 * 7' WHERE `key` = 'cache_decay';
UPDATE aowow_config SET `comment` = 'set cache method - 0:filecache, 1:memcached', `default` = '1' WHERE `key` = 'cache_mode';
UPDATE aowow_config SET `comment` = 'generated pages are saved here (requires CACHE_MODE: filecache)', `default` = 'cache/template' WHERE `key` = 'cache_dir';
UPDATE aowow_config SET `comment` = 'how long an account is closed after exceeding FAILED_AUTH_COUNT (in seconds)', `default` = '15 * 60' WHERE `key` = 'acc_failed_auth_block';
UPDATE aowow_config SET `comment` = 'how often invalid passwords are tolerated', `default` = '5' WHERE `key` = 'acc_failed_auth_count';
UPDATE aowow_config SET `comment` = 'allow/disallow account creation (requires AUTH_MODE: aowow)', `default` = '1' WHERE `key` = 'acc_allow_register';
UPDATE aowow_config SET `comment` = 'source to auth against - 0:AoWoW, 1:TC auth-table, 2:External script (config/extAuth.php)', `default` = '0', `flags`= `flags`| 256 WHERE `key` = 'acc_auth_mode';
UPDATE aowow_config SET `comment` = 'time in wich an unconfirmed account cannot be overwritten by new registrations', `default` = '604800' WHERE `key` = 'acc_create_save_decay';
UPDATE aowow_config SET `comment` = 'time to recover your account and new recovery requests are blocked', `default` = '300' WHERE `key` = 'acc_recovery_decay';
UPDATE aowow_config SET `comment` = 'non-permanent session times out in time() + X', `default` = '60 * 60' WHERE `key` = 'session_timeout_delay';
UPDATE aowow_config SET `comment` = 'lifetime of session data', `default` = '7 * 24 * 60 * 60' WHERE `key` = 'session.gc_maxlifetime';
UPDATE aowow_config SET `comment` = 'probability to remove session data on garbage collection', `default` = '0' WHERE `key` = 'session.gc_probability';
UPDATE aowow_config SET `comment` = 'probability to remove session data on garbage collection', `default` = '100' WHERE `key` = 'session.gc_divisor';
UPDATE aowow_config SET `comment` = 'required reputation to upvote comments', `default` = '125' WHERE `key` = 'rep_req_upvote';
UPDATE aowow_config SET `comment` = 'required reputation to downvote comments', `default` = '250' WHERE `key` = 'rep_req_downvote';
UPDATE aowow_config SET `comment` = 'required reputation to write a comment', `default` = '75' WHERE `key` = 'rep_req_comment';
UPDATE aowow_config SET `comment` = 'required reputation to write a reply', `default` = '75' WHERE `key` = 'rep_req_reply';
UPDATE aowow_config SET `comment` = 'required reputation for double vote effect', `default` = '2500' WHERE `key` = 'rep_req_supervote';
UPDATE aowow_config SET `comment` = 'gains more votes past this threshold', `default` = '2000' WHERE `key` = 'rep_req_votemore_base';
UPDATE aowow_config SET `comment` = 'activated an account', `default` = '100' WHERE `key` = 'rep_reward_register';
UPDATE aowow_config SET `comment` = 'comment received upvote', `default` = '5' WHERE `key` = 'rep_reward_upvoted';
UPDATE aowow_config SET `comment` = 'comment received downvote', `default` = '0' WHERE `key` = 'rep_reward_downvoted';
UPDATE aowow_config SET `comment` = 'filed an accepted report', `default` = '10' WHERE `key` = 'rep_reward_good_report';
UPDATE aowow_config SET `comment` = 'filed a rejected report', `default` = '0' WHERE `key` = 'rep_reward_bad_report';
UPDATE aowow_config SET `comment` = 'daily visit', `default` = '5' WHERE `key` = 'rep_reward_dailyvisit';
UPDATE aowow_config SET `comment` = 'moderator imposed a warning', `default` = '-50' WHERE `key` = 'rep_reward_user_warned';
UPDATE aowow_config SET `comment` = 'created a comment (not a reply)', `default` = '1' WHERE `key` = 'rep_reward_comment';
UPDATE aowow_config SET `comment` = 'required reputation for premium status through reputation', `default` = '25000' WHERE `key` = 'rep_req_premium';
UPDATE aowow_config SET `comment` = 'suggested / uploaded video / screenshot was approved', `default` = '10' WHERE `key` = 'rep_reward_upload';
UPDATE aowow_config SET `comment` = 'submitted an approved article/guide', `default` = '100' WHERE `key` = 'rep_reward_article';
UPDATE aowow_config SET `comment` = 'moderator revoked rights', `default` = '-200' WHERE `key` = 'rep_reward_user_suspended';
UPDATE aowow_config SET `comment` = 'required reputation per additional vote past threshold', `default` = '250' WHERE `key` = 'rep_req_votemore_add';
UPDATE aowow_config SET `comment` = 'parsing spell.dbc is quite intense', `default` = '1500M' WHERE `key` = 'memory_limit';
UPDATE aowow_config SET `comment` = 'enable/disable profiler feature', `default` = '0', `flags`= `flags`| 256 WHERE `key` = 'profiler_enable';
UPDATE aowow_config SET `comment` = 'min. delay between queue cycles (in ms)', `default` = '3000' WHERE `key` = 'profiler_queue_delay';
UPDATE aowow_config SET `comment` = 'how often the javascript asks for for updates, when queued (in ms)', `default` = '5000' WHERE `key` = 'profiler_resync_ping';
UPDATE aowow_config SET `comment` = 'how often a character can be refreshed (in sec)', `default` = '1 * 60 * 60' WHERE `key` = 'profiler_resync_delay';

View File

@@ -0,0 +1,4 @@
ALTER TABLE aowow_creature
ADD KEY `idx_loot` (`lootId`),
ADD KEY `idx_pickpocketloot` (`pickpocketLootId`),
ADD KEY `idx_skinloot` (`skinLootId`);

View File

@@ -0,0 +1 @@
UPDATE aowow_config SET `flags` = `flags`| 0x400 WHERE `key` IN ('locales', 'acc_auth_mode', 'profiler_enable');

View File

@@ -0,0 +1,91 @@
ALTER TABLE `aowow_itemset`
DROP COLUMN `bonusParsed`;
DROP TABLE IF EXISTS `aowow_item_stats`;
CREATE TABLE `aowow_item_stats` (
`type` smallint(5) unsigned NOT NULL,
`typeId` mediumint(8) NOT NULL,
`nsockets` tinyint(3) unsigned NULL,
`dps` float(8,2) NULL,
`damagetype` tinyint(4) NULL,
`dmgmin1` mediumint(5) unsigned NULL,
`dmgmax1` mediumint(5) unsigned NULL,
`speed` float(8,2) NULL,
`mledps` float(8,2) NULL,
`mledmgmin` mediumint(5) unsigned NULL,
`mledmgmax` mediumint(5) unsigned NULL,
`mlespeed` float(8,2) NULL,
`rgddps` float(8,2) NULL,
`rgddmgmin` mediumint(5) unsigned NULL,
`rgddmgmax` mediumint(5) unsigned NULL,
`rgdspeed` float(8,2) NULL,
`dmg` float(8,2) NULL,
`mana` mediumint(6) NULL,
`health` mediumint(6) NULL,
`agi` mediumint(6) NULL,
`str` mediumint(6) NULL,
`int` mediumint(6) NULL,
`spi` mediumint(6) NULL,
`sta` mediumint(6) NULL,
`energy` mediumint(6) NULL,
`rage` mediumint(6) NULL,
`focus` mediumint(6) NULL,
`runic` mediumint(6) NULL,
`defrtng` mediumint(6) NULL,
`dodgertng` mediumint(6) NULL,
`parryrtng` mediumint(6) NULL,
`blockrtng` mediumint(6) NULL,
`mlehitrtng` mediumint(6) NULL,
`rgdhitrtng` mediumint(6) NULL,
`splhitrtng` mediumint(6) NULL,
`mlecritstrkrtng` mediumint(6) NULL,
`rgdcritstrkrtng` mediumint(6) NULL,
`splcritstrkrtng` mediumint(6) NULL,
`_mlehitrtng` mediumint(6) NULL,
`_rgdhitrtng` mediumint(6) NULL,
`_splhitrtng` mediumint(6) NULL,
`_mlecritstrkrtng` mediumint(6) NULL,
`_rgdcritstrkrtng` mediumint(6) NULL,
`_splcritstrkrtng` mediumint(6) NULL,
`mlehastertng` mediumint(6) NULL,
`rgdhastertng` mediumint(6) NULL,
`splhastertng` mediumint(6) NULL,
`hitrtng` mediumint(6) NULL,
`critstrkrtng` mediumint(6) NULL,
`_hitrtng` mediumint(6) NULL,
`_critstrkrtng` mediumint(6) NULL,
`resirtng` mediumint(6) NULL,
`hastertng` mediumint(6) NULL,
`exprtng` mediumint(6) NULL,
`atkpwr` mediumint(6) NULL,
`mleatkpwr` mediumint(6) NULL,
`rgdatkpwr` mediumint(6) NULL,
`feratkpwr` mediumint(6) NULL,
`splheal` mediumint(6) NULL,
`spldmg` mediumint(6) NULL,
`manargn` mediumint(6) NULL,
`armorpenrtng` mediumint(6) NULL,
`splpwr` mediumint(6) NULL,
`healthrgn` mediumint(6) NULL,
`splpen` mediumint(6) NULL,
`block` mediumint(6) NULL,
`mastrtng` mediumint(6) NULL,
`armor` mediumint(6) NULL,
`armorbonus` mediumint(6) NULL,
`firres` mediumint(6) NULL,
`frores` mediumint(6) NULL,
`holres` mediumint(6) NULL,
`shares` mediumint(6) NULL,
`natres` mediumint(6) NULL,
`arcres` mediumint(6) NULL,
`firsplpwr` mediumint(6) NULL,
`frosplpwr` mediumint(6) NULL,
`holsplpwr` mediumint(6) NULL,
`shasplpwr` mediumint(6) NULL,
`natsplpwr` mediumint(6) NULL,
`arcsplpwr` mediumint(6) NULL,
PRIMARY KEY (`type`,`typeId`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
UPDATE `aowow_dbversion`
SET `sql` = CONCAT(IFNULL(`sql`, ''), ' item_stats');

View File

@@ -0,0 +1,20 @@
DROP TABLE IF EXISTS aowow_areatrigger;
CREATE TABLE aowow_areatrigger (
`id` int unsigned NOT NULL,
`cuFlags` int unsigned NOT NULL DEFAULT 0 COMMENT 'see defines.php for flags',
`type` smallint unsigned NOT NULL,
`mapId` smallint unsigned NOT NULL COMMENT 'world pos. from dbc',
`posX` float NOT NULL COMMENT 'world pos. from dbc',
`posY` float NOT NULL COMMENT 'world pos. from dbc',
`orientation` float NOT NULL,
`name` varchar(100) NULL DEFAULT NULL,
`quest` mediumint unsigned NULL DEFAULT NULL,
`teleportA` smallint unsigned NULL DEFAULT NULL,
`teleportX` float NULL DEFAULT NULL,
`teleportY` float NULL DEFAULT NULL,
`teleportO` float NULL DEFAULT NULL,
`teleportF` tinyint unsigned NULL DEFAULT NULL,
PRIMARY KEY (`id`),
INDEX `quest` (`quest`),
INDEX `type` (`type`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE='utf8mb4_general_ci' ;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' markup');

View File

@@ -0,0 +1,3 @@
DROP TABLE IF EXISTS dbc_areatrigger, dbc_soundemitters;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' areatrigger soundemitters spawns');

View File

@@ -0,0 +1,25 @@
DROP TABLE IF EXISTS `aowow_areatrigger`;
CREATE TABLE `aowow_areatrigger` (
`id` int unsigned NOT NULL,
`cuFlags` int unsigned NOT NULL DEFAULT 0 COMMENT 'see defines.php for flags',
`type` smallint unsigned NOT NULL,
`mapId` smallint unsigned NOT NULL COMMENT 'world pos. from dbc',
`posX` float NOT NULL COMMENT 'world pos. from dbc',
`posY` float NOT NULL COMMENT 'world pos. from dbc',
`orientation` float NOT NULL,
`name` varchar(100) DEFAULT NULL,
`quest` mediumint unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `quest` (`quest`),
KEY `type` (`type`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
ALTER TABLE `aowow_zones`
CHANGE COLUMN `parentAreaId` `parentMapId` smallint unsigned NOT NULL;
DELETE FROM aowow_setup_custom_data WHERE
`command` = 'zones' AND
`entry` IN (3456, 3845, 3847, 3848, 3849) AND
`field` IN ('parentAreaId', 'parentX', 'parentY');
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' areatrigger zones spawns');

View File

@@ -0,0 +1,60 @@
ALTER TABLE `aowow_account_bannedips` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_achievement` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_achievementcategory` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_achievementcriteria` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_announcements` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_areatrigger` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_articles` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_classes` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_config` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_creature` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_creature_waypoints` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_currencies` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_dbversion` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_declinedword` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_declinedwordcases` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_emotes` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_emotes_aliasses` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_errors` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_events` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_factions` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_factiontemplate` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_glyphproperties` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_holidays` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_item_stats` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemenchantment` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemenchantmentcondition` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemextendedcost` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemlimitcategory` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemrandomenchant` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemrandomproppoints` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_items` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_itemset` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_lock` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_loot_link` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_mails` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_objects` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_pet` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_quests` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_quests_startend` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_races` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_reports` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_scalingstatdistribution` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_scalingstatvalues` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_setup_custom_data` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_shapeshiftforms` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_skillline` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spawns` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spawns_override` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spell` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spelldifficulty` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spellfocusobject` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spelloverride` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spellrange` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_spellvariables` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_talents` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_taxinodes` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_taxipath` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_titles` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_totemcategory` ENGINE=InnoDB ROW_FORMAT=DEFAULT;
ALTER TABLE `aowow_zones` ENGINE=InnoDB ROW_FORMAT=DEFAULT;

View File

@@ -0,0 +1,217 @@
DROP TABLE IF EXISTS `aowow_loot_link`;
CREATE TABLE `aowow_loot_link` (
`npcId` mediumint(9) unsigned NOT NULL,
`objectId` mediumint(8) unsigned NOT NULL,
`difficulty` tinyint(3) unsigned NOT NULL DEFAULT 1,
`priority` tinyint(3) unsigned NOT NULL COMMENT '1: use this npc from group encounter (others 0)',
`encounterId` mediumint(8) unsigned NOT NULL COMMENT 'as title reference',
UNIQUE KEY `npcId_difficulty` (`npcId`, `difficulty`),
KEY `objectId` (`objectId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
INSERT INTO `aowow_loot_link` VALUES
(19710,184465,1,0,0),
(19218,184465,1,1,0),
(21526,184849,2,0,0),
(21525,184849,2,1,0),
(17537,185168,1,1,0),
(17536,185168,1,0,0),
(18434,185169,2,1,0),
(18432,185169,2,0,0),
(28234,190586,1,0,0),
(28234,193996,2,0,0),
(26533,190663,1,0,0),
(31217,193597,2,0,0),
(27656,191349,1,0,0),
(31561,193603,2,0,0),
(28859,193905,1,0,0),
(31734,193967,2,0,0),
(32845,194307,1,0,0),
(32846,194308,2,0,0),
(32845,194200,3,0,0),
(32846,194201,4,0,0),
(32865,194312,1,0,0),
(33147,194314,2,0,0),
(32865,194313,3,0,0),
(33147,194315,4,0,0),
(32906,194324,1,0,0),
(33360,194328,2,0,0),
(32906,194327,3,0,0),
(33360,194331,4,0,0),
(32871,194821,1,0,0),
(33070,194822,2,0,0),
(33350,194789,1,0,0),
(33350,194956,2,0,0),
(33350,194957,3,0,0),
(33350,194958,4,0,0),
(32930,195046,1,0,0),
(33909,195047,2,0,0),
(34928,195323,1,0,0),
(35517,195324,2,0,0),
(35119,195374,1,0,0),
(35518,195375,2,0,0),
(37226,201710,1,0,0),
(37226,202336,2,0,0),
(36789,201959,1,0,0),
(38174,202339,2,0,0),
(36789,202338,3,0,0),
(38174,202340,4,0,0),
(38402,202239,1,0,0),
(38582,202240,2,0,0),
(37813,202238,3,0,0),
(38583,202241,4,0,0),
(9034,169243,1,0,243),
(9035,169243,1,1,243),
(9039,169243,1,0,243),
(9036,169243,1,0,243),
(9037,169243,1,0,243),
(9038,169243,1,0,243),
(9040,169243,1,0,243),
(34657,195709,1,0,334),
(34701,195709,1,0,334),
(34703,195709,1,0,334),
(34702,195709,1,0,334),
(34705,195709,1,0,334),
(35571,195709,1,0,334),
(35617,195709,1,0,334),
(35572,195709,1,0,334),
(35570,195709,1,0,334),
(35569,195709,1,1,334),
(36089,195710,2,0,334),
(36086,195710,2,0,334),
(36087,195710,2,0,334),
(36082,195710,2,0,334),
(36085,195710,2,1,334),
(36088,195710,2,0,334),
(36084,195710,2,0,334),
(36083,195710,2,0,334),
(36091,195710,2,0,334),
(36090,195710,2,0,334),
(34458,195631,1,0,637),
(34465,195631,1,0,637),
(34463,195631,1,0,637),
(34460,195631,1,0,637),
(34459,195631,1,0,637),
(34456,195631,1,0,637),
(34466,195631,1,0,637),
(34467,195631,1,0,637),
(34468,195631,1,0,637),
(34469,195631,1,0,637),
(34470,195631,1,0,637),
(34472,195631,1,0,637),
(34474,195631,1,0,637),
(34473,195631,1,0,637),
(34455,195631,1,0,637),
(34454,195631,1,0,637),
(34453,195631,1,0,637),
(34441,195631,1,1,637),
(34471,195631,1,0,637),
(34475,195631,1,0,637),
(34444,195631,1,0,637),
(34445,195631,1,0,637),
(34447,195631,1,0,637),
(34461,195631,1,0,637),
(34448,195631,1,0,637),
(34449,195631,1,0,637),
(34450,195631,1,0,637),
(34451,195631,1,0,637),
(35686,195632,2,0,637),
(35671,195632,2,0,637),
(35683,195632,2,0,637),
(35680,195632,2,0,637),
(35674,195632,2,0,637),
(35689,195632,2,0,637),
(35721,195632,2,0,637),
(35718,195632,2,0,637),
(35731,195632,2,0,637),
(35714,195632,2,0,637),
(35711,195632,2,0,637),
(35734,195632,2,0,637),
(35737,195632,2,0,637),
(35740,195632,2,0,637),
(35743,195632,2,0,637),
(35746,195632,2,0,637),
(35708,195632,2,0,637),
(35705,195632,2,0,637),
(35702,195632,2,0,637),
(35699,195632,2,0,637),
(35695,195632,2,0,637),
(35692,195632,2,0,637),
(35728,195632,2,0,637),
(35724,195632,2,0,637),
(35668,195632,2,0,637),
(34442,195632,2,1,637),
(35662,195632,2,0,637),
(35665,195632,2,0,637),
(35725,195633,3,0,637),
(35722,195633,3,0,637),
(35719,195633,3,0,637),
(35715,195633,3,0,637),
(35709,195633,3,0,637),
(35706,195633,3,0,637),
(35729,195633,3,0,637),
(35744,195633,3,0,637),
(35732,195633,3,0,637),
(35735,195633,3,0,637),
(35738,195633,3,0,637),
(35741,195633,3,0,637),
(35747,195633,3,0,637),
(35712,195633,3,0,637),
(35703,195633,3,0,637),
(35700,195633,3,0,637),
(35672,195633,3,0,637),
(35690,195633,3,0,637),
(35687,195633,3,0,637),
(35669,195633,3,0,637),
(35684,195633,3,0,637),
(35693,195633,3,0,637),
(34443,195633,3,1,637),
(35681,195633,3,0,637),
(35663,195633,3,0,637),
(35666,195633,3,0,637),
(35696,195633,3,0,637),
(35675,195633,3,0,637),
(35700,195635,4,0,637),
(35749,195635,4,1,637),
(35706,195635,4,0,637),
(35703,195635,4,0,637),
(35709,195635,4,0,637),
(35744,195635,4,0,637),
(35741,195635,4,0,637),
(35735,195635,4,0,637),
(35732,195635,4,0,637),
(35729,195635,4,0,637),
(35725,195635,4,0,637),
(35722,195635,4,0,637),
(35719,195635,4,0,637),
(35715,195635,4,0,637),
(35712,195635,4,0,637),
(35747,195635,4,0,637),
(35696,195635,4,0,637),
(35675,195635,4,0,637),
(35681,195635,4,0,637),
(35663,195635,4,0,637),
(35669,195635,4,0,637),
(35666,195635,4,0,637),
(35738,195635,4,0,637),
(35672,195635,4,0,637),
(35684,195635,4,0,637),
(35687,195635,4,0,637),
(35690,195635,4,0,637),
(35693,195635,4,0,637),
(16064,181366,1,0,692),
(16065,181366,1,0,692),
(16063,181366,1,0,692),
(30549,181366,1,1,692),
(30602,193426,2,0,692),
(30603,193426,2,0,692),
(30601,193426,2,0,692),
(30600,193426,2,1,692),
(36948,202178,1,0,847),
(36939,202178,1,0,847),
(38157,202180,2,0,847),
(38156,202180,2,0,847),
(38639,202177,3,0,847),
(38637,202177,3,0,847),
(38640,202179,4,0,847),
(38638,202179,4,0,847);

View File

@@ -0,0 +1,4 @@
DELETE FROM `aowow_loot_link` WHERE `npcId` IN (25740,26338,12018);
INSERT INTO `aowow_loot_link` VALUES
(25740,187892,0,0,0),
(12018,179703,0,0,0);

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_setup_custom_data`
MODIFY COLUMN `value` text DEFAULT NULL;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' realmmenu');

View File

@@ -0,0 +1 @@
UPDATE `aowow_config` SET `flags` = 1441 WHERE `key` = 'locales';

View File

@@ -0,0 +1,73 @@
SET FOREIGN_KEY_CHECKS=0;
DROP TABLE IF EXISTS `aowow_profiler_completion_quests`;
CREATE TABLE `aowow_profiler_completion_quests` (
`id` int unsigned NOT NULL,
`questId` mediumint unsigned NOT NULL,
KEY `id` (`id`),
CONSTRAINT `FK_pr_completion_quests` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_skills`;
CREATE TABLE `aowow_profiler_completion_skills` (
`id` int unsigned NOT NULL,
`skillId` smallint unsigned NOT NULL,
`value` smallint unsigned DEFAULT NULL,
`max` smallint unsigned DEFAULT NULL,
KEY `id` (`id`),
KEY `typeId` (`skillId`),
CONSTRAINT `FK_pr_completion_skills` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_reputation`;
CREATE TABLE `aowow_profiler_completion_reputation` (
`id` int unsigned NOT NULL,
`factionId` smallint unsigned NOT NULL,
`standing` mediumint DEFAULT NULL,
KEY `id` (`id`),
CONSTRAINT `FK_pr_completion_reputation` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_titles`;
CREATE TABLE `aowow_profiler_completion_titles` (
`id` int unsigned NOT NULL,
`titleId` tinyint unsigned NOT NULL,
KEY `id` (`id`),
CONSTRAINT `FK_pr_completion_titles` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_achievements`;
CREATE TABLE `aowow_profiler_completion_achievements` (
`id` int unsigned NOT NULL,
`achievementId` smallint unsigned NOT NULL,
`date` int unsigned DEFAULT NULL,
KEY `id` (`id`),
KEY `typeId` (`achievementId`),
CONSTRAINT `FK_pr_completion_achievements` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_statistics`;
CREATE TABLE `aowow_profiler_completion_statistics` (
`id` int unsigned NOT NULL,
`achievementId` smallint NOT NULL,
`date` int unsigned DEFAULT NULL,
`counter` smallint unsigned DEFAULT NULL, -- could be values of INT size, but surely not for bosskill counters, right? ... RIGHT!?
KEY `id` (`id`),
KEY `typeId` (`achievementId`),
CONSTRAINT `FK_pr_completion_statistics` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
DROP TABLE IF EXISTS `aowow_profiler_completion_spells`;
CREATE TABLE `aowow_profiler_completion_spells` (
`id` int unsigned NOT NULL,
`spellId` mediumint unsigned NOT NULL,
KEY `id` (`id`),
CONSTRAINT `FK_pr_completion_spells` FOREIGN KEY (`id`) REFERENCES `aowow_profiler_profiles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- force profiles to be updated
UPDATE `aowow_profiler_profiles` SET `lastUpdated` = 0;
DROP TABLE IF EXISTS `aowow_profiler_completion`;
SET FOREIGN_KEY_CHECKS=1;

View File

@@ -0,0 +1,3 @@
ALTER TABLE `aowow_comments`
MODIFY COLUMN `type` smallint unsigned NOT NULL DEFAULT 0 COMMENT 'Type of Page',
MODIFY COLUMN `typeId` mediumint NOT NULL DEFAULT 0 COMMENT 'ID Of Page';

View File

@@ -0,0 +1,25 @@
DROP TABLE IF EXISTS dbc_spell;
ALTER TABLE `aowow_spell`
DROP COLUMN `effect1SpellClassMaskA`,
DROP COLUMN `effect2SpellClassMaskA`,
DROP COLUMN `effect3SpellClassMaskA`,
DROP COLUMN `effect1SpellClassMaskB`,
DROP COLUMN `effect2SpellClassMaskB`,
DROP COLUMN `effect3SpellClassMaskB`,
DROP COLUMN `effect1SpellClassMaskC`,
DROP COLUMN `effect2SpellClassMaskC`,
DROP COLUMN `effect3SpellClassMaskC`;
ALTER TABLE `aowow_spell`
ADD COLUMN `effect1SpellClassMaskA` int NOT NULL AFTER `effect3PointsPerComboPoint`,
ADD COLUMN `effect1SpellClassMaskB` int NOT NULL AFTER `effect1SpellClassMaskA`,
ADD COLUMN `effect1SpellClassMaskC` int NOT NULL AFTER `effect1SpellClassMaskB`,
ADD COLUMN `effect2SpellClassMaskA` int NOT NULL AFTER `effect1SpellClassMaskC`,
ADD COLUMN `effect2SpellClassMaskB` int NOT NULL AFTER `effect2SpellClassMaskA`,
ADD COLUMN `effect2SpellClassMaskC` int NOT NULL AFTER `effect2SpellClassMaskB`,
ADD COLUMN `effect3SpellClassMaskA` int NOT NULL AFTER `effect2SpellClassMaskC`,
ADD COLUMN `effect3SpellClassMaskB` int NOT NULL AFTER `effect3SpellClassMaskA`,
ADD COLUMN `effect3SpellClassMaskC` int NOT NULL AFTER `effect3SpellClassMaskB`;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' spell');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' enchants');

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_errors`
ADD COLUMN `post` text NOT NULL AFTER `query`;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' stats');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' summonproperties');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' spawns');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' tooltips markup locales');

View File

@@ -0,0 +1,87 @@
DROP TABLE IF EXISTS `aowow_item_stats`;
CREATE TABLE `aowow_item_stats` (
`type` smallint(5) unsigned NOT NULL,
`typeId` mediumint(8) NOT NULL,
`nsockets` tinyint(3) unsigned NOT NULL DEFAULT 0,
`dps` float(8,2) NULL,
`damagetype` tinyint(4) NULL,
`dmgmin1` mediumint(5) unsigned NULL,
`dmgmax1` mediumint(5) unsigned NULL,
`speed` float(8,2) NULL,
`mledps` float(8,2) NULL,
`mledmgmin` mediumint(5) unsigned NULL,
`mledmgmax` mediumint(5) unsigned NULL,
`mlespeed` float(8,2) NULL,
`rgddps` float(8,2) NULL,
`rgddmgmin` mediumint(5) unsigned NULL,
`rgddmgmax` mediumint(5) unsigned NULL,
`rgdspeed` float(8,2) NULL,
`dmg` float(8,2) NOT NULL DEFAULT 0,
`mana` mediumint(6) NOT NULL DEFAULT 0,
`health` mediumint(6) NOT NULL DEFAULT 0,
`agi` mediumint(6) NOT NULL DEFAULT 0,
`str` mediumint(6) NOT NULL DEFAULT 0,
`int` mediumint(6) NOT NULL DEFAULT 0,
`spi` mediumint(6) NOT NULL DEFAULT 0,
`sta` mediumint(6) NOT NULL DEFAULT 0,
`energy` mediumint(6) NOT NULL DEFAULT 0,
`rage` mediumint(6) NOT NULL DEFAULT 0,
`focus` mediumint(6) NOT NULL DEFAULT 0,
`runic` mediumint(6) NOT NULL DEFAULT 0,
`defrtng` mediumint(6) NOT NULL DEFAULT 0,
`dodgertng` mediumint(6) NOT NULL DEFAULT 0,
`parryrtng` mediumint(6) NOT NULL DEFAULT 0,
`blockrtng` mediumint(6) NOT NULL DEFAULT 0,
`mlehitrtng` mediumint(6) NOT NULL DEFAULT 0,
`rgdhitrtng` mediumint(6) NOT NULL DEFAULT 0,
`splhitrtng` mediumint(6) NOT NULL DEFAULT 0,
`mlecritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`rgdcritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`splcritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`_mlehitrtng` mediumint(6) NOT NULL DEFAULT 0,
`_rgdhitrtng` mediumint(6) NOT NULL DEFAULT 0,
`_splhitrtng` mediumint(6) NOT NULL DEFAULT 0,
`_mlecritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`_rgdcritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`_splcritstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`mlehastertng` mediumint(6) NOT NULL DEFAULT 0,
`rgdhastertng` mediumint(6) NOT NULL DEFAULT 0,
`splhastertng` mediumint(6) NOT NULL DEFAULT 0,
`hitrtng` mediumint(6) NOT NULL DEFAULT 0,
`critstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`_hitrtng` mediumint(6) NOT NULL DEFAULT 0,
`_critstrkrtng` mediumint(6) NOT NULL DEFAULT 0,
`resirtng` mediumint(6) NOT NULL DEFAULT 0,
`hastertng` mediumint(6) NOT NULL DEFAULT 0,
`exprtng` mediumint(6) NOT NULL DEFAULT 0,
`atkpwr` mediumint(6) NOT NULL DEFAULT 0,
`mleatkpwr` mediumint(6) NOT NULL DEFAULT 0,
`rgdatkpwr` mediumint(6) NOT NULL DEFAULT 0,
`feratkpwr` mediumint(6) NOT NULL DEFAULT 0,
`splheal` mediumint(6) NOT NULL DEFAULT 0,
`spldmg` mediumint(6) NOT NULL DEFAULT 0,
`manargn` mediumint(6) NOT NULL DEFAULT 0,
`armorpenrtng` mediumint(6) NOT NULL DEFAULT 0,
`splpwr` mediumint(6) NOT NULL DEFAULT 0,
`healthrgn` mediumint(6) NOT NULL DEFAULT 0,
`splpen` mediumint(6) NOT NULL DEFAULT 0,
`block` mediumint(6) NOT NULL DEFAULT 0,
`mastrtng` mediumint(6) NOT NULL DEFAULT 0,
`armor` mediumint(6) NOT NULL DEFAULT 0,
`armorbonus` mediumint(6) NULL,
`firres` mediumint(6) NOT NULL DEFAULT 0,
`frores` mediumint(6) NOT NULL DEFAULT 0,
`holres` mediumint(6) NOT NULL DEFAULT 0,
`shares` mediumint(6) NOT NULL DEFAULT 0,
`natres` mediumint(6) NOT NULL DEFAULT 0,
`arcres` mediumint(6) NOT NULL DEFAULT 0,
`firsplpwr` mediumint(6) NOT NULL DEFAULT 0,
`frosplpwr` mediumint(6) NOT NULL DEFAULT 0,
`holsplpwr` mediumint(6) NOT NULL DEFAULT 0,
`shasplpwr` mediumint(6) NOT NULL DEFAULT 0,
`natsplpwr` mediumint(6) NOT NULL DEFAULT 0,
`arcsplpwr` mediumint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`type`,`typeId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' stats');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' itemset'), `build` = CONCAT(IFNULL(`build`, ''), ' itemsets');

View File

@@ -0,0 +1,2 @@
UPDATE `aowow_setup_custom_data` SET `command` = 'items' WHERE `command` = 'item';
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' items');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' quests');

View File

@@ -0,0 +1,27 @@
ALTER TABLE aowow_account_weightscales
ADD COLUMN `orderIdx` tinyint unsigned NOT NULL DEFAULT 0 COMMENT 'check how Profiler handles classes with more than 3 specs before modifying' AFTER `class`;
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 1 AND `name` = 'fury';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 1 AND `name` = 'prot';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 2 AND `name` = 'prot';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 2 AND `name` = 'retrib';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 3 AND `name` = 'marks';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 3 AND `name` = 'surv';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 4 AND `name` = 'combat';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 4 AND `name` = 'subtle';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 5 AND `name` = 'holy';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 5 AND `name` = 'shadow';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 6 AND `name` = 'frostdps';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 6 AND `name` = 'frosttank';
UPDATE aowow_account_weightscales SET `orderIdx` = 3 WHERE `userId` = 0 AND `class` = 6 AND `name` = 'unholydps';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 7 AND `name` = 'enhance';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 7 AND `name` = 'resto';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 8 AND `name` = 'fire';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 8 AND `name` = 'frost';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 9 AND `name` = 'demo';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 9 AND `name` = 'destro';
UPDATE aowow_account_weightscales SET `orderIdx` = 1 WHERE `userId` = 0 AND `class` = 11 AND `name` = 'feraldps';
UPDATE aowow_account_weightscales SET `orderIdx` = 2 WHERE `userId` = 0 AND `class` = 11 AND `name` = 'feraltank';
UPDATE aowow_account_weightscales SET `orderIdx` = 3 WHERE `userId` = 0 AND `class` = 11 AND `name` = 'resto';
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' weightpresets');

View File

@@ -0,0 +1 @@
UPDATE aowow_articles SET `article` = '[menu tab=2 path=2,8]\r\n\r\nSearch plugins make it easy to search the database right from your browser!\r\n\r\n[toc h3=false]\r\n\r\n[h2][img src=STATIC_URL/images/help/searchplugins/firefox.png border=0 margin=5 float=left]Firefox[/h2]\r\n\r\n[div float=right align=right][img border=2 src=STATIC_URL/images/help/searchplugins/os-firefox.png][/div]\r\n\r\n[script]\r\nfunction addPlugin()\r\n{\r\n if (typeof window.external.AddSearchProvider == "function")\r\n window.external.AddSearchProvider("STATIC_URL/download/searchplugins/aowow.xml");\r\n else\r\n alert("This feature is unavailable.");\r\n}\r\n[/script]\r\n[pad]\r\nEither\r\n[ul]\r\n[li]Click on the button below to install the search plugin in your browser or[/li]\r\n[li]Right-click your address bar and then clck on "Add AoWoW" or[/li]\r\n[li]Click on the [img src=STATIC_URL/images/icons/add.png border=0] on the browser search bar and then on [img src=STATIC_URL/images/icons/add.png border=0] "Add search engine"[/li]\r\n[/ul]\r\n\r\n[pad]\r\n[html]<a href="javascript:;" class="button-red" onclick="addPlugin()" style="float: left; margin-left: 0"><em><b><i>Install plugin</i></b><span>Install plugin</span></em></a>[/html]\r\n[div clear=both][/div]\r\n\r\n[h2][img src=STATIC_URL/images/help/searchplugins/edge.png border=0 float=left][img src=STATIC_URL/images/help/searchplugins/chrome.png border=0 float=left]MS Edge / Google Chrome[/h2]\r\n\r\n[div float=right align=right][img border=2 src=STATIC_URL/images/help/searchplugins/os-edge.png][/div]\r\n[pad]\r\nFor Chrome-based browsers go to settings and fill in the add search engine form as shown.\r\n[pad]\r\n[div width=500px]\r\n[pre]HOST_URL/?search=%s[img src=STATIC_URL/images/icons/pages.gif float=right][/pre]\r\n[/div]\r\n[script]\r\nsetTimeout(() => $WH.clickToCopy($WH.qs("pre > img"), "HOST_URL/?search=%s"), 100);\r\n[/script]\r\n[pad]\r\nSave your changes, and you\'ll be able to perform Aowow searches by typing "db" followed by the search terms in the address bar (e.g. db sword).\r\n[div clear=both][/div]\r\n' WHERE `url` = 'searchplugins' AND `locale` = 0;

View File

@@ -0,0 +1,14 @@
ALTER TABLE `aowow_account`
DROP INDEX `user`,
CHANGE COLUMN `user` `login` varchar(64) NOT NULL DEFAULT '' COMMENT 'only used for login',
CHANGE COLUMN `displayName` `username` varchar(64) NOT NULL COMMENT 'unique; used for for links and display',
MODIFY COLUMN `email` varchar(64) DEFAULT NULL COMMENT 'unique; can be used for login if AUTH_SELF and can be NULL if not',
MODIFY COLUMN `token` varchar(40) DEFAULT NULL COMMENT 'identification key for changes to account',
ADD COLUMN `updateValue` varchar(128) DEFAULT NULL COMMENT 'temp store for new passHash / email' AFTER `token`,
ADD CONSTRAINT `username` UNIQUE (`username`);
UPDATE `aowow_account`
SET `email` = NULL WHERE `email` = '';
ALTER TABLE `aowow_account`
ADD CONSTRAINT `email` UNIQUE (`email`);

View File

@@ -0,0 +1,17 @@
DROP TABLE IF EXISTS `aowow_account_sessions`;
CREATE TABLE `aowow_account_sessions` (
`userId` int unsigned NOT NULL,
`sessionId` varchar(190) NOT NULL COMMENT 'PHPSESSID', -- max size (for utf8mb4) to still be a key
`created` int unsigned NOT NULL,
`expires` int unsigned NOT NULL COMMENT 'timestamp or 0 (never expires)',
`touched` int unsigned NOT NULL COMMENT 'timestamp - last used',
`deviceInfo` varchar(256) NOT NULL,
`ip` varchar(45) NOT NULL COMMENT 'can change; just last used ip', -- think mobile switching between WLAN and mobile data
`status` enum('ACTIVE', 'LOGOUT', 'FORCEDLOGOUT', 'EXPIRED') NOT NULL,
UNIQUE KEY `sessionId` (`sessionId`) USING BTREE,
KEY `userId` (`userId`) USING BTREE,
CONSTRAINT `FK_acc_sessions` FOREIGN KEY (`userId`) REFERENCES `aowow_account` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=COMPACT;
ALTER TABLE `aowow_account`
DROP COLUMN `allowExpire`;

View File

@@ -0,0 +1,160 @@
ALTER TABLE `aowow_articles`
DROP COLUMN `quickInfo`;
DROP TABLE IF EXISTS `aowow_quickfacts`;
CREATE TABLE `aowow_quickfacts` (
`type` smallint unsigned NOT NULL,
`typeId` mediumint signed NOT NULL,
`orderIdx` tinyint signed NOT NULL COMMENT '<0: prepend to generic list; >0: append to generic list',
`row` varchar(200) NOT NULL COMMENT 'Markdown formated',
UNIQUE KEY `row` (`type`, `typeId`, `orderIdx`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=COMPACT;
INSERT INTO `aowow_quickfacts` VALUES
-- Dungeons
(7, 206, 1, '|L:zone:boss|[icon preset=boss][npc=23954][/icon]'),
(7, 209, 1, '|L:zone:boss|[icon preset=boss][npc=4275][/icon]'),
(7, 491, 1, '|L:zone:boss|[icon preset=boss][npc=4421][/icon]'),
(7, 717, 1, '|L:zone:boss|[icon preset=boss][npc=1716][/icon]'),
(7, 718, 1, '|L:zone:boss|[icon preset=boss][npc=5775][/icon]'),
(7, 719, 1, '|L:zone:boss|[icon preset=boss][npc=4829][/icon]'),
(7, 721, 1, '|L:zone:boss|[icon preset=boss][npc=7800][/icon]'),
(7, 722, 1, '|L:zone:boss|[icon preset=boss][npc=7358][/icon]'),
(7, 796, 1, '|L:zone:key:0|[item=7146]'),
(7, 796, 2, '|L:zone:boss|[icon preset=boss][npc=3976][/icon]'),
(7, 1176, 1, '|L:zone:boss|[icon preset=boss][npc=7267][/icon]'),
(7, 1196, 1, '|L:zone:boss|[icon preset=boss][npc=26861][/icon]'),
(7, 1337, 1, '|L:zone:boss|[icon preset=boss][npc=2748][/icon]'),
(7, 1477, 1, '|L:zone:boss|[icon preset=boss][npc=5709][/icon]'),
(7, 1581, 1, '|L:zone:boss|[icon preset=boss][npc=639][/icon]'),
(7, 1583, 1, '|L:zone:boss|[icon preset=boss][npc=10363][/icon]'),
(7, 1584, 1, '|L:zone:boss|[icon preset=boss][npc=9019][/icon]'),
(7, 2017, 1, '|L:zone:boss|[icon preset=boss][npc=10440][/icon]'),
(7, 2057, 1, '|L:zone:key:0|[item=13704]'),
(7, 2057, 2, '|L:zone:boss|[icon preset=boss][npc=1853][/icon]'),
(7, 2100, 1, '|L:zone:boss|[icon preset=boss][npc=12201][/icon]'),
(7, 2366, 1, '|L:zone:faction|[faction=989]'),
(7, 2366, 2, '|L:zone:boss|[icon preset=boss][npc=17881][/icon]'),
(7, 2367, 1, '|L:zone:faction|[faction=989]'),
(7, 2367, 2, '|L:zone:boss|[icon preset=boss][npc=18096][/icon]'),
(7, 2437, 1, '|L:zone:boss|[icon preset=boss][npc=11520][/icon]'),
(7, 3562, 1, '|L:zone:faction|[icon name=side_alliance][faction=946][/icon] / [icon name=side_horde][faction=947][/icon]'),
(7, 3562, 2, '|L:zone:boss|[icon preset=boss][npc=17536][/icon]'),
(7, 3713, 1, '|L:zone:faction|[icon name=side_alliance][faction=946][/icon] / [icon name=side_horde][faction=947][/icon]'),
(7, 3713, 2, '|L:zone:boss|[icon preset=boss][npc=17377][/icon]'),
(7, 3714, 1, '|L:zone:key:0|[item=28395]'),
(7, 3714, 2, '|L:zone:faction|[icon name=side_alliance][faction=946][/icon] / [icon name=side_horde][faction=947][/icon]'),
(7, 3714, 3, '|L:zone:boss|[icon preset=boss][npc=16808][/icon]'),
(7, 3715, 1, '|L:zone:faction|[faction=942]'),
(7, 3715, 2, '|L:zone:boss|[icon preset=boss][npc=17798][/icon]'),
(7, 3716, 1, '|L:zone:faction|[faction=942]'),
(7, 3716, 2, '|L:zone:boss|[icon preset=boss][npc=17882][/icon]'),
(7, 3717, 1, '|L:zone:faction|[faction=942]'),
(7, 3717, 2, '|L:zone:boss|[icon preset=boss][npc=17942][/icon]'),
(7, 3789, 1, '|L:zone:key:0|[item=27991]'),
(7, 3789, 2, '|L:zone:faction|[faction=1011]'),
(7, 3789, 3, '|L:zone:boss|[icon preset=boss][npc=18708][/icon]'),
(7, 3790, 1, '|L:zone:faction|[faction=1011]'),
(7, 3790, 2, '|L:zone:boss|[icon preset=boss][npc=18373][/icon]'),
(7, 3791, 1, '|L:zone:faction|[faction=1011]'),
(7, 3791, 2, '|L:zone:boss|[icon preset=boss][npc=18473][/icon]'),
(7, 3792, 1, '|L:zone:faction|[faction=933]'),
(7, 3792, 2, '|L:zone:boss|[icon preset=boss][npc=18344][/icon]'),
(7, 3847, 1, '|L:zone:faction|[faction=935]'),
(7, 3847, 2, '|L:zone:boss|[icon preset=boss][npc=17977][/icon]'),
(7, 3848, 1, '|L:zone:key:0|[item=31084]'),
(7, 3848, 2, '|L:zone:faction|[faction=935]'),
(7, 3848, 3, '|L:zone:boss|[icon preset=boss][npc=20912][/icon]'),
(7, 3849, 1, '|L:zone:faction|[faction=935]'),
(7, 3849, 2, '|L:zone:boss|[icon preset=boss][npc=19220][/icon]'),
(7, 4100, 1, '|L:zone:boss|[icon preset=boss][npc=26533][/icon]'),
(7, 4131, 1, '|L:zone:faction|[faction=1077]'),
(7, 4131, 2, '|L:zone:boss|[icon preset=boss][npc=24664][/icon]'),
(7, 4196, 1, '|L:zone:boss|[icon preset=boss][npc=26632][/icon]'),
(7, 4228, 1, '|L:zone:boss|[icon preset=boss][npc=27656][/icon]'),
(7, 4264, 1, '|L:zone:boss|[icon preset=boss][npc=27978][/icon]'),
(7, 4265, 1, '|L:zone:boss|[icon preset=boss][npc=26723][/icon]'),
(7, 4272, 1, '|L:zone:boss|[icon preset=boss][npc=28923][/icon]'),
(7, 4277, 1, '|L:zone:boss|[icon preset=boss][npc=29120][/icon]'),
(7, 4415, 1, '|L:zone:boss|[icon preset=boss][npc=31134][/icon]'),
(7, 4416, 1, '|L:zone:boss|[icon preset=boss][npc=29306][/icon]'),
(7, 4494, 1, '|L:zone:boss|[icon preset=boss][npc=29311][/icon]'),
(7, 4723, 1, '|L:zone:boss|[icon preset=boss][npc=35451][/icon]'),
(7, 4809, 1, '|L:zone:boss|[icon preset=boss][npc=36502][/icon]'),
(7, 4813, 1, '|L:zone:boss|[icon preset=boss][npc=36658][/icon]'),
(7, 4820, 1, '|L:zone:boss|[icon preset=boss][npc=36954][/icon]'),
-- Raids
(7, 1977, 1, '|L:zone:raidFaction|[faction=270]'),
(7, 1977, 2, '|L:zone:boss|[icon preset=boss][npc=14834][/icon]'),
(7, 2677, 1, '|L:zone:attunement:0|[quest=7761]'),
(7, 2677, 2, '|L:zone:boss|[icon preset=boss][npc=11583][/icon]'),
(7, 2717, 1, '|L:zone:attunement:0|[quest=7487]'),
(7, 2717, 2, '|L:zone:raidFaction|[faction=749]'),
(7, 2717, 3, '|L:zone:boss|[icon preset=boss][npc=11502][/icon]'),
(7, 3428, 1, '|L:zone:raidFaction|[faction=910]'),
(7, 3428, 2, '|L:zone:boss|[icon preset=boss][npc=15727][/icon]'),
(7, 3429, 1, '|L:zone:raidFaction|[faction=609]'),
(7, 3429, 2, '|L:zone:boss|[icon preset=boss][npc=15339][/icon]'),
(7, 3457, 1, '|L:zone:attunement:0|[quest=9837]'),
(7, 3457, 2, '|L:zone:key:0|[item=24490]'),
(7, 3457, 3, '|L:zone:raidFaction|[faction=967]'),
(7, 3457, 4, '|L:zone:boss|[icon preset=boss][npc=15690][/icon]'),
(7, 3606, 1, '|L:zone:raidFaction|[faction=990]'),
(7, 3606, 2, '|L:zone:boss|[icon preset=boss][npc=17968][/icon]'),
(7, 3607, 1, '|L:zone:boss|[icon preset=boss][npc=21212][/icon]'),
(7, 3805, 1, '|L:zone:boss|[icon preset=boss][npc=23863][/icon]'),
(7, 3836, 1, '|L:zone:boss|[icon preset=boss][npc=17257][/icon]'),
(7, 3845, 1, '|L:zone:boss|[icon preset=boss][npc=19622][/icon]'),
(7, 3923, 1, '|L:zone:boss|[icon preset=boss][npc=19044][/icon]'),
(7, 3959, 1, '|L:zone:raidFaction|[faction=1012]'),
(7, 3959, 2, '|L:zone:boss|[icon preset=boss][npc=22917][/icon]'),
(7, 4075, 1, '|L:zone:boss|[icon preset=boss][npc=25315][/icon]'),
-- Zones
(7, 1, 1, '|L:zone:city||L:main:colon|[zone=1537]'),
(7, 12, 1, '|L:zone:city||L:main:colon|[zone=1519]'),
(7, 14, 1, '|L:zone:city||L:main:colon|[zone=1637]'),
(7, 65, 1, '|L:zone:reputationHub|[faction=1091]'),
(7, 67, 1, '|L:zone:reputationHub|[faction=1119]'),
(7, 85, 1, '|L:zone:city||L:main:colon|[zone=1497]'),
(7, 139, 1, '|L:zone:reputationHub|[faction=529]'),
(7, 141, 1, '|L:zone:city||L:main:colon|[zone=1657]'),
(7, 210, 1, '|L:zone:reputationHub|[faction=1106]\n[faction=1098]'),
(7, 215, 1, '|L:zone:city||L:main:colon|[zone=1638]'),
(7, 361, 1, '|L:zone:reputationHub|[faction=576]'),
(7, 405, 1, '|L:zone:reputationHub|[faction=92]\n[faction=93]'),
(7, 440, 1, '|L:zone:reputationHub|[faction=989]'),
(7, 493, 1, '|L:game:class||L:main:colon|[class=11]'),
(7, 618, 1, '|L:zone:reputationHub|[faction=589]'),
(7, 1377, 1, '|L:zone:reputationHub|[faction=609]'),
(7, 1497, 1, '|L:zone:location|[zone=85]'),
(7, 1497, 2, '|L:zone:reputationHub|[faction=68]'),
(7, 1519, 1, '|L:zone:location|[zone=12]'),
(7, 1519, 2, '|L:zone:reputationHub|[faction=72]'),
(7, 1537, 1, '|L:zone:location|[zone=1]'),
(7, 1537, 2, '|L:zone:reputationHub|[faction=47]\n[faction=54]'),
(7, 1637, 1, '|L:zone:location|[zone=14]'),
(7, 1637, 2, '|L:zone:reputationHub|[faction=76]'),
(7, 1638, 1, '|L:zone:location|[zone=215]'),
(7, 1638, 2, '|L:zone:reputationHub|[faction=81]'),
(7, 1657, 1, '|L:zone:location|[zone=141]'),
(7, 1657, 2, '|L:zone:reputationHub|[faction=69]'),
(7, 3430, 1, '|L:zone:city||L:main:colon|[zone=3487]'),
(7, 3433, 1, '|L:zone:reputationHub|[faction=922]'),
(7, 3483, 1, '|L:zone:reputationHub|[icon name=side_alliance][faction=946][/icon]\n[icon name=side_horde][faction=947][/icon]'),
(7, 3487, 1, '|L:zone:location|[zone=3430]'),
(7, 3487, 2, '|L:zone:reputationHub|[faction=911]'),
(7, 3518, 1, '|L:zone:reputationHub|[icon name=side_alliance][faction=978][/icon]\n[icon name=side_horde][faction=941][/icon]'),
(7, 3519, 1, '|L:zone:reputationHub|[faction=1031]'),
(7, 3519, 2, '|L:zone:city||L:main:colon|[zone=3703]'),
(7, 3520, 1, '|L:zone:reputationHub|[faction=1015]'),
(7, 3521, 1, '|L:zone:reputationHub|[faction=942]\n[faction=970]'),
(7, 3522, 1, '|L:zone:reputationHub|[faction=1038]'),
(7, 3523, 1, '|L:zone:reputationHub|[faction=933]'),
(7, 3557, 1, '|L:zone:location|[zone=3524]'),
(7, 3557, 2, '|L:zone:reputationHub|[faction=930]'),
(7, 3711, 1, '|L:zone:reputationHub|[faction=1105]\n[faction=1104]'),
(7, 3703, 1, '|L:zone:location|[zone=3519]'),
(7, 3703, 2, '|L:zone:reputationHub|[faction=932]\n[faction=934]\n[faction=1011]'),
(7, 4080, 1, '|L:zone:reputationHub|[faction=1077]'),
(7, 4395, 1, '|L:zone:location|[zone=2817]'),
(7, 4395, 2, '|L:zone:reputationHub|[faction=1090]');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' source');

View File

@@ -0,0 +1,6 @@
DELETE FROM `aowow_config` WHERE `key` IN ('rep_req_ext_links', 'gtag_measurement_id');
INSERT INTO `aowow_config` (`key`, `value`, `default`, `cat`, `flags`, `comment`) VALUES
('rep_req_ext_links', 150, 150, 5, 129, 'required reputation to link to external sites'),
('gtag_measurement_id', '', NULL, 6, 136, 'Enter your Google Tag measurement ID here to track site stats');
UPDATE `aowow_config` SET `key` = 'ua_measurement_key', `comment` = '[DEPRECATED ?] Enter your Google Universal Analytics key here to track site stats' WHERE `key` = 'analytics_user';

View File

@@ -0,0 +1 @@
UPDATE `aowow_articles` SET `url` = CONCAT('help=', `url`) WHERE `url` IN ('commenting-and-you', 'item-comparison', 'modelviewer', 'profiler', 'screenshots-tips-tricks', 'stat-weighting', 'talent-calculator', 'markup-guide');

View File

@@ -0,0 +1,2 @@
UPDATE `aowow_config` SET `key` = 'rep_req_border_legendary' WHERE `key` = 'rep_req_border_lege';
UPDATE `aowow_config` SET `key` = 'rep_req_border_uncommon' WHERE `key` = 'rep_req_border_unco';

View File

@@ -0,0 +1,17 @@
ALTER TABLE `aowow_account`
CHANGE COLUMN `avatar` `wowicon` varchar(55) NOT NULL DEFAULT '' COMMENT 'iconname as avatar',
ADD COLUMN `avatar` tinyint(1) NOT NULL DEFAULT 0 COMMENT 'selected avatar mode' AFTER `userGroups`;
DROP TABLE IF EXISTS `aowow_account_avatars`;
CREATE TABLE `aowow_account_avatars` (
`id` mediumint unsigned NOT NULL,
`userId` int unsigned NOT NULL,
`name` varchar(20) NOT NULL,
`size` mediumint unsigned NOT NULL,
`when` int unsigned NOT NULL,
`current` tinyint unsigned NOT NULL DEFAULT 0,
`status` tinyint unsigned NOT NULL DEFAULT 0,
UNIQUE KEY `id` (`id`) USING BTREE,
KEY `userId` (`userId`) USING BTREE,
CONSTRAINT `FK_acc_avatars` FOREIGN KEY (`userId`) REFERENCES `aowow_account` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=COMPACT;

View File

@@ -0,0 +1,3 @@
DELETE FROM `aowow_config` WHERE `key` = 'screenshot_min_size';
INSERT INTO `aowow_config` (`key`, `value`, `default`, `cat`, `flags`, `comment`) VALUES
('screenshot_min_size', 200, 200, 1, 1153, "minimum dimensions of uploaded screenshots in px (yes, it's square, no it cant go below 200)");

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_screenshots`
MODIFY COLUMN `caption` varchar(200) DEFAULT NULL;

View File

@@ -0,0 +1,8 @@
-- `key` is too small for our new configs
ALTER TABLE `aowow_config`
MODIFY COLUMN `key` varchar(50) NOT NULL;
-- split generic upload in ss / vi
UPDATE `aowow_config` SET `key` = 'rep_reward_submit_screenshot', `comment` = 'uploaded screenshot was approved' WHERE `key` = 'rep_reward_upload';
DELETE FROM `aowow_config` WHERE `key` = 'rep_reward_suggest_video';
INSERT INTO `aowow_config` VALUES ('rep_reward_suggest_video', '10', '10', 5, 129, 'suggested video was approved');

View File

@@ -0,0 +1,8 @@
-- update video storage
ALTER TABLE `aowow_videos`
ADD COLUMN `pos` tinyint unsigned NOT NULL AFTER `videoId`,
ADD COLUMN `url` varchar(64) NOT NULL COMMENT 'preview thumb' AFTER `pos`,
ADD COLUMN `width` smallint unsigned NOT NULL AFTER `url`,
ADD COLUMN `height` smallint unsigned NOT NULL AFTER `width`,
ADD COLUMN `name` varchar(64) DEFAULT NULL AFTER `height`,
MODIFY COLUMN `caption` varchar(200) DEFAULT NULL;

View File

@@ -0,0 +1,4 @@
-- update article affected by cfg change
UPDATE `aowow_articles` SET
`article` = '[b]Reputation[/b] is a rough measurement of how much you participate in the community--it is earned by convincing your peers that you know what youre talking about. Our community puts just as much work as our developers do into making our site as awesome as it is and reputation is meant as a way for you to track just how much work you\'re putting into us.\r\n\r\nThe primary means of gaining reputation is by posting quality comments on database entries (which are then voted up by other site members) and by general contributions to the site which can include actions like data and screenshot submissions. Whenever you leave a comment on a database entry, your peers can then vote on these comments, and those votes will cause you to gain reputation. You can also earn reputation by voting on other users\' comments and by sending in reports!\r\n\r\nBy being a good-standing and contributing user you will be able to earn both reputation and achievements for many of the same actions!\r\n\r\n[h3]Reputation Gains[/h3]\r\n[div style=\"max-width:400px\"][table class=grid]\r\n[tr][td][url=?account=signup]Registering[/url] an account[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_REGISTER reputation[/td]\r\n[/tr]\r\n[tr][td]Daily visit[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_DAILYVISIT reputation[/td]\r\n[/tr]\r\n[tr][td]Posting a comment[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_COMMENT reputation[/td]\r\n[/tr]\r\n[tr][td]Your comment was voted up (each upvote)[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_UPVOTED reputation[/td]\r\n[/tr]\r\n[tr][td]Submitting a screenshot[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_SUBMIT_SCREENSHOT reputation[/td]\r\n[/tr]\r\n[tr][td]Suggesting a video[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_SUGGEST_VIDEO reputation[/td]\r\n[/tr]\r\n[tr][td]Submitting a guide (approved)[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_ARTICLE reputation[/td]\r\n[/tr]\r\n[tr][td]Filing a report (accepted)[/td]\r\n[td align=right class=no-wrap]CFG_REP_REWARD_GOOD_REPORT reputation[/td]\r\n[/tr]\r\n[/table][/div]\r\n\r\n\r\n[h3]Site Privileges[/h3]\r\nThe higher your reputation level, the more privileges you gain. Earn a high enough reputation to unlock additional rewards, in the form of new privileges around the site!\r\n[pad]\r\n[div style=\"max-width:400px\"][table class=grid]\r\n[tr][td]Post comments[/td]\r\n[td align=right class=no-wrap]CFG_REP_REQ_COMMENT reputation[/td]\r\n[/tr]\r\n[tr][td]Upvote on comments[/td]\r\n[td align=right class=no-wrap]CFG_REP_REQ_UPVOTE reputation[/td]\r\n[/tr]\r\n[tr][td]Downvote on comments[/td]\r\n[td align=right class=no-wrap]CFG_REP_REQ_DOWNVOTE reputation[/td]\r\n[/tr]\r\n[tr][td]More votes per day[/td]\r\n[td align=right class=no-wrap]CFG_REP_REQ_VOTEMORE_BASE reputation[/td]\r\n[/tr]\r\n[tr][td]Comment votes worth more[/td]\r\n[td align=right class=no-wrap]CFG_REP_REQ_SUPERVOTE reputation[/td]\r\n[/tr]\r\n[/table][/div]\r\n[pad]\r\n[url=?privileges]Check out full details on site privileges you can earn![/url]\r\n'
WHERE `url` = 'reputation' AND `locale` = 0;

View File

@@ -0,0 +1,2 @@
-- set on_set_fn check
UPDATE `aowow_config` SET `flags` = `flags` | 1024 WHERE `key` = 'cache_mode';

View File

@@ -0,0 +1,3 @@
ALTER TABLE `aowow_account`
ADD COLUMN `debug` tinyint(1) NOT NULL DEFAULT 0 COMMENT 'show ids in lists user option' AFTER `userGroups`,
MODIFY COLUMN `description` text NOT NULL DEFAULT '';

View File

@@ -0,0 +1,11 @@
ALTER TABLE `aowow_user_ratings`
DROP KEY `FK_acc_co_rate_user`,
DROP FOREIGN KEY `FK_userId`,
DROP PRIMARY KEY;
ALTER TABLE `aowow_user_ratings` MODIFY `userId` int unsigned NULL;
ALTER TABLE `aowow_user_ratings`
ADD UNIQUE KEY (`type`,`entry`,`userId`),
ADD KEY `FK_acc_co_rate_user` (`userId`),
ADD CONSTRAINT FK_userId FOREIGN KEY (`userId`) REFERENCES aowow_account(`id`) ON DELETE SET NULL ON UPDATE CASCADE;

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_account`
ADD COLUMN `renameCooldown` int unsigned NOT NULL DEFAULT 0 COMMENT 'timestamp when rename is available again' AFTER `updateValue`;

View File

@@ -0,0 +1,2 @@
DELETE FROM `aowow_config` WHERE `key` = 'acc_rename_decay';
INSERT INTO `aowow_config` VALUES ('acc_rename_decay', 30 * 24 * 60 * 60, '30 * 24 * 60 * 60', 3, 129, 'delay between username changes');

View File

@@ -0,0 +1,3 @@
DELETE FROM `aowow_config` WHERE `key` = 'acc_max_avatar_uploads';
INSERT INTO `aowow_config` (`key`, `value`, `default`, `cat`, `flags`, `comment`) VALUES
('acc_max_avatar_uploads', 10, 10, 3, 129, 'premium users may upload this many avatars');

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_account`
ADD COLUMN `avatarborder` tinyint unsigned NOT NULL DEFAULT 2 AFTER `avatar`;

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(IFNULL(`build`, ''), ' globaljs');

View File

@@ -0,0 +1,13 @@
ALTER TABLE `aowow_creature`
ADD INDEX `difficultyEntry1` (`difficultyEntry1`),
ADD INDEX `difficultyEntry2` (`difficultyEntry2`),
ADD INDEX `difficultyEntry3` (`difficultyEntry3`);
UPDATE aowow_items i, aowow_spell s SET i.class = 0, i.subClass = 6 WHERE s.Id = i.spellId1 AND s.effect1Id = 53 AND i.classBak = 12;
UPDATE aowow_items SET class = 12 WHERE classBak = 15 AND startQuest <> 0 AND name_loc0 NOT LIKE "sayge\'s fortune%";
UPDATE aowow_items SET subClass = 3 WHERE classBak = 15 AND subClassBak = 0 AND holidayId <> 0;
UPDATE aowow_items SET subClass = 11 WHERE classBak = 9 AND subClassBak = 0 AND requiredSkill = 773;
UPDATE aowow_items SET subClass = 9 WHERE classBak = 9 AND subClassBak = 0 AND requiredSkill = 356;
UPDATE aowow_items SET subClass = 12 WHERE classBak = 9 AND subClassBak = 0 AND requiredSkill = 186;
UPDATE aowow_items SET subClass = 5 WHERE classBak = 9 AND subClassBak = 0 AND requiredSkill = 185;
UPDATE aowow_items SET subClass = 6 WHERE classBak = 9 AND subClassBak = 0 AND requiredSkill = 171;

View File

@@ -0,0 +1,2 @@
UPDATE aowow_zones SET mapId = 1 WHERE id IN (14,15,16,17,141,148,215,331,332,357,361,377,400,405,406,440,457,490,493,616,618,876,1377,1637,1638,1657,1941,2159,2917,3478,3524,3525,3557);
UPDATE aowow_zones SET mapId = 1 WHERE parentArea IN (14,15,16,17,141,148,215,331,332,357,361,377,400,405,406,440,457,490,493,616,618,876,1377,1637,1638,1657,1941,2159,2917,3478,3524,3525,3557);

View File

@@ -0,0 +1,79 @@
-- ***************************
-- * change engine to InnoDB *
-- * unify userId-fields *
-- ***************************
ALTER TABLE `aowow_account`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT;
ALTER TABLE `aowow_account_banned`
ALTER `userId` DROP DEFAULT,
ALTER `staffId` DROP DEFAULT;
ALTER TABLE `aowow_account_banned`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT,
CHANGE COLUMN `userId` `userId` INT(10) UNSIGNED NOT NULL COMMENT 'affected accountId' AFTER `id`,
CHANGE COLUMN `staffId` `staffId` INT(10) UNSIGNED NOT NULL COMMENT 'executive accountId' AFTER `userId`;
ALTER TABLE `aowow_account_cookies`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT;
ALTER TABLE `aowow_account_reputation`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT;
ALTER TABLE `aowow_account_weightscales`
ALTER `account` DROP DEFAULT;
ALTER TABLE `aowow_account_weightscales`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT,
CHANGE COLUMN `account` `userId` INT(10) UNSIGNED NOT NULL AFTER `id`;
ALTER TABLE `aowow_screenshots`
ALTER `uploader` DROP DEFAULT;
ALTER TABLE `aowow_screenshots`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT,
CHANGE COLUMN `uploader` `userIdOwner` INT(10) UNSIGNED NULL AFTER `typeId`,
CHANGE COLUMN `approvedBy` `userIdApprove` INT(10) UNSIGNED NULL DEFAULT NULL AFTER `status`,
CHANGE COLUMN `deletedBy` `userIdDelete` INT(10) UNSIGNED NULL DEFAULT NULL AFTER `userIdApprove`;
ALTER TABLE `aowow_videos`
ALTER `uploader` DROP DEFAULT;
ALTER TABLE `aowow_videos`
ENGINE=InnoDB,
ROW_FORMAT=COMPACT,
CHANGE COLUMN `uploader` `userIdOwner` INT(10) UNSIGNED NULL AFTER `typeId`,
CHANGE COLUMN `approvedBy` `userIdApprove` INT(10) UNSIGNED NULL DEFAULT NULL AFTER `status`,
ADD COLUMN `userIdeDelete` INT(10) UNSIGNED NULL DEFAULT NULL AFTER `userIdApprove`;
-- **********************
-- * apply foreign keys *
-- **********************
ALTER TABLE aowow_account_cookies ADD CONSTRAINT FK_acc_cookies FOREIGN KEY (userId) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE CASCADE
;
ALTER TABLE aowow_account_banned ADD CONSTRAINT FK_acc_banned FOREIGN KEY (userId) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE CASCADE
;
ALTER TABLE aowow_account_reputation ADD CONSTRAINT FK_acc_rep FOREIGN KEY (userId) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE CASCADE
;
ALTER TABLE aowow_account_weightscales ADD CONSTRAINT FK_acc_weights FOREIGN KEY (userId) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE CASCADE
;
ALTER TABLE aowow_screenshots ADD CONSTRAINT FK_acc_ss FOREIGN KEY (userIdOwner) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE SET NULL
;
ALTER TABLE aowow_videos ADD CONSTRAINT FK_acc_vi FOREIGN KEY (userIdOwner) REFERENCES aowow_account(id)
ON UPDATE CASCADE
ON DELETE SET NULL
;

View File

@@ -0,0 +1,2 @@
INSERT IGNORE INTO aowow_config (`key`, `value`, `flags`, `comment`) VALUES
('memory_limit', '2048M', 0xC8, 'default: 2048M - parsing spell.dbc is quite intense');

View File

@@ -0,0 +1,15 @@
ALTER TABLE `aowow_config`
ADD COLUMN `cat` TINYINT(3) UNSIGNED NOT NULL DEFAULT '5' AFTER `value`;
INSERT IGNORE INTO `aowow_config` (`key`, `value`, `cat`, `flags`, `comment`) VALUES
('cache_dir', '', 1, 136, 'default: cache/template - generated pages are saved here (requires CACHE_MODE: filecache)'),
('session.gc_maxlifetime', '604800', 3, 200, 'default: 7*24*60*60 - lifetime of session data'),
('session.gc_probability', '0', 3, 200, 'default: 0 - probability to remove session data on garbage collection'),
('session_cache_dir', '', 3, 136, 'default: - php sessions are saved here. Leave empty to use php default directory.');
UPDATE `aowow_config` SET `key` = 'acc_failed_auth_block' WHERE `key` = 'failed_auth_exclusion';
UPDATE `aowow_config` SET `key` = 'acc_failed_auth_count' WHERE `key` = 'failed_auth_count';
UPDATE `aowow_config` SET `key` = 'acc_allow_register' WHERE `key` = 'allow_register';
UPDATE `aowow_config` SET `key` = 'acc_auth_mode' WHERE `key` = 'auth_mode';
UPDATE `aowow_config` SET `key` = 'acc_create_save_decay' WHERE `key` = 'account_create_save_decay';
UPDATE `aowow_config` SET `key` = 'acc_recovery_decay' WHERE `key` = 'account_recovery_decay';

View File

@@ -0,0 +1,5 @@
ALTER TABLE `aowow_currencies`
ADD COLUMN `cap` MEDIUMINT UNSIGNED NOT NULL AFTER `itemId`;
UPDATE `aowow_currencies` SET `cap` = 10000 WHERE `id` = 103;
UPDATE `aowow_currencies` SET `cap` = 75000 WHERE `id` = 104;

View File

@@ -0,0 +1 @@
INSERT IGNORE INTO `aowow_config` (`key`, `value`, `flags`, `comment`) VALUES ('default_charset', 'UTF-8', 72, 'default: UTF-8');

View File

@@ -0,0 +1,58 @@
ALTER TABLE `aowow_items`
ALTER `holidayId` DROP DEFAULT;
ALTER TABLE `aowow_items`
CHANGE COLUMN `holidayId` `eventId` SMALLINT(5) UNSIGNED NOT NULL AFTER `itemLimitCategory`;
ALTER TABLE `aowow_itemset`
ALTER `holidayId` DROP DEFAULT;
ALTER TABLE `aowow_itemset`
CHANGE COLUMN `holidayId` `eventId` SMALLINT(5) UNSIGNED NOT NULL AFTER `contentGroup`;
ALTER TABLE `aowow_quests`
ALTER `holidayId` DROP DEFAULT;
ALTER TABLE `aowow_quests`
CHANGE COLUMN `holidayId` `eventId` SMALLINT(5) UNSIGNED NOT NULL AFTER `timeLimit`;
ALTER TABLE `aowow_titles`
ALTER `holidayId` DROP DEFAULT;
ALTER TABLE `aowow_titles`
CHANGE COLUMN `holidayId` `eventId` SMALLINT(5) UNSIGNED NOT NULL AFTER `src12Ext`;
ALTER TABLE `aowow_comments`
ALTER `typeId` DROP DEFAULT;
ALTER TABLE `aowow_comments`
CHANGE COLUMN `typeId` `typeId` INT(10) NOT NULL COMMENT 'ID Of Page' AFTER `type`;
-- ---------------
-- try to reconstruct CommunityContent for TYPE_WORLDEVENT (12)
-- ---------------
UPDATE `aowow_comments` c, `aowow_events` e SET c.`typeId` = e.`id` WHERE c.`type` = 12 AND c.`typeId` > 0 AND c.`typeId` = e.`holidayId`;
UPDATE `aowow_comments` SET `typeId` = -`typeId` WHERE `type` = 12 AND `typeId` < 0;
UPDATE `aowow_screenshots` s, `aowow_events` e SET s.`typeId` = e.`id` WHERE s.`type` = 12 AND s.`typeId` > 0 AND s.`typeId` = e.`holidayId`;
UPDATE `aowow_screenshots` SET `typeId` = -`typeId` WHERE `type` = 12 AND `typeId` < 0;
UPDATE `aowow_videos` v, `aowow_events` e SET v.`typeId` = e.`id` WHERE v.`type` = 12 AND v.`typeId` > 0 AND v.`typeId` = e.`holidayId`;
UPDATE `aowow_videos` SET `typeId` = -`typeId` WHERE `type` = 12 AND `typeId` < 0;
-- ---------------
-- drop not recoverable comments
-- ---------------
DELETE FROM `aowow_account_reputation` WHERE `action` IN (3, 4, 5) AND `sourceA` IN (
SELECT x.`id` FROM (
SELECT c2.id FROM `aowow_comments` c1 JOIN `aowow_comments` c2 ON c2.`replyTo` = c1.`id` WHERE c1.`type` = 12 AND c1.`typeId` = 0 UNION
SELECT id FROM `aowow_comments` WHERE `type` = 12 AND `typeId` = 0
) AS x
)
DELETE FROM `aowow_comments_rates` WHERE `commentId` IN (
SELECT x.`id` FROM (
SELECT c2.id FROM `aowow_comments` c1 JOIN `aowow_comments` c2 ON c2.`replyTo` = c1.`id` WHERE c1.`type` = 12 AND c1.`typeId` = 0 UNION
SELECT id FROM `aowow_comments` WHERE `type` = 12 AND `typeId` = 0
) AS x
)
DELETE FROM `aowow_comments` WHERE `id` IN (
SELECT x.`id` FROM (
SELECT c2.id FROM `aowow_comments` c1 JOIN `aowow_comments` c2 ON c2.`replyTo` = c1.`id` WHERE c1.`type` = 12 AND c1.`typeId` = 0 UNION
SELECT id FROM `aowow_comments` WHERE `type` = 12 AND `typeId` = 0
) AS x
)

View File

@@ -0,0 +1,52 @@
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'sql_limit_search';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'sql_limit_default';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'sql_limit_quicksearch';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'sql_limit_none';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'ttl_rss';
UPDATE `aowow_config` SET `cat` = 1 WHERE `key` = 'cache_decay';
UPDATE `aowow_config` SET `cat` = 3 WHERE `key` = 'session_timeout_delay';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_failed_auth_block';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_failed_auth_count';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'name';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'name_short';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'board_url';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'contact_email';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'battlegroup';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_allow_register';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'debug';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'maintenance';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_auth_mode';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_upvote';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_downvote';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_comment';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_supervote';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_votemore_base';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_register';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_upvoted';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_downvoted';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_good_report';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_bad_report';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_dailyvisit';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_user_warned';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_comment';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_premium';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_upload';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_article';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_reward_user_suspended';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'user_max_votes';
UPDATE `aowow_config` SET `cat` = 4 WHERE `key` = 'rep_req_votemore_add';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'force_ssl';
UPDATE `aowow_config` SET `cat` = 1 WHERE `key` = 'cache_mode';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'locales';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_create_save_decay';
UPDATE `aowow_config` SET `cat` = 2 WHERE `key` = 'acc_recovery_decay';
UPDATE `aowow_config` SET `cat` = 5 WHERE `key` = 'serialize_precision';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'screenshot_min_size';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'site_host';
UPDATE `aowow_config` SET `cat` = 0 WHERE `key` = 'static_host';
UPDATE `aowow_config` SET `cat` = 5 WHERE `key` = 'memory_limit';
UPDATE `aowow_config` SET `cat` = 3 WHERE `key` = 'session.gc_maxlifetime';
UPDATE `aowow_config` SET `cat` = 3 WHERE `key` = 'session.gc_probability';
UPDATE `aowow_config` SET `cat` = 5 WHERE `key` = 'default_charset';
UPDATE `aowow_config` SET `cat` = 3 WHERE `key` = 'session_cache_dir';
UPDATE `aowow_config` SET `cat` = 1 WHERE `key` = 'cache_dir';

View File

@@ -0,0 +1 @@
INSERT IGNORE INTO aowow_config (`key`, `value`, `cat`, `flags`, `comment`) VALUES ('session.gc_divisor', 100, 3, 200, 'default: 100 - probability to remove session data on garbage collection');

View File

@@ -0,0 +1,4 @@
ALTER TABLE `aowow_comments`
DROP INDEX `id`,
ADD PRIMARY KEY (`id`),
ADD INDEX `type_typeId` (`type`, `typeId`);

View File

@@ -0,0 +1,15 @@
ALTER TABLE `aowow_objects`
DROP COLUMN `questItem1`,
DROP COLUMN `questItem2`,
DROP COLUMN `questItem3`,
DROP COLUMN `questItem4`,
DROP COLUMN `questItem5`,
DROP COLUMN `questItem6`;
ALTER TABLE `aowow_creature`
DROP COLUMN `questItem1`,
DROP COLUMN `questItem2`,
DROP COLUMN `questItem3`,
DROP COLUMN `questItem4`,
DROP COLUMN `questItem5`,
DROP COLUMN `questItem6`;

View File

@@ -0,0 +1,31 @@
DROP TABLE IF EXISTS `aowow_emotes`;
CREATE TABLE `aowow_emotes` (
`id` SMALLINT(5) UNSIGNED NOT NULL,
`cmd` VARCHAR(15) NOT NULL,
`isAnimated` TINYINT(1) UNSIGNED NOT NULL,
`target_loc0` VARCHAR(65) NULL DEFAULT NULL,
`target_loc2` VARCHAR(70) NULL DEFAULT NULL,
`target_loc3` VARCHAR(95) NULL DEFAULT NULL,
`target_loc6` VARCHAR(90) NULL DEFAULT NULL,
`target_loc8` VARCHAR(70) NULL DEFAULT NULL,
`noTarget_loc0` VARCHAR(65) NULL DEFAULT NULL,
`noTarget_loc2` VARCHAR(110) NULL DEFAULT NULL,
`noTarget_loc3` VARCHAR(85) NULL DEFAULT NULL,
`noTarget_loc6` VARCHAR(75) NULL DEFAULT NULL,
`noTarget_loc8` VARCHAR(60) NULL DEFAULT NULL,
`self_loc0` VARCHAR(65) NULL DEFAULT NULL,
`self_loc2` VARCHAR(115) NULL DEFAULT NULL,
`self_loc3` VARCHAR(85) NULL DEFAULT NULL,
`self_loc6` VARCHAR(75) NULL DEFAULT NULL,
`self_loc8` VARCHAR(70) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM;
DROP TABLE IF EXISTS `aowow_emotes_aliasses`;
CREATE TABLE `aowow_emotes_aliasses` (
`id` SMALLINT(6) UNSIGNED NOT NULL,
`locales` SMALLINT(6) UNSIGNED NOT NULL,
`command` VARCHAR(15) NOT NULL,
UNIQUE INDEX `id_command` (`id`, `command`),
INDEX `id` (`id`)
) ENGINE=MyISAM;

View File

@@ -0,0 +1,2 @@
ALTER TABLE `aowow_emotes`
ADD COLUMN `cuFlags` INT UNSIGNED NOT NULL AFTER `isAnimated`;

View File

@@ -0,0 +1,68 @@
-- structure changed hard
DROP TABLE IF EXISTS `dbc_spellitemenchantment`;
DROP TABLE IF EXISTS `aowow_itemenchantment`;
CREATE TABLE `aowow_itemenchantment` (
`id` smallint(5) unsigned NOT NULL,
`charges` tinyint(4) unsigned NOT NULL,
`cuFlags` int(10) unsigned NOT NULL,
`procChance` tinyint(3) unsigned NOT NULL,
`ppmRate` float NOT NULL,
`type1` tinyint(4) unsigned NOT NULL,
`type2` tinyint(4) unsigned NOT NULL,
`type3` tinyint(4) unsigned NOT NULL,
`amount1` smallint(5) NOT NULL,
`amount2` smallint(5) NOT NULL,
`amount3` smallint(5) NOT NULL,
`object1` mediumint(9) unsigned NOT NULL,
`object2` mediumint(9) unsigned NOT NULL,
`object3` smallint(5) unsigned NOT NULL,
`name_loc0` varchar(65) NOT NULL,
`name_loc2` varchar(91) NOT NULL,
`name_loc3` varchar(84) NOT NULL,
`name_loc6` varchar(89) NOT NULL,
`name_loc8` varchar(96) NOT NULL,
`conditionId` tinyint(3) unsigned NOT NULL,
`skillLine` smallint(5) unsigned NOT NULL,
`skillLevel` smallint(5) unsigned NOT NULL,
`requiredLevel` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
ALTER TABLE `aowow_item_stats`
ALTER `id` DROP DEFAULT;
ALTER TABLE `aowow_item_stats`
ADD COLUMN `type` smallint(5) unsigned NOT NULL FIRST,
CHANGE COLUMN `id` `typeId` mediumint(9) unsigned NOT NULL AFTER `type`,
DROP INDEX `item`,
DROP PRIMARY KEY,
ADD PRIMARY KEY (`typeId`, `type`);
UPDATE `aowow_item_stats` SET `type` = 3;
ALTER TABLE `aowow_articles`
ALTER `type` DROP DEFAULT,
ALTER `typeId` DROP DEFAULT;
ALTER TABLE `aowow_articles`
CHANGE COLUMN `type` `type` smallint(5) NOT NULL FIRST,
CHANGE COLUMN `typeId` `typeId` mediumint(9) NOT NULL AFTER `type`;
ALTER TABLE `aowow_comments`
ALTER `type` DROP DEFAULT,
ALTER `typeId` DROP DEFAULT;
ALTER TABLE `aowow_comments`
CHANGE COLUMN `type` `type` smallint(5) unsigned NOT NULL COMMENT 'Type of Page' AFTER `id`,
CHANGE COLUMN `typeId` `typeId` mediumint(9) NOT NULL COMMENT 'ID Of Page' AFTER `type`;
ALTER TABLE `aowow_screenshots`
ALTER `type` DROP DEFAULT;
ALTER `typeId` DROP DEFAULT;
ALTER TABLE `aowow_screenshots`
CHANGE COLUMN `type` `type` smallint(5) unsigned NOT NULL AFTER `id`,
CHANGE COLUMN `typeId` `typeId` mediumint(9) NOT NULL AFTER `type`;
ALTER TABLE `aowow_videos`
ALTER `type` DROP DEFAULT,
ALTER `typeId` DROP DEFAULT;
ALTER TABLE `aowow_videos`
CHANGE COLUMN `type` `type` smallint(5) unsigned NOT NULL AFTER `id`,
CHANGE COLUMN `typeId` `typeId` mediumint(9) NOT NULL AFTER `type`;

View File

@@ -0,0 +1,23 @@
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=341', 'event=1');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=141', 'event=2');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=376', 'event=3');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=374', 'event=4');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=375', 'event=5');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=327', 'event=7');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=423', 'event=8');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=181', 'event=9');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=201', 'event=10');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=321', 'event=11');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=324', 'event=12');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=301', 'event=15');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=283', 'event=18');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=284', 'event=19');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=285', 'event=20');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=353', 'event=21');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=372', 'event=24');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=404', 'event=26');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=398', 'event=50');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=409', 'event=51');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=400', 'event=53');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=420', 'event=54');
UPDATE `aowow_articles` SET `article`= REPLACE(`article`, 'event=424', 'event=63');

View File

@@ -0,0 +1,53 @@
SET FOREIGN_KEY_CHECKS=0;
RENAME TABLE `aowow_news` TO `aowow_home_featuredbox`;
ALTER TABLE `aowow_home_featuredbox`
ALTER `id` DROP DEFAULT,
ALTER `active` DROP DEFAULT;
ALTER TABLE `aowow_home_featuredbox`
ENGINE=InnoDB,
CHANGE COLUMN `id` `id` smallint(5) unsigned NOT NULL FIRST,
ADD COLUMN `editorId` int(10) unsigned NULL AFTER `id`,
ADD COLUMN `editDate` int(10) unsigned NOT NULL AFTER `editorId`,
CHANGE COLUMN `active` `active` tinyint(1) unsigned NOT NULL AFTER `editDate`,
ADD CONSTRAINT `FK_acc_hFBox` FOREIGN KEY (`editorId`) REFERENCES `aowow_account` (`id`) ON UPDATE CASCADE ON DELETE SET NULL;
RENAME TABLE `aowow_news_overlay` TO `aowow_home_featuredbox_overlay`;
ALTER TABLE `aowow_home_featuredbox_overlay`
ALTER `newsId` DROP DEFAULT;
ALTER TABLE `aowow_home_featuredbox_overlay`
ENGINE=InnoDB,
CHANGE COLUMN `newsId` `featureId` smallint(5) unsigned NOT NULL FIRST,
ADD CONSTRAINT `FK_home_featurebox` FOREIGN KEY (`featureId`) REFERENCES `aowow_home_featuredbox` (`id`) ON UPDATE CASCADE ON DELETE CASCADE;
CREATE TABLE `aowow_home_titles` (
`id` smallint(5) unsigned NOT NULL,
`editorId` int(10) unsigned NULL,
`editDate` int(10) unsigned NOT NULL,
`active` tinyint(1) unsigned NOT NULL,
`title_loc0` varchar(100) NOT NULL,
`title_loc2` varchar(100) NOT NULL,
`title_loc3` varchar(100) NOT NULL,
`title_loc6` varchar(100) NOT NULL,
`title_loc8` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
INDEX `FK_acc_hTitles` (`editorId`),
CONSTRAINT `FK_acc_hTitles` FOREIGN KEY (`editorId`) REFERENCES `aowow_account` (`id`) ON UPDATE CASCADE ON DELETE SET NULL
) ENGINE=InnoDB;
CREATE TABLE `aowow_home_oneliner` (
`id` smallint(5) unsigned NOT NULL,
`editorId` int(10) unsigned NULL,
`editDate` int(10) unsigned NOT NULL,
`active` tinyint(1) unsigned NOT NULL,
`text_loc0` varchar(200) NOT NULL,
`text_loc2` varchar(200) NOT NULL,
`text_loc3` varchar(200) NOT NULL,
`text_loc6` varchar(200) NOT NULL,
`text_loc8` varchar(200) NOT NULL,
PRIMARY KEY (`id`),
INDEX `FK_acc_hOneliner` (`editorId`),
CONSTRAINT `FK_acc_hOneliner` FOREIGN KEY (`editorId`) REFERENCES `aowow_account` (`id`) ON UPDATE CASCADE ON DELETE SET NULL
) ENGINE=InnoDB;
SET FOREIGN_KEY_CHECKS=1;

View File

@@ -0,0 +1,3 @@
ALTER TABLE `aowow_dbversion`
ADD COLUMN `sql` TEXT NOT NULL AFTER `part`,
ADD COLUMN `build` TEXT NOT NULL AFTER `sql`;

View File

@@ -0,0 +1,15 @@
DROP TABLE IF EXISTS `aowow_talents`;
CREATE TABLE `aowow_talents` (
`id` smallint(5) unsigned NOT NULL,
`class` tinyint(3) unsigned NOT NULL,
`tab` tinyint(3) unsigned NOT NULL,
`row` tinyint(3) unsigned NOT NULL,
`col` tinyint(3) unsigned NOT NULL,
`spell` mediumint(8) unsigned NOT NULL,
`rank` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`, `rank`),
INDEX `spell` (`spell`),
INDEX `class` (`class`)
) ENGINE=MyISAM;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(`sql`, ' talents');

View File

@@ -0,0 +1 @@
UPDATE `aowow_dbversion` SET `build` = CONCAT(`build`, ' itemScaling');

View File

@@ -0,0 +1,7 @@
ALTER TABLE `aowow_titles`
ADD COLUMN `bitIdx` tinyint(3) unsigned NOT NULL AFTER `eventId`,
ADD INDEX `bitIdx` (`bitIdx`);
DROP TABLE IF EXISTS `dbc_chartitles`;
UPDATE `aowow_dbversion` SET `sql` = CONCAT(`sql`, ' titles');

View File

@@ -0,0 +1 @@
UPDATE aowow_dbversion SET `sql` = CONCAT(`sql`, ' item_stats');

Some files were not shown because too many files have changed in this diff Show More