docs-en:gameobject_template.md

gameobject_template

Contains template of all gameobjects

Field Type Attributes Key Null Default Extra Comment
entry MEDIUMINT UNSIGNED PRI NO 0
type TINYINT UNSIGNED NO 0
displayId MEDIUMINT UNSIGNED NO 0
name VARCHAR(100) SIGNED NO
IconName VARCHAR(100) SIGNED NO
castBarCaption VARCHAR(100) SIGNED NO
unk1 VARCHAR(100) SIGNED NO
size FLOAT SIGNED NO 1
data0 INT UNSIGNED NO 0
data1 INT UNSIGNED NO -1
data2 INT UNSIGNED NO 0
data3 INT UNSIGNED NO 0
data4 INT UNSIGNED NO 0
data5 INT UNSIGNED NO 0
data6 INT UNSIGNED NO -1
data7 INT UNSIGNED NO 0
data8 INT UNSIGNED NO 0
data9 INT UNSIGNED NO 0
data10 INT UNSIGNED NO 0
data11 INT UNSIGNED NO 0
data12 INT UNSIGNED NO 0
data13 INT UNSIGNED NO 0
data14 INT UNSIGNED NO 0
data15 INT UNSIGNED NO 0
data16 INT UNSIGNED NO 0
data17 INT UNSIGNED NO 0
data18 INT UNSIGNED NO 0
data19 INT UNSIGNED NO 0
data20 INT UNSIGNED NO 0
data21 INT UNSIGNED NO 0
data22 INT UNSIGNED NO 0
data23 INT UNSIGNED NO 0
AIName char(64) SIGNED NO
ScriptName VARCHAR(64) SIGNED NO
WDBVerified SMALLINT SIGNED YES 1

entry

Id of the gameobject template. WDB-fields

Name Value
GAMEOBJECT_TYPE_DOOR 0
GAMEOBJECT_TYPE_BUTTON 1
GAMEOBJECT_TYPE_QUESTGIVER 2
GAMEOBJECT_TYPE_CHEST 3
GAMEOBJECT_TYPE_BINDER 4
GAMEOBJECT_TYPE_GENERIC 5
GAMEOBJECT_TYPE_TRAP 6
GAMEOBJECT_TYPE_CHAIR 7
GAMEOBJECT_TYPE_SPELL_FOCUS 8
GAMEOBJECT_TYPE_TEXT 9
GAMEOBJECT_TYPE_GOOBER 10
GAMEOBJECT_TYPE_TRANSPORT 11
GAMEOBJECT_TYPE_AREADAMAGE 12
GAMEOBJECT_TYPE_CAMERA 13
GAMEOBJECT_TYPE_MAP_OBJECT 14
GAMEOBJECT_TYPE_MO_TRANSPORT 15
GAMEOBJECT_TYPE_DUEL_ARBITER 16
GAMEOBJECT_TYPE_FISHINGNODE 17
GAMEOBJECT_TYPE_RITUAL 18
GAMEOBJECT_TYPE_MAILBOX 19
GAMEOBJECT_TYPE_AUCTIONHOUSE 20
GAMEOBJECT_TYPE_GUARDPOST 21
GAMEOBJECT_TYPE_SPELLCASTER 22
GAMEOBJECT_TYPE_MEETINGSTONE 23
GAMEOBJECT_TYPE_FLAGSTAND 24
GAMEOBJECT_TYPE_FISHINGHOLE 25
GAMEOBJECT_TYPE_FLAGDROP 26
GAMEOBJECT_TYPE_MINI_GAME 27
GAMEOBJECT_TYPE_LOTTERY_KIOSK 28
GAMEOBJECT_TYPE_CAPTURE_POINT 29
GAMEOBJECT_TYPE_AURA_GENERATOR 30
GAMEOBJECT_TYPE_DUNGEON_DIFFICULTY 31
GAMEOBJECT_TYPE_BARBER_CHAIR 32
GAMEOBJECT_TYPE_DESTRUCTIBLE_BUILDING 33
GAMEOBJECT_TYPE_GUILD_BANK 34
GAMEOBJECT_TYPE_TRAPDOOR 35

