DB/AreaTable

From wowdev
Revision as of 15:43, 16 September 2009 by Chuanhsing (talk | contribs)
Jump to navigation Jump to search

Contains general information about the areas (different from Zones, but included) in the game.

Header Info

Records..................2283
Fields.....................36
Record Size...............144
String Block Size.......34363

Structure

Column 	Field 				Type 		 	Notes
1 	ID 				Integer 		id of record
2 	iRefID_Map 			Integer 		reference to map.dbc record.
3 	iRefID_AreaTable 		Integer 		Recursive. If this is a sub-area, it will link to its parent area.
4 	exploreFlag 			Integer 	
5 	Flags 				BitMask 		See below.
6 	iRefID_SoundPreferences		Integer 		
7 	Unknown 			Integer 		This seems to point to a SoundProviderPreferences.dbc too. But it would be duplicate and all would be UNDERWATER. oO Seems to be only read if preceeding is null.
8 	iRefID_SoundAmbience 		Integer 		ambient sound
9 	iRefID_ZoneMusic 		Integer 		ambient music	
10 	iRefID_ZoneIntroMusicTable 	Integer 		music upon entering the zone
11 	areaLevel 			Signed Integer 		level this zone is made for.
12-28 	sRefName 			String + Loc 		
29 	iRefMask_FactionGroup 		BitMask 		
30 	Unknown 			Integer 		
31 	Unknown 			Null			NULL
32 	Unknown 			Null 			NULL
33 	Unknown 			Integer 		Only value: Naxxramas with an 21.
34 	Unknown 			Float 			-5000, -500, 1000
35 	Unknown 			Float 			0 - 1; Something to do with character ambient lightning.
36 	Unknown 			Null 			NULL

-Raindog 10-Dec-2007: updated for increased number of localization fields.

enum AREATABLE_FLAGS

AREA_UNK0		= 0x2 // at some point, if this flag was not set, the parent area was used.
AREA_UNK1		= 0x8,
AREA_UNK2		= 0x10,
AREA_CITY_AREA          = 0x20,
AREA_NEUTRAL_AREA       = 0x40,
AREA_PVP_ARENA          = 0x80,
AREA_ALLOW_TRADECHAT    = 0x100,	// actually all channels with flags&0x20
AREA_CITY               = 0x200,
AREA_FLYING_PERMITTED	= 0x400,
AREA_SANCTUARY          = 0x800,
AREA_ISLAND             = 0x1000,
AREA_UNK4		= 0x2000
AREA_UNK5		= 0x4000,
AREA_PVP_OBJECTIVE_AREA = 0x8000,
AREA_combat        =0x1000000,		// this is a string thrown together with the sanctuary, contested, friendly and hostile ones.
AREA_INDOORS = 0x2000000,		// if not flagged as outdoors or indoors, they are outdoors.
AREA_OUTDOORS = 0x4000000,
AREA_WorldPVPZoneWithExit = 0x8000000 // from Lua::CanHearthAndResurrectFromArea().

from Hearthstone / Ascent source. + --schlumpf_ 06:03, 10 July 2009 (CEST)