In this point I'll detail my findings, all of this is thanks to the open nature of Raze and the source port where exhumed support was based on.
The following zip contains an Hex Workshop bookmark file for PISTOL.SEQ alongside a severely (mangled) modified pistol.seq that can be loaded with exhumed.
Code: Select all
Pistol SEQ short identifier | Always DS for weapons? short gPosX | Global x position short gPosY | Global y position short seqNum | Number of sequences short*seqNum seqBegin | Starting frame of sequences short*seqNum seqLength | Duration for each sequences short*seqNum seqFlags | Flags for each sequences short frameNum | Number of frames short*frameNum frameChunk | Which chunk to use for this frame short*frameNum frameLen | Duration of the frame on screen (new frames draw over) short*frameNum frameFlags | 4 = Light, 128 = Weapon Action (Fire Bullet) short chunkNum | Number of chunks short*chunkNum chunkX | X position of chunk short*chunkNum chunkY | Y position of chunk short*chunkNum chunkPic | ID of sprite inside .art file short*chunkNum chunkFlags | Flags of each chunks short soundNum | Number of sounds long*soundNum soundFile | Filename of the sound (8 characters each) short svarNum | Number of sound variables short*svarNum svarValue1 | Sound variable 1 (Unknown, may be related to volume or frame/chunk to play in) short*svarNum svarValue2 | See Above Chunks, Frames and Sequences: The SEQ file is segmented into 3 major pieces, Chunks, Frames and Sequences. Chunks are the sprites themselves, think of them as the frames in a decorate/zscript actor definition, they point to the image file and have two values that work similarly to the offset keyword. Frames define an additional parameter for chunks and are laid out in sequence, they have a length parameter but this does not impact the duration of the whole sequence, instead, it dictates how long the frame is displayed on screen, with the following frames rendering on top, creating an overlay effect. Sequences have a starting frame and a duration, when the sequence is called, it calls the first frame and starts playing all the subsequent frames at a constant and unmodifiable speed (seemingly 1 frame per tic), until the amount of frames played is equal to the duration of the sequence. Bitflags are available for all 3 sections, but I have only seen Frame flags have any use, with 4 displaying the frame in full brightness and 128 calling the weapon's firing action, like firing a pistol bullet or shooting a serpent projectile, which action happens isn't defined in the seq.