提示:表格向左滑动,可以看到更多内容。或横屏观看可能效果更佳(在浏览器打开,设置手机屏幕自动旋转)

显示提示 隐藏提示

Overview

This file controls the functionalities of all objects found in area levels

The order of each object defined in this file will convey what ID value it has, and thus should not be changed

This file uses the following files: ObjMode.txt, objpreset, ObjType.txt, shrines.txt

Any column field name starting with “*” is considered a comment field and is not used by the game

Objects are always set to be using a specific mode, which controls which fields to use for functionalities. There are 8 possible Object modes, each tied to an ID number. Specific fields are numbered to match each of these modes, meaning that the object will use that specific field number when in a certain mode (See ObjMode.txt)

NumberObject ModeToken
0NeutralNU
1OperatingOP
2OpenedON
3Special 1S1
4Special 2S2
5Special 3S3
6Special 4S4
7Special 5S5

Data Fields

Class – Defines the unique type class of the object which is used to reference this object. These are also defined in the objpreset.txt file.

Name – String key. Used as the display name of the object when being highlighted by the player.

Token – Determines what files to use to display the graphics of the object. These are defined by the ObjType.txt file.

Selectable0 (to Selectable7) – Boolean Field. If equals 1, then the object can be selected by the player and highlighted when hovered on by the mouse cursor. If equals 0, then the object cannot be selected and will not highlight when the player hovers the mouse over it. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

SizeX & SizeY – Controls the amount of sub tiles that the object occupies using X and Y coordinates. This is generally used for measuring the object’s size when trying to spawn objects in rooms and controlling their distances apart.

FrameCnt0 (To FrameCnt7) – Controls the frame length of the object’s mode. If this equals 0, then that mode will be skipped. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

FrameDelta0 (to FrameDelta7) – Controls the animation frame rate of how many frames to update per delta (Measured in 256ths). Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

CycleAnim0 (to CycleAnim7) – Boolean Field. If equals 1, then the object’s current animation will loop back to play again when it finishes. If equals 0, then the object will generally play the Opened mode after playing the Operating mode. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

Lit0 (to Lit7) – Controls the Light Radius distance value for the object. If this value equals 0, then the object will not emit a Light Radius. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

BlocksLight0 (to BlocksLight7) – Boolean Field. If equals 1, then the object will draw a shadow. If equals 0, then the object will not draw a shadow. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

HasCollision0 (to HasCollision7) – Boolean Field. If equals 1, then the object will have collision. If equals 0, then the object will not have collision, and units can walk through it. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

IsAttackable0 – Boolean Field. If equals 1, then the player can target this object to be attacked, and the player will use the Kick skill when operating the object. If the object has the Class equal to “CompellingOrb” or “SoulStoneForge”, then instead of using the Kick skill, players will use the Attack skill when operating the object. If equals 0, then ignore this, and the player will not use a skill or animation when operating the object.

Start0 (to Start7) – Controls the frame for where the object will start playing the next animation. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

EnvEffect – Boolean Field. If equals 1, then enable the object to update its mode based on the game’s time of day. This can mean that when the object is spawned, and it is current day time and the object is in Opened or Operating mode, then it will reset back to Neutral mode. Also, if the current time is dusk, night, or dawn and the object is in Neutral mode, then it will change to Operating mode. If equals 0, then the object will not update its mode based on the time of day.

IsDoor – Boolean Field. If equals 1, then the object will be treated as a door when the game handles its collision, animation properties, tooltips, and commands. If equals 0, then ignore this.

BlocksVis – Boolean Field. If equals 1, then the object will block the player’s line of sight to see anything beyond the object. If equals 0, then ignore this. This field relies on the “IsDoor” field being enabled.

Orientation – Determines the object’s orientation type, which can affect mouse selection priority of the object when a unit is being rendered in front of or behind the object (such as a door object covering a unit and how the mouse selection should handle that). This also affects the randomization of the coordinates when spawning the object near the edge of a room.

