Hell-Forged - Episode 2 (Restarting Eventually)
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.
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.
-
- 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)
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.
------------------------------------------
Finishing up the Abyss Mite. Small swarming and leaping enemy. It's a small sprite, so won't take long to finish.
-
- Posts: 5032
- Joined: Sun Nov 14, 2010 12:59 am
Re: Hell-Forged - Version 2.00 (Putrefier p.9)
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.
-
-
- Posts: 26574
- Joined: Tue Jul 15, 2003 4:58 pm
- Location: Scotland
Re: Hell-Forged - Version 2.00 (Putrefier p.9)
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.
-
- Posts: 6634
- Joined: Mon Jul 26, 2004 12:59 pm
- Location: Growing from mycelium near you.
-
- Posts: 95
- Joined: Thu Feb 03, 2022 9:03 am
- Graphics Processor: Intel (Modern GZDoom)
- Location: Brazil
-
- 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)
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.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.
Last edited by Amuscaria on Sun Feb 06, 2022 11:55 pm, edited 1 time in total.
-
- Posts: 135
- Joined: Sat Mar 18, 2017 6:34 am
Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)
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
-
- Posts: 2059
- Joined: Mon Feb 07, 2011 5:02 am
Re: Hell-Forged - Version 2.00 (Putrefier p.9)
Amuscaria wrote:Completed.
filth... utter filth...
I love it!
-
- Posts: 135
- Joined: Sat Mar 18, 2017 6:34 am
Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)
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.
-
- 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)
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.
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.
-
- Posts: 135
- Joined: Sat Mar 18, 2017 6:34 am
Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)
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 look forward to seeing your blood hunter!
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 look forward to seeing your blood hunter!
-
- 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)
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.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
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
}
}
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
}
}
-
- Posts: 135
- Joined: Sat Mar 18, 2017 6:34 am
Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)
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")
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")
-
-
- Posts: 17934
- Joined: Fri Jul 06, 2007 3:22 pm
Re: Hell-Forged - Version 2.00 (Abyss Mite p.10)
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.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().
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.
-
- 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)
Cool I'll give that a try! Thx.Gez wrote: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.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().
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.
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.