Hell-Forged - Episode 2 (Restarting Eventually)

For Total Conversions and projects that don't otherwise fall under the other categories.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by Amuscaria »

Thanks all :). Will be a while before the monsters are done, and will be just as long before the texturing and levels are ready. I'm estimating at least 6-8 months per task.
------------------------------------------
Finishing up the Abyss Mite. Small swarming and leaping enemy. It's a small sprite, so won't take long to finish.

Image
Blue Shadow
Posts: 5018
Joined: Sun Nov 14, 2010 12:59 am

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by Blue Shadow »

Cool. I hope it won't be one of those critters that's annoying to kill because it's too small and darts around fast.
User avatar
Enjay
 
 
Posts: 26540
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by Enjay »

It looks like the forbidden love child of an arachnotron and a Half Life head crab. As ever, the design and quality is top notch. The bestiary is shaping up to be your most interesting and innovative to date - and the bar is already incredibly high. Great work. :thumb:
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by Amuscaria »

Completed.

Image
User avatar
RubyEyeShabranigdu
Posts: 95
Joined: Thu Feb 03, 2022 9:03 am
Graphics Processor: Intel (Modern GZDoom)
Location: Brazil

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by RubyEyeShabranigdu »

Nice!!!
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by Amuscaria »

Blue Shadow wrote:I hope it won't be one of those critters that's annoying to kill because it's too small and darts around fast.
20 health, 30 height, 16 radius, 10 speed (5 per tic, 10 on nightmare, same as Pinky). :) Should easy to kill unless there are a giant swarm leaping all over the place, especially with the new weapons.
Last edited by Amuscaria on Sun Feb 06, 2022 11:55 pm, edited 1 time in total.
User avatar
ActionAlligator
Posts: 133
Joined: Sat Mar 18, 2017 6:34 am

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by ActionAlligator »

super super cool dude! =D and honestly, I kinda hope it's an annoying, small, darting enemy, but I'm a sucker for variety. sorry blue shadow =) I think this mod honestly has good weapons for dealing with those types anyways, unlike certain other games, ala wheel of pain, nailgun, and now the homing venom balls from the skull
osjclatchford
Posts: 2059
Joined: Mon Feb 07, 2011 5:02 am

Re: Hell-Forged - Version 2.00 (Putrefier p.9)

Post by osjclatchford »

Amuscaria wrote:Completed.

Image

filth... utter filth...



I love it! ;)
User avatar
ActionAlligator
Posts: 133
Joined: Sat Mar 18, 2017 6:34 am

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by ActionAlligator »

out of curiosity Amuscaria, just how small are the abyss mites? are they small enough to conceivably walk over and explode from being stepped on? could maybe do that if so, don't know how that would work out ultimately gameplay wise. and what about the blood hunters? could you conceivably walk over them as well (I thought they were halved corpses dragging themselves along the ground)? if so, maybe they have a chance to grab you and temporarily halt your movement or something? just some potential ideas you can do whatever with; don't think anyone's ever made a doom enemy that you can step on like that, think it would be neat. i know when other users come up with bad ideas, it can be awkward to shut them down, haha, so no worries if these are one of those. :)
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by Amuscaria »

They are not short enough to step over, no, but you can easily jump over them. The Abyss Crawler, Mite's larger cousin, has the attack to slow players down temporarily, but I rather not have the player be stopped completely, since it would remove one of then primary mechanics of doom - dodging stuff.

The Blood Hunter is the enemy I'm working on next, actually. ;) Similar sort of short bottom-feeder as the Mites, but doesn't explode and has a timed life unlesss they manage to attack something.
User avatar
ActionAlligator
Posts: 133
Joined: Sat Mar 18, 2017 6:34 am

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by ActionAlligator »

ahhhh, do the mites only explode when they leap at you, or do they explode when you come within range? and is 'mite jumping' onto ledges a thing? xD

yeah, DEFINITELY agree about limiting player's movement, it's something you need to do perfectly and sparingly or it just totally breaks down doom's gameplay. but, if you had a really, really weak pathetic and extremely slow enemy that does it, I think it's not so big deal, because otherwise that enemy isn't really a threat, makes getting swarmed by them very scary. I guess I'm ripping off Killing Floor's clots if you ever played that; they're the most pathetic enemy in the game and not at all a threat... unless you get swarmed by them, especially around stronger enemies, and then they clasp at you and prevent movement until you kill them. so many fond memories in that game dying just like that with friends =P anyways, probably a lot of people that would feel that's counter to doom gameplay, but I always thought it'd be cool. sounds like your crawler is taking up that niche, though