CodeDescription
0(or other #)Center
1Right
2Left

OrderFlag0 (to OrderFlag7) – Controls how the object’s sprite is drawn, which can affect how it is displayed in Perspective game camera mode. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

CodeDescription
0Do nothing
1Flat floor
2Wall

PreOperate – Boolean Field. If equals 1, then enable a random chance that the object will spawn in already in Opened mode. The game will choose a 1/14 chance that this can happen when the object is spawned. If equals 0, then ignore this.

Mode0 (to Mode7) – Boolean Field. If equals 1, then confirm that this object has the correlating mode. If equals 0, then this object will not have the correlating mode. This flag can affect how the object functions work. Each field is numbered, correlating to 1 of 8 Object Modes that the object uses (See Overview section, or ObjMode.txt).

Xoffset & Yoffset – Controls the offset values in the X and Y directions for the object’s visual graphics. This is measured in game pixels.

Draw – Boolean Field. If equals 1, then draw the object’s shadows. If equal’s 0, then do not draw the object’s shadows.

Red – Controls the Red color gradient of the object’s Light Radius. This field depends on the “Lit#” field having a value greater than 0.

Green – Controls the Green color gradient of the object’s Light Radius. This field depends on the “Lit#” field having a value greater than 0.

Blue – Controls the Blue color gradient of the object’s Light Radius. This field depends on the “Lit#” field having a value greater than 0.

HD – Boolean Field. If equals 1, then the object will be flagged to have a Head composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

TR – Boolean Field. If equals 1, then the object will be flagged to have a Torso composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

LG – Boolean Field. If equals 1, then the object will be flagged to have a Legs composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

RA – Boolean Field. If equals 1, then the object will be flagged to have a Right Arm composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

LA – Boolean Field. If equals 1, then the object will be flagged to have a Left Arm composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

RH – Boolean Field. If equals 1, then the object will be flagged to have a Right Hand composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

LH – Boolean Field. If equals 1, then the object will be flagged to have a Left Hand composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

SH – Boolean Field. If equals 1, then the object will be flagged to have a Shield composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

S1 (to S8) – Boolean Field. If equals 1, then the object will be flagged to have a Special # composite piece, and the game will use the component system to handle the object’s mouse selection collision box. If equals 0, then ignore this.

TotalPieces – Defines the total amount of composite pieces. If this value is greater than 1, then the game will treat the object with the multiple composite piece system, and the player can hover the mouse over and select the object’s different components.

SubClass – Determines the object’s class type by declaring a specific value. This is used by the various functions (“InitFn”, “OperateFn”, “PopulateFn”) for knowing how to handle specific types of objects.

CodeDescription
0None
1Shrine
2Obelisk
4Portal (With a source & destination)
8Trappable
16Fixed Portal
32Well
64Waypoint
128Hidden

Xspace & Yspace – Controls the X and Y distance delta values between adjacent objects when they are being populated together. This field is only used by the Populate Function (“PopulateFn”) values 3 and 4, for the Add Barrels and Add Crates functions.

NameOffset – Controls the vertical offset of the name tooltip’s position above the object when the object is being selected. This is measured in pixels.

MonsterOK – Boolean Field. If equals 1, then if a monster operates the object, then the object will run its operate function. If equals 0, then then if a monster operates the object, then the object will not run its operate function.

ShrineFunction – Controls what shrine function to use (See “Code” field in shrines.txt) when the object is told to do its Skill command.

Restore – Boolean Field. If equals 1, the game will restore the object in an inactive state when the area level repopulates after a player loads back into it. If equals 0, then the game will not restore the object.

Parm0 (to Parm4) – Used as possible parameters for various functions for the object

Lockable – Boolean Field. If equals 1, then the object will have a random chance to spawn with the locked attribute and have a display tooltip name with the “lockedchest” string key. This only works when the object has the Init Function (“InitFn”) value equal to 3. If equals 0, then ignore this.

Gore – Controls if an object should call its Populate function (“PopulateFn”) when it is chosen as an object that can spawn in a room. Objects with a gore value greater than 2 will not be populated in rooms.

Sync – Boolean Field. If equals 1, then the object’s animation rate will always match the “FrameDelta#” field (depending on the object’s mode) which means the client and server will have synced animations. If equals 0, then the animation rate will have random visual variation.

Damage – Controls the amount of damage dealt by the object when it performs an Operate Function (“OperateFn”) that deals damage such as triggering a pulse trap or an explosion.

Overlay – Boolean Field. If equals 1, then add and remove an overlay on the object based on its current mode. If equals 0, then ignore this. This field will only work with specific object Classes and will use specific Overlays for those objects.

Object ClassOverlay
SpecialChest100
KhalimHeartChest
KhalimEyeChest
KhalimBrainChest
HoradricCubeChest
HoradricScrollChest
StaffOfKingsChest
ConsolationChest
multigleam
SevenTombsReceptaclehoradric_light
TaintedSunShrinehoradric_light

CollisionSubst – Boolean Field. If equals 1, then the game will handle the bounding box around the object for mouse selection. The game will use the object’s pixel size and “Left”, “Top”, “Width”, “Height” field values to determine the collision size. If equals 0, then ignore this.

Left – Controls the starting X position offset value for drawing the bounding collision box around the object for mouse selection. This field depends on the “CollisionSubst” field being enabled.

Top – Controls the starting Y position offset value for drawing the bounding collision box around the object for mouse selection. This field depends on the “CollisionSubst” field being enabled.

Width – Controls the ending X position offset value for drawing the bounding collision box around the object for mouse selection. This field depends on the “CollisionSubst” field being enabled.

Height – Controls the ending Y position offset value for drawing the bounding collision box around the object for mouse selection. This field depends on the “CollisionSubst” field being enabled.

OperateFn – Defines a function that the game will use when the player clicks on the object

CodeDescription
0Do nothing
1Spawn Item And Maybe Monster – General function to operate an object, spawn items. Also can randomly spawn a monster and/or trigger a trap.
2Shrine – General function for Shrine objects. Uses fields from the shrines.txt file for determining specific Shrine functions.
3Spawn Item Sometimes – General function to operate the object and spawn random items. Has a 20% chance to spawn a random item. Can also randomly trigger a trap.
4Chest Operate – General function for opening chest objects and spawning random items. Handles key interaction functionality if the chest object is locked
5Barrel Operate – General function for breaking barrel objects and randomly spawning items or possibly a monster
6Quest Tome Operate – Handles updating The Forgotten Tower quest progress
7Barrel Exploding Operate – Explode the object and also explode adjacent Exploding Barrel object Classes
8Door Operate – General function for opening and closing door objects
9Quest Cairn Stone Operate – Handle operating the 5 Cairn Stone objects based on the player’s progress for the Search for Cain quest and if the player has the deciphered Scroll of Inifuss item. Also removes the Scroll of Inifuss item once successfully operated.
10Quest Gibbet Operate – Handle operating the object and updating the player’s progress for the Search for Cain quest. This is used for the cage object that Deckard Cain is trapped in.
11Brazier Operate – Switch the object from Neutral mode to Operating/Opened mode, or vice versa
12Quest Inifuss Operate – Handle dropping the Bark Scroll item, based on the player’s progress for the Search for Cain quest
13Tiki Operate – Switch the object from Neutral mode to Operating mode, or vice versa
14Spawn Item – General function to operate an object and have it spawn random items. Can also remove the object’s collision and randomly trigger a trap.
15Town Portal Operate – Controls the Town Portal functionalities, including how to teleport players back to town or to the current level, and handling how players interact with other player Town Portals
16Trap Door Operate – Open a door type object and then control its level warp capabilities
17Obelisk 1 – Use the transaction UI if the player has a gem in their inventory, and operate the object
18Secret Door Operate – Handle operating an object and removing its collision
19Armor Rack Operate – Activate the object to spawn a random armor item
20Weapon Rack Operate – Activate the object to spawn a random weapon item
21Quest Malus Operate – Handle dropping the Horadric Malus item, based on the player’s progress for the Tools of the Trade quest
22Well Operate – Handle healing the player and keeping track of the charges and regeneration of charges for the well object
23Waypoint Operate – Handle activating a waypoint object and using the Waypoint UI when clicking on an activated waypoint object
24Quest Tainted Sun Altar Operate – Create the Amulet of the Viper item and other treasure items based on The Horadric Staff quest progress and the number of players in the game. Also update the progress for the Tainted Sun quest.
25Quest Seven Tombs Receptacle Operate – Handle using the Horadric Staff item with the transaction UI to operate the object
26Bookshelf Operate – Randomly create either tomes or scrolls of Identify or Town Portal
27Teleport Pad Operate – Teleport the player to another part of the room
28Quest Lam Esens Tome Operate – Handle dropping the Lam Esen’s Tome item, based on the player’s progress for the Lam Esen’s Tome quest
29Breakable Operate – Animate the object and remove its collision
30Exploding – Create an explosion around the object
31Quest Gidbinn Operate – Handle dropping the Decoy Gidbinn item, based on the player’s progress for the Blade of the Old Religion quest
32Player Bank Operate – Control accessing the Stash UI while in town for the Bank object Class
33Wirt Spurt – Create the Wirt’s leg item and animate the object
34Arcane Portal – Control how the warp object transitions the player from the Palace Cellar Level 3 to the Arcane Sanctuary
35Return null
36Return null
37Return null
38Return null
39Quest Horadric Cube Chest Operate – Create the Horadric Cube item and other treasure items based on The Horadric Staff quest progress and the number of players in the game
40Quest Horadric Scroll Chest Operate – Create the Horadric Scroll item and other treasure items based on The Horadric Staff quest progress and the number of players in the game
41Quest Staff of Kings Chest Operate – Create the Staff of Kings item and other treasure items based on The Horadric Staff quest progress and the number of players in the game
42Quest Arcane Tome Operate – Handles updating The Arcane Sanctuary quest progress
43One Way Portal Operate – Controls the functionalities of the “DurielPortal” one way warp object
44Quest Beneath The City Stairs Operate – Handles warp object operates based on the Khalim’s Flail quest progress
45Quest Beneath The City Lever Operate – Handles operating an object based on the Khalim’s Flail quest progress
46Hell Gate Operate – Handles how to transition the player to Act 4 based on The Guardian quest progress
47Stairs Operate – Handles how the stairs object opens or warp the player to another level
48Jack In The Box Operate – Handles the operating the object and having it spawn items and set its mode to Special 2.
49Quest Soulstone Forge Operate – Handle operating the object based on The Hellforge quest progress and how it spawns items. Also remove the Hellforge Hammer weapon from the player.
50Quest Mephisto Door Operate – Handles how the stairs object opens or warp the player to another level
51Delay Spawn Operate – Waits until the object is done operating before updating events
52Quest Diablo Seal Operate – Handle operating a Diablo Seal object while also tracking the progress on the other related Diablo Seal objects (5 in total).
53Quest Compelling Orb Operate – Handle operating the object based on the Khalim’s Flail quest progress and The Blackened Temple progress. Also remove the Khalim’s Flail weapon from the player.
54Quest Diablo Seal 1 Operate – Handle operating a Diablo Seal object Class and getting a spawn point for monsters. Also calls function 52.
55Quest Diablo Seal 3 Operate – Handle operating a Diablo Seal object Class and getting a spawn point for monsters. Also calls function 52.
56Quest Diablo Seal 5 Operate – Handle operating a Diablo Seal object Class and getting a spawn point for monsters. Also calls function 52.
57Quest Khalim Heart Chest Operate – Create the Khalim’s Heart item and other treasure items based on the Khalim’s Flail quest progress and the number of players in the game
58Quest Khalim Eye Chest Operate – Create the Khalim’s Eye item and other treasure items based on the Khalim’s Flail quest progress and the number of players in the game
59Quest Khalim Brain Chest Operate – Create the Khalim’s Brain item and other treasure items based on the Khalim’s Flail quest progress and the number of players in the game
60Return null
61Town Gate – Handles how the gate object opens and closes
62Handles the modes of one of the Ancient’s statues based on the player’s progress of the Rite of Passage quest
63Same as function 62
64Same as function 62
65Quest Ancient Altar Operate – Handle displaying quest text and disabling the player’s town portals, based on the player’s progress of the Rite of Passage quest.
66Quest Ancient Gateway Operate – Handle opening the door object based on the player’s progress of the Rite of Passage quest.
67Quest Frozen Anya Operate – Handles the object displaying quest text or validating that the player has the Malah’s Potion item and updating the Prison of Ice quest
68Evil Urn – Handle triggering a trap from the object
69Quest Ancient Invisible Operate – Handle displaying the A5Q6InitAncients string conversation text based on the player’s progress of the Rite of Passage quest.
70Quest Last Exit Operate – Handle transitioning the player to the from the Throne of Destruction level to the Worldstone Chamber level
71Quest Summit Door Operate – Handle opening the door object based on the player’s progress of the Rite of Passage quest.
72Quest Player Last Portal Operate – Handle transitioning the player to completing the game after completing the Destruction’s End quest
73Quest Tyrael Portal To Expansion Operate – Handle transitioning the player to Act 5 after completing the Act 4 Terror’s End quest

PopulateFn – Defines a function that the game will use to spawn this object

CodeDescription
0Do not spawn the object    
1Add Clumped Group – Handles creating multiple of these objects randomly in a room, based on the object’s size and Class. This function only handles specific object classes such as caskets, urns, and baskets.
2Add Single Shrine – Handles the creation of a shrine object
3Add Simple Objects – Handles randomly spawning the object in a room, based on the object’s size.
4Add Barrels – Handle creating multiple barrel or exploding barrel Class objects in a room.
5Add Crates – Handle creating multiple crate or urn Class objects in a room.
6Add Corpse – Use function 3 to handle spawning the object. Also call a random chance to spawn the “Flies” object class on top of the objects that spawn.
7Add Staked Corpses – Handles how to specifically spawn the “RogueCorpse1” and “RogueCorpse2” objects, based on their sizes and the locations in the room. Also call a random chance to spawn the “Flies” object class on top of the objects that spawn.
8Add Well – Handles the creation of one of these objects randomly in a room based on the object’s size. A level can have a maximum of 4 these objects that spawn.
9Add One – Handles the creation of one of these objects randomly in a room based on the object’s size.

InitFn – Defines a function to control how the object works while active and when initially activated by a player

CodeDescription
0Do nothing
1ObjectInitShrine – General function for determining which type of Shrine function to pick for the Shrine object. (See shrines.txt file for a list of shrine types) 
This also uses the “Parm0” field to define the Shrine Type·         
If equals 0, default to health shrine·         
If equals 1, then use Health Shrine·         
If equals 2, then use Mana Shrine·         
If equals 3, then pick a random stats shrine with a 10% chance to spawn a surprise shrine
2ObjectInitTrappable – Handle a random chance to give the object 1 of the 9 random traps. This random chance depends on the area level’s monster level.
3ObjectInitChest – Run function 1, and also determine if the object should be Locked or not. The random chance to make the object Locked depends on the area level’s monster level.
4QuestObjectTowerTomeInit – If The Forgotten Tower quest is active, then set the object to run in Special 0 Mode.
5Do nothing
6QuestObjectStoneInit – Sets the object’s mode to be Opened or Neutral, depending on the progress with the Portal to Tristram for the Search for Cain quest.
7QuestObjectGibbetInit – Sets the object’s mode, depending on the progress with Cain’s Cage for the Search for Cain quest.
8ObjectInitDungeonTorch – Sets the object’s mode to Opened
9Quest Object Inifuss Init – Sets the object’s mode, depending on the progress with the Tree for the Search for Cain quest.
10ObjectInitBonfire – If the current level is Act 1 Rogue Encampment, then tell the object to do a periodic skill, otherwise set the object mode to Opened.
11ObjectInitTownPortal – Initializes the object’s mode and adds the level ID as an attribute to keep track of.
12ObjectInitPermanentPortal – Handles specific level transitions for permanent portals found throughout the game
13QuestObjectStoneSoundInit – Attaches the object to the Search for Cain quest functions
14ObjectInitDungeonTorch2 – Sets the object’s mode to Operating
15QuestObjectMalusInit – Attaches the object to the Tools of the Trade quest functions
16ObjectInitWell – Sets the object’s attributes for a well including amount of chargesThis also uses the “Parm2” field to define the amount of Life healed
17ObjectInitWaypoint – Handles setting up the waypoint mechanic to the object for the current area level
18QuestObjectJerhyn1Init – Handle where to place Jerhyn (near the palace entrance) based on Arcane Sanctuary quest progress
19QuestObjectJerhyn2Init – Handle where to place Jerhyn (inside the palace) based on The Seven Tombs quest progress
20QuestObjectTaintedSunAltarInit – Attaches the object to the Tainted Sun quest functions
21QuestObjectSevenTombsReceptacleInit – Setup the object to be a receptacle for the Horadric Staff, based on The Seven Tombs quest progress
22ObjectInitFire – Setup the object to act as fire
23QuestObjectLamEsensTomeInit – Attaches the object to the Lam Esen’s Tome quest functions
24ObjectInitTrap1 – Handle setting up the object frame count and making sure it has full stats
25QuestObjectGidbinnInit – Attaches the object to the Blade of the Old Religion quest functions
26TestObjectInit – Sets the object’s mode to Operating
27ObjectInitTrappablePoison – Sets up the random chance of 333/1000 for the object to have a trap that creates a poison nova
28ObjectInitGold – Create a random amount of gold piles (between 1 to 10) in random locations around the object
29QuestObjectInitArcanePortal – Setup the object to link area levels between the Palace Cellar Level 3 and the Arcane Sanctuary
30QuestObjectHaremBlockerInit – Setup the object’s collision based on the Arcane Sanctuary quest progress
31QuestObjectHoradricCubeChestInit – Sets up information about the object
32QuestObjectHoradricScrollChestInit – Sets up information about the object
33QuestObjectStaffOfKingsChestInit – Sets up information about the object
34ObjectInitHellTorch – Randomly set the object’s mode to Operating
35Return null
36Return null
37QuestObjectDurielPassagewayInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the The Seven Tombs quest
38QuestObjectTyraelDoorInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the The Seven Tombs quest
39QuestObjectGidbinnTownAltarInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the The Blade of the Old Religion quest
40Return null
41QuestObjectBeneathTheCityStairsInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the Khalim’s Flail quest
42QuestObjectBeneathTheCityLeverInit – If the Khalim’s Flail quest is complete, then set the object’s mode to Opened
43QuestObjectDarkWandererInit – Create the “darkwanderer” monster and order to walk to the object’s location. This depends on the players character save from having witnessed this event before.
44QuestObjectInitHellGate – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the The Guardian quest
45QuestObjectMephistoBridgeInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the The Guardian quest. If the object is not Opened, then also tell it to do its unique event.
46ObjectTrappedSoulInit – Determine where to spawn the “trappedsoul1” and “trappedsoul2” monster classes in the area level.
47QuestObjectForgottenTowerChestInit – Decide between setting up the chest object, relying on the Forgotten Tower quest being in progress
48QuestObjectSoulstoneForgeInit – Decide between setting the object’s mode to Opened or Neutral, based on the progress of the Hell’s Forge quest
49QuestObjectHratliStartInit – Handle placing Hratli near the starting point of Act 3, based on the player’s Act 3 prologue progress
50QuestObjectHratliEndInit – Handle placing Hratli near his forge, if the player has progressed past the Act 3 prologue
51ObjectJackInTheBoxInit – If the object is in Opened or Opening mode, then tell the object to do a periodic item skill event
52QuestObjectNatalyaInit – Handle placing Natalya at her location based on the player’s progress of The Guardian quest
53QuestObjectMephistoDoorInit – Handle setting the object to Opened mode based on the player’s progress of destroying the orb for The Blackened Temple quest
54QuestObjectCainStartInit – Handle creating the Cain unit in the Rogue Encampment based on the player’s progress of The Search for Cain quest
55QuestObjectDiabloStartInit – Handle the spawning event of Diablo based on the player’s progress of activating the seal objects in the Chaos Sanctuary
56QuestObjectDiabloSealInit – Do nothing
57ObjectInitBetterChest – Initialize the chest object, and give it the special magical property
58ObjectInitFissure – Tell the object to do a periodic skill event at random times
59ObjectVileDoggieInit – If the object is in Neutral mode, then set the object to Operating mode and tell it to do a unique event
60QuestObjectCompellingOrbInit – Set the object to Opened based on the progress of The Blackened Temple quest
61QuestObjectCainPortalInit – Set the object to Operating mode and tell it to do a unique event
62QuestCagedWussie1Init – Spawn the “act5pow” units based on the player’s progress of the Rescue on Mount Arreat quest
63QuestMoeInit – Setup the Korlic statue object with quest data based on the Right of Passage quest progress
64QuestLarryInit – Setup the Madawc statue object with quest data based on the Right of Passage quest progress
65QuestCurlyInit – Setup the Talic statue object with quest data based on the Right of Passage quest progress
66QuestAnyaInsideTownInit – Handle for creating the Anya NPC in town, based on the progress of the Prison of Ice quest
67QuestAnyaOutsideTownInit – Handle this object during the progress of the Prison of Ice quest and tell it to do its unique event
68QuestNihlathakInsideTownInit – Create the Nihlathak NPC in town, based on the progress of the Prison of Ice quest
69QuestNihlathakOutsideTownInit – Create the “Nihlathak Boss” super unique monster, based on the progress of the Prison of Ice quest
70QuestLarzukStartInit – Do nothing
71QuestLarzukEndInit – Object placeholder to create the “Larzuk” NPC in town
72QuestAncientTomeInit – Set the tome object mode to Opened or Neutral based on the progress of The Rite of Passage quest
73QuestAncientGatewayInit – Set the door object mode to Opened or Neutral based on the progress of The Rite of Passage quest
74QuestFrozenAnyaInit – Handle this object during the progress of the Prison of Ice quest and tell it to do its unique event
75QuestLastExitInit – Set the Throne of Destruction exit object mode to Operating or Opened based on the progress of the Eve of Destruction quest
76QuestSummitDoorInit – Set this door object mode to Operating or Opened based on the progress of the Rite of Passage quest
77QuestPlayerLastPortalInit – Set the last portal object mode to Operating or Opened based on the progress of the Eve of Destruction quest
78QuestTyraelPortalToExpansionInit – Set this object mode to Operating or Opened based on the progress of the Terror’s End quest
79QuestZooInit – Attempt a random chance based on successfully selecting a “zoo” type monster from the entire list of possible monsters (See monstats.txt). If selected, then send the quest update command to all players, based on the Eve of Destruction quest.

ClientFn – Defines a function that runs on the object from the game’s client side.

CodeDescription
0Do nothing
1Ambient Sound – Always return true
2Ripple – Tells the object to randomly play between its Operating animation and loop back to its Neutral animation
3Hell Fire – Same as function 2, except sound will also be processed
4Drinker – Tells the object to randomly play between its Special 0 animation and loop back to its Neutral animation. Also processes sound.
5Gesturer – Tells the object to randomly play between its Special 0 / Special 1 animation and loop back to its Neutral animation. Also processes sound.
6Turner – Tells the object to randomly play between its Special 0 animation and loop back to its Neutral animation. Uses different tick counts than function 4. Also processes sound.
7Skeleton – Tells the object to randomly play between its Operating animation and loop back to its Neutral animation.
8Duriel Entrance – If the object is not in Neutral mode then preload the Duriel monster
9Client Smoke – Controls how the object can be removed from the client based on distance to a player and if the object has a specific tick count.
10Bubbles – Tells the object to randomly play between its Operating animation and loop back to its Neutral animation. Uses different tick counts than function 7.
11Floaters – Always return true
12Altar – If the object is not in Neutral mode then preload the Ancients statues
13Invisible Ancient – If the object is in its Neutral mode and the player operating the object has not completed the Rite of Passage quest, then handle the control of operating the object
14Bonfire – Updates the object’s animation modes based on the time of day
15Frozen Anya – If the object is in Neutral mode then play the “npcalert” overlay.
16Last Exit – If the object is in its Operating mode, then modify the animation frames
17Zoo – Handle the creation of monsters if monsters need to be created
18Keeper – Randomly play the “barbarian_grunt_small_1” sound

RestoreVirgins – Boolean Field. If equals 1, then when the object has been used, the game will not restore the object in an inactive state when the area level repopulates after a player loads back into it. If equals 0, then ignore this.

BlockMissile – Boolean Field. If equals 1, then missiles can collide with this object. If equals 0, then missiles will ignore and fly through this object.

DrawUnder – Controls the targeting priority of the object

CodeDescription
0The object will not change its targeting priority
1The object’s target priority will equal a corpse only when the object is opened
2The object’s target priority always equals a corpse

OpenWarp – Boolean Field. If equals 1, then this object will be classified as an object that can be opened to warp to another area, and the UI will be notified to display a tooltip for opening or entering, based on the object’s mode. If equals 0, then ignore this.

AutoMap – Used to display a tile in the Automap to represent the object. Defines which cell number to use in the tile list for the Automap. If this value equals 0, then this object will not display on the Automap. (See Automap.txt)