DeHackEd / BEX Reference/Frame Block

From Eternity Wiki
Jump to navigationJump to search

The DeHackEd Frame block allows you to edit the properties of frames used both by monsters and by player weapons. This allows extensive customization of AI and attacks.

Eternity provides several extensions to the DeHackEd frame block. Extended fields will be noted as such in their descriptions.

Back to DeHackEd / BEX Reference

Syntax[edit]

A brief explanation of the syntax description:

Items in angle brackets (< >) are required.

Items in square brackets ([ ]) are optional.

All fields in the block are optional. If a field is not provided, that value of the frame being edited will not change.

  Frame <dehacked number>
  Sprite number = <sprite number>
  Sprite subnumber = <number>
  Duration = <number>
  Next frame = <frame number>
  Unknown 1 = <number>
  Unknown 2 = <number>
  # The following fields are Eternity extensions
  Particle event = <number>
  Args1 = <number>
  Args2 = <number>
  Args3 = <number>
  Args4 = <number>
  Args5 = <number>
  Args6 = <number>
  Args7 = <number>
  Args8 = <number>

Explanation of special information:

dehacked number is the DeHackEd number of the frame that this block edits. The DeHackEd number of a frame is defined in its EDF frame definition.

Fields[edit]

Sprite number = <sprite number>[edit]

Sets the sprite to be displayed by an object or gun using this frame. Must be a valid sprite number between 0 and the max number of sprites currently defined minus 1. The number of sprites is dependent upon the number of sprites defined via EDF.

Sprite subnumber = <number>[edit]

Sets the frame of the sprite to be displayed when this frame is entered. Sprite subnumbers correspond directly to the letters used to identify sprite frame graphics in the wad, starting with 0 = A, 1 = B, etc.

Duration = <number>[edit]

Sets the duration of time a thing or gun will remain in this frame. Duration is of unit "tics," and there are 35 tics per second. This means that a frame lasting 35 tics will last exactly 1 second. A Duration value of 0 allows a thing to pass through multiple frames in a single gametic. A Duration value of -1 means that the thing will remain in this frame forever.

Next frame = <frame number>[edit]

Indicates what frame the thing or gun will proceed to after completing this one. Must be a valid frame DeHackEd number. Note that frame 0 is treated specially, and objects that transfer to it may be removed by the game engine.

Unknown 1 = <number>[edit]

This field, for player gun frames, can alter the position of the gun graphic on screen. Use of the field for this purpose is deprecated, however, and is not recommended. This field also serves as a parameter to some MBF parameterized codepointers.

Unknown 2 = <number>[edit]

As above.

Particle event = <number>[edit]

This Eternity extension allows a frame to specify a particle event that it can trigger. Particle events are triggered immediately after the frame's codepointer function is executed.

Particle Events Currently Available:

   Number  Effect    
   -----------------------------------------------------------
   0       None
   1       Rocket explosion particle burst
   2       BFG explosion particle burst
   -----------------------------------------------------------
   

Args1 - Args8[edit]

These fields are an Eternity extension which allows extended parameters to be used by the codepointer in this frame. Parameterized codepointers are extremely powerful, allowing frame-specific customization of attacks, AI actions, sound, etc. See the Eternity Engine Definitive Codepointer Reference for further information.