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

Zdoom, How to make a monster raise itself ?

Recommended Posts

Hi guys,

I just try the Soul Harvester monster from realm 667, he is very nice, he also raise itself once we kill it. I look at the decorate script but I dont see anything that make it revice itself ?

There is the "Raise" state, but from where it is called from ? I dont see any flags or something that call Raise once he is killed.

actor SoulHarvester 3117
{

Health 200
Radius 20
Height 56
Speed 8
PainChance 160
MONSTER
+FLOORCLIP
SeeSound "harvester/sight"
PainSound "imp/pain"
DeathSound "harvester/death"
ActiveSound "imp/active"
MeleeSound "imp/melee"
Obituary "%o couldn't evade the soul harvester's attack."
MissileType SoulHarvesterBall
MeleeDamage 3
States
{
Spawn:
SLHV AB 10 A_Look
Loop
See:
SLHV AABBCCDD 3 A_Chase
Loop
Melee:
Missile:
SLHV EFG 4 A_FaceTarget
SLHV HIJK 5 Bright A_FaceTarget
SLHV L 8 Bright A_MissileAttack
SLHV M 10
Goto See
Pain:
SLHV N 3
SLHV N 3 A_Pain
Goto See
Death:
SLHV O 7 A_Scream
SLHV PQR 7
SLHV S 6 A_CustomMissile("SoulHarvesterGhost", 32, 0, 0)
SLHV T 5 A_Fall
SLHV UV 5
SLHV W -1
Stop
XDeath:
SLHV X 6 A_Xscream
SLHV Y 6 A_CustomMissile("SoulHarvesterGhost", 32, 0, 0)
SLHV Z 6
SLHV [ 6 A_Fall
SLHV ] 6
SLHW A -1
Stop
Raise:
SLHV WVUTSRQPO 5
Goto See
}
//$Category New Monsters

}

actor SoulHarvesterBall
{
Health 100
Radius 8
Height 6
Scale 0.4
Speed 6 //9
Damage 3 //2
+SEEKERMISSILE
PROJECTILE
+SHOOTABLE
-NOBLOCKMAP
Renderstyle ADD
SeeSound "harvester/scream"
DeathSound "imp/shotx"
Decal DoomImpScorch
States
{
Spawn:
SHBA A 0 Bright A_CustomMissile("SoulBallTrail", 0, 0, 180)
SHBA AB 2 Bright A_SeekerMissile (10,20)
Loop
Death:
SHBA CDEFGHIJKL 4 Bright
Stop
}
}

actor SoulHarvesterGhost
{
Radius 1
Height 1
Speed 0
PROJECTILE
RENDERSTYLE ADD
ALPHA 0.7
+NOCLIP
SeeSound "harvester/ghost"
States
{
Spawn:
Death:
SHGH ABCDEFG 4 Bright
Stop
}
}

actor SoulBallTrail
{
Radius 1
Height 1
Speed 0
PROJECTILE
RENDERSTYLE ADD
ALPHA 0.5
+NOCLIP
States
{
Spawn:
Death:
SBTR H 6
SBTR ABCDEFG 4 Bright
Stop
}
}

Share this post


Link to post

The "Raise" state defines the animation that will play when an Archvile approaches the dead monster's corpse to revive it back to life.

If you're talking about the purely decorative "spirit" that raises from the Soul Harvester's body upon its death, that's apparently the actor "SoulHarvesterGhost" which is being spawned in the Soul Harvester's Death and XDeath states.

Share this post


Link to post

Ok, that's odd because the soulghost is defined NOCLIP and it doesnt pass trought wall and take teleport ??

Share this post


Link to post

"SoulHarvesterGhost" is just the purely decorative image of an ascending spirit that appears for a second immediately after Soul Harvester's death and then disappears. I thought this is what you were talking about, as opposed to actually being revived back to life, which is something completely different. The monster doesn't revive itself back to life by itself, but some monsters like the Archvile have the ability to revive other monster's corpses upon approaching them, but only if those monsters have a "Raise" animation. Reviving monsters can also be done via map-specific scripting or linedef actions, see Thing_Raise.

Share this post


Link to post

Ok, maybe I doing something wrong because I see the soul harvester raise up sometime and there is no arch vile around lol

I wonder how to make a new monster that can raise up other monsters like archvile ? I would like to create a monster that doesnt attack, he is just walking around and raise monsters..

Share this post


Link to post
Mewdoom said:

I wonder how to make a new monster that can raise up other monsters like archvile ?

Easily:

1. The monster's See states should use "A_VileChase" action instead of the usual "A_Chase".
2. The monster should have a "Heal" state, which would be automatically entered whenever the monster approaches a corpse and revives it.

For an example of how this is done, see the definition of Archvile itself.

Share this post


Link to post

Aaah I just found how my soul harvested been revived lol

I have another monster, Spirit Imp, that have a ghost sprite and he have Heal state with A_VileChase :)

Share this post


Link to post

That bring me to another question, A_VileChase seem to be ramdom, the monster doesnt look for corpses he is just walking randomly and raise the monster if he walk near enough to raise another monster.

There is a way to make him looking for corpses ?

Share this post


Link to post

No, there isn't. Maybe some elaborate ACS scripting could achieve the effect (with Thing_SetGoal and a scripted selection of Patrol Points which would be somehow spawned onto corpses), but probably not cleanly.

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
×