Properties

From Caves of Qud Wiki
(Redirected from Item Properties)
Jump to navigation Jump to search
This article is a stub. You can help Caves of Qud Wiki by expanding it.
This article is a stub. You can help Caves of Qud Wiki by expanding it.

Aside from standard qualities like damage and weight, items, objects, and creatures can have physical or metaphysical properties that affect how they behave and how other items interact with them.

Metal

Metal items can rust, be magnetized, and be pulled by Pulsed field magnet.pngpulsed field magnets. Creatures can be metallic as well. This means their entire body becomes pulled if magnetic pulsed, and will refuse to properly function if rusted. Metal items (but not creatures) cannot be set on fire.[1]

For modding purposes, this property corresponds to the Metal object part.

Organic

A thing that is organic[2]:

Cannot be removed once equipped

Items with this property can't be unequipped normally by the player, but can be unequipped under other circumstances by the game, such as when they're destroyed.

For modding purposes, this property corresponds to the Cursed, CursedCybernetics, and NaturalEquipment object parts.

EMP Sensitive

This item will deactivate if hit by an EMP blast, usually from Electromagnetic Pulse or an EMP grenade.

For modding purposes, this property usually corresponds to having an IsEMPSensitive attribute of true on an appropriate object part. There are several such parts; refer to ObjectBlueprints.xml for examples. There is a generic base class that supports parts with involved conditional behavior, called IActivePart; see Modding:Active Parts for details. IsEMPSensitiveis a field on that class.

Some parts implement hardcoded EMP sensitivity because they do not use IActivePart. These include support parts for geomagnetic discs, night vision implants, mines, bombs, high-powered magnets, melee weapon elemental damage, walltraps, and conveyor belts.[7]

EMP-Sensitive Creatures

Other EMP-Sensitive Equipment/Objects

More...

Reality Distortion Based

Capabilities that are reality distortion based are subject to being interfered with by normality.

On items, this property usually corresponds to having an IsRealityDistortionBased attribute of true on an appropriate object part. This is another configuration point provided by IActivePart; see Modding:Active Parts for details.

Some mutation parts can also be configured for this property, using fields called either IsRealityDistortionBased or RealityDistortionBased. There is no way to change these fields via Mutations.xml, so this is only manipulable by scripting mods.

Occluding

Occluding objects are objects that block a character's field of view. Objects that are occluding also block non-seeping gases from passing through their tile. In terms of AI, even though the enemy knows their target is behind an occluding object, and the object does not block bullets, they will still refuse to fire until they are able to see their target again. Occluding items can also prevent NPCs from witnessing the player stealing an object. The most common class of objects that occlude light are walls (including closed doors and vents). Other occluding objects are shown below.[8]

Occluding Objects

Non-plant, non-statue, non-wall
objects that are occluding.

Object
Air well.pngair well
Becoming nook.pngbecoming nook
Brinestalk stakes.pngbrinestalk stakes
Broadcast power station.pngbroadcast power station
Chalkboard.pngchalkboard
Exterior mural endcap.pngmural endcap
Exterior mural median.pngmural median
Exterior sultan mural.pngmural of *Sultan*
Force projector.pngforce projector
Frosted pillar.pngfrosted pillar
Fuming vents.pngfuming vents
Fused security door.pngfused security door
Fusion power station.pngfusion power station
Fusion pumping station.pngfusion pumping station
Hydraulic irrigator.pnghydraulic irrigator
Hydraulic turbine.pnghydraulic turbine
Industrial fan.pngindustrial fan
Locking machine arm.pnglocking machine arm
Machine press.pngmachine press
Molting basilisk husk.pngmolting basilisk husk
Mural endcap.pngmural endcap
Mural median.pngmural median
Norm core mk i.pngnorm core mk I
Norm core mk ii.pngnorm core mk II
Norm core mk iii.pngnorm core mk III
Painted column.pngpainted column
Palladium strut.pngpalladium strut
Palladium strut with coral growth.pngpalladium strut with coral growth
Plastic tree.pngplastic tree
Quantum rippler.pngquantum rippler
Reshaping nook.pngreshaping nook
Reshaping pad.pngreshaping pad
Rotating machine arm.pngrotating machine arm
Rubber curtains.pngrubber curtains
Scratched vents.pngscratched vents
Sinister wall.pngsinister wall
Sliding drawer cabinet.pngsliding drawer cabinet
Solar power station.pngsolar power station
Solar pumping station.pngsolar pumping station
Sparking vents.pngsparking vents
Stairwell teleporter.pngstairwell teleporter
Steaming vents.pngsteaming vents
Sultan mural 5.pngmural of *Sultan5*
Sultan mural 1.pngmural of *Sultan1*
Sultan mural 4.pngmural of *Sultan4*
Sultan mural 2.pngmural of *Sultan2*
Sultan mural 6.pngmural of *Sultan6*
Sultan mural 3.pngmural of *Sultan3*
Ticking vents.pngticking vents
Tinted glass door.pngtinted glass door
Vents with hexagonal residue.pngvents with hexagonal residue
Vents with mold particulate.pngvents with mold particulate
Vents with moss particulate.pngvents with moss particulate

Non-Occluding Walls

Most walls are occluding, but the
following are exceptions to that rule:

Object
Chrome plaque.pngchrome plaque
Debris.pngdebris
Glass wall.pngglass wall
Holographic sandstone.pngholographic sandstone
Low wall.pnglow wall
Rubble.pngrubble
Scintillating glass wall.pngscintillating glass wall
Tetraxenonoglass wall.pngtetraxenonoglass wall

References

  1. XRL.World.Parts.Metal, method MakeNonflammable
  2. For modding purposes, “organic” means having an Inorganic integer property set to 0, rather than 1.
  3. XRL.Liquids.LiquidAcid, method SafeContainer
  4. XRL.Liquids.LiquidConvalessence, method GetHealingLocationValue
  5. XRL.World.Parts.BurnToAshesIfOrganic
  6. XRL.World.Parts.ThirstOnHit
  7. Most of these special cases can be found by searching the codebase for "IsEMPed", an IComponent method used for less conventional EMP status checking.
  8. Occlusion can be set on an object by adding Occluding="true" in the object's Render part.