After being shown this topic via IRC just a moment ago, I've just realised why this bug could be happening, having peered into the section of SRB2's source code for Polys some time ago.
See, for those who don't know it already,
Linedef Type 20 is also the linedef special to change the PolyObject's POF flags (which ideally should be on the Parameters linedef, rather than on the PolyObject's Boundaries itself for some odd reason).
However, even for those who do know it already, the SRB2 Wiki's page for lists only a few of the effects supposed to be settable, since only some of them will be of any use to anyone.
By default, Polyobjects have the flags
POF_SOLID (or
POF_CLIPLINES and
POF_CLIPPLANES combined),
POF_TESTHEIGHT, and
POF_RENDERSIDES.
The following linedef flags change the Polyobject's flags:
- Not Climbable - adds POF_LDEXEC; Basically means it can trigger any instances of Linedef Type 316 (Which is actually obsolete - it turns out PolyObjects can use Sector specials!)
- Effect 1 - adds POF_ONESIDE; This basically just renders the front sides of the Polyobject. Should be obvious how useful this is.
- Effect 2 - removes POF_SOLID; Makes the Polyobject intangible, of course
- Effect 3 - adds POF_PUSHABLESTOP; Pushables can stop PolyObjects in their tracks, rather than being shoved away by them!
- Effect 4 - adds POF_RENDERPLANES; This would be really useful if it weren't for the fact it doesn't work at all yet =V
- Effect 5 - removes POF_CLIPPLANES; Now THIS...This means that the flats aren't solid - probably explaining some of the problems here in this topic.
As unneccessary as some of this explanation here may be, I hope this explains this bug and some other bugs around. =E