der_einzige Posted August 31, 2018 I was trying to make a decoration of a burning corpse that is burning, and with lopping sprites, so it would it would look like the fire is actually moving (like it would in real life). However, I had a problem while testing this. Instead of looping sprites, I noticed something, the sprites only change when I am walking around the corpse in-game. My code States { Spawn: BODY A 1 BODY A 2 BODY A 3 Loop } BODY A 1, BODY A 2, and BODY A 3 are all just sprites with slightly textures. I was hoping that the way it would work is that it automatically loops, but instead, I can view the different sprites by walking around the corpse. 0 Share this post Link to post
snapshot Posted August 31, 2018 Looking at this piece of code, It looks like you're only using 1 frame, so it doesn't animate and is only stuck at that frame, to make it animate, you need to insert more frame letters, so that it would look something like this: States { Spawn: BODY A 1 BODY B 2 BODY C 3 Loop } This will make the actor display A, B and C frames then loop back to the first, 1,2 and 3 are actually the duration between each state, and not the frame numbers, looks like you got some things mixed up, Read more about state definitions here. 1 Share this post Link to post
der_einzige Posted August 31, 2018 1 hour ago, tempdecal.wad said: Looking at this piece of code, It looks like you're only using 1 frame, so it doesn't animate and is only stuck at that frame, to make it animate, you need to insert more frame letters, so that it would look something like this: States { Spawn: BODY A 1 BODY B 2 BODY C 3 Loop } This will make the actor display A, B and C frames then loop back to the first, 1,2 and 3 are actually the duration between each state, and not the frame numbers, looks like you got some things mixed up, Read more about state definitions here. I have in the past only made maps and I'm new to spriting, I've been wondering about the sprite names, is there any difference between "NAME A 1" and "NAME E 1", why would that code work, but not my code? 0 Share this post Link to post
snapshot Posted August 31, 2018 (edited) The difference between NAME A 1 and NAME E 1 is, obviously, the frame letter, the first one displays the A frame, wheras the second displays the E frame. Your code works, but not properly, because it's basically stuck in 1 frame (which is A), so it doesn't animate ingame. 0 Share this post Link to post
Space Marinara Posted August 31, 2018 Just to be sure- your filenames end with a zero? 0 Share this post Link to post
kb1 Posted September 1, 2018 The letter denotes which frame (image) will be displayed. This corresponds with the lumpname: Lump "NAMEA1": The sprite name is the first four characters "NAME", and this is frame "A", and 1 = the angle, as follows: 1 = 6 o'clock (looking right at you) 2 = 7:30 (looking to the right of you) 3 = 9:00 (turned to the left) 4 = 10:30 5 = 12:00 (looking away from you) 6 = 1:30 7 = 3:00 8 = 4:30 Use 0 for a sprite that does not rotate, like Doom's blue +1 health bottle. It has the following lumps: BON1A0 BON1B0 BON1C0 BON1D0 (forget the 1 here, that's part of the sprite name). So you have 4 frames of animation here (A thru D), for a sprite that does not rotate (hence "0"). Lump names come in 2 different formats: Format #1: NNNNFR, where "NNNN" = sprite name, F = frame letter, and R = rotation (0, or 1 thru 8. Some ports also support 8 more rotations using "A" thru "H"). Format #2: NNNNFRfr, same as above, with the addition of another frame letter ("f") and another rotation ("r"). This allows a single image to be used for 2 different frames/rotations. When the alternate frame/rotation is used, the image is drawn inverted along the vertical axis. Example: BOS2A2C8: This image is drawn normally for frame A when the monster is looking towards 7:30. This image is also drawn inverted during frame C, if the monster is looking towards 4:30. Basically, when the engine is rendering the sprites, and realizes that it needs to draw frame C of BOS2, looking towards 4:30, it looks for a lump that can satisfy this need. If there was a BOS2C8 lump, it would draw that image un-inverted. But, that lump doesn't exist. However, the engine does find BOS2A2C8, so it uses that. And, because the "C8" is in the alternate position in the lump name, the engine inverts the image. If none of those lumps existed, but a BOS2C0 lump did exist, the engine would use that lump to draw frame C of BOS2. And, because the rotation is defined as "0" in the lump name, this image would be used regardless of which way Doom thinks the monster is looking. Hope that helps. 0 Share this post Link to post
der_einzige Posted September 1, 2018 (edited) 6 hours ago, Space Marinara said: Just to be sure- your filenames end with a zero? Not when I wrote this, however, I changed them to NAMEA0, NAMEB0 and NAMEC0, and now they don't work at all. I changed the names also from the DECORATE, so that can't be the issue either. 0 Share this post Link to post
der_einzige Posted September 1, 2018 3 hours ago, kb1 said: Use 0 for a sprite that does not rotate, like Doom's blue +1 health bottle. It has the following lumps: BON1A0 BON1B0 BON1C0 BON1D0 This is exactly what I have now, yet only the yellow exclamation mark shows in game. See my reply to Space Marinara 0 Share this post Link to post
kb1 Posted September 1, 2018 3 hours ago, der_einzige said: This is exactly what I have now, yet only the yellow exclamation mark shows in game. See my reply to Space Marinara You know, I checked your profile: 15 posts, and most were about, or related to custom sprites. And, in your last thread, you claimed that you were getting the yellow "Sprite not found" exclamation point when you try to test your maps. I replied, stating that you could get a quick answer to your problems by posting your WAD, and that this would avoid a lot of back-and-forth posting, and "try-this, try-that" stuff. You didn't reply, and you didn't post your map, and as a result, you've spawned a lot of back-and-forth posting, and "try-this, try-that" stuff :) Post an example my friend! The experts here will be able to identify what's wrong immediately, I assure you. (And, if you're worried someone will see your super-duper secretive stuff... don't be: we've seen it all). Or, you know, try this, try that. 0 Share this post Link to post
Nevander Posted September 1, 2018 Yes, as @kb1 said, we could resolve your issue instantly if you post your wad having the issue. 0 Share this post Link to post
Space Marinara Posted September 1, 2018 6 hours ago, der_einzige said: Not when I wrote this, however, I changed them to NAMEA0, NAMEB0 and NAMEC0, and now they don't work at all. I changed the names also from the DECORATE, so that can't be the issue either. That looks right, does the decorate looks like this?: States { Spawn: NAME A 1 NAME B 1 NAME C 1 Loop } Those 1s can be increased (try equally at first) for slower animation. 35 = 1 second delay between frames. Posting the file would be a great help as well... 0 Share this post Link to post