From DoomWiki.org

There's a discussion about creating/updating Thing data tables by compiling the source code's info.c (and friends) into a working C program to extract the information directly from the mobjinfo, state, sprite and sound tables. Here's more information that's too voluminous for that main topic.

Thing Flags[edit]

The descriptions used in DMINFO/HTINFO sometimes deviate from the old, reverse-engineered DHE/HHE ones because the enum names and comments in the source files helped to make them more accurate and, err, descriptive.

Doom[edit]

In Doom, things/mobj's have one flags field. This table lists their numbers and descriptions:

Flag DHE description Source enum DMINFO description
0 Can be picked up MF_SPECIAL Can be picked up
1 Obstacle MF_SOLID Obstacle
2 Shootable MF_SHOOTABLE Shootable
3 Total invisibility MF_NOSECTOR No sector links (Invisible)
4 Can't be hit MF_NOBLOCKMAP No blocklinks (Inert)
5 Semi-deaf MF_AMBUSH Ambush (Semi-deaf)
6 In pain MF_JUSTHIT Just hit (In pain)
7 Steps before attack MF_JUSTATTACKED Just attacked (Step first)
8 Hangs from ceiling MF_SPAWNCEILING Hangs from ceiling
9 No gravity MF_NOGRAVITY No gravity
10 Travels over cliffs MF_DROPOFF Drops off ledges
11 Picks up items MF_PICKUP Picks up items
12 No clipping MF_NOCLIP No clipping
13 Slides along walls MF_SLIDE Sliding along walls
14 Floating MF_FLOAT Floating
15 Semi-no clipping MF_TELEPORT No line crossing
16 Projectiles MF_MISSILE Projectile
17 Disappearing weapon MF_DROPPED Dropped by enemy
18 Partial invisibilty MF_SHADOW Partial invisibility
19 Puffs (vs. bleeds) MF_NOBLOOD Puffs vs. blood
20 Sliding helpless MF_CORPSE Sliding corpse
21 No auto-leveling MF_INFLOAT No auto-leveling
22 Affects Kill % MF_COUNTKILL Affects kill %
23 Affects Item % MF_COUNTITEM Affects item %
24 Running MF_SKULLFLY Flying skull
25 Not in deathmatch MF_NOTDMATCH Not in deathmatch

Heretic[edit]

Heretic has the same flags field along with a flags2 field:

Flag HHE description Source enum HTINFO description
0 Subject to Inertia MF2_LOGRAV Alternate gravity
1 Blown by Wind MF2_WINDTHRUST Wind can thrust
2 Bounces MF2_FLOORBOUNCE Bounces off floor
3 Goes Through Invis MF2_THRUGHOST Missile passes thru ghosts
4 Pushable Up Cliffs MF2_FLY Flying
5 Walks In Liquids MF2_FOOTCLIP Feet can be clipped
6 Starts on Floor MF2_SPAWNFLOAT Spawn random float height
7 Does Not Teleport MF2_NOTELEPORT No teleport
8 Dragon Claw Spikes MF2_RIP Missile rips thru solid
9 Pushable MF2_PUSHABLE Pushable
10 Only Hits Monsters MF2_SLIDE Slide against walls
11 Unknown MF2_ONMOBJ On top of mobj
12 Unknown MF2_PASSMOBJ Pass over/under mobj
13 Particles MF2_CANNOTPUSH Cannot push other pushables
14 Unknown MF2_FEETARECLIPPED Feet are being clipped
15 Varying Damage MF2_BOSS Major boss
16 Causes Burning Death MF2_FIREDAMAGE Fire damage
17 Does Not Push Things MF2_NODMGTHRUST No damage thrust
18 Telefrags MF2_TELESTOMP Can stomp (Telefrag)
19 Bobbing MF2_FLOATBOB Float bobbing movement
20 Unknown MF2_DONTDRAW No vissprite

Hexen[edit]

The flags and flags2 fields in Hexen have a few bits that differ from Heretic, so here are both in their entirety:

