Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
ChamesyGaming

Creating a BFG Cyberdemon?? (solved)

Recommended Posts

Hey all

 

Can someone please refer me to a way of making a custom monster, basically I want to make a Cyberdemon that shoots BFG rounds is slightly different colored and twice as large and twice as strong (though I do know how to do simple stuff like height and health via basic DECORATE modifications)

 

Im very new to all this so I apologize im probably one of many that ask this a lot.

 

Thank you!      

Edited by ChamesyGaming

Share this post


Link to post

https://zdoom.org/wiki/Creating_new_monsters_or_other_complex_items

 

It would also be easy enough to make this monster in DECORATE using inheritance and changing his missile state. I also assuming you want him twice as large with twice the health.

actor BFGCyberdemon : Cyberdemon 10000
{
 Health 8000
 Height 220
 Radius 80
 Speed 24 //50% faster than base cyberdemon
 Scale 2 //This will make the sprite twice as large
 +DONTTHRUST //This will prevent your projectiles from making him move
 states:
 {
  Missile:
  CYBR E 6 A_FaceTarget
  CYBR F 20 A_SpawnProjectile ("BFGBall") //This is the action to call for custom missile attacks.
  goto See
 }
}

 

Share this post


Link to post

Success! I used the DECORATE method. Now I just might need to figure out how to move the projectile sprite up a bit so it doesnt look like he is shooting BFG rounds out from his groin Screenshot_Doom_20180801_204747.png.9ebd542598c6a6fd24ede6e85ca5bb3c.png

Share this post


Link to post

This function should fix that:

CYBR F 20 A_SpawnProjectile ("BFGBall", 96)

Change that number 96 until the projectile height looks proper. It should appear 96 units above the floor with the function above.

Share this post


Link to post

Is there any way to reduce the 3 shot burst to just 1 shot? Im kinda liking the challenge of dodging 3 BFG rounds but kinda not as well. Just curious if that is infact possible as well 

Share this post


Link to post

Okay yeah I see that solved it now I know how to add more or less attacks now, this has made it so much easier to just ask the specifics instead of rooting around trying to find the answer and I have learnt a lot already. COOL!

Share this post


Link to post
32 minutes ago, Aquila Chrysaetos said:

The original code I wrote above makes the cyberdemon shoot only once. Just copy that Missile state and replace the one you have and he'll shoot once.

Also he can made something like this:

 

...

Missile:

TNT1 A 0 A_Jump(128,"See")

CYBR E 6 A_FaceTarget

CYBR F 20 A_SpawnProjectile ("BFGBall",96,-25)

Loop

...

For ChamesyGaming, that will made your BFG Cyberdemon attack loop.

And he have chance to stop attack loop 

Share this post


Link to post
2 minutes ago, Aquila Chrysaetos said:

About half the time he'll shoot again, and Chamesy made it clear he wanted it to shoot one shot.

Oh... Dont read topic, sorry ><

Share this post


Link to post
1 hour ago, Zord said:

Also he can made something like this:

 


...

Missile:

TNT1 A 0 A_Jump(128,"See")

CYBR E 6 A_FaceTarget

CYBR F 20 A_SpawnProjectile ("BFGBall",96,-25)

Loop

...

For ChamesyGaming, that will made your BFG Cyberdemon attack loop.

And he have chance to stop attack loop 

 

A more appropriate way to implement a looping monster attack would be A_MonsterRefire.      It makes the monster check if you're still within reach before shooting, and variations of this function is what all continuously shooting enemies (Spider Mastermind, Arachnotron, Chaingunner...) use.

Share this post


Link to post
12 hours ago, Scypek2 said:

 

A more appropriate way to implement a looping monster attack would be A_MonsterRefire.      It makes the monster check if you're still within reach before shooting, and variations of this function is what all continuously shooting enemies (Spider Mastermind, Arachnotron, Chaingunner...) use.

Okay so would I wright it out like this -> TNT1 A 0 A_MonsterRefire (128, "See")

 

been having a bit of a play around and I think im liking this behavior the best so far ->  

 

Missile:
    CYBR E 6 A_FaceTarget
    CYBR F 20 A_SpawnProjectile ("BFGBall", 96, -25)
    TNT1 A 0 A_MonsterRefire (128, "See")
    Goto See 

 

Im not having it loop as it is too much to deal with I think.

 

This setup seems to make it so that he is slightly more aggressive than having it setup like this ->

 

Missile:

CYBR E 6 A_FaceTarget

CYBR F 20 A_SpawnProjectile ("BFGBall")

Goto See

 

Which im liking, might just be having a placebo on me though and im just thinking he is slightly more aggressive not entirely sure haha

 

Thanks everyone for your input! 

 

 

 

Share this post


Link to post
4 hours ago, ChamesyGaming said:

Okay so would I wright it out like this -> TNT1 A 0 A_MonsterRefire (128, "See")

 

been having a bit of a play around and I think im liking this behavior the best so far ->  

 

Missile:
    CYBR E 6 A_FaceTarget
    CYBR F 20 A_SpawnProjectile ("BFGBall", 96, -25)
    TNT1 A 0 A_MonsterRefire (128, "See")
    Goto See 

 

Im not having it loop as it is too much to deal with I think.

 

This setup seems to make it so that he is slightly more aggressive than having it setup like this ->

 

Missile:

CYBR E 6 A_FaceTarget

CYBR F 20 A_SpawnProjectile ("BFGBall")

Goto See

 

Which im liking, might just be having a placebo on me though and im just thinking he is slightly more aggressive not entirely sure haha

 

Thanks everyone for your input!

 

 

Haha, yeah, I'm pretty sure that's placebo effect! A_MonsterRefire function already goes to See, so if you wanted a looped attack, you'd have to end the state with "goto missile" instead. But that would've made the cyberdemon a lot more aggressive, shooting constantly until you hide and then some! You mentioned you just want him to shoot once, so I was mostly replying to @Zord.

Share this post


Link to post

Haha okay yeah had a feeling, might clean that back up then if its no use being there. Still good to know though! But yeah just wanting him to shoot once each time he goes to attack. Is there a way to make him shoot a little more frequently when he sees you without it being a burst of shots?   

Share this post


Link to post

Legend thank you! I was actually having a play around with that at one point but didnt try using a lower number instead of a higher number 

 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×