Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 Fix]

Projects that alter game functions but do not include new maps belong here.
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
RaiderX
Posts: 4
Joined: Wed Apr 06, 2022 2:20 pm

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by RaiderX »

-The back of the Crusader should have more details (a belt, or an armor)
-The collar of the Mage would look cool with some yellow or blue lines
Anyhow nice intermission scenes.
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

RaiderX wrote:-The back of the Crusader should have more details (a belt, or an armor)
-The collar of the Mage would look cool with some yellow or blue lines
Anyhow nice intermission scenes.
Yep, it could do with a few extra tweaks, I agree.

It's one of those things where you think "done!" and then suddenly notice lots of bit you can improve about an hour later. :shock:

Part of the reason I throw previews out there, though, so I can have the women shouting at the cat meme get feedback for times like this though, so thanks. :)
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

I always like M.C. Escher like levels in monochrome, so I decided to check out NULL this week:

You can get it here: https://www.doomworld.com/forum/topic/130222-null/
User avatar
Tesculpture
Posts: 176
Joined: Sun Feb 07, 2016 3:22 am

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by Tesculpture »

I have some bugs to report:
-When the Lightbringer's altfire is upgraded, the empowered prism laser mechanic stops working.

-Empowered primary fire shots launched from a prism are aimed only horizontally, not vertically.

-When the Agnus Abyssus's altfire is upgraded, the extra explosions cause massive self damage to the point where any attempt to use it will cause instant death.
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Tesculpture wrote:I have some bugs to report:
-When the Lightbringer's altfire is upgraded, the empowered prism laser mechanic stops working.

-Empowered primary fire shots launched from a prism are aimed only horizontally, not vertically.

-When the Agnus Abyssus's altfire is upgraded, the extra explosions cause massive self damage to the point where any attempt to use it will cause instant death.
Thanks for the reports. :)

I was aware of (1), the two sets of code unfortunately have conflicted with one another for some time, and will have to be re-written at some point, its just one of those things I keep forgetting about.

(2) was actually intentional when it was first made to make it different from the Laser effect, but I may review it.

(3) has actually already been fixed in 0.97; I just assigned it the wrong damage type lol. It is still usable right now, just don't walk forwards into the Hellfire when using it (I somehow always managed to test it stood still or backpedelling lol).

Thanks again, I always appreciate people's reports. :wink:
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

New feature preview video today:

Just a quick peek at some of the stuff that will be coming in the 0.97 patch, showing off some (likely not final) "mutated upgrades" on the Firestorm Font, which will be added in as an alternate upgrade choice.

The Primary Fire Mutation Upgrade gets a snake like bouncy fire with extended range, and the Secondary Fire Mutation Upgrade changes the mortar shot into a blazing shotgun blast.

You can also see some of the changes to The Sword of Quietus Aurelius, including a swish new draw and sheath animation as well as much quicker charging on the secondary fire.
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Another uber short preview clip today:

Though I've got alot of these mutation upgrades being worked on right now, this one is my current favourite and is almost complete; its the Mutated Secondary Fire for Aestus, changing it from a rolling boulder into a meteor summoning!
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Egregor, the creator of ENDQUEST, asked me to play it, so here's a video:

I had it in my list for a while but never managed to get around to it. This is Maps 1 and 3, because the video of Map 2 got corrupted unfortunately. It's got a rather labyrinthine quality to it, with long levels and lots of monster closets (lol). But it looks gorgeous. As an aside, you'll spot the new 0.97 upgrade for the Lightbringer Laser here. For this, you'll have a weaker laser for about 1 second, but then it will explode into a roaring double-size laser with extra range and power!

You can get this set here: https://www.doomworld.com/forum/topic/119871
User avatar
Sharazar256
Posts: 7
Joined: Wed Dec 29, 2021 10:19 am

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by Sharazar256 »

Let me begin with thank you so much for making this and continuing to improve it. My favorite Hexen mod ever.

I also wanted to report a possible bug I found while playing Hub 1: Sump in the Deathkings expansion. The northern chamber has a series of walls that open as you kill the Chaos Serpents, which spawn after each wall drops. When using Walpurgis none of the Chaos Serpents spawn in after killing the original that spawns on map entry. I had to use the noclip command to finish the level. I did my best to verify by attempting the level with the exact same setup only without Walpurgis just to make sure, and everything worked the way it was supposed to when Walpurgis was not in the load order. HEXDD.WAD was my iwad and Walpurgis, Nashgore, and Gearbox (weapon wheel) were my mods. Just wanted to let you know, and apologies if this has already been reported.

Thank you again for everything you've already done and continue to do with this mod. It is the best way to play Hexen or Heretic! I also love using it with Doom WADs like Mausoleum Nefarium or Dungeons and Demons.
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Sharazar256 wrote:Let me begin with thank you so much for making this and continuing to improve it. My favorite Hexen mod ever.

