[Monster]Vore from Quake

Sprites, textures, sounds, code, and other resources belong here. Share and share-alike!
Forum rules
Before posting your Resource, please make sure you can answer YES to any of the following questions:
  • Is the resource ENTIRELY my own work?
  • If no to the previous one, do I have permission from the original author?
  • If no to the previous one, did I put a reasonable amount of work into the resource myself, such that the changes are noticeably different from the source that I could take credit for them?
If you answered no to all three, maybe you should consider taking your stuff somewhere other than the Resources forum.

Consult the Resource/Request Posting Guidelines for more information.

Please don't put requests here! They have their own forum --> here. Thank you!

Re: [Monster]Vore from Quake

Postby Captain Awesome » Thu Apr 05, 2012 4:41 pm

Image

This is great.
User avatar
Captain Awesome
 
Joined: 09 Aug 2009
Location: U.S.A.

Re: [Monster]Vore from Quake

Postby .+:icytux:+. » Thu Apr 05, 2012 5:27 pm

Heh, I remember being amazed at how the revenants seekermissiles worked in hideous destructor. It used a very similar code to make the missiles home around corners :P
User avatar
.+:icytux:+.
Mr. Happy of the Day!
 
Joined: 17 May 2007
Location: Finland

Re: [Monster]Vore from Quake

Postby Snarboo » Fri Apr 06, 2012 11:43 am

I can't help but feel that there is a more efficient way of writing that missile code without duplicating it for every single frame of animation. I'll have to experiment with this.

Edit:
Okay, I have no idea if this will work, but it's worth a try!

Code: Select allExpand view
Actor XtRevenantTracer replaces RevenantTracer
{
var int user_theta; // <-- This is the important part!
*Snip*
States
   {
   Spawn:
      TNT1 A 0
      TNT1 A 0 A_PlaySound ("skeleton/ballloop", 6, 1, 1)
      RVTR AB 2 Bright
      Goto SpawnLoop
   SpawnLoop:
      RVTR A 0 A_SetUserVar ("user_theta", 0)
       "####" "#" 1 BRIGHT A_SetUserVar ("user_theta", user_theta+1)
      "####" "#" 0 A_SpawnItemEx ("XtRevenantTracerTrail", Random(-10,10), Random(-10,10))
      "####" "#" 0 A_GiveToTarget ("XtRevenantTracerToken", 1)
      "####" "#" 0 A_JumpIfTargetInLOS(3, 360, 1)
      "####" "#" 0 A_JumpIf (user_theta >=4, "SpawnLoop")
      "####" "#" 0 A_JumpIf (user_theta ==2, "FrameB")
      Goto SpawnLoop+1
      "####" "#" 0 A_SeekerMissile(90, 90, 2)
      "####" "#" 0 A_JumpIf (user_theta >=4, "SpawnLoop")
      "####" "#" 0 A_JumpIf (user_theta ==2, "FrameB")
      Goto SpawnLoop+1
   FrameB:
      RVTR B 0
      Goto SpawnLoop+1
   Death:
      TNT1 A 0 A_StopSound (6)
      FBXP A 4 Bright A_Explode (10, 64)
      FBXP BBBBCCCC 1 Bright A_FadeOut (0.05)
      Stop
   }
}


Assuming this works, this should cut down on redundant code by using frame inheritance!
User avatar
Snarboo
Bacon doesn't know it's not dogs
 
Joined: 29 Nov 2005

Re: [Monster]Vore from Quake

Postby NeuralStunner » Sat Apr 07, 2012 1:33 pm

Snarboo wrote:I can't help but feel that there is a more efficient way of writing that missile code without duplicating it for every single frame of animation.
There sure is! :P
User avatar
NeuralStunner
An Exercise in Self-Indulgence
 
 
 
Joined: 21 Jul 2009
Location: Indiana, USA
Discord: NeuralStunner#1293
Operating System: Windows Vista/7 64-bit

Re: [Monster]Vore from Quake

Postby Snarboo » Sat Apr 07, 2012 5:55 pm

Huh, I had no idea custom inventory items behaved like that. In that case, the code could be made even more efficient in theory. :p
User avatar
Snarboo
Bacon doesn't know it's not dogs
 
