Page 2 of 3

DOOM Forever HELP !!!

Posted: Sat Aug 06, 2016 1:08 am
by CeeJay
Need an extra pair of eyes.

Was working on the 2016 redux of the mod when I suddenly found out that the game unexpectedly crashes when warping to certain levels, ones I know off my head are MAP28, MAP29 and E3M6. It happens every time, so it's no just a random occurrence and 3DGE debug.txt tells me nada. :(

I've gone through all the DDFs, managed to eliminate COALHUDS, SECTORS.DDF, LINES.DDF and SWITCH.DDF being the problem. The problem seems to lie in THINGS.DDF but I can't for the life of me find anything anywhere that would be the cause of it. Tried to figure out what those levels shared in terms of things and checked if anything was wrong with said things, but no luck.

I've included the DDF files, no need for the WAD. You'll get a lot of yellow question marks and error messages but the game should still run (had to remove stuff from IMAGES.DDF, though).
http://www.mediafire.com/download/hfdxd ... 16_ddf.zip

Re: DOOM Forever HELP !!!

Posted: Sat Aug 06, 2016 7:26 pm
by Corbachu
I will run your mod through the Visual Studio Debugger and track it down for you. That is the real beauty of VS -- helps me find serious issues MUCH quicker than I ever was able to before.

What version are you running it through? 2.0.4 Final? I can't reliably debug any version less than the most recent 2.1.0 Tests, so I will use those as a base for my tests. If it is something silly on my part, I will patch it up for you.

Re: DOOM Forever HELP !!!

Posted: Sat Aug 06, 2016 9:02 pm
by CeeJay
Thanks.

I ran 3DGE with stock DDFs except for things.ddf which I replaced with the one from the mod and presto, the problem happens so it is without a doubt something in things.ddf.

EDIT: 2.0.4 Final yes but I did try it on the newer builds with same results.

Re: DOOM Forever HELP !!!

Posted: Sun Aug 07, 2016 7:53 pm
by Corbachu
I debugged with Visual Studio and the problem happens here:

Code: Select all

static inline bool Weakness_CheckHit(mobj_t *target,
		const atkdef_c *attack, float x, float y, float z)
{
	const weakness_info_c *weak = &target->info->weak;

	if (weak->classes == BITSET_EMPTY)
		return false;
	
I_Debugf("Weakness_CheckHit: target=[%s] classes=0x%08x\n", target->info->name.c_str(), weak->classes); 

	if (BITSET_EMPTY != (attack->attack_class & ~weak->classes))
		return false;

	if (target->height < 1)
		return false;

	// compute vertical position.  Clamping it means that a missile
	// which hits the target on the head (coming sharply down) will
	// still register as a head-shot.
	z = (z - target->z) / target->height;
	z = CLAMP(0.01f, z, 0.99f);

I_Debugf("HEIGHT CHECK: %1.2f < %1.2f < %1.2f\n",
		  weak->height[0], z, weak->height[1]);
	
	if (z < weak->height[0] || z > weak->height[1])
		return false;

	angle_t ang = R_PointToAngle(target->x, target->y, x, y);

	ang -= target->angle;

I_Debugf("ANGLE CHECK: %1.2f < %1.2f < %1.2f\n",
		 ANG_2_FLOAT(weak->angle[0]), ANG_2_FLOAT(ang), 
		 ANG_2_FLOAT(weak->angle[1]));

	if (weak->angle[0] <= weak->angle[1])
	{
		if (ang < weak->angle[0] || ang > weak->angle[1])
			return false;
	}
	else
	{
		if (ang < weak->angle[0] && ang > weak->angle[1])
			return false;
	}

	return true;
}
Further investigating through VS, it seems this is an issue with the ARCHVILE entry, specifically with the ANGLES in your code:
<..>
[ARCHVILE:64]
<...>
WEAKNESS.CLASS=A;
WEAKNESS.HEIGHTS=85%:100%;
WEAKNESS.ANGLES=1:360;
WEAKNESS.MULTIPLY=3;
WEAKNESS.PAINCHANCE=50%;
<...>
It seems WEAKNESS.ANGLES is causing it to fudge up. Removing your WEAKNESS.ANGLES solved the issue. I don't have time to further
investigate at the very moment, but you should have an idea on what went wrong now ;)

Re: DOOM Forever HELP !!!

Posted: Sun Aug 07, 2016 10:26 pm
by CeeJay
I had all WEAKNESS.ANGLES entries removed and still the problem did not go away. I'm at a complete loss, never experienced such a strange thing before.

I could PM you the whole kit-n-kabodle (the entire mod) if that would help at all.

Re: DOOM Forever HELP !!!

Posted: Sun Aug 07, 2016 10:57 pm
by Corbachu
Sure thing - send it to me and I'll find out what is going on.

Send me all the test cases where failure occurs (just on map changes or are there more?), that way it will be easier for me to quickly debug.

Re: DOOM Forever HELP !!!

Posted: Sun Aug 07, 2016 11:33 pm
by CeeJay
Coraline wrote:Send me all the test cases where failure occurs (just on map changes or are there more?)
Not sure what you mean here. I'll start up the game and warp to a level where the game crashes and send you that debug.txt along with all the current DDF files and the PWAD of the mod. Anything else you need?

Re: Doom Forever REDUX (2016)

Posted: Sun Aug 14, 2016 5:37 am
by CeeJay
See first post :-)

Re: Doom Forever REDUX (2016)

Posted: Sun Aug 14, 2016 6:37 am
by RomanKursant
minus in this project:
- alt fire shotgun. Why you does fire? Its wrong. Where is sight?
- alt fire ssg. In moment fire flash two gun
- alt fire rocketgun. 3 rockets at the same time. In real life its not really.
- alt fire plasmashotgun. The video effect absent.
total:
If our hero take riflegun? he is drop pistol, this is not correct. I think you must return two pistols.
Keycards in HUD. Why screen keys is bad?
That is all.

Re: Doom Forever REDUX (2016)

Posted: Sun Aug 14, 2016 6:54 am
by CeeJay
Added download(s) for music.