Page 1 of 1

r288 Items under 3D floors still not quite as they were

Posted: Sun Jan 04, 2009 19:19
by Enjay
These screenshots from my Burghead map (map113) show the problem.

How it should be:
Image

How it is in r288:
Image




The bed is a simple actor with a model attached. The key is sitting on a 3D floor used to make the bed solid. Unfortunately, the bed actor is also sitting on the 3D floor now whereas previously it sat under it.

Main sector ceil -456, floor -544.
3D floor control sector ceil -522, floor -532

So the bed is 10 units thick and there are 12 units of space under it.

The bed has a Z height of 0.

Actor details:

Code: Select all

ACTOR ModelBase
{
	Radius 20
	Height 56
	+FLOORCLIP
	+DONTSPLASH
	+NOBLOOD
	States
	{
	Spawn:
		SMGT B 4
		Loop
	}
}


ACTOR ModelCampBed2 : ModelBase 22152
{
	Radius 20
}
I know that the actor is taller that the space under the bed, but that wasn't causing a problem previously, so I saw no need to adjust the height of every non-solid actor that inherited from my "ModelBase" actor.

Posted: Sun Jan 04, 2009 19:32
by Graf Zahl
Argh! Is it really impossible to fix a bug that hasn't been unintentionally exploited in a WAD?

Your problem is quite simple: By making the bed 56 pixels high you circumvented the floor placement logic quite effectively. It selects the 3D floor closest to the actor's center - which thanks to the abnormally tall height in this case massively screws up.

Shit! Now I have to compromise the code to make sure that no old WAD got broken by it. :(

Re: r288 Items under 3D floors still not quite as they were

Posted: Sun Jan 04, 2009 19:33
by Enjay
Enjay wrote:I know that the actor is taller that the space under the bed...
I just tried reducing the actor height until the bed no longer appeared on top of the 3D floor. If the actor is 35 units tall (or more), it gets moved up to the top of the 3D floor. If it is 34 units tall (or less), it stays under the floor where I want it to be.

Interestingly, neither of these heights are small enough to make the bed fit under the floor properly anyway. :?

Posted: Sun Jan 04, 2009 19:35
by Enjay
cross posting...
Graf Zahl wrote:Argh! Is it really impossible to fix a bug that hasn't been unintentionally exploited in a WAD?
Apparently. Sorry. :oops:
Graf Zahl wrote:It selects the 3D floor closest to the actor's center - which thanks to the abnormally tall height in this case massively screws up.
At least that explains my observation above.

Posted: Sun Jan 04, 2009 20:33
by Graf Zahl
I hope now it works better.

Posted: Sun Jan 04, 2009 21:10
by Enjay
It certainly fixes my map. Thank you. :)