but that all sounds very cool dude, thx for taking time to answer :D look forward to seeing your blood hunter!
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by Amuscaria »

ActionAlligator wrote:ahhhh, do the mites only explode when they leap at you, or do they explode when you come within range? and is 'mite jumping' onto ledges a thing? xD
They were SUPPOSED to explode when they leap. But I couldn't get that to work with Decorate, and without ZScript, I don't think I can make an expression that sums up the caller and target pointer's radius, since I can only access the caller's properties via ACS with GetActorProperty(). Be nice if there was a way to do something like A_JumpIfCloser(AAPTR_TARGET.radius + GetActorProperty(0,APROP_Radius) + 5, "Explode"), unlesss I'm missing something. Guess it's a good time to convert all HF2 actors to ZScript before I have too many to manage.

Current code

Code: Select all

ACTOR Mite 32102
{
  Health 20
  Radius 16
  Height 30
  Mass 50
  Speed 10
  PainChance 200
  PainChance "wepkick", 256  
  Monster
  MaxTargetRange 200
  MeleeRange 30
  BloodColor "95 91 16"
  Tag "Abyss Mite"
  SeeSound "mite/sight"
  PainSound "mite/pain"
  DeathSound "mite/death"
  ActiveSound "mite/active"  
  Obituary "%o was liquified by a mite."  
  +DONTHARMSPECIES
  +DONTHARMCLASS
  +FLOORCLIP
  +SHORTMISSILERANGE
  States
  {
  Spawn:
    MITE M 10 A_Look
    Loop
  See:
    MITE AABBCCDDEEFF 2 Fast A_Chase
    Loop
  Rest:
    MITE AABBCCDDEEFF 2 Fast A_Chase("Melee","")
	goto See
  Missile:    
    MITE G 12  {A_PlaySoundEX("mite/attack", "Auto"); A_FaceTarget;}
	MITE H 0 {A_SetGravity(0.5); A_Recoil(-20); ThrustThingZ(0,28,0,0);}
	MITE H 8 
	MITE H 1 A_CheckFloor("Land")
	goto Missile+2
  Melee:
    MITE K 1 Bright A_Die("Suicide")
	stop
  Land:
    MITE I 3 A_SetGravity(1.0)
	goto Rest
  Pain:
    MITE J 2 Fast A_SetGravity(1.0)
    MITE J 2 Fast A_Pain
    Goto See
  Pain.wepkick:
    MITE J 2 Fast A_SetGravity(1.0)
    MITE J 50 A_Pain
    Goto See
  Death:
    MITE N 0 A_SetGravity(1.0)
    MITE N 5 A_Scream
    MITE O 5 A_NoBlocking     
    MITE PQR 5
	MITE S -1
  Death.Suicide:
    MITE K 2 Bright {A_Stop; A_NoGravity; A_NoBlocking;}
	MITE K 0 A_CustomMissile("MiteExplosion",15)
	stop
  Raise:
    MITE RQPON 5
    Goto See
  }
}

ACTOR MiteExplosion : BasiliskFire
{   
   Speed 0
   Damagetype weppoison
   Obituary "%o was liquified by a mite."
   SeeSound "weapons/splatter4"   
   States
   {
   Spawn:
      MFX1 Q 0
	  MFX1 Q 3 Bright {A_Explode(12 * random(1,4),64,0,0,32); A_SetTranslucent(1,1);}
	  MFX1 RSTU 3 Bright
      stop
   }
}
Original Intended Code.

Code: Select all

  States
  {
  Spawn:
    MITE M 10 A_Look
    Loop
  See:
    MITE AABBCCDDEEFF 2 Fast A_Chase
    Loop
  Rest:
    MITE AABBCCDDEEFF 2 Fast A_Chase("Melee","")
	goto See
  Missile:    
    MITE G 12  {A_PlaySoundEX("mite/attack", "Auto"); A_FaceTarget;}
	MITE H 0 {A_SetGravity(0.5); A_Recoil(-20); ThrustThingZ(0,28,0,0);}
	MITE H 8 
	MITE H 1 { A_CheckFloor("Land"); A_JumpIfCloser(20, "Explode");}
	goto Missile+2
  Explode:
    MITE K 1 Bright A_Die("Suicide")
	stop
  Land:
    MITE I 3 A_SetGravity(1.0)
	goto Rest
  Pain:
    MITE J 2 Fast A_SetGravity(1.0)
    MITE J 2 Fast A_Pain
    Goto See
  Pain.wepkick:
    MITE J 2 Fast A_SetGravity(1.0)
    MITE J 50 A_Pain
    Goto See
  Death:
    MITE N 0 A_SetGravity(1.0)
    MITE N 5 A_Scream
    MITE O 5 A_NoBlocking     
    MITE PQR 5
	MITE S -1
  Death.Suicide:
    MITE K 2 Bright {A_Stop; A_NoGravity; A_NoBlocking;}
	MITE K 0 A_CustomMissile("MiteExplosion",15)
	stop
  Raise:
    MITE RQPON 5
    Goto See
  }
}
User avatar
ActionAlligator
Posts: 133
Joined: Sat Mar 18, 2017 6:34 am

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by ActionAlligator »