I also wanted to report a possible bug I found while playing Hub 1: Sump in the Deathkings expansion. The northern chamber has a series of walls that open as you kill the Chaos Serpents, which spawn after each wall drops. When using Walpurgis none of the Chaos Serpents spawn in after killing the original that spawns on map entry. I had to use the noclip command to finish the level. I did my best to verify by attempting the level with the exact same setup only without Walpurgis just to make sure, and everything worked the way it was supposed to when Walpurgis was not in the load order. HEXDD.WAD was my iwad and Walpurgis, Nashgore, and Gearbox (weapon wheel) were my mods. Just wanted to let you know, and apologies if this has already been reported.

Thank you again for everything you've already done and continue to do with this mod. It is the best way to play Hexen or Heretic! I also love using it with Doom WADs like Mausoleum Nefarium or Dungeons and Demons.
Glad you're enjoying it!

I haven't actually tried Deathkings in a while, but I'll have a look into that. I expect its similar to the Gibbet bug in Vanilla Hexen (which I've finally fixed for 0.97); this happens because the level is explicitly expecting Chaos Serpents but the Walp versions are differently named (and have to be in order for the monster spawner system to work).
User avatar
Sharazar256
Posts: 7
Joined: Wed Dec 29, 2021 10:19 am

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by Sharazar256 »

Awesome! I thought that it may have something to do with Chaos Serpent alterations for the mod and the level's scripts. Just to see if I could learn anything and possibly contribute a little I took a peek under the hood at the level's ACS using listacs.exe to decompile the map43\behavior file, and UDB to look at the actors involved. I'm new to ACS and ZDoom level editing in general, so I haven't figured out exactly whats going on yet. However, I found that script 16 is called when the Chaos Serpents die, so a quick workaround I found for anyone else who happens to run into this is to run "puke 16" a few times in the console to manually cause the walls to drop so they can finish off the enemies and get to the switch needed to complete the level. I'm still trying to figure out how the new spawns are called in as the walls drop since I'm trying to learn ACS and level building in general, because I'd like to be able to make some contributions of my own to the community at some point.

Thanks again!
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Sharazar256 wrote:Awesome! I thought that it may have something to do with Chaos Serpent alterations for the mod and the level's scripts. Just to see if I could learn anything and possibly contribute a little I took a peek under the hood at the level's ACS using listacs.exe to decompile the map43\behavior file, and UDB to look at the actors involved. I'm new to ACS and ZDoom level editing in general, so I haven't figured out exactly whats going on yet. However, I found that script 16 is called when the Chaos Serpents die, so a quick workaround I found for anyone else who happens to run into this is to run "puke 16" a few times in the console to manually cause the walls to drop so they can finish off the enemies and get to the switch needed to complete the level. I'm still trying to figure out how the new spawns are called in as the walls drop since I'm trying to learn ACS and level building in general, because I'd like to be able to make some contributions of my own to the community at some point.

Thanks again!
Congrats on nabbing the 1000th post on the topic!

Studied the level myself (in the process reminding myself that Sump is a godawful level that I blanked from my memory), and honestly I'm not sure what's going on with the serpents on that level. Fixed, see below edit.

In theory, the fix is changing the spawners so that they act in a similar way to Tag666 monsters in Doom but target Sump's specific checksum, so I produced this altered ZScript version of the spawner:

Code: Select all

class SpawnerBrowns : CustomInventory replaces Demon2
{
	Default{
	+BOSSDEATH
	+INVULNERABLE
	+INVISIBLE
	-SOLID
	Monster;
	Tag " ";}
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_JumpIf(GetCVar("walp_monsterreplace")==1,"UseReplacers");
		Goto ClassicOnly;
	UseReplacers:
		TNT1 A 0 A_JumpIf(GetCVar("walp_dimension")==1,"Dimensional");
		TNT1 A 0 A_JumpIf(GetCVar("walp_elites")==1,"UseElites");
		TNT1 A 0 A_SpawnItemEx("BrownChaosSerp",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERAMBUSHFLAG|SXF_TRANSFERSPECIAL|SXF_CLEARCALLERTID|SXF_CLEARCALLERSPECIAL|SXF_SETMASTER,0,tid);
		Goto WaitBecauseBossDeath;
	UseElites:
		TNT1 A 0 {if(random(0,100) <= GetCVar("walp_espawnchance"))
				{	A_SpawnItemEx("DerpSerpElite",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERAMBUSHFLAG|SXF_TRANSFERSPECIAL|SXF_CLEARCALLERTID|SXF_CLEARCALLERSPECIAL|SXF_SETMASTER,0,tid);		}
				else
				{	A_SpawnItemEx("BrownChaosSerp",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERAMBUSHFLAG|SXF_TRANSFERSPECIAL|SXF_CLEARCALLERTID|SXF_CLEARCALLERSPECIAL|SXF_SETMASTER,0,tid);		}}
		Goto WaitBecauseBossDeath;
	ClassicOnly:
		TNT1 A 0 A_SpawnItemEx("BrownSerpCopy",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERAMBUSHFLAG|SXF_TRANSFERSPECIAL|SXF_CLEARCALLERTID|SXF_CLEARCALLERSPECIAL|SXF_SETMASTER,0,tid);
		Goto WaitBecauseBossDeath;
	Dimensional:
		TNT1 A 0 A_SpawnItemEx("SpawnerLowTierBase",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_TRANSFERAMBUSHFLAG|SXF_TRANSFERSPECIAL|SXF_CLEARCALLERTID|SXF_CLEARCALLERSPECIAL|SXF_SETMASTER,0,tid);
		Goto WaitBecauseBossDeath;
	WaitBecauseBossDeath:
		TNT1 A 1;
		Loop;
	Death: //////REEEEEEEE SUMP Fix
		TNT1 A 1 {if(level.GetCheckSum() ~== "A5F820CB016DE3D9A402C0173E7F9998")
		{ACS_ExecuteAlways(16, 0);}}
		Stop;
	XDeath:
		TNT1 A 1 {if(level.GetCheckSum() ~== "A5F820CB016DE3D9A402C0173E7F9998")
		{ACS_ExecuteAlways(16, 0);}}
		Stop;
	}
}
(You should be able to test this by copy-pasting the above into any ZScript that Walp loads (like angrybirbs.zsc) and then completely commenting out the original SpawnerBrowns in monstersmain.txt in the Actors folder in SLADE)

