Core/Quests: Updated Quest System to new Format

All quest requirements are now in quest_objectives table
quest_template table contains _ONLY_ WDB data and must not be modified
Currently supported objectives are MONSTER, GAMEOBJECT, ITEM, TALKTO, CURRENCY, REPUTATION, MONEY, PLAYERKILLS, AREATRIGGER
This commit is contained in:
Intel
2014-12-28 22:55:53 +02:00
parent 0dec23b43a
commit a782515246
27 changed files with 2252 additions and 1343 deletions

View File

@@ -941,21 +941,11 @@ DROP TABLE IF EXISTS `character_queststatus`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `character_queststatus` (
`guid` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT 'Global Unique Identifier',
`quest` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Quest Identifier',
`status` tinyint(3) unsigned NOT NULL DEFAULT '0',
`explored` tinyint(3) unsigned NOT NULL DEFAULT '0',
`timer` int(10) unsigned NOT NULL DEFAULT '0',
`mobcount1` smallint(5) unsigned NOT NULL DEFAULT '0',
`mobcount2` smallint(5) unsigned NOT NULL DEFAULT '0',
`mobcount3` smallint(5) unsigned NOT NULL DEFAULT '0',
`mobcount4` smallint(5) unsigned NOT NULL DEFAULT '0',
`itemcount1` smallint(5) unsigned NOT NULL DEFAULT '0',
`itemcount2` smallint(5) unsigned NOT NULL DEFAULT '0',
`itemcount3` smallint(5) unsigned NOT NULL DEFAULT '0',
`itemcount4` smallint(5) unsigned NOT NULL DEFAULT '0',
`playercount` smallint(5) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`guid`,`quest`)
`guid` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
`quest` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`status` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
`timer` INT(10) UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`guid`, `quest`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Player System';
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -968,6 +958,31 @@ LOCK TABLES `character_queststatus` WRITE;
/*!40000 ALTER TABLE `character_queststatus` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `character_queststatus_objectives`
--
DROP TABLE IF EXISTS `character_queststatus_objectives`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `character_queststatus_objectives` (
`guid` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
`quest` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`objective` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
`data` INT(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`guid`, `quest`, `objective`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Player System';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `character_queststatus_objectives`
--
LOCK TABLES `character_queststatus_objectives` WRITE;
/*!40000 ALTER TABLE `character_queststatus_objectives` DISABLE KEYS */;
/*!40000 ALTER TABLE `character_queststatus_objectives` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `character_queststatus_daily`
--