How to Find Object Data (Rev. 9)

Contents

Step 1: Get the .xml file with all the object data

The file with object information can be found here

Clicking the link above will lead you to an index where you may find links to the .xml files with the object information of the current build. If you navigate up from there (../), there are some other assets to explore. For now, download the Objects.xml file.

If you do not have a text editor with syntax highlighting it might be easier to go here. This link essentially provides the various sections of the Objects.xml file in more manageable pieces. You can open individual sections in your browser, and Chrome can provide syntax highlighting. Click on the section that will most likely hold the object you are looking for, and skip ahead to step 3

Step 2: Open the .xml file

Open the .xml file with some sort of text editor by either double clicking the file or right clicking, going to “Open with”, and selecting your preferred program. Those with syntax highlighting are pretty nifty, but something like WordPad will do well enough.

Note: The file can be opened with MS Word or Notepad, but MS Word will not find specific objects and Notepad will not always show all formatting (At least for me).

If you open with WordPad a window like the one below will open up.

Step 3: Find what you are looking for

Pull up the text editor’s or browser’s “Find” window. You can usually pull it up by pressing ctrl+f. On WordPad the “Find” button is listed under the “Home” tab.

Type in the name of the object you are searching for and press the “Find Next” button. You should be lead to a section of text that matches what you told the program to find.

For those of you who are using your browser, you should see something like so.

Step 4: Interpret object information

In between the <Object type="(stuff)" id="(Name)"> and the </Object> tags you will find information about that object. The content will vary depending on what that object is.

(note that the Object’s id may not correspond exactly to its ingame name; if a name is vague or does not match its ingame name, its matching value can be found in this table)

Information can be found between tag pairs or from single tags. Below is a table of tags and a short description about what it means. Not all information listed will be used in the wiki.

Tags
Description
<Amplitude> </Amplitude>
Often used with Characters and Equipment to describe the projectile the object will emit, Describes the maximum deviation the projectile travels from the straight line path to the target when it travels in a sinusoidal path
<ArmorPiercing/>
Often used with Characters and Equipment to describe the projectile the object will emit, means that the projectile is armor piercing
<BagType> </BagType>
Often used with Equipment, describes the type of loot bag that the object drops in, 0 = brown bag, 1 = pink bag, 2 = purple bag, 3 = egg basket, 4 = cyan bag, 5 = blue bag, 6 = white bag, 7 = golden bag, 8 = orange bag, 9 = red bag
<Boomerang/>
Often used with Characters and Equipment to describe the projectile the object will emit, means that the projectile makes a return path back to its source
<Class> </Class>
Object descriptor like Player, Character, Wall, Projectile, or Game Object
<ConditionEffect> </ConditionEffect>
Often used with Characters and Equipment to describe the projectile the object will emit, describes the condition effect that the projectile casts on the objects that it hits, duration of the condition effect is in seconds
<Consumable/>
Often used with Equipment, means that the object can be used by a player, can only be used once
<Cube/>
Often used with Characters, specifically cubes, means that killing the object counts as a cube kill
<Damage> </Damage>
Often used with Characters and Equipment to describe the projectile the object will emit, specifies the amount of damage that the projectile will deal
<DeathSound> </DeathSound>
Describes the sound made when the object is destroyed
<Defence> </Defence>
Often used with Characters and Players, specifies the amount of DEF that the object has, default value for enemies is 0, Players’ Defence can increase until it reaches a specified maxium value
<Description> </Description>
Often used with Equipment, specifies the amount of DEF that the object has, Players’ Defence can increase until it reaches a specified maxium value
<DisplayID> </DisplayID>
Specifies the name of an object that will show up in the game instead of the assigned ID. Note: The Objects_12.0.xml file has nonsensical display IDs for all enemies. Please refer to an older version for Display IDs.
<Enemy/>
Often used with Characters, means that the object is an enemy in the game
<FameBonus> </FameBonus>
Often used with Equipment, describes the percent fame bonus granted when a player dies with the object equipped
<Flying/>
Often used with Characters, the object hovers above the ground
<Frequency> </Frequency>
Often used with Characters and Equipment to describe the projectile the object will emit, Describes how quickly the projectile cycles back to the straightline path to the target when it travels in a sinusoidal path
<God/>
Often used with Characters, means that killing the object counts as a god kill
<Group> </Group>
Often used with Characters to specify what it will swarm with. Charactors will tend to cluster with other charactors of the same group
<HitSound> </HitSound>
Describes the sound made when the object is hit by a projectile
<Item/>
Often used with Equipment, means that the object is an item
<Level> </Level>
Often used with Characters, specifies the minimum level needed for a player to get the object as a quest
<LifetimeMS> </LifetimeMS>
Often used with Characters and Equipment to describe the projectile the object will emit, specifies how long (in miliseconds) the projectile is alive, this can be used to calculate the range of or distance traveled by the projectile, Range or Distance traveled (in tiles) = Speed(tiles/sec) * LifetimeMS * (1 sec/ 1000 milisecond).
<MaxHitPoints> </MaxHitPoints>
Often used with Characters and Players, gives the maximum HP that the object can have, Players’ MaxHitPoints can increase until it hits a specified maximun value
<MaxDamage> </MaxDamage>
Often used with Characters and Equipment to describe the projectile the object will emit, specifies the maximum amount of damage that the projectile will deal
<MinDamage> </MinDamage>
Often used with Characters and Equipment to describe the projectile the object will emit, specifies the minimum amount of damage that the projectile will deal
<Model> </Model>
Often used with Game Objects, means the object is a 3D shape in the game, its image from the user client will just be the skin that is placed on the 3D model
<MPCost> </MPCost>
Often used with Equipment, gives the mp needed to use the object
<MultiHit/>
Often used with Characters and Equipment to describe the projectile the object will emit, means that the projectile is able to hit more than one target i.e. piercing
<NoMiniMap/>
Means that this object does not show up as a dot on the mini-map
<ObjectID> </ObjectID>
Often used with Characters and Equipment to describe the projectile the object will emit, indentifies the object that the projectile is modeled from
<Parametric/>
Often used with Characters and Equipment to describe the projectile the object will emit, means that the path that the projectile makes follows a parametic curve, often a figure eight
<ParticleTrail/>
Often used with Equipment to describe the projectile the object will emit, means that the projectile leaves behind a partile trail as it travels forward
<PassesCover/>
Often used with Characters and Equipment to describe the projectile the object will emit, means that the projectile passes through objects
<Potion/>
Often used with Equipment, means that the object counts towards potions drunk when it is used
<Projectile> </Projectile>
Often used with Characters and Equipment, information between these tags describe the projectiles that the object will emit
<Quest/>
Often used with Characters, means that a qualifying player is able to see the location of the object via the red quest arrow and red dot on the map
<Size> </Size>
Gives the percent size of an object, values larger than 100 means that the object is made of pixels that are larger than the standard pixel size
<Soulbound/>
Often used with Equipment and Dyes, means that the object can only be seen or used by the player who owns it
<Spawn> </Spawn>
Often used with Characters, specifies the minimum, maximum, mean, and standard deviation of the number of the object that will spawn if it spawns in groups
<SpawnProb> </SpawnProb>
Often used with Characters, describes the likelyhood of the object spawning, maximum value is 1.0
<Speed> </Speed>
Often used with Projectiles and Players, describes how quickly the object can move, Players’ Speed can increase until it reaches a specified maxium value, For Projectiles: Speed (tiles/sec) = Speed/10, For Players: Speed (tiles/sec) = 4 + 5.6 * (Speed / 75)
<StasisImmune/>
Often used with Characters, means that the object cannot be stasised
<Terrain> </Terrain>
Often used with Characters, describes the biome that the object appears in
<Tier> </Tier>
Often used with Equipment, describes the equipment tier of the object
<Usable/>
Often used with Equipment, means that the object can be used by a player, often more than once
<XPMult> </XPMult>
Often used with Characters; can be used to find the XP gained for killing the object. XP gained = (Max HP / 10) * XPMult (rounded to the nearest whole number). XPMult default value is 1. XP gained from one enemy is capped at 10% the XP needed to level up, even at level 20. Therefore, any enemy with at least 1950 HP will have its base XP (i.e. Max HP / 10) set to 195. For these enemies, only XPMult controls how much XP they award.