However, it doesn't seem to go off since serpents appear to be spawned in a bizarre way in that map. Or at least it doesn't go off if I use a killmonsters console command, so yeah. When I played the level normally I don't even recall seeing any brown chaos serpents in the area when I tested it; even though they're absolutely there when you look at the map in Ultimate Doom Builder. I'll keep investigating it I guess.
----
EDIT: I answered my own question in retrospect after thinking in the shower lol. When I said 'I don't recall seeing them in the area' it suddenly clicked... they're not being spawned at all because the map is dumb and is creating serpents in an area that starts out squished. Adding SXF_NOCHECKPOSITION to each of the new variety of spawners resolves the issue; just checked and this works fine (though the first trench does overreact and become a chasm as presumably it is linked to number of chaos serpents in existence which is annoying, but the other sections all work aokay and the map becomes complete-able).

Anyways, this fix will now appear in 0.97 when it comes out.
User avatar
Sharazar256
Posts: 7
Joined: Wed Dec 29, 2021 10:19 am

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by Sharazar256 »

SXF_NOCHECKPOSITION was a perfect fix for me. In the original Walp0.96a\actors\monstersmain.txt I added it to the A_SpawnItemEX() calls just before SXF_TRANSFERPOINTERS for SpawnerGreens and SpawnerBrowns and now the level works perfectly for me, no chasm or anything. After I should have already been asleep last night I realized I was looking for an ACS call to spawn these in as the floors dropped that did not exist. And that they were somehow spawning in a flat room on map entry in vanilla, which I didn't even know was possible. I had no idea how to fix that and was way too tired to continue looking, so I went to sleep and was psyched to log in today and find that you got it. I ran the level twice, once with the Mage and once with the Druid, and it worked perfectly both times. Fantastic job finding this and I'm psyched for 0.97 to come out!

Edit: General proofreading edits I should have made before hitting submit. :P
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 F

Post by eharper256 »

Sharazar256 wrote:SXF_NOCHECKPOSITION was a perfect fix for me. In the original Walp0.96a\actors\monstersmain.txt I added it to the A_SpawnItemEX() calls just before SXF_TRANSFERPOINTERS for SpawnerGreens and SpawnerBrowns and now the level works perfectly for me, no chasm or anything. After I should have already been asleep last night I realized I was looking for an ACS call to spawn these in as the floors dropped that did not exist. And that they were somehow spawning in a flat room on map entry in vanilla, which I didn't even know was possible. I had no idea how to fix that and was way too tired to continue looking, so I went to sleep and was psyched to log in today and find that you got it. I ran the level twice, once with the Mage and once with the Druid, and it worked perfectly both times. Fantastic job finding this and I'm psyched for 0.97 to come out!

Edit: General proofreading edits I should have made before hitting submit. :P
I've applied this all my monster spawners now. Interestingly, this might bang a few bizarre Hexen behaviours on the head, since, unlike Doom, Hexen apparently has no problem allowing monsters to be spawned in spaces too small (in Doom, they would be insta-gibbed or fall out of bounds) and just holds them there, crushed in a 1 pixel space (sounds uncomfortable!). Some of the levels are created around this behaviour; I suspect it may also cause that bug with the Chaos Wyvern getting stuck on the Penumbra Hexen mapset.
User avatar
eharper256
Posts: 818
Joined: Sun Feb 25, 2018 2:30 am
Location: UK

Re: Walpurgis 0.96A (For Doom/Heretic/Hexen) [GZDoom 4.8.0 Fix]

Post by eharper256 »

Fixed the front post which appeared to have weird shit happen from the sudden change-over in the forum style.

I'm sad I lost the beige style I used to like for this place.

Also, whilst I'm here, what would people prefer? That I spend longer on this patch to get all the mutated/alternate upgrades together in one release (but which may be a over a month), or that I get Magister and Crusader out sooner and let Myrmidon and Druid get their upgrades in 0.98? :?:

Return to “Gameplay Mods”