Flag Source enum HXINFO description
0 MF_SPECIAL Can be picked up
1 MF_SOLID Obstacle
2 MF_SHOOTABLE Shootable
3 MF_NOSECTOR No sector links (Invisible)
4 MF_NOBLOCKMAP No blocklinks (Inert)
5 MF_AMBUSH Ambush (Semi-deaf)
6 MF_JUSTHIT Just hit (In pain)
7 MF_JUSTATTACKED Just attacked (Step first)
8 MF_SPAWNCEILING Hangs from ceiling
9 MF_NOGRAVITY No gravity
10 MF_DROPOFF Drops off ledges
11 MF_PICKUP Picks up items
12 MF_NOCLIP No clipping
13 MF_SLIDE Sliding along walls
14 MF_FLOAT Floating
15 MF_TELEPORT No line crossing
16 MF_MISSILE Projectile
17 MF_ALTSHADOW Alternate shadow
18 MF_SHADOW Partial invisibility
19 MF_NOBLOOD Puffs vs. blood
20 MF_CORPSE Sliding corpse
21 MF_INFLOAT No auto-leveling
22 MF_COUNTKILL Affects kill %
23 MF_ICECORPSE Frozen corpse
24 MF_SKULLFLY Flying skull
25 MF_NOTDMATCH Not in deathmatch
26-28 MF_TRANSLATION Use translation table
Flag Source enum HXINFO description
0 MF2_LOGRAV Alternate gravity
1 MF2_WINDTHRUST Wind can thrust
2 MF2_FLOORBOUNCE Bounces off floor
3 MF2_BLASTED Projectile pass thru ghost
4 MF2_FLY Flying
5 MF2_FLOORCLIP Feet can be clipped
6 MF2_SPAWNFLOAT Spawn random float height
7 MF2_NOTELEPORT No teleport
8 MF2_RIP Projectile rips thru solid
9 MF2_PUSHABLE Pushable
10 MF2_SLIDE Slide against walls
11 MF2_ONMOBJ On top of mobj
12 MF2_PASSMOBJ Pass over/under mobj
13 MF2_CANNOTPUSH Cannot push other pushables
14 MF2_DROPPED Dropped by monster
15 MF2_BOSS Major boss
16 MF2_FIREDAMAGE Fire damage
17 MF2_NODMGTHRUST No damage Thrust
18 MF2_TELESTOMP Can stomp (Telefrag)
19 MF2_FLOATBOB Float bobbing movement
20 MF2_DONTDRAW No vissprite
21 MF2_IMPACT Projectile can impact
22 MF2_PUSHWALL Can push walls
23 MF2_MCROSS Activates monster cross line
24 MF2_PCROSS Activates projectile cross line
25 MF2_CANTLEAVEFLOORPIC Stay on floor type
26 MF2_NONSHOOTABLE Non-shootable but solid
27 MF2_INVULNERABLE Invulnerable
28 MF2_DORMANT Dormant
29 MF2_ICEDAMAGE Does ice damage
30 MF2_SEEKERMISSILE Seeker projectile
31 MF2_REFLECTIVE Reflects projectiles

Strife[edit]

The flags field in Strife has a few bits that differs from Doom:

Flag Source enum SFXINFO description
0 MF_SPECIAL Can be picked up
1 MF_SOLID Obstacle
2 MF_SHOOTABLE Shootable
3 MF_NOSECTOR No sector links (Invisible)
4 MF_NOBLOCKMAP No blocklinks (Inert)
5 MF_STAND Stand around
6 MF_JUSTHIT Just hit (In pain)
7 MF_JUSTATTACKED Just attacked (Step first)
8 MF_SPAWNCEILING Hangs from ceiling
9 MF_NOGRAVITY No gravity
10 MF_DROPOFF Drops off ledges
11 MF_GIVEQUEST Quest item
12 MF_NOCLIP No clipping
13 MF_FEETCLIPPED Feet are being clipped
14 MF_FLOAT Floating
15 MF_NODIALOG Can NPC talk
16 MF_MISSILE Projectile
17 MF_DROPPED Dropped by enemy
18 MF_SHADOW Partial invisibility
19 MF_NOBLOOD Puffs vs. blood
20 MF_CORPSE Sliding corpse
21 MF_INFLOAT No auto-leveling
22 MF_COUNTKILL Affects kill %
23 MF_AMBUSH Ambush (Semi-deaf)
24 MF_BOUNCE Bouncing projectile
25 MF_NOTDMATCH Not in deathmatch
26 MF_ALLY Allied player
27 MF_MVIS Transparency
28 MF_COLORSWAP1 Color swap 1
29 MF_COLORSWAP2 Color swap 2
30 MF_COLORSWAP3 Color swap 3
31 MF_SPECTRAL Spectral entity