Back to top

Example: Septavius the Ghost God

If we look up Septavius, something like the image below comes up

From <MaxHitPoints>, we find that maximum HP is 8000.
From <Defences>, we find that DEF is 12.
From <Flying>, we find that Septavius is a flying enemy.
From <Quest>, we find that players can have a red quest arrow that points to Septavius.
From <God>, we find that killing Septavius counts as a god kill.
From <StasisImmune>, we find that Septavius is immune to stasis.
From <Level>, we find that the player need to be at least level 1 in order to see Septavius’s red quest arrow.
From <XPMult>, we find that killing Septavius gives 137 EXP, following the formula. Note that Septavius has more than 1950 HP and so is subject to the XP cap, described above.

EXP = 195 * XPMult
137 = 195 * 0.7


If we take a look at his projectiles, we see something like below.

From <Speed>, we find that his White Bullet has a speed of 8 tiles/sec and his Brown Magic has a speed of 9 tiles/sec, following the formula.

Speed (in tiles/sec) = Speed/10
8 = 80 / 10


From <Damage>, <MinDamage>, and <MaxDamage>, we find that White Bullet will always deal 75 damage and Brown Magic will deal a range of 40 to 45 damage.
From <LifetimeMS>, we find that White Bullet has a life of 1500 miliseconds and Brown Magic has a life of 2600 miliseconds. With this, we can find the range (or rather the amount of tiles the projectile will travel)

Range or Distance traveled (in tiles) = Speed(tiles/sec) * LifetimeMS * (1 sec/ 1000 milisecond).
12 = 8 * 1500 * (1/1000)
23.4 =9 * 2600 * (1/1000)


So White Bullet travels 12 tiles and Brown Magic travels 23.4 tiles.
From <ArmorPiercing>, we find that White Bullet is an armor piercing attack.
From <MultiHit>, we find that White Bullet and Brown Magic can hit more than one player during its lifetime.
From <Boomerang>, we find that Brown Magic will make a return path back to Septavius during its lifetime.
From <ConditionEffect> and duration=, we find that Brown Magic will cast Quiet for 1 sec on players that it hits.

Additional XP examples

  • Consider the Lizard God, an enemy with 900 HP and an XPMult of 4.0. Because it has less than 1950 HP, the XP it awards can be directly calculated from the formula: XP gained = Base XP * XPMult = (Max HP / 10) * XPMult = (900 / 10) * 4.0 = 360 XP.
  • Consider The Forgotten King, an enemy with 150,000 HP and an XPMult of 35.8975. Because it has more than 1950 HP, the base XP it awards its capped at 195, meaning that only XPMult controls the amount of XP received: XP gained = 195 * XPMult = 195 * 35.8975 = 7,000 XP.

Back to top