Joined: 29 Nov 2005

Re: [Monster]Vore from Quake

Postby Xtyfe » Sun Apr 08, 2012 10:03 am

Could the same be applied to this?

Code: Select allExpand view
   Chase:
      TNT1 A 0 A_SpawnItemEx ("XtRevenantStep", 10, 10, 15)
      SKEL A 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL A 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameA2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL A 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameA2
   FrameA2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL A 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameB1
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL A 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameB1
   FrameB1:
      SKEL B 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL B 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameB2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL B 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameB2
   FrameB2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL B 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameC1
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL B 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameC1
   FrameC1:
      SKEL C 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL C 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameC2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL C 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameC2
   FrameC2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL C 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameD1
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL C 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameD1
   FrameD1:
      TNT1 A 0 A_SpawnItemEx ("XtRevenantStep", 0, 0, 15)
      SKEL D 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory("XtRevenantTracerToken", 1, 2)
      SKEL D 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameD2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL D 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameD2
   FrameD2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL D 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameE1
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL D 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameE1
   FrameE1:
      SKEL E 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory("XtRevenantTracerToken", 1, 2)
      SKEL E 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameE2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL E 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameE2
   FrameE2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 2)
      SKEL E 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameF1
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL E 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameF1
   FrameF1:
      SKEL F 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_JumpIfInventory("XtRevenantTracerToken", 1, 2)
      SKEL F 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      Goto FrameF2
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL F 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      Goto FrameF2
   FrameF2:
      TNT1 A 0 A_JumpIfInventory ("XtRevenantTracerToken", 1, 3)
      SKEL F 2 A_Chase ("Melee", "Missile", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_Jump (96, "ActiveSound")
      Goto Chase
      TNT1 A 0 A_TakeInventory ("XtRevenantTracerToken", 1)
      SKEL F 2 A_Chase ("Melee", "", CHF_NOPLAYACTIVE)
      TNT1 A 0 A_Jump (96, "ActiveSound")
      Goto Chase
User avatar
Xtyfe
Neque Deos, Neque Dominos
 
Joined: 15 Dec 2007
Location: The Intertubes

Re: [Monster]Vore from Quake

Postby Z86 » Sun Apr 08, 2012 4:38 pm

Brightmaps done!

With lights disabled:
Screenshot_Doom_20120409_003350.png


Vore.zip
(116.92 KiB) Downloaded 40 times
User avatar
Z86
 
Joined: 24 Jan 2011

Re: [Monster]Vore from Quake

Postby VICE » Mon Apr 09, 2012 6:45 am

Don't know if this is intended, but I noticed that if I just barely dodge the vore's projectile and stand in place without moving, the projectile will orbit me instead of closing in. It will home in again once I've moved, though.
User avatar
VICE
The .ogg O.G
 
Joined: 28 Mar 2012
Location: Israel

Re: [Monster]Vore from Quake

Postby Ghastly » Mon Apr 09, 2012 8:37 am

Megaherz wrote:Don't know if this is intended, but I noticed that if I just barely dodge the vore's projectile and stand in place without moving, the projectile will orbit me instead of closing in. It will home in again once I've moved, though.

Yeah, I noticed that during testing. Hilariously, it's actually easier to pull off with the Revenant's fireball, but I've actually went ahead and fixed this. It can turn a full 180 degrees, if necessary, to home in on you.

@Z86: Awesome! I'll work that in. :D
User avatar
Ghastly
Rather ghastly
Spotlight Team
 
Joined: 06 Jul 2007

Re: [Monster]Vore from Quake

Postby Xtyfe » Mon Apr 09, 2012 12:22 pm

Ghastly_dragon wrote:
Megaherz wrote:Don't know if this is intended, but I noticed that if I just barely dodge the vore's projectile and stand in place without moving, the projectile will orbit me instead of closing in. It will home in again once I've moved, though.

Yeah, I noticed that during testing. Hilariously, it's actually easier to pull off with the Revenant's fireball, but I've actually went ahead and fixed this. It can turn a full 180 degrees, if necessary, to home in on you.

@Z86: Awesome! I'll work that in. :D


Speaking of which, hows that going?
User avatar
Xtyfe
Neque Deos, Neque Dominos
 
Joined: 15 Dec 2007
Location: The Intertubes

Re: [Monster]Vore from Quake

Postby Ghastly » Tue Apr 10, 2012 7:09 am

Xtyfe wrote:Speaking of which, hows that going?
Pretty well; I think I'm about ready for another beta.

Edit: http://dl.dropbox.com/u/67411518/Vore.zip

Can't remember all the changes, but I did make the around-corner behavior a bit more reliable (it now waits two tics or so before adjusting, but checks again if it still has LOS before adjusting), added the brightmaps, messed with some delays, added +NoTarget so they won't infight (pending a +DontInfightSpecies flag, hopefully), and played around with the walking animation a bit so it has that "stop-and-go" quality it has in Quake (Vader's suggestion).

How is this new version?
User avatar
Ghastly
Rather ghastly
Spotlight Team
 
Joined: 06 Jul 2007

Re: [Monster]Vore from Quake

Postby Clebardman » Tue Apr 10, 2012 10:53 am

try to crouch against him, it's glitchy :p. vore balls will just stack over your head until you change height, you can potientially force infights, etc.

i also guess you're trying to emulate his quake's behavior, but he is really REALLY slow, has a rather high painchance (attacks can be easily cancelled with a shotgun blast), doesn't deal that much damage (20 blast AoE vs 10-80 direct damage for the revenant), has no high single target damage/melee attack, and is rather big. if you take all this into account, you understand why a ~700hp fearsome boss can die to 3 imps at close range. My advice would be to give him a small buff in all those stats : pain chance, speed, and a faster attack animation to make it harder to cancel (this allows you to keep the 20 blast damage to stay closer to quake). That, or give him a 50 direct damage purple FALCOOOON... PUUUNCH ! to get rid of pesky melee opponents :p but that's not really quake-like.

the homing missile is really fun btw. if you manage to solve that crouching issue, it will be perfect ^^
Clebardman
 
Joined: 26 Apr 2009
Location: France

Re: [Monster]Vore from Quake

Postby VICE » Tue Apr 10, 2012 12:21 pm

My suggestion would be to give it some sort of weak shockwave attack that pushes everything away from itself if it's possible (with A_Explode?). That way they won't be completely helpless in melee, and it will have more opportunities to use the seeking shot in close quarters, after it pushes melee aggressors away to get a breather. Plus a purple energy shockwave thingey as an alternate attack still fits with the monster's style, in my opinion.
User avatar
VICE
The .ogg O.G
 
Joined: 28 Mar 2012
Location: Israel

Re: [Monster]Vore from Quake

Postby Clebardman » Tue Apr 10, 2012 2:30 pm

how to improve vore's concept huhu. that's what the sprites inspire me at least (and probably that delay in the attack animation you coded :p)
Image

edit : while i agree with you on a shockwave attack, i think ghastly_dragon wants to keep it as close as possible to quake's vore, at least for the bestiary. that's why i suggested lower pain chance and faster attack animation, it's nothing obvious like damage values or a new attack.
...but at the same time, all doom enemies that have a "claw" animation for fireballs also use it for a melee attack. so it would make sense to give that vore at least a simple melee attack. the decision is up to ghastly_dragon anyway ^^.
Clebardman
 
Joined: 26 Apr 2009
Location: France

Re: [Monster]Vore from Quake

Postby Ghastly » Tue Apr 10, 2012 3:25 pm

Just gave it a melee attack (Immediately falls through into the Missile state :P), lowered the pain chance, increased damage (50-70 damage), and slightly lowered the delay before throwing. I think this is as powerful as I want to make this. Can't fix the problem when you crouch, unfortunately.

Here it is: http://dl.dropbox.com/u/67411518/Vore.zip
Last edited by Ghastly on Wed Apr 11, 2012 7:32 pm, edited 2 times in total.
User avatar
Ghastly
Rather ghastly
Spotlight Team
 
Joined: 06 Jul 2007

PreviousNext

Return to Resources

Who is online

Users browsing this forum: No registered users and 3 guests