Object flags

The following list includes descriptions for all known object flags. Note that a lot of the flags come directly from Arcanum and may be no longer used in the Temple of Elemental Evil. Others may have become obsolete during the earlier state of the game development, and be useless. If you have any updates to the information below, as in whether something works or doesn't work, as well as what certain flags mean, feel free to post in this thread. I'll try to keep this list up to date.
The list below doesn't account for the fact whether the flag really works or not (at least most of the time), since I haven't tested them too deeply to really be able to tell. A good part of these flags may actually turn out to be Arcanum leftovers. If you have info that a certain flag works or doesn't work for sure, please respond in this thread.
Object Flags (OF_*)
*OF_DESTROYED - This object is completely ignored by the object system, considered to be destroyed.
*OF_OFF - This object still exists and can still be manipulated, but it's simply not displayed.
*OF_FLAT - ?
*OF_TEXT - This object has a text bubble associated with it. Arcanum leftover, most surely doesn't work in ToEE.
*OF_SEE_THROUGH - This object doesn't obstruct visibility.
*OF_SHOOT_THROUGH - It's possible to shoot through this object (doesn't obstruct shooting).
*OF_TRANSLUCENT - ?
*OF_SHRUNK - ?
*OF_DONTDRAW - This object is not drawn. Overlays and other elements for this object may still be shown.
*OF_INVISIBLE - Same as *OF_DONTDRAW, but means that this object is simply invisible, so this flag will get overridden if someone detects invisibility.
*OF_NO_BLOCK - Doesn't obstruct movement.
*OF_CLICK_THROUGH - Doesn't respond to mouse clicking? (not sure)
*OF_INVENTORY - This object is an inventory item.
*OF_DYNAMIC - This object is dynamic and needs to be
*OF_PROVIDES_COVER - This object provides cover per D&D rules.
*OF_RANDOM_SIZE - obj_create will make this object of random scale. Possibly doesn't work (untested).
*OF_NOHEIGHT - ?
*OF_WADING - ?
*OF_LOOTED - This object (NPC or container) has been looted already and followers took their share.
*OF_STONED - The stone to flesh spell is on.
*OF_DONTLIGHT - This object will always be drawn at full brightness, ignoring all light effects.
*OF_TEXT_FLOATER - ?
*OF_INVULNERABLE - This object cannot take damage or be destroyed.
*OF_EXTINCT - ?
*OF_DISALLOW_WADING - ?
*OF_HEIGHT_SET - Either the game or the proto system has already calculated the height for this object (usually this means that the "height" property is already set and has a value).
*OF_ANIMATED_DEAD - ?
*OF_TELEPORTED - ?
*OF_RADIUS_SET - Either the game or the proto system has already calculated the radius for this object (usually this means that the "radius" property is already set and has a value).
Item Flags (*OIF_*)
*OIF_IDENTIFIED - The player has identified this object already
*OIF_WONT_SELL - The owning NPC won't sell this item
*OIF_IS_MAGICAL - Used internally to mark objects with charges (part of a tracking system that tracks item that run out of charges)
*OIF_NO_PICKPOCKET - This item can't be pickpocketed.
*OIF_NO_DISPLAY - This item is not displayed in the inventory screen.
*OIF_NO_DROP - This item cannot be dropped.
*OIF_NEEDS_SPELL - This item needs you to have its spell on your spell list in order to activate.
*OIF_CAN_USE_BOX - This item can be dropped in the use box in the inventory UI. Internal?..
*OIF_NEEDS_TARGET - This item needs a target when used
*OIF_LIGHT_SMALL - This item gives off a little light when wielded. Arcanum leftover?..
*OIF_LIGHT_MEDIUM - This item gives off medium light when wielded. Arcanum leftover?..
*OIF_LIGHT_LARGE - This item gives off lots of light when wielded. Arcanum leftover?..
*OIF_LIGHT_XLARGE - This item gives off TONS of bright light when wielded. Arcanum leftover?..
*OIF_PERSISTENT - This item is not destroyed during inventory respawning.
*OIF_MT_TRIGGERED - ? Probably somehow magic/tech related, a definite Arcanum leftover.
*OIF_STOLEN - This item is stolen and will not be bought by a shopkeeper unless he is a fence.
*OIF_USE_IS_THROW - This item is thrown when used.
*OIF_NO_DECAY - This item will never decay (disappear) if left somewhere.
*OIF_UBER - This item can damage critters marked as *OCF2_NIGH_INVULNERABLE. Was used in Arcanum. Possibly a leftover.
*OIF_NO_NPC_PICKUP - NPCs will not pick up this item off the ground. Was used in Arcanum.
*OIF_NO_RANGED_USE - This item must be used directly on the target, not from a range.
*OIF_VALID_AI_ACTION - ?
*OIF_DRAW_WHEN_PARENTED - ?
*OIF_EXPIRES_AFTER_USE - This item expends charges, and when empty destroys itself.
*OIF_NO_LOOT - This item cannot be looted (different from NO_DROP!)
*OIF_USES_WAND_ANIM - This item, when casting a spell, uses the wand animations.
*OIF_NO_TRANSFER - This item cannot be moved between party members (follower's items)
*OIF_FAMILIAR - This item cannot be moved between party members (familiars)
Critter Flags (*OCF_*)
*OCF_IS_CONCEALED - The critter is initially concealed (e.g. used for spider in the Tower)
*OCF_MOVING_SILENTLY - Is using the move silently skill
*OCF_EXPERIENCE_AWARDED - Experience has already awarded for this monster
*OCF_FLEEING - The critter is fleeing. Arcanum leftover?..
*OCF_STUNNED - The critter is stunned.
*OCF_PARALYZED - Paralyzed.
*OCF_BLINDED - Temporarily blinded.
*OCF_HAS_ARCANE_ABILITY - Used for Feeblemind to check if the critter has arcane like abilities.
*OCF_SLEEPING - Is sleeping in a bed.
*OCF_MUTE - Unable to talk (won't float messages or engage in dialog).
*OCF_SURRENDERED - Critter has surrendered after fleeing (Arcanum leftover?..)
*OCF_MONSTER - Critter is a "monster" (doesn't correspond to a defined race or a non-monster animal)
*OCF_SPELL_FLEE - Critter has used a spell to flee.
*OCF_ENCOUNTER - Critter is an "encounter" critter, which disappear when they stop getting heartbeats
*OCF_COMBAT_MODE_ACTIVE - Critter is in combat mode.
*OCF_LIGHT_SMALL - Critter is wielding a small light. Arcanum leftover?..
*OCF_LIGHT_MEDIUM - Critter is wielding a medium light. Arcanum leftover?..
*OCF_LIGHT_LARGE - Critter is wielding a large light. Arcanum leftover?..
*OCF_LIGHT_XLARGE - Critter is wielding an extra large light. Arcanum leftover?..
*OCF_UNREVIVIFIABLE - This critter cannot be brought back to life or reanimated.
*OCF_UNRESSURRECTABLE - This critter cannot be brought back to life.
*OCF_NO_FLEE - This critter will never flee.
*OCF_NON_LETHAL_COMBAT - This critter will stop fighting a critter when it goes unconscious.
*OCF_MECHANICAL - A critter that is of mechanical (technological) type - was used in Arcanum, most sure not used anymore.
*OCF_HAS_MET - Critter has met the party before.
Critter Flags 2 (OCF2_*)
*OCF2_ITEM_STOLEN - This critter has been pickpocketed.
*OCF2_AUTO_ANIMATES - This critter always animates when standing.
*OCF2_USING_BOOMERANG - This critter is currently using a boomerang weapon. Arcanum?..
*OCF2_FATIGUE_DRAINING - ?
*OCF2_SLOW_PARTY - ?
*OCF2_NO_DECAY - This critter will never decay to nothing.
*OCF2_NO_PICKPOCKET - This critter cannot be pickpocketed.
*OCF2_NO_BLOOD_SPLOTCHES - This critter doesn't display default blood splotches when hit.
*OCF2_NIGH_INVULNERABLE - The critter can only be hurt by items marked as *OIF_UBER.
*OCF2_ELEMENTAL - This critter is a natural elemental.
*OCF2_DARK_SIGHT - This critter has dark vision.
*OCF2_NO_SLIP - This critter doesn't slip on slippery (ice) tiles. Most certainly an Arcanum leftover.
*OCF2_NO_DISINTEGRATE - This critter always saves vs. disintegration
*OCF2_TARGET_LOCK - This critter is locked onto his combat target until instructed otherwise.
*OCF2_ACTION*_PAUSED - ?
NPC Flags (ONF_*)
*ONF_EX_FOLLOWER - NPC was a follower and has now left the party. Internal?
*ONF_WAYPOINTS_DAY - NPC will walk its waypoints during the day.
*ONF_WAYPOINTS_NIGHT - NPC will walk its waypoints during the night.
*ONF_AI_WAIT_HERE - Internal, don't use directly. NPC is being told to wait at a location.
*ONF_AI_SPREAD_OUT - Internal, don't use directly. NPC is being told to increase his follow radius.
*ONF_JILTED - NPC waited too long and went home or left the party on his own accord based on PC actions. Internal.
*ONF_LOGBOOK_IGNORES - NPC will be ignored by logbook functions when building ego pages.
*ONF_KOS - NPC will kill on sight.
*ONF_USE_ALERTPOINTS - NPC will only go to night standpoint on 'alert' (when global flag 144 is set).
*ONF_FORCED_FOLLOWER - NPC was forced to follow his current leader.
*ONF_KOS_OVERRIDE - NPC will *NOT* kill on sight.
*ONF_WANDERS - NPC wanders. Doesn't work. Arcanum leftover.
*ONF_WANDERS_IN_DARK - NPC wanders in dark. Doesn't work. Arcanum leftover.
*ONF_FENCE - This NPC is a fence shopkeeper and will buy stolen goods marked as *OIF_STOLEN.
*ONF_FAMILIAR - This NPC is a familiar.
*ONF_CHECK_LEADER - NPC needs to check his leader for faults, possibly internal.
*ONF_NO_EQUIP - This NPC will not equip items.
*ONF_CAST_HIGHEST - This NPC will only cast highest known spells in each Arcanum spell college. Probably won't work for ToEE.
*ONF_GENERATOR - NPC is a generator of NPCs (usually monsters)
*ONF_GENERATED - NPC was generated from a generator.
*ONF_GENERATOR_RATE1 - Internal rate flag for generator NPCs.
*ONF_GENERATOR_RATE2 - Internal rate flag for generator NPCs.
*ONF_GENERATOR_RATE3 - Internal rate flag for generator NPCs.
*ONF_DEMAINTAIN_SPELLS - NPC will turn off maintained spells when leader dies or exits combat mode.
*ONF_BACKING_*OFF - NPC wants to back away from his combat. Internal?
*ONF_NO_ATTACK - NPC is not allowed to fight.
*ONF_BOSS_MONSTER - NPC is a boss monster. Arcanum leftover?
*ONF_EXTRAPLANAR - NPC is extraplanar.
Category:Circle of Eight