Jump to content
  • 0

Monster hurting itself while moving


Ani

Question

I'm editing an Annihilator monster by putting it into a PK3 and removing the homing rockets. But whenever I wake the monster up, it keeps hurting itself while attacking and moving despite me not shooting at it. Did I do something wrong in the decorate? I'm new to making monsters but I'm really confused and I would like someone to look into the decorate script and tell me what I need to fix cause I really don't get what I'm doing wrong.

test1.zip

Edited by Ani

Share this post


Link to post

7 answers to this question

Recommended Posts

  • 0

Long shot, but A_CustomMissile has a pitch miscalculation bug in it, and is deprecated. Does this still happen with A_SpawnProjectile?

Share this post


Link to post
  • 0
10 minutes ago, Dark Pulse said:

Long shot, but A_CustomMissile has a pitch miscalculation bug in it, and is deprecated. Does this still happen with A_SpawnProjectile?

Lemme try replacing custom missile with spawn projectile... nope. Still stopping in pain. What do you suggest I should do?

Share this post


Link to post
  • 0

You have two weirdly placed A_Jump pointers that happen 50% of the time

 

States 
   {    
   Spawn: 
       ANNI AB 10 A_Look 
       Loop 
   See: 
       ANNI A 3 A_Playsound ("monster/anhoof")
       ANNI ABBCC 3 A_Chase 
       ANNI D 3 A_Playsound ("monster/anhoof") 
       ANNI D 3 A_Chase 
       Loop 
   Missile:
       ANNI E 0 A_Jump (128,11) //50% of the time it skips attacking and jumps 11 frames, right to the pain state
       ANNI E 6 A_FaceTarget 
       ANNI F 0 Bright A_CustomMissile ("Rocket2",40,27,0)
       ANNI F 12 Bright A_CustomMissile ("Rocket2",40,-27,0)
       ANNI E 12 A_FaceTarget 
       ANNI F 0 Bright A_CustomMissile ("Rocket2",40,27,0)
       ANNI F 12 Bright A_CustomMissile ("Rocket2",40,-27,0) 
       ANNI E 12 A_FaceTarget 
       ANNI F 0 Bright A_CustomMissile ("Rocket2",40,27,0)
       ANNI F 12 Bright A_CustomMissile ("Rocket2",40,-27,0)
       ANNI E 0 A_Jump (128,1) //50% of the time after attacking it jumps 1 frame (skipping the Goto redirect), once again to the pain state
       Goto See 
   Pain: 
       ANNI G 10 A_Pain
       Goto See
   Death: 
       ANNI H 10 Bright
       ANNI I 10 Bright A_Scream 
       ANNI JKL 10 Bright
       ANNI M 10 Bright A_NoBlocking 
       ANNI NO 10 Bright
       ANNI P 30 
       ANNI P -1 A_BossDeath
	   Stop
   } 

 

The Annihilator isn't actually damaging itself when this happens, but there's no real reason for those jumps to be there in the first place... although I should probably point out that independent of this, your Annihilator lacks the "+NORADIUSDMG" flag, which means that not only will the player's rockets deal more damage to it (unlike the regular Cyberdemon and Spidermastermind, which are immune to splash damage entirely), it can also kill itself from its own missiles' splash damage (also unlike the regular Cyberdemon). In general I would more often than not recommend having this flag set if a monster has an explosive projectile in order to prevent the player from being able to cheese the enemy on a corner.

Edited by SMG_Man

Share this post


Link to post
  • 0

Figured it out.

 

Your ANNI E 0 A_Jump (128,11) line is wrong, and that instead of counting Goto See like you think it does, it's really skipping to the 11th frame after that - which in this case, just so happens to be ANNI G 10 A_Pain. Gotos do NOT count as a frame.

 

Try changing that line to ANNI E 0 A_Jump (128,10). This will put it at your second A_Jump, but then again... the exact same thing happens with ANNI E 0 A_Jump (128,1). That 1 will also jump to the A_Pain.

 

Arguably you can just cut this line out though, since as-is you intend it to go to the See state anyway (with a 50/50 chance?), but if a check on A_Jump fails it will just go to the next frame/instruction anyway, which would be Goto See.

Edited by Dark Pulse

Share this post


Link to post
  • 0
6 minutes ago, SMG_Man said:

 

Ah I see now! It finally works as I intended! Thanks a lot you two! Appreciated it!

Share this post


Link to post
  • 0

If you are not sure about numbered jumps, you can use dirct jumps like this A_Jump(128, "pain).

Im really wondering why people insist on using on numbered jumps, while they dont know how to use it correctly.

Share this post


Link to post
  • 0
1 hour ago, ramon.dexter said:

 

I only wanted to get the annihilator to stop blasting homing missiles and I got what needed to know. Just to experiment on mods and where to start off in making custom monsters.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...