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

Can someone help me how to make a randomizer

Recommended Posts

Well you played my monster horde that is now cancelled because of many errors but please tell me how to make one I tried it so many times and it won't work like this

 

 

Actor randomspwaner replace zombie men I tried to use it but it's not working

Please help

Share this post


Link to post

Here's a random spawner I made for a Doom 64 style mod I am working on, where the Imp is randomly either a Doom 64 imp or a Doom 64 Nightmare imp:

actor 64ImpSpawn : RandomSpawner REPLACES DoomImp
{
    DropItem "64DoomImp", 255, 3
    DropItem "64NightmareImp", 255, 1
}

Now you must then define actors for the two new "DropItem" enemies, so you will likely have to define a new zombie man actor. I will show you my imp actors I have which allows this to work: (you can ignore a lot of what I am doing in the actor states as I am a weirdo, but I am including these for completeness)

64DoomImp

Spoiler

ACTOR 64DoomImp
{
	Health 60
	Radius 20
	Height 56
	Mass 100
	Speed 8
	PainChance 200
	Monster
	+FLOORCLIP
	SeeSound "imp/sight"
	PainSound "imp/pain"
	DeathSound "imp/death"
	ActiveSound "imp/active"
	HitObituary "$OB_IMPHIT"
	Obituary "$OB_IMP"
	Scale 0.72
	MeleeSound "imp/melee"
	MeleeDamage 3
	MissileType "64DoomImpBall"
	Species "64Imp"
	PainChance "Dodge", 256
	+MISSILEMORE
	+SLIDESONWALLS
	
	States
	{
		Spawn:
			IM64 A random(9,11) A_Look
			IM64 B random(9,11) A_Look
			Loop
		See:
			IM64 A random(2,4) A_Chase
			IM64 A random(2,4) A_Chase
			IM64 B random(2,4) A_Chase
			IM64 B random(2,4) A_Chase
			IM64 C random(2,4) A_Chase
			IM64 C random(2,4) A_Chase
			IM64 D random(2,4) A_Chase
			IM64 D random(2,4) A_Chase
			TNT1 A 0 A_Jump (16, "Search")
			Loop
		Pain.Dodge:
			IM64 A random(1,4) A_Wander
			IM64 A random(1,4) A_Wander
			IM64 B random(1,4) A_Wander
			IM64 B random(1,4) A_Wander
			IM64 C random(1,4) A_Wander
			IM64 C random(1,4) A_Wander
			IM64 D random(1,4) A_Wander
			IM64 D random(1,4) A_Wander
			TNT1 A 0 A_Jump (127, "See")
			Goto Missile
		Search:
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			IM64 AA 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			IM64 BB 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			IM64 CC 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			IM64 DD 1 A_Chase
			loop
		Melee:
			IM64 E random(7,9) A_FaceTarget
			IM64 F random(7,9) A_FaceTarget
			IM64 G random(5,7) A_MeleeAttack
			Goto See
		Missile:
			IM64 I random(7,9) A_FaceTarget
			IM64 J random(7,9) A_FaceTarget
			TNT1 A 0 A_Jump(64,"WildMissile")
			IM64 K random(5,7) A_SpawnProjectile("64DoomImpBall", random(41,43), random(-1,1), 0, 0, 1)
			Goto See
		WildMissile:
			IM64 K random(5,7) A_SpawnProjectile("64DoomImpBall", random(41,43), random(-1,1), frandom(-35,35))
			Goto See
		Pain:
			IM64 H random(1,3)
			TNT1 A 0 A_Wander
			IM64 H random(1,3) A_Pain
			Goto See
		Death:
			IM64 L 8
			IM64 M 8 A_Scream
			IM64 N 6
			TNT1 A 0 A_DropItem("CorruptMatter")
			IM64 O 6 A_NoBlocking
			IM64 P -1
			Stop
		XDeath:
			IM64 Q 5
			IM64 R 5 A_XScream
			IM64 S 5
			TNT1 A 0 A_DropItem("CorruptMatter")
			IM64 T 5 A_NoBlocking
			IM64 UVW 5
			IM64 X -1
			Stop
		Raise:
			IM64 PO 8
			IM64 NML 6
			Goto See
		Crush:
			TNT1 A 0
			TNT1 A 0 A_PlaySound("misc/gibbed")
			A027 A -1
			Stop
	}
}

 


64NightmareImp
 

Spoiler

ACTOR 64NightmareImp 7030
{
	SpawnID 155
	Scale 0.72
	Health 60
	Radius 20
	Height 56
	RenderStyle Translucent
	Alpha 0.80
	Speed 13
	PainChance 200
	Mass 100
	MeleeDamage 3
	Species "64Imp"
	BloodColor "7B 5A 84"
	SeeSound "imp/sight"
	PainSound "imp/pain"
	DeathSound "imp/death"
	ActiveSound "imp/active"
	MeleeSound "imp/melee"
	MissileType "64NightmareImpBall"
	Obituary "$OB_NIGHTIMP"
	HitObituary "$OB_NIGHTIMPHIT"
	Tag "Nightmare Imp"
	MONSTER
	PainChance "Dodge", 256
	+FLOORCLIP
	+MISSILEMORE
	+MISSILEEVENMORE
	+SLIDESONWALLS
	
	States
	{
		Spawn:
			NI64 AB 10 A_Look
			Loop
		See:
			NI64 A random(2,4) A_Chase
			NI64 A random(2,4) A_Chase
			NI64 B random(2,4) A_Chase
			NI64 B random(2,4) A_Chase
			NI64 C random(2,4) A_Chase
			NI64 C random(2,4) A_Chase
			NI64 D random(2,4) A_Chase
			NI64 D random(2,4) A_Chase
			TNT1 A 0 A_Jump (16, "Search")
			Loop
		Pain.Dodge:
			NI64 A random(1,4) A_Wander
			NI64 A random(1,4) A_Wander
			NI64 B random(1,4) A_Wander
			NI64 B random(1,4) A_Wander
			NI64 C random(1,4) A_Wander
			NI64 C random(1,4) A_Wander
			NI64 D random(1,4) A_Wander
			NI64 D random(1,4) A_Wander
			TNT1 A 0 A_Jump (127, "See")
			Goto Missile
		Search:
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			NI64 AA 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			NI64 BB 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			NI64 CC 1 A_Wander
			TNT1 A 0 A_LookEx(LOF_NOSEESOUND, 0, 0, 0, 360, "See")
			NI64 DD 1 A_Chase
			loop
		Melee:
			NI64 EF 8 A_FaceTarget
			NI64 G random(5,7) A_MeleeAttack
			Goto See
		Missile:
			NI64 I random(7,9) A_FaceTarget
			NI64 J random(7,9) A_FaceTarget
			TNT1 A 0 A_Jump(64,"WildMissile")
			NI64 K random(5,7) A_SpawnProjectile("64NightmareImpBall", random(41,43), random(-1,1), 0, 0, 1)
			Goto See
		WildMissile:
			NI64 K random(5,7) A_SpawnProjectile("64NightmareImpBall", random(41,43), random(-1,1), frandom(-35,35))
			Goto See
		Pain:
			NI64 H 2
			TNT1 A 0 A_Wander
			NI64 H 2 A_Pain
			Goto See
		Death:
			NI64 L 8
			NI64 M 8 A_Scream
			NI64 N 6
			TNT1 A 0 A_DropItem("CorruptMatter")
			NI64 O 6 A_NoBlocking
			NI64 P -1
			Stop
		XDeath:
			NI64 Q 5
			NI64 R 5 A_XScream
			NI64 S 5
			TNT1 A 0 A_DropItem("CorruptMatter")
			NI64 T 5 A_NoBlocking
			NI64 UVW 5
			NI64 X -1
			Stop
		Raise:
			NI64 PO 8
			NI64 NML 6
			Goto See
		Crush: // Uses a violet version of the gib to match sprite color
			TNT1 A 0
			TNT1 A 0 A_PlaySound("misc/gibbed")
			A055 A -1
			Stop
	}
}

 


I based a ton of my code on Nevander's Doom 64 Retribution

Share this post


Link to post

How does that work with the intermission screen tally?  Or does GZDoom dynamically adjust its calculation to new enemies spawned in-game?

Share this post


Link to post

I'm trying to make a randomizer were you are fighting a alot of monsters that are very unique and monsters you won't commenliy see but when I load it up with zandronum it crashed any help

The randomizer is called monster horde randomizer

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
×