Ahhhh, interesting. So, you can hop onto mites and use them as a booster (before they explode, if that's even possible), or you can use their explosion to get up a little. They're going to be adorable little toxic stepping stones :)

Wish I could offer help, but I don't even quite understand what you just told me lmao, sorry man. What's the difference between A_JumpIfCloser(20, "Explode") and A_JumpIfCloser(AAPTR_TARGET.radius + GetActorProperty(0,APROP_Radius) + 5, "Explode")? I looked at the wiki for a bit and I realize that, technically, the zscript function is checking the radius of both actors and combining them into the unit distance check rather than just having a fixed number, but what's the effective difference in that? Does the original intended decorate function break down against enemies with varying radii during infighting, or something? I would've assumed that the distance check accounts for the target's and caller's radius, but does it just draw a line between the target's and the caller's center rather than their edges? i.e. |...*...|<---->|...*...| vs |...*<---|----|--->*...| with the '*' being the center of the respective caller and target, the '|...|' being their hitboxes, and the '<-->' being the distance check. I hope that makes sense.

If that's indeed how it works, and you can't get the calling actor's (mite) radius without zscript, then couldn't you just replace "GetActorProperty" with the mite's radius of 16, since that will always be static? So A_JumpIfCloser(AAPTR_TARGET.radius + 21, "Explode")? Sorry, I'm a noob with this decorate zscript code stuff, so I have no idea what I'm talking about, doh.

EDIT: or would this work, instead? A_JumpIfCloser(AAPTR_TARGET.radius + AAPTR_DEFAULT.radius + 5, "Explode")
Gez
 
 
Posts: 17922
Joined: Fri Jul 06, 2007 3:22 pm

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by Gez »

Amuscaria wrote:They were SUPPOSED to explode when they leap. But I couldn't get that to work with Decorate, and without ZScript, I don't think I can make an expression that sums up the caller and target pointer's radius, since I can only access the caller's properties via ACS with GetActorProperty().
You don't really need to get the caller's properties since you know them -- you're writing the caller's actor code after all -- and radius isn't a property that can get dynamically changed.

But more generally, I think you don't need to reinvent the wheel: [wiki]A_JumpIfTargetInsideMeleeRange[/wiki] should be doing what you want. Define a MeleeRange of 5, and that'll correspond to your check of target radius + caller radius + 5.
User avatar
Amuscaria
Posts: 6634
Joined: Mon Jul 26, 2004 12:59 pm
Location: Growing from mycelium near you.

Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)

Post by Amuscaria »

Gez wrote:
Amuscaria wrote:They were SUPPOSED to explode when they leap. But I couldn't get that to work with Decorate, and without ZScript, I don't think I can make an expression that sums up the caller and target pointer's radius, since I can only access the caller's properties via ACS with GetActorProperty().
You don't really need to get the caller's properties since you know them -- you're writing the caller's actor code after all -- and radius isn't a property that can get dynamically changed.

But more generally, I think you don't need to reinvent the wheel: [wiki]A_JumpIfTargetInsideMeleeRange[/wiki] should be doing what you want. Define a MeleeRange of 5, and that'll correspond to your check of target radius + caller radius + 5.
Cool I'll give that a try! Thx. :D

EDIT: That worked. I had to set the melee range to 30, though, something larger than the Mite's radius, otherwise the melee doesn't trigger, even on default when you're touching the thing.

EDIT2: I am getting another issue, unrelated to the leap-explode. The explosion doesn't trigger its obituary when killing the player. It just says "*Player died" instead of using the obituary stated in-code. I thought it was because of the inheritance from the original, but even making a brand new actor, the problem persists.
Last edited by Amuscaria on Tue Feb 08, 2022 6:44 pm, edited 1 time in total.

Return to “TCs, Full Games, and Other Projects”