List of codepointers

From Eternity Wiki
Revision as of 13:01, 23 November 2019 by Printz (talk | contribs) (→‎Map objects)
Jump to navigationJump to search

This list of codepointers is a list of all the action routines which can be used in EDF frames. They are common for all games, so for example Heretic codepointers can be used in Doom.

You can specify the codepointers with or without their internal A_ prefix, even inside DECORATE state syntax. For simplicity, they will be referred in this wiki without the prefix.

Note that some codepointers, inherited from MBF, use the misc1 and misc2 frame properties, instead of the more general args list. Side effects aside, this also means that they will not be usable in the DECORATE syntax, but they all have DECORATE-compatible equivalents.

IMPORTANT: Do not provide more nonzero arguments to the codepointers than specified in the reference. Doing so may break forward compatibility with versions of Eternity that implement new functionality to codepointers.

Back to EDF state reference
Back to Eternity Engine

Player guns

Attacks

Parameterized

Classic

Control

Other

Muzzle flash effects

  • GunFlash: produces gunflash sprite without firing anything
  • Light0: resets the muzzle light level
  • Light1: muzzle light level 1
  • Light2

DOOM gun sound effects

Frame scripting

Map objects

Explosions

These are for area-of-effect damage, common with projectiles and bombs (e.g. barrels):

  • Explode: classic DOOM splash damage. Deals 128 damage in a 128 radius.
  • Detonate: like Explode, but uses the thingtype "damage" field.
  • DetonateEx: complete parameterized explosion.
  • HticExplode: Heretic-compatible explosion, with predefined special behaviour depending on parameter.
  • Mushroom: large mushroom explosion, from MBF.
  • Nailbomb: explosion with bullet shrapnels, from SMMU.

Projectile control

  • Tracer: one of the required components for homing missiles

Monster behaviour

These are designed mainly for monsters and similar shootable objects. The ones here are especially useful for any generic monster.

  • Look: stand in guard, looking for targets.
  • Chase: pursue a target and check for attack.
  • FaceTarget: turn to target, look around it if it's partly invisible.
  • CPosRefire: go to seestate if target is out of sight. Typical with sustained fire monsters.
  • SpidRefire: like CPosRefire but with slightly different reaction times.
  • Pain: play the pain sound.
  • Fall: typical during death, this removes the SOLID flag.
  • Scream: plays the death sound.
  • XScream: makes the extreme death (gib) sound.
  • BossDeath: special monster death functions (such as Baron death in E1M8)
  • KeenDie: open 666-tagged doors on death of all monsters of the same species.

Generic control

Classic monster actions

These are specific to the stock DOOM monsters and should only be used in mods if the new monsters are meant to be similar.

Simple monster attacks
Movement sound
  • Metal: metal (spiderdemon and cyberdemon) sound effect — also includes Chase!
  • BabyMetal: bspwlk (arachnotron) sound effect — also includes Chase!
  • Hoof: cyberdemon hoof sound — also includes Chase!
Pain elemental
  • PainAttack: elemental lost soul spawn
  • PainDie: elemental death action (3 lost souls spawn)
Revenant
Mancubus
Archvile
  • VileChase: same as Chase, but resurrecting encountered cadavers.
  • VileStart: archvile heat-up noise
  • VileTarget: spawn a vile fire effect on target
  • VileAttack: arch vile toss
  • StartFire: flamst sound effect — also includes "Fire" action!
  • Fire: stick on the face of attacker's target, like the vile fire
  • FireCrackle: flame sound effect — also includes "Fire" action!
DOOM 2 final boss

Player avatar behaviour

These are designed for the player-controlled thing (e.g. DoomMarine).

Various effects

These specials are more advanced than what's available in the classic games and do not belong specifically to projectile or monster usage

  • Face: face a specified angle
  • Stop: set velocity to 0
  • Turn: turn around a specified angle
  • Spawn: create another object on top of this one
  • LineEffect: activate a tag using a special

Sounds

Frame scripting

  • RandomJump: randomly decides to set current state to a chosen one.
  • Jump: like RandomJump but compatible with the Decorate-style state syntax.

Explosions and flames

BFG9000

Homing projectiles

Others

Heretic specific

AI

AI attacks

Parameterized

Heretic

Alterations

  • CasingThrust: movement for ejected casing
  • FadeIn: increments alpha
  • FadeOut: decrements alpha, DOESN'T destroy the thing
  • HideThing: Sets DONTDRAW flag on an object
  • KillChildren: destroy all summoned things
  • PainNukeSpec
  • RestoreArtifact: Adds the SPECIAL flag back to an object, sets the object back into its spawnstate, and plays the object's seesound.
  • RestoreSpecialThing1: Removes the DONTDRAW flag from an object. If the object defines the itemrespawnat property, it will at this time be moved to a random spot if any such spots exist on the map (otherwise the item will remain where it spawned originally). The item will play its seesound.
  • RestoreSpecialThing2: Adds the SPECIAL flag back to an object and sets the object back into its spawnstate.
  • SetFlags: alter flags
  • SetTranslucent: modify alpha amount; setup additiveness or fuzziness
  • ShowMessage: display text message
  • SteamSpawn: create steam effects
  • UnHideThing: Unsets DONTDRAW flag on an object
  • UnSetFlags: alter flags

Heretic

Sound effects

Frame scripting