Graphic model id sent to the client from GameObjectDisplayInfo.dbc WDB-fields

Object's name. WDB-fields

Works exactly like creature_template IconName.

Working iconnames

  • Taxi
  • Talk
  • Attack
  • Directions
  • Quest

You may experience minor bugs trying to get the Quest (Yellow exclamation mark) working. However; the rest of the listed icons, works.

WDB-fields

Shows unique text in the object's casting bar when the object is used. WDB-fields

field-no-description|7

Object's size must be set because graphic models can be resample. WDB-fields

The content of the data fields depends on the gameobject type

Values for these fields come from WDB and are not to be changed.

GAMEOBJECT_TYPE_DOOR = 0

  • data0: startOpen (Boolean flag)
  • data1: open (LockId from Lock.dbc)
  • data2: autoClose (Time in milliseconds)
  • data3: noDamageImmune (Boolean flag)
  • data4: openTextID (Unknown Text ID)
  • data5: closeTextID (Unknown Text ID)
  • data6: Ignored by pathfinding
  • data7: Conditionid1
  • data8: Door is opaque
  • data9: Gigantic AOI
  • data10: Infinite AOI

GAMEOBJECT_TYPE_BUTTON = 1

  • data0: startOpen (State)
  • data1: open (LockId from Lock.dbc)
  • data2: autoClose (long unknown flag)
  • data3: linkedTrap (gameobject_template.entry (Spawned GO type 6))
  • data4: noDamageImmune (Boolean flag)
  • data5: large? (Boolean flag)
  • data6: openTextID (Unknown Text ID)
  • data7: closeTextID (Unknown Text ID)
  • data8: losOK (Boolean flag)
  • data9: Conditionid1

GAMEOBJECT_TYPE_QUESTGIVER = 2

  • data0: open (LockId from Lock.dbc)
  • data1: questList (unknown ID)
  • data2: pageMaterial (PageTextMaterial.dbc)
  • data3: gossipID (gossip_menu_option.menu_id)
  • data4: customAnim (unknown value from 1 to 4)
  • data5: noDamageImmune (Boolean flag)
  • data6: openTextID (broadcast_text ID)
  • data7: losOK (Boolean flag)
  • data8: allowMounted (Boolean flag)
  • data9: large? (Boolean flag)
  • data10: Conditionid1
  • data11: Never usable while mounted

GAMEOBJECT_TYPE_CHEST = 3

  • data0: open (LockId from Lock.dbc)
  • data1: chestLoot (gameobject_loot_template.entry) WDB-fields
  • data2: chestRestockTime (time in seconds)
  • data3: consumable (State: Boolean flag)
  • data4: minRestock (Min successful loot attempts for Mining, Herbalism etc)
  • data5: maxRestock (Max successful loot attempts for Mining, Herbalism etc)
  • data6: lootedEvent (Event ID from table event_scripts)
  • data7: linkedTrap (gameobject_template.entry (Spawned GO type 6))
  • data8: questID (quest_template.id of completed quest)
  • data9: level (minimal level required to open this gameobject)
  • data10: losOK (Boolean flag)
  • data11: leaveLoot (Boolean flag)
  • data12: notInCombat (Boolean flag)
  • data13: log loot (Boolean flag)
  • data14: openTextID (Unknown ID)
  • data15: use group loot rules (Boolean flag)
  • data16: floating tooltip
  • data17: conditionid1
  • data18: xplevel
  • data19: xpDifficulty
  • data20: lootlevel
  • data21: Group Xp
  • data22: Damage Immune
  • data23: trivialSkillLow

GAMEOBJECT_TYPE_BINDER = 4

Object type not used

GAMEOBJECT_TYPE_GENERIC = 5

  • data0: floatingTooltip (Boolean flag)
  • data1: highlight (Boolean flag)
  • data2: serverOnly? (Always 0)
  • data3: large? (Boolean flag)
  • data4: floatOnWater (Boolean flag)
  • data5: questID (Required active quest_template.id to work)
  • data6: conditionID1
  • data7: LargeAOI
  • data8: UseGarrisonOwnerGuildColors

GAMEOBJECT_TYPE_TRAP = 6

  • data0: open (LockId from Lock.dbc )
  • data1: level (npc equivalent level for casted spell)
  • data2: diameter (so radius * 2)
  • data3: spell (Spell Id from Spell.dbc)
  • data4: type (0 trap with no despawn after cast. 1 trap despawns after cast. 2 bomb casts on spawn)
  • data5: cooldown (time in seconds)
  • data6:  ? (unknown flag)
  • data7: startDelay? (time in seconds)
  • data8: serverOnly? (always 0)
  • data9: stealthed (Boolean flag)
  • data10: large? (Boolean flag)
  • data11: stealthAffected (Boolean flag)
  • data12: openTextID (Unknown ID)
  • data13: closeTextID
  • data14: IgnoreTotems
  • data15: conditionID1
  • data16: playerCast
  • data17: SummonerTriggered
  • data18: requireLOS

GAMEOBJECT_TYPE_CHAIR = 7

  • data0: chairslots (number of players that can sit down on it)
  • data1: height
  • data2: onlyCreatorUse
  • data3: triggeredEvent
  • data4: conditionID1

GAMEOBJECT_TYPE_SPELL_FOCUS = 8

  • data0: spellFocusType (from SpellFocusObject.dbc; value also appears as RequiresSpellFocus in Spell.dbc)
  • data1: diameter (so radius*2)
  • data2: linkedTrap (gameobject_template.entry (Spawned GO type 6))
  • data3: serverOnly? (Always 0)
  • data4: questID (Required active quest_template.id to work)
  • data5: large? (Boolean flag)
  • data6: floatingTooltip (Boolean flag)
  • data7: floatOnWater
  • data8: conditionID1

GAMEOBJECT_TYPE_TEXT = 9

GAMEOBJECT_TYPE_GOOBER = 10

  • data0: open (LockId from Lock.dbc)
  • data1: questID (Required active quest_template.id to work)
  • data2: eventID (event_script id)
  • data3:  Time in ms before the initial state is restored
  • data4: customAnim (unknown)
  • data5: consumable (Boolean flag controling if gameobject will despawn or not)
  • data6: cooldown (time is seconds)
  • data7: pageID (page_text.entry)
  • data8: language (from Languages.dbc)
  • data9: pageMaterial (PageTextMaterial.dbc)
  • data10: spell (Spell Id from Spell.dbc)
  • data11: noDamageImmune (Boolean flag)
  • data12: linkedTrap (gameobject_template.entry (Spawned GO type 6))
  • data13: large? (Boolean flag)
  • data14: openTextID (Unknown ID)
  • data15: closeTextID (Unknown ID)
  • data16: losOK (Boolean flag) (somewhat related to battlegrounds)
  • data19: gossipID - casts the spell when used
  • data20: AllowMultiInteract
  • data21: floatOnWater
  • data22: conditionID1
  • data23: playerCast

GAMEOBJECT_TYPE_TRANSPORT = 11

  • data0: Timeto2ndfloor
  • data1: startOpen
  • data2: autoClose
  • data3: Reached1stfloor
  • data4: Reached2ndfloor
  • data5: SpawnMap
  • data6: Timeto3rdfloor
  • data7: Reached3rdfloor
  • data8: Timeto4rdfloor
  • data9: Reached4rdfloor
  • data10: Timeto5rdfloor
  • data11: Reached5rdfloor
  • data12: Timeto6rdfloor
  • data13: Reached6rdfloor
  • data14: Timeto7rdfloor
  • data15: Reached7rdfloor
  • data16: Timeto8rdfloor
  • data17: Reached8rdfloor
  • data18: Timeto9rdfloor
  • data19: Reached9rdfloor
  • data20: Timeto10rdfloor
  • data21: Reached10rdfloor
  • data22: onlychargeheightcheck
  • data23: onlychargetimecheck

GAMEOBJECT_TYPE_AREADAMAGE = 12

  • data0: open
  • data1: radius
  • data2: damageMin
  • data3: damageMax
  • data4: damageSchool
  • data5: autoClose
  • data6: openTextID
  • data7: closeTextID

GAMEOBJECT_TYPE_CAMERA = 13

  • data0: open (LockId from Lock.dbc)
  • data1: camera (Cinematic entry from CinematicCamera.dbc)
  • data2: eventID
  • data3: openTextID
  • data4: conditionID1

GAMEOBJECT_TYPE_MAPOBJECT = 14

No data used, all are always 0

GAMEOBJECT_TYPE_MOTRANSPORT = 15

  • data0: taxiPathID (Id from TaxiPath.dbc)
  • data1: moveSpeed
  • data2: accelRate
  • data3: startEventID
  • data4: stopEventID
  • data5: transportPhysics
  • data6: SpawnMap
  • data7: worldState1
  • data8: allowstopping
  • data9: InitStopped
  • data10: TrueInfiniteAOI

GAMEOBJECT_TYPE_DUELFLAG = 16

Only one Gameobject with this type (21680) and no data data

GAMEOBJECT_TYPE_FISHINGNODE = 17

Only one Gameobject with this type (35591) and no data data

GAMEOBJECT_TYPE_RITUAL = 18

  • data0: casters?
  • data1: spell (Spell Id from Spell.dbc)
  • data2: animSpell (Spell Id from Spell.dbc)
  • data3: ritualPersistent (Boolean flag)
  • data4: casterTargetSpell (Spell Id from Spell.dbc)
  • data5: casterTargetSpellTargets (Boolean flag)
  • data6: castersGrouped (Boolean flag)
  • data7: ritualNoTargetCheck
  • data8: conditionID1

GAMEOBJECT_TYPE_MAILBOX = 19

No data used, all are always 0

GAMEOBJECT_TYPE_AUCTIONHOUSE = 20

GAMEOBJECT_TYPE_GUARDPOST = 21

  • data0: CreatureID
  • data1: unk

GAMEOBJECT_TYPE_SPELLCASTER = 22

  • data0: spell (Spell Id from Spell.dbc)
  • data1: charges
  • data2: partyOnly (Boolean flag, need to be in group to use it)
  • data3: allowMounted
  • data4: GiganticAOI
  • data5: conditionID1
  • data6: playerCast
  • data7: NeverUsableWhileMounted

GAMEOBJECT_TYPE_MEETINGSTONE = 23

  • data0: minLevel
  • data1: maxLevel
  • data2: areaID (From AreaTable.dbc)

GAMEOBJECT_TYPE_FLAGSTAND = 24

  • data0: open (LockId from Lock.dbc)
  • data1: pickupSpell (Spell Id from Spell.dbc)
  • data2: radius (distance)
  • data3: returnAura (Spell Id from Spell.dbc)
  • data4: returnSpell (Spell Id from Spell.dbc)
  • data5: noDamageImmune (Boolean flag)
  • data6: openTextID
  • data7: losOK (Boolean flag)
  • data8: conditionID1
  • data9: playerCast
  • data10: GiganticAOI
  • data11: InfiniteAOI
  • data12: cooldown

GAMEOBJECT_TYPE_FISHINGHOLE = 25

GAMEOBJECT_TYPE_FLAGDROP = 26

  • data0: open (LockId from Lock.dbc)
  • data1: eventID (Unknown Event ID)
  • data2: pickupSpell (Spell Id from Spell.dbc)
  • data3: noDamageImmune (Boolean flag)
  • data4: openTextID
  • data5: playerCast
  • data6: ExpireDuration
  • data7: GiganticAOI
  • data8: InfiniteAOI
  • data9: cooldown

GAMEOBJECT_TYPE_MINIGAME = 27

Object type not used. Reused in core for CUSTOM_TELEPORT

GAMEOBJECT_TYPE_LOTTERYKIOSK = 28

Object type not used

GAMEOBJECT_TYPE_CAPTUREPOINT = 29

  • data0: radius (Distance)
  • data1: spell (Unknown ID, not a spell id in dbc file, maybe server only side spell)
  • data2: worldState1
  • data3: worldstate2
  • data4: winEventID1 (Unknown Event ID)
  • data5: winEventID2 (Unknown Event ID)
  • data6: contestedEventID1 (Unknown Event ID)
  • data7: contestedEventID2 (Unknown Event ID)
  • data8: progressEventID1 (Unknown Event ID)
  • data9: progressEventID2 (Unknown Event ID)
  • data10: neutralEventID1 (Unknown Event ID)
  • data11: neutralEventID2 (Unknown Event ID)
  • data12: neutralPercent
  • data13: worldstate3
  • data14: minSuperiority
  • data15: maxSuperiority
  • data16: minTime (in seconds)
  • data17: maxTime (in seconds)
  • data18: large? (Boolean flag)
  • data19: highlight
  • data20: startingValue
  • data21: unidirectional
  • data22: killbonustime
  • data23: speedWorldState1

GAMEOBJECT_TYPE_AURAGENERATOR = 30

  • data0: startOpen (Boolean flag)
  • data1: radius (Distance)
  • data2: auraID1 (Spell Id from Spell.dbc)
  • data3: conditionID1 (Unknown ID)
  • data4: auraID2
  • data5: conditionID2
  • data6: serverOnly

GAMEOBJECT_TYPE_DUNGEONDIFFICULTY = 31

  • data0: mapID (From Map.dbc)
  • data1: difficulty
  • data2: DifficultyHeroic
  • data3: DifficultyEpic
  • data4: DifficultyLegendary
  • data5: HeroicAttachment
  • data6: ChallengeAttachment
  • data7: DifficultyAnimations
  • data8: LargeAOI
  • data9: GiganticAOI
  • data10: Legacy

 

^ Value ^ Comment |
| 0 | 5 man normal, 10 man normal |
| 1 | 5 man heroic, 25 normal |
| 2 | 10 man heroic |
| 3 | 25 man heroic |
 

GAMEOBJECT_TYPE_BARBER_CHAIR = 32

  • data0: chairheight
  • data1: HeightOffset
  • data2: SitAnimKit

GAMEOBJECT_TYPE_DESTRUCTIBLE_BUILDING = 33

  • data0: intactNumHits
  • data1: creditProxyCreature
  • data2: state1Name
  • data3: intactEvent
  • data4: damagedDisplayId
  • data5: damagedNumHits
  • data6: empty3
  • data7: empty4
  • data8: empty5
  • data9: damagedEvent
  • data10: destroyedDisplayId
  • data11: empty7
  • data12: empty8
  • data13: empty9
  • data14: destroyedEvent
  • data15: empty10
  • data16: debuildingTimeSecs
  • data17: empty11
  • data18: destructibleData
  • data19: rebuildingEvent
  • data20: empty12
  • data21: empty13
  • data22: damageEvent
  • data23: empty14

GAMEOBJECT_TYPE_GUILD_BANK = 34

No data data used, all are always 0

GAMEOBJECT_TYPE_TRAPDOOR = 35

  • data0: whenToPause
  • data1: startOpen
  • data2: autoClose
  • data3: BlocksPathsDown
  • data4: PathBlockerBump

This field is overridden by ScriptName field if both are set. Note: Only SmartGameObjectAI can be used in this field, do not use SmartAI

Name of the script this object uses if needed

WDBVerified

  • docs-en/gameobject_template.md.txt
  • 最后更改: 2024/03/15 19:08
  • 127.0.0.1