summaryrefslogtreecommitdiff
path: root/docs/gameobject_template.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/gameobject_template.md')
-rw-r--r--docs/gameobject_template.md1066
1 files changed, 1025 insertions, 41 deletions
diff --git a/docs/gameobject_template.md b/docs/gameobject_template.md
index 61f4c80..c1b7731 100644
--- a/docs/gameobject_template.md
+++ b/docs/gameobject_template.md
@@ -1,41 +1,1025 @@
-[Database Structure](Database-Structure) > [World-Database](World-Database) > [gameobject_template](gameobject_template)
-
-Column | Type | Description
---- | --- | ---
-Entry | mediumint(8) unsigned |
-Type | tinyint(3) unsigned |
-DisplayId | mediumint(8) unsigned |
-Name | varchar(100) |
-IconName | varchar(100) |
-CastBarCaption | varchar(100) |
-Unk1 | varchar(100) |
-Faction | smallint(5) unsigned |
-Flags | int(10) unsigned |
-Size | float |
-Data0 | int(10) unsigned |
-Data1 | int(11) |
-Data2 | int(10) unsigned |
-Data3 | int(10) unsigned |
-Data4 | int(10) unsigned |
-Data5 | int(10) unsigned |
-Data6 | int(11) |
-Data7 | int(10) unsigned |
-Data8 | int(10) unsigned |
-Data9 | int(10) unsigned |
-Data10 | int(10) unsigned |
-Data11 | int(10) unsigned |
-Data12 | int(10) unsigned |
-Data13 | int(10) unsigned |
-Data14 | int(10) unsigned |
-Data15 | int(10) unsigned |
-Data16 | int(10) unsigned |
-Data17 | int(10) unsigned |
-Data18 | int(10) unsigned |
-Data19 | int(10) unsigned |
-Data20 | int(10) unsigned |
-Data21 | int(10) unsigned |
-Data22 | int(10) unsigned |
-Data23 | int(10) unsigned |
-AIName | char(64) |
-ScriptName | varchar(64) |
-VerifiedBuild | smallint(6) |
+# gameobject\_template
+
+Contains template of all gameobjects
+
+## Structure
+
+<table>
+<tbody>
+<tr class="odd">
+<td><p><strong>Field</strong></p></td>
+<td><p><strong>Type</strong></p></td>
+<td><p><strong>Attributes</strong></p></td>
+<td><p><strong>Key</strong></p></td>
+<td><p><strong>Null</strong></p></td>
+<td><p><strong>Default</strong></p></td>
+<td><p><strong>Extra</strong></p></td>
+<td><p><strong>Comment</strong></p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-entry">entry</a></p></td>
+<td><p>mediumint(8)</p></td>
+<td><p>unsigned</p></td>
+<td><p>PRI</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-type">type</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-displayId">displayId</a></p></td>
+<td><p>mediumint(8)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-name">name</a></p></td>
+<td><p>varchar(100)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-IconName">IconName</a></p></td>
+<td><p>varchar(100)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-castBarCaption">castBarCaption</a></p></td>
+<td><p>varchar(100)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-unk1">unk1</a></p></td>
+<td><p>varchar(100)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-size">size</a></p></td>
+<td><p>float</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>1</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data0</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data1</a></p></td>
+<td><p>int(11)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>-1</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data2</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data3</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data4</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data5</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data6</a></p></td>
+<td><p>int(11)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>-1</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data7</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data8</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data9</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data10</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data11</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data12</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data13</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data14</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data15</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data16</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data17</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data18</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data19</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data20</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data21</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-data0-23">data22</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-data0-23">data23</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-AIName">AIName</a></p></td>
+<td><p>char(64)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#gameobject_template-ScriptName">ScriptName</a></p></td>
+<td><p>varchar(64)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>&quot;</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#gameobject_template-WDBVerified">WDBVerified</a></p></td>
+<td><p>smallint(5)</p></td>
+<td><p>signed</p></td>
+<td><p><br />
+</p></td>
+<td><p>YES</p></td>
+<td><p>1</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+</tbody>
+</table>
+
+## Description of the fields
+
+### entry
+
+Id of the gameobject template. `WDB-fields`
+
+### type 
+
+``` cpp
+ 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
+```
+
+ WDB-fields
+
+### displayId
+
+Graphic model id sent to the client from GameObjectDisplayInfo.dbc `WDB-fields`
+
+### name
+
+Object's name. `WDB-fields`
+
+### IconName
+
+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`
+
+### castBarCaption
+
+Shows unique text in the object's casting bar when the object is used. `WDB-fields`
+
+### unk1
+
+`field-no-description|7`
+
+### size
+
+Object's size must be set because graphic models can be resample. `WDB-fields`
+
+### data0-32
+
+The content of the data fields depends on the [gameobject type](#gameobject_template-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](#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](loot_template_2130202.html#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](#gameobject_template-entry) (Spawned GO type 6))
+- data8: questID ([quest\_template.id](quest_template_2130261.html#quest_template-entry) 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
+- data24: trivialSkillHigh
+- data25: Dungeon Encounter
+- data26: spell
+- data27: GiganticAOI
+- data28: LargeAOI
+- data29: spawnVignette
+- data30: chestPersonalLoot
+- data31: turnpersonallootsecurityoff
+- data32: Chestproperties
+
+**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](quest_template_2130261.html#quest_template-entry) to work)
+- data6: conditionID1
+- data7: LargeAOI
+- data8: UseGarrisonOwnerGuildColors
+
+**GAMEOBJECT\_TYPE\_TRAP = 6**
+
+- data0: open (LockId from [Lock.dbc](https://trinitycore.atlassian.net/wiki/display/tc/Lock) )
+- data1: level (npc equivalent level for casted spell)
+- data2: diameter (so radius \* 2)
+- data3: spell (Spell Id from [Spell.dbc](https://trinitycore.atlassian.net/wiki/display/tc/Spell))
+- 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: chairorientation? (number of usable side?)
+- data2: onlyCreatorUse
+- data3: triggeredEvent
+- data4: conditionID1
+
+**GAMEOBJECT\_TYPE\_SPELL\_FOCUS = 8**
+
+- data0: spellFocusType (from SpellFocusObject.dbc; value also appears as RequiresSpellFocus in [Spell.dbc](https://trinitycore.atlassian.net/wiki/display/tc/Spell))
+- data1: diameter (so radius\*2)
+- data2: linkedTrap ([gameobject\_template.entry](#gameobject_template-entry) (Spawned GO type 6))
+- data3: serverOnly? (Always 0)
+- data4: questID (Required active [quest\_template.id](quest_template_2130261.html#quest_template-entry) to work)
+- data5: large? (Boolean flag)
+- data6: floatingTooltip (Boolean flag)
+- data7: floatOnWater
+- data8: conditionID1
+
+**GAMEOBJECT\_TYPE\_TEXT = 9**
+
+- data0: pageID ([page\_text.entry](page_text_2130246.html#page_text-entry))
+- data1: language (from  [Languages.dbc](https://trinitycore.atlassian.net/wiki/display/tc/Languages))
+- data2: pageMaterial ([PageTextMaterial.dbc](https://trinitycore.atlassian.net/wiki/display/tc/PageTextMaterial))
+- data3: allowMounted
+- data4: conditionID1
+- data5: NeverUsableWhileMounted
+
+**GAMEOBJECT\_TYPE\_GOOBER = 10**
+
+- data0: open (LockId from [Lock.dbc](https://trinitycore.atlassian.net/wiki/display/tc/Lock))
+- data1: questID (Required active [quest\_template.id](quest_template_2130261.html#quest_template-entry) 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](page_text_2130246.html#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](#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
+- data24: SpawnVignette
+- data25: startOpen
+- data26: DontPlayOpenAnim
+- data27: IgnoreBoundingBox
+- data28: NeverUsableWhileMounted
+- data29: SortFarZ
+- data30: SyncAnimationtoObjectLifetime
+- data31: NoFuzzyHit
+
+**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**
+
+- data0: actionHouseID (From AuctionHouse.dbc ?)
+
+**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**
+
+- data0: radius (distance)
+- data1: chestLoot ([gameobject\_loot\_template.entry](loot_template_2130202.html#loot_template-entry))
+- data2: minRestock
+- data3: maxRestock
+- data4: open
+
+**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
+
+- data0: [areatrigger\_teleport.id](areatrigger_teleport_2129953.html#areatrigger_teleport-id)
+
+**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
+- data24: speedWorldState2
+- data25: UncontestedTime
+- data26: FrequentHeartbeat
+
+**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
+
+### AIName
+
+This field is overridden by ScriptName field if both are set. Only 'SmartGameObjectAI' can be used.
+
+### ScriptName
+
+Name of the script this object uses if needed