Actor flags

From ZDoom Wiki
Jump to: navigation, search

Flags control various characteristics of your actor, varying from appearance to physical properties. Remember that you can get a basic set of flags by using the Monster or Projectile property keywords. However, you will invariably feel the need to dabble with at least a few of these flags. To use, simply specify the flag within the actor's DECORATE definition and outside the state block. You can set or clear a flag as follows:

  • +FLAGNAME sets a flag
  • -FLAGNAME clears a flag
Ktip.png Tip: You can set any flag on or off in an actor's state using A_ChangeFlag.

General Flags

The following flags can be used with any actor.

Physics

  • SOLID
Set when the object should be solid (blocking). The size of the blocking is defined using the height and radius properties.
→ Automatically given by the Monster combo
  • SHOOTABLE
Object can be damaged. If health goes below 0 it enters its death state.
→ Automatically given by the Monster combo
  • FLOAT
Floating actor that can change height at will (usually used for monsters). The speed of the float can be defined with its floatspeed property. Actors will not be able to float properly unless it has NOGRAVITY set. If set with FLOORCLIP, the actor will be able to walk off edges from heights.
  • NOGRAVITY
Actor is not subject to gravity.
→ Automatically given by the Projectile combo
  • WINDTHRUST
Actor is thrust by Heretic/Hexen wind sector specials, and pushers/pullers.
  • PUSHABLE
Actor can be pushed.
  • DONTFALL
Doesn't fall down after being killed.
  • CANPASS
Actor uses height sensitive collision detection. Use with care! This only makes sense on actors that can move by themselves. This flag is needed so that an actor can stand on sprite bridges.
→ Automatically given by the Monster combo
  • ACTLIKEBRIDGE
Uses the special collision logic for bridge things. Most importantly bridge things allow everything else to pass above and beneath regardless of the setting of the CANPASS flag.
  • NOBLOCKMAP
This object is excluded from passive collision detection. Nothing else can run into a NOBLOCKMAP object but the object itself can run into others.
→ Automatically given by the Projectile combo
  • MOVEWITHSECTOR
Actor follows sector height changes unconditionally. Normally actors with the NOBLOCKMAP flag are excluded from moving with sectors. Another use is to ensure that an actor remains on the floor of extremely fast moving lifts.
An actor not bound by gravity with this flag retains its z-height relative to a moving floor.
  • NOLIFTDROP
Does not drop when a lift under it lowers.
  • SLIDESONWALLS
Actor can slide along walls. Used for players and actors that are pushed against walls.
  • NODROPOFF
Makes tall dropoffs block any movement by this actor. Normally this is only being done for monster movement but not for thrust by damage or scrolling sectors.
  • NOTRIGGER
Disables all line action (crossing, impacting, using, etc.) for the actor.
  • BLOCKEDBYSOLIDACTORS
An actor with with flag is blocked by solid actors, even if itself non-solid. If the actor does not have the CANPASS flag as well, solid things are infinitely tall for it. An effect of this flag is that PoisonCloud actors spawned from a ZPoisonShroom are stuck in the mushroom (which is solid) and unable to be pushed away by the Disc of Repulsion, whereas the same actor spawned from a PoisonBag can be blasted away.

Behavior

  • ALWAYSRESPAWN
A monster with this flag will respawn in any skill level as though the skill level was set to Nightmare.
  • AMBUSH
Monster is set to ambush players: The monster will not wake up after hearing the player until it has a direct line of sight to him (It does not need to be facing him, however). Normally this is set in an editor on a per-object basis. Note that some editors call this flag "Deaf," but this is a misnomer. The monster can still hear the player with this flag set!
  • AVOIDMELEE
Monster backs away from melee combat when too near from its target, provided it has a valid Missile state. A bot with this flag needs to have a ranged weapon selected.
  • BOSS
Actor is a boss, and has the following special properties:
  • Plays See sound and Death sound at full volume (regardless of distance), and play these sounds in surround mode during the cast endgame.
  • Cannot be squashed (normally instant death) by Heretic's powered-up Mace.
  • Cannot be teleported by Hexen's Banishment Device.
  • Cannot be pushed by items such as Hexen's Disc of Repulsion, or damaged by other monsters thrown at the boss by these items.
  • Takes only one-quarter of the damage from Hexen's Wraithverge spirits, burns said spirit out faster than other monsters, and reflects them against the attacker if the boss also has the REFLECTIVE flag.
  • Has a chance to resist Hexen's Arcs of Death.
  • Does not take fire damage when indirectly affected by Hexen's Bloodscourge's projectiles.
  • Takes only 50 damage from a poison bolt, instead of instantly killed.
  • DONTCORPSE
Monsters with this flag will not automatically get the CORPSE flag when killed. It is the modder's duty to explicitly set the flag with a call to A_ChangeFlag in the monster's death sequence. This has two main effects: first, the actor cannot be immediately passed through, and secondly it will not immediately enter a Crash state if it is on the floor or another actor. The purpose is to allow modders greater control on death animations and special effects with flying monsters.
  • DORMANT
Actor is dormant and has to be activated with Thing_Activate. Dormant actors can't do anything and don't take damage.
  • FRIENDLY
This monster doesn't target the player. Instead it attacks other monsters. Currently friendly monsters only target unfriendly monsters when they see the Player, and unfriendly monsters will never attack friendly monsters unless they are attacked first. Also note that monsters resurrected or spawned by friendly monsters (Arch-Vile, Pain Elementals, Icon of Sin, etc.) are friendly; and inversely a dead friendly monster resurrected by an unfriendly Arch-Vile is no longer friendly.
  • JUMPDOWN
Actors with this flag set will often (about 92% chance) decide to jump down tall ledges to pursue their target, if said target is hostile and is relatively close (horizontally within 144 map units).
  • LOOKALLAROUND
Looks in all directions for targets, not just in front of itself when A_Look or one of its variants is called.
  • MISSILEEVENMORE
Increases the probability of a missile attack from farther away even more than MISSILEMORE. Both flags can be combined for extra aggressive monsters.
  • MISSILEMORE
Increases the probability of a missile attack from farther away, though less than MISSILEEVENMORE. Both flags can be combined for extra aggressive monsters.
  • NEVERRESPAWN
A monster with this flag will never respawn, even in Nightmare.
  • NOSPLASHALERT
This monster is not alerted by terrain splash sounds like landing in water. Splashes are defined in TERRAIN and are not always literally "splashes".
  • NOTARGETSWITCH
A monster with this flag never switches its target unless its current target is dead.
  • NOVERTICALMELEERANGE
A monster with this flag ignores vertical distance to its target when checking for melee range. Used, for example, by the Strife Stalker to drop on its target from the ceiling, regardless of ceiling height.
  • QUICKTORETALIATE
Normally, when an actor acquires a target, it is prevented from switching to a new target for a set period of time (Specifically, it sets a counter at 100 and counts down by 1 for every A_Chase call the actor makes). If this flag is set, the monster is exempted from that code and is free to switch targets repeatedly. Monsters with this set will tend to turn on a new attacker immediately, rather than focusing on their current target. The Archvile uses this flag.
  • STANDSTILL
It is used to prevent inactive monsters from walking around without having something to attack. Strife's special logic for humanoids and ZDoom's friendly monsters use this.

(In)Abilities

  • CANNOTPUSH
This actor cannot push pushable objects.
  • NOTELEPORT
Actor cannot teleport.
  • ACTIVATEIMPACT
Upon hitting a wall this actor can activate G1/GR lines.
→ Automatically given by the Projectile combo
  • CANPUSHWALLS
Upon hitting a wall this actor can activate P1/PR lines.
→ Automatically given by the Monster combo
  • CANUSEWALLS
This actor can activate unlocked doors and lifts. (Original Doom monster behavior)
→ Automatically given by the Monster combo
  • ACTIVATEMCROSS
This actor can activate 'Monster crosses' lines.
→ Automatically given by the Monster combo
  • ACTIVATEPCROSS
This actor can activate 'Projectile crosses' lines.
→ Automatically given by the Projectile combo
  • CANTLEAVEFLOORPIC
This actor cannot cross into a sector with a different floor texture.
  • TELESTOMP
This actor can telefrag others. Actors without this flag will fail to teleport if another actor is blocking the destination.
This actor cannot telefrag others under any circumstances, even if the AllowMonsterTelefrags map definition flag is set.
  • STAYMORPHED
If morphed this actor cannot revert to its original form. Does not appear to work on playerclasses.
  • CANBLAST
Can be blasted by Hexen's Disc of Repulsion. For monsters this is implicit.
  • NOBLOCKMONST
Actor can walk through monster blocking lines.
  • THRUGHOST
This actor passes through ghosts (set with the GHOST flag). Only affects missiles.
Can now also be put on puffs.
  • THRUACTORS
This actor passes through all other actors.
  • THRUSPECIES
This actor passes through other actors of the same species.
  • MTHRUSPECIES
A missile with this flag passes through actors of the same species as the actor that shot it, if any.
  • SPECTRAL
A monster with this flag can only be hurt by a missile that also has this flag set.
  • FRIGHTENED
Monster runs away from player (but still fights back).
  • NOTARGET
Actor cannot be targeted by other monsters. This does not prevent hostile monsters from being targeted by friendly monsters.
Actor cannot be targeted at all. This prevents hostile monsters from being targeted by friendly monsters.
  • NOINFIGHTING
The inverse of NOTARGET. This actor will never turn on another monster when provoked.
  • NOTIMEFREEZE
This actor is not affected by time freeze powerups or the "freeze" console cheat.
  • NOFEAR
This actor is not affected by frightener powerups or the "anubis" console cheat.
  • CANTSEEK
This actor cannot be tracked by seeker missiles. See also the DONTSEEKINVISIBLE flag.
  • SEEINVISIBLE
Monsters with this flag can aim at invisible opponents (players or other monsters) without their aim being degraded. This does not affect detection of invisible opponents.

Defenses

  • INVULNERABLE
Actor cannot be hurt in normal situations, and will never enter its Pain state. Use NODAMAGE for invulnerability which does not remove the actor's ability to feel pain, and will not change targets.
Note: an invulnerable actor can still be hurt by damage that exceeds a very high threshold set at 1000000. This ensures that certain "instakill" attacks such as the mdk console command or telefragging always work, even on invulnerable actors.
  • REFLECTIVE
Actor reflects missiles shot at it. By default projectiles are reflected at a random angle.
  • SHIELDREFLECT
Used in conjunction with the REFLECTIVE flag. It changes the reflection behavior so that only projectiles hitting the monster from the front side are reflected. With this flag the reflection angle is always +/-45 degrees.
  • DEFLECT
Used in conjunction with the REFLECTIVE flag. It changes the reflection behavior so that the reflection angle is always +/-45 degrees.
  • NORADIUSDMG
Actor cannot be hurt by radius (explosive) damage.
  • DONTBLAST
Cannot be blasted by Hexen's Disc of Repulsion.
  • GHOST
Actor is a ghost. This does not imply translucency etc. Some of Heretic's projectiles and weapons cannot attack ghosts.
  • DONTMORPH
Cannot be morphed into a chicken, pig or any other morphs.
  • DONTSQUASH
This actor cannot be instantly killed by Heretic's powered up Mace. BOSS implies this flag.
  • NOTELEOTHER
Cannot be teleported by Hexen's banishment device.
  • DOHARMSPECIES
Projectile attacks from a monster with this flag will hurt (and potentially trigger infighting) other monsters of the same species.
  • DONTHARMCLASS
Prevents any monster of this kind from receiving explosive damage by a projectile fired by a monster of the exact same kind. This is recommended for monsters that shoot explosive projectiles so that they don't kill themselves. This flag was previously named DONTHURTSPECIES, which was a misleading name that could lead to believe its effect was that of DONTHARMSPECIES.
  • DONTHARMSPECIES
Prevents any monster belonging to the same species from receiving explosive damage by a projectile fired by a monster with this flag. This is recommended for monsters that shoot explosive projectiles who have several variants and are used in packs, so that they do not infight.
  • NODAMAGE
The actor still reacts to getting hurt but doesn't take any actual damage from the event. They also will still be allowed to infight with other monsters by normal attacks.
NOTE: Unlike INVULNERABLE, this flag seems to carry a higher degree of protection against all effects. They cannot be killed with MDK, the "kill monsters" command, Thing_Destroy, telefrag damage, and are completely impervious to the FOILINVUL flag. If the actor has both INVULNERABLE and NODAMAGE, then FOILINVUL actors can still be used to draw their attention.
  • DONTRIP
Ripping projectiles die upon hitting this actor as though they were non-ripping projectiles.
  • NOTELEFRAG
Actor cannot be telefragged.
An actor with this flag will unconditionally be telefragged by others when in the way.
  • DONTDRAIN (New from 2.7.1)
Actor's health cannot be drained with weapons that drain health from the victim such as Heretic's Gauntlets, or with weapons using A_Saw's or A_CustomPunch's lifesteal option.

Appearance & Sound

  • BRIGHT
All of the actor's frames are rendered at full-bright, as if every frame had the bright keyword present.
  • INVISIBLE
Actor is invisible. Unlike RenderStyle None this also implies invisibility to monsters.
  • SHADOW
Actor is nearly invisible and makes monsters trying to target this actor to be inaccurate. Unlike regular Doom this does not automatically imply fuzziness. For that you have to specify RenderStyle Fuzzy.
  • NOBLOOD
Actor does not bleed when hurt. Additionally, an actor with this flag is immune to poison bolts. You can also specify a blood type (without this flag) using the BloodType actor property.
  • NOBLOODDECALS
Actor does not generate blood decals when shot (but still generates blood sprites). Not needed if NOBLOOD is already specified.
  • STEALTH
Actor is a stealth monster. Stealth monsters are monsters that are visible only when they are in pain or attack; other than that, they are invisible.
  • FLOORCLIP
Actor's lower part is clipped when standing in a sector with a liquid texture (defined in the TERRAIN lump).
  • SPAWNFLOAT
Actor is spawned at a random height in the sector.
  • SPAWNCEILING
Actor is spawned hanging from the ceiling as opposed to standing on the floor. Use in conjunction with NOGRAVITY.
  • FLOATBOB
Use float bobbing z movement like Heretic/Hexen's powerups. Generally used with NOGRAVITY.
  • NOICEDEATH
Monster cannot be frozen, used to prevent the generic ice death.
  • DONTGIB
Actor cannot be crushed to a pile of blood by crushing ceilings. Also, dropped items with this flag cannot be crushed into nothingness as they usually do (New from 2.7.1).
  • DONTSPLASH
Actor does not create any terrain splashes.
  • DONTOVERLAP
Two actors with this flag cannot occupy the same x/y-position.
  • RANDOMIZE
Randomizes the duration for its first death and spawn frame of a projectile by removing up to 3 tics. Most of Doom's (but not Heretic's and Hexen's) projectiles use this.
  • FIXMAPTHINGPOS
Move thing out of walls. For torches and similar things that tend to be placed directly on a wall.
  • FULLVOLACTIVE
Plays its active sound at full volume.
  • FULLVOLDEATH
Plays its death sound at full volume. This only works for projectiles.
  • NOWALLBOUNCESND
Does not play a sound when bouncing off a wall. Normally the SeeSound is played in this case.
  • VISIBILITYPULSE
The actor's translucency is pulsing between 25% and fully opaque.
  • ROCKETTRAIL
This object has a rocket particle trail.
  • GRENADETRAIL
This object has a grenade particle trail (from Skulltag's grenades).
  • NOBOUNCESOUND
Don't make a bouncing sound.
  • NOSKIN
Don't allow skins for this actor. Useful only for player classes.
  • DONTTRANSLATE
Prevents this actor from being translated when used as a blood class (using the BloodType property) or when spawned from another actor using A_SpawnItemEx.
On a player class, this prevents player translations from being applied.
Note: Changing this flag during play (with A_ChangeFlag for example) has no effect; this flag is only checked when the actor is spawned and is not referenced afterwards.
  • NOPAIN
The actor will never enter its pain state. Contrarily to merely giving a PainChance of 0, this overrides the FORCEPAIN flag on the inflictor. Note that it will still take damage, however.
Y and XY billboarding.
Added for GZDoom, Skulltag and Zandronum compatibility. Forces the actor's sprite to "billboard" to the screen on the Y-axis when using the OpenGL renderer. Does nothing in ZDoom.
Added for GZDoom, Skulltag and Zandronum compatibility. Forces the actor's sprite to "billboard" to the screen on the X- and Y-axes when using the OpenGL renderer. Does nothing in ZDoom (Also ZDoom already "billboards" sprites on the X- and Y-axes).

Projectile

  • MISSILE
Actor is a projectile. Actors with this flag set will enter their death state when hitting a solid and constantly move at their speed value (without the need of any actor functions).
→ Automatically given by the Projectile combo
  • RIPPER
For projectiles that can rip through monsters and players. Ripping projectiles constantly cause their damage amount when ripping through actors, so low damage values are recommended. Bleeding actors also spew blood when being ripped. They will never be reflectable by any actor unless it comes into contact with an actor containing DONTRIP.
  • NOBOSSRIP
Ripper projectiles with this flag will not rip through monsters with the +BOSS flag.
  • NODAMAGETHRUST
An actor with that flag does not thrust away its victims when it inflicts damage.
  • DONTREFLECT
Will not reflect off of actors with the REFLECTIVE flag set. Instead, the actor will simply die, with a few exceptions. If the flagged actor also includes the ability to bounce off of actors with special conditions, it will do so without being considered "reflected", and maintain who shot the missile and who it is seeking (provided it can seek, otherwise it just maintains the owner).
  • FLOORHUGGER
Defines a projectile that is moving along the floor. Floor hugging projectiles pass over all obstacles until they hit a solid wall (not a raised floor).
  • CEILINGHUGGER
Defines a projectile that is moving along the ceiling.
  • BLOODLESSIMPACT
No blood is spawned when this projectile hits something. This also prevents hitscan weapons from spawning blood.
  • BLOODSPLATTER
Spawns blood splatter sprites when hitting a bleeding actor. This can also be used for hitscan weapons.
→ Automatically given by the Projectile combo when playing Heretic or Hexen
  • FOILINVUL
Can hurt invulnerable monsters (but not players).
  • SEEKERMISSILE
Actor is a homing missile. This is only used as a hint to the game. For a homing missile to be effective it also has to use one of the seeker missile code pointers in its moving states.
  • SCREENSEEKER
A seeker missile with this flag can only acquire a new target (in its tracer field) if the latter is in the field of vision of the missile's shooter (more exactly, within an about 84° cone from the shooter).
  • SKYEXPLODE
Projectile explodes when hitting a sky instead of vanishing.
  • NOEXPLODEFLOOR
When hitting the floor the projectile just stops instead of exploding.
  • STRIFEDAMAGE
Strife uses a different damage calculation for its projectiles which results in lower damage. The formula is strifeDamage = damage * random( 1, 4 ).
  • EXTREMEDEATH
This projectile or puff always gibs its victim.
  • NOEXTREMEDEATH
This projectile or puff never gibs its victim.
  • DEHEXPLOSION
Draw the missile's Death state translucent or additive depending on the addrocketexplosion console variable and the 'Rocket Explosion Style' and 'Rocket Explosion Alpha' settings in DeHackEd.
  • PIERCEARMOR
The missile ignores the target's armor.
  • FORCERADIUSDMG
All actors will take radius damage from this projectile, even boss enemies that are normally immune to radius damage.
  • SPAWNSOUNDSOURCE
This projectile will play its seesound from the originating actor.
  • PAINLESS
Actors will never enter their Pain state if hit by a projectile with this flag set.
  • FORCEPAIN
Actors will always enter the Pain state appropriate to the type of damage received if hit by a projectile with this flag set, even if the projectile does zero damage. The PAINLESS flag has precedence (a projectile with both PAINLESS and FORCEPAIN will not cause actors to enter their Pain state), and pain cannot be forced on actors with the NOPAIN flag set.
  • DONTSEEKINVISIBLE
Seeker missiles with this flag will not home in on invisible actors. See also the CANTSEEK flag.
  • STEPMISSILE
Missiles with this flag can climb up steps.
  • ADDITIVEPOISONDAMAGE
Several hits from missiles or puffs with the PoisonDamage property and this flag cause the poison damage suffered by the victim to increase.
  • ADDITIVEPOISONDURATION
Several hits from missiles or puffs with the PoisonDamage property and this flag cause the poisoning suffered by the victim to be prolonged.
On random occasions and under certain circumstances, actors on high ledges will be pushed and will fall forward when being damaged by an attack. This flag, when put on a projectile or a puff for a hitscan attack, will disable that behavior.

Bouncing

See also the bounce properties.

  • BOUNCEONWALLS
Missile bounces off of walls. Implied by Doom and Hexen bounce types.
  • BOUNCEONFLOORS
Missile bounces off of floors. Implied by all three bounce types.
  • BOUNCEONCEILINGS
Missile bounces off of ceilings. Implied by all three bounce types.
  • ALLOWBOUNCEONACTORS
Missile bounces off of non-bleeding actors. Implied by Doom and Hexen bounce types. Note that this needs to be set for BOUNCEONACTORS below to have any effect.
  • BOUNCEAUTOOFF
Missile stops bouncing if the velocity is too low after a bounce. Always triggered by a bounce on the ceiling, since moving downwards will always count as not moving upwards enough. Implied by the Doom bounce type.
  • BOUNCEAUTOOFFFLOORONLY
Missile stops bouncing if the velocity is too low after a bounce on the floor.
  • BOUNCELIKEHERETIC
Missile only bounces once, and never on walls, like Heretic's Firemace projectiles. Implied by Heretic bounce type.
  • BOUNCEONACTORS
Missile bounces off of all actors, even if they bleed and aren't reflective.
  • NOWALLBOUNCESND
Missile doesn't play a sound when hitting a wall. The Heresiarch's bouncing flaming skulls use this.
  • NOBOUNCESOUND
Missile doesn't make any sound at all when bouncing.
  • EXPLODEONWATER
Missile explodes when landing on a liquid surface. Usually they vanish in this case.
  • CANBOUNCEWATER
Missile bounces off of liquids normally. Usually they vanish in this case.
  • MBFBOUNCER
Missile is considered an MBF bouncer. They behave differently from normal bouncers in many situations:
  • They are considered to be missiles for several tests, even if they do not have the MISSILE flag. For example, a monster with that flag is able to cross impassable linedefs that do not block missiles.
  • They do not lose their bouncing properties when slowing down and coming to a rest.
  • USEBOUNCESTATE (New from 2.7.1)
Missile enters the most appropriate Bounce state available upon bouncing. Possible bounce states include Bounce, Bounce.Floor, Bounce.Ceiling, Bounce.Wall, Bounce.Actor, and Bounce.Actor.Creature. The Bounce.Actor.Creature state is used for bouncing over a shootable actor without the NOBLOOD flag.

Miscellaneous

  • DROPPED
Actor always acts as if it was dropped. Dropped items have two properties: They never respawn, and they will be crushed by doors and moving sectors, unless they have the DONTGIB flag (New from 2.7.1).
  • ISMONSTER
Actor is classed as a monster.
→ Automatically given by the Monster combo
  • CORPSE
Actor is a corpse. For normal actors there is no need to set this but in combination with the Crash state it might be useful.
  • COUNTITEM
Counts toward item percentage.
  • COUNTKILL
Counts toward kill percentage.
→ Automatically given by the Monster combo
  • COUNTSECRET
Counts toward secret percentage.
  • NOTDMATCH
Actor is not spawned in deathmatch games.
  • NONSHOOTABLE
Actor cannot be hit (projectiles pass through).
  • DROPOFF
Actor can walk over ledges/taller steps. This would allow a monster to travel through a map with impunity.
→ Automatically given by the Projectile combo
  • PUFFONACTORS
Used on puff objects only. A puff with this flag is spawned even if the actor being hit bleeds. Normally in such a case only blood is spawned but no puff.
  • ALLOWPARTICLES
Used on puff and blood objects only. This flag allows the sprite to be replaced by particles.
  • ALWAYSPUFF
Used on puff objects only. Makes the puff appear even when nothing was hit.
  • PUFFGETSOWNER
Used on puff objects only. If set, the puff's target is set to the actor who fired the shot once it is spawned. Usually used in conjunction with A_GiveToTarget to achieve certain special effect.
It can also be used on Blood; but if so it will target the bleeding actor (not the actor that caused the bleeding).
  • SYNCHRONIZED
Normally all actors spawned at level start are slightly randomized to avoid having all of them have the exact same appearance at the same time. This flag disables that randomization.
  • ALWAYSFAST
The monster with this flag does not take a random number of steps before attempting an attack. In addition, the reaction time is reduced and actor states marked as FAST will have their durations halved.
  • NEVERFAST
The monster with this flag will always take a random number of steps before attempting to attack. Opposite of ALWAYSFAST.
  • OLDRADIUSDMG
Use old radius damage code (for barrels and boss brain). Actors with this flag do not take z-height into account when calculating radius damage.
  • USESPECIAL
The actor's special will be triggered when the player presses use while facing this actor. The player will be considered the activator of the special.
Note: This default behavior can be modified with the Activation property.
  • BUMPSPECIAL
The actor's special will be triggered when the player touches this actor. The player will be considered the activator of the special.
Note: This default behavior can be modified with the Activation property.
  • BOSSDEATH
Makes A_FreezeDeathChunks and A_Burst call A_BossDeath.
  • NOINTERACTION
The actor is purely decorative. It will not interact with any other actor and will ignore all game physics (including solid walls and floors!), moving only according to its own momentum. (i.e. The actor will not be affected by gravity, but its movement can still be directly changed using ThrustThing.) All AI routines will ignore this actor's existence, speeding up processing time.
  • NOTAUTOAIMED
The actor is ignored by autoaim. Can be overridden by setting cl_doautoaim to true.
  • PICKUP
Tells the engine whether or not this class can pick up items. Mostly useful for preventing morphed players from using items.
  • TOUCHY
The actor dies at the slightest touch. This includes contact with another actor, sudden contact with the ceiling (closing door, raising elevator, floor or ceiling crusher, and so on), falling, and being blasted by an effect such as the disc of repulsion.
  • VULNERABLE
An actor with this flag can be affected by area-of-effect damage. Only matters for actors without the SHOOTABLE flag.
An actor with this flag will not be shown on the automap while the scanner powerup is in effect. The cheat code can still reveal the actors however.

Limited Use

  • SEESDAGGERS
Strife specific flag. Any actor with this flag will react to a player using Strife's dagger which normally doesn't alert monsters. You can clear it from Strife's Acolytes though to prevent them from responding to dagger attacks.
  • INCOMBAT
Used for Strife's dialog system. An actor that has this flag set will not respond to the player's attempts to converse, even if it has a ConversationID set. Not particularly useful to have an actor spawn with, but can be set with A_ChangeFlag later if the actor should become hostile to the player.
  • NOCLIP
Actor is totally excluded from collision detection and can walk through walls etc.
  • NOSECTOR
Object is not linked into the sector. This makes it invisible and excludes it from certain physics checks. It is recommended not to use this flag due to its side effects. There are better ways to make an actor invisible, e.g. the INVISIBLE flag.
  • ICECORPSE
Actor is a frozen corpse.
  • JUSTHIT
Try to attack right back (used in monster AI, probably not particularly useful in actor definitions).
  • JUSTATTACKED
Take at least one step before attacking (also not particularly useful in an actor definition).
  • TELEPORT
Used when teleporting an actor. When something is teleported, this flag is set, it gets moved to its new position, it's checked for collision, then the flag is cleared (again, not useful for actor definition).
  • BLASTED
Actor takes temporary damage from impact. Related to the Disc of Repulsion. Not useful in actor definitions.
  • EXPLOCOUNT
A missile with this flag that should normally explode only does so if its increased special2 field is greater than its special1 field.
  • SKULLFLY
Actor is a charging monster. Like a MISSILE, its movement will not be damped, and it will cause damage on impact. In addition, the actor will not go into pain states, will also be blocked by items, and on impact SKULLFLY will be cleared and the actor will return to its initial state. It can be dynamically set with A_ChangeFlag. Note that the actor needs to have a velocity in order for this flag to be effectual. A_SkullAttack and A_MinotaurCharge set this flag along with thrusting the actor.
  • SPECIALFIREDAMAGE
A projectile with this flag that causes fire damage will not inflict a fire death when killing an actor.
  • SPECIALFLOORCLIP
An actor with this flag is considered to use the floor clipping feature to achieve special effects, such as the buried reiver raising from the ground; so its floorclip is not adjusted by the engine depending on which terrain type it is standing.
  • SUMMONEDMONSTER
This flag's use is limited to the Minotaur actor class and derivatives; it basically alters the outcome of the functions exclusive to that class such as A_MinotaurDecide, resulting in minor behavioral changes. The only actor class that makes use of this flag is MinotaurFriend.
  • SPECIAL
Tells the engine that this actor can be picked up. The base class SpectralMonster has a special use for this flag that allows actors inheriting from it to hurt the player when they come in contact with said actors.

Deprecated flags

These flags should no longer be used. They are documented here for reference purposes.

Actor is subject to low gravity.
Has been superseded by the 'gravity' Actor property. Please use 'gravity 0.125' instead.
Actor is subject to 1/4th of normal gravity.
This flag was only added for compatibility with certain Skulltag definitions. It is equivalent to 'gravity 0.25'
When closer than 192 map units to its target, this monster doesn't start its missile attacks
This flag has been replaced by the MeleeThreshold actor property.
Has a limited missile attack range of approx. 1000 map units.
This flag has been replaced by the MaxTargetRange actor property.
Actor takes one half of the normal damage from fire. This is deprecated, using the DamageFactor property allows far greater possibilities.
This is an alternate name for DONTHARMCLASS. This name has been deprecated because it is misleading, as its effect is unrelated to the actual definition of Species in the ZDoom engine.
Actor inflicts fire damage (this flag is deprecated, use DamageType instead).
Actor inflicts ice damage (this flag is deprecated, use DamageType instead).
Heretic style bouncing (objects only bounce off planes). Use BounceType "Heretic" or the following flags instead: BOUNCEONFLOORS, BOUNCELIKEHERETIC
Hexen style bouncing (objects bounce off planes and walls). Use BounceType "Hexen" or the following flags instead: BOUNCEONWALLS, BOUNCEONFLOORS, ALLOWBOUNCEONACTORS
ZDoom style bouncing (like Hexen but stops when losing a certain amount of momentum). Use BounceType "Doom" or the following flags instead: BOUNCEONWALLS, BOUNCEONFLOORS, ALLOWBOUNCEONACTORS, BOUNCEAUTOOFF
The monster with this flag had the duration of the states in its See state sequence halved in nightmare skill or with fast monsters on. This flag has no effect anymore and the Fast state keyword should be used instead.
The duration of the states in the the monster's Melee state sequence was halved in nightmare mode or with fast monsters on. This flag has no effect anymore and the Fast state keyword keyword should be used instead.

Additional Flags

Some subclasses of Actor define their own additional flags. They are listed here:

Inventory

  • INVENTORY.QUIET
When being picked up this item doesn't make any sound.
  • INVENTORY.AUTOACTIVATE
This item activates automatically when being picked up.
  • INVENTORY.UNDROPPABLE
This item cannot be dropped once it has been picked up. Note that this also prevents the actor from being removed when ClearInventory or ClearActorInventory is called.
  • INVENTORY.INVBAR
This item is placed into the visible inventory when picked up.
  • INVENTORY.HUBPOWER
This item is kept when travelling between levels of the same hub.
  • INVENTORY.PERSISTENTPOWER
This item is kept when travelling between levels, even outside of a hub.
This item is taken away when traveling between hubs or single levels. Replaced by the more flexible Inventory.InterHubAmount property.
When being picked up a PickupFlash actor is spawned. This is the blue effect you can observe on Heretic and Hexen. This flag has been deprecated and it is recommended that you use the Inventory.PickupFlash property instead.
  • INVENTORY.ALWAYSPICKUP
This item is always picked up no matter whether the player can use it or not. This only applies to items that activate automatically.
  • INVENTORY.FANCYPICKUPSOUND
The pickup sound is played in surround mode.
  • INVENTORY.NOATTENPICKUPSOUND
The pickup sound is played with no attenuation, which means it is played at full volume and is heard clearly regardless of distance.
  • INVENTORY.BIGPOWERUP
Marks this item as a 'powerful' item which is controlled by the 'mega powerups respawn' dmflag option.
  • INVENTORY.NEVERRESPAWN (New from 2.7.1)
An item with this flag will never respawn in any circumstance.
  • INVENTORY.KEEPDEPLETED
This item will remain in the player's inventory bar even after the last one is used. If the item also has an inventory icon, it will be drawn darkened when the quantity is 0.
  • INVENTORY.IGNORESKILL
Normally, the amount of ammo picked up from an inventory item is doubled on the easiest and hardest skill levels. If this flag is set, the item will ignore the skill setting and only give the specified ammo amount. This flag is typically used on a magazine for reloading weapons so that only one round is inserted into the magazine per round of ammunition depleted from the main ammo pool.
  • INVENTORY.ADDITIVETIME
If set, when a player picks up a second powerup of this type before the first has worn off, the new powerup's duration will be added to the old, rather than overwriting it. For example, if a powerup has a duration of 60 seconds, and a player who currently has the powerup with 21 seconds left picks up a second one, normally the new powerup will override the old and the duration will be reset to 60 seconds. With this flag set, the duration would be extended to 81 seconds instead.
  • INVENTORY.UNTOSSABLE
If set, the item cannot be tossed with the drop console command.
  • INVENTORY.RESTRICTABSOLUTELY
If set, the Inventory.ForbiddenTo and Inventory.RestrictedTo will prevent player classes not allowed to pick up a weapon from attempting to pick it up for ammo.
  • INVENTORY.NOSCREENFLASH (New from 2.7.1)
Upon picking up an item with this flag, the associated pickup palette flash will not be displayed.
An item with this flag is treated as being dropped.

Weapons

  • WEAPON.NOAUTOFIRE
Does not fire when selected automatically and the fire button is still pressed. Used to prevent dangerous weapons from firing accidentally.
  • WEAPON.READYSNDHALF
The ready sound is played only with 50% probability.
  • WEAPON.DONTBOB
The weapon sprite does not bob.
  • WEAPON.AXEBLOOD
This weapon spawns the special AxeBlood type when hitting something that bleeds. This only has an effect for hitscan and melee weapons.
  • WEAPON.NOALERT
Does not alert nearby monsters when being fired.
  • WEAPON.AMMO_OPTIONAL
Tells the engine that this weapon doesn't require ammo to work.
  • WEAPON.ALT_AMMO_OPTIONAL
The same for the alternate attack.
  • WEAPON.AMMO_CHECKBOTH
The weapon can be selected if either the primary or the alternate fire have enough ammo. Both weapon properties Weapon.AmmoUse1 and Weapon.AmmoUse2 must have a positive value for this flag to work correctly.
  • WEAPON.PRIMARY_USES_BOTH
The primary attack uses both ammo types.
  • WEAPON.ALT_USES_BOTH
Like WEAPON.PRIMARY_USES_BOTH, makes the AltFire (secondary) attack use both ammo types.
  • WEAPON.WIMPY_WEAPON
A small weapon with limited capabilities. If ammo for something better gets picked up the game will automatically switch weapons.
  • WEAPON.POWERED_UP
This is a powered up weapon. Powered up weapons cannot exist by themselves. They always are linked to a normal weapon via the weapon.sisterweapon property and are only activated by using Heretic's Tome of Power or another artifact based on PowerWeaponLevel2.
  • WEAPON.STAFF2_KICKBACK
Uses the special kickback formula of Heretic's powered up staff. Unlike normal kickback this is a fixed thrust value.
  • WEAPON.EXPLOSIVE
Signifies to bots that the weapon fires explosive projectiles.
  • WEAPON.MELEEWEAPON
Signifies to bots, and to monsters with the AVOIDMELEE flag, that the weapon is a melee weapon.
  • WEAPON.BFG
Signifies to bots that the weapon causes a lot of damage.
  • WEAPON.CHEATNOTWEAPON
Weapon is not given by the 'give weapons' cheat.
  • WEAPON.NO_AUTO_SWITCH
When the player picks this weapon up, they will never automatically switch to it.
  • WEAPON.NOAUTOAIM
A weapon with that flag will not adjust the aim of an attack, no matter the player's autoaim settings. This is intended to be used only for projectiles affected by gravity, such as grenades, where the player will usually want to aim higher than in a straight line, though it does also affect hitscan and railgun attacks. Warning: This flag will not fully turn off autoaim in Skulltag/Zandronum like it does in ZDoom. If used in those ports it will only disable vertical autoaim, keeping horizontal autoaim turned on for the weapon.

Players

  • PLAYERPAWN.NOTHRUSTWHENINVUL
Player is not thrusted by attacks when invulnerable.
  • PLAYERPAWN.CANSUPERMORPH
If this flag is given to a player morph, the morphed player recieves a tome of power if they are attempted to be morphed again. This is used by the chicken morph to reproduce the original behavior of Heretic and its "super chickens".
  • PLAYERPAWN.CROUCHABLEMORPH (New from 2.7.1)
Enables crouching for morphed player classes.


Skulltag Specific flags

For Skulltag specific flags see Skulltag actor Flags.