[Fixed] Problem with Boom linetype 166

Bugs that have been investigated and resolved somehow.

Moderator: Developers

Problem with Boom linetype 166

Postby hawkwind » Tue Nov 09, 2010 10:26 pm

Boom linetype 166 is S1 - Ceiling raise to highest ceiling. It is not a texture change type. ATM the affected sector is changing sector flat. See link for test wad. Note what happens to sector 2 when linedef 10 is activated.

http://www.speedyshare.com/files/25115089/test.zip
hawkwind
 
Joined: 04 Mar 2009

Re: Problem with Boom linetype 166

Postby Graf Zahl » Wed Nov 10, 2010 2:14 am

Oh god, what did the Boom guys do? That type is supposed to move both ceiling and floor but in Boom it only moves the floor if the ceiling is blocked. So in 99.9% of all cases it only moves the ceiling. The definition of this type clearly looks broken. Here's the relevant code from PrBoom:

Code: Select allExpand view
          case 166:
            // Raise ceiling, Lower floor
            // 166 S1 EV_DoCeiling(raiseToHighest), EV_DoFloor(lowerFloortoLowest)
            if (EV_DoCeiling(line, raiseToHighest) ||
                EV_DoFloor(line, lowerFloorToLowest))
              P_ChangeSwitchTexture(line,0);
            break;


This looks ok on first sight but if you think about it, the floor action only starts when the ceiling action fails...

ZDoom always moves both.
User avatar
Graf Zahl
 
Joined: 19 Jul 2003
Location: Germany

Re: Problem with Boom linetype 166

Postby Graf Zahl » Wed Nov 10, 2010 6:27 am

Fixed - or if we want to be precise - un-fixed.

ZDoom did what Boom wanted to implement but obviously in this case compatibility comes first so it's now as broken as Boom.
User avatar
Graf Zahl
 
Joined: 19 Jul 2003
Location: Germany

Re: Problem with Boom linetype 166

Postby hawkwind » Thu Nov 11, 2010 7:14 pm

From Boomref.txt ...

---------------------------------
Section 3.3 Ceiling linedef types
---------------------------------

Regular and Extended Ceiling Types
-------------------------------------------------------------------
# Class Trig Dir Spd *Chg *Mdl Mon Crsh Target

166 Ext S1 Up Slow None -- No No Highest Neighbor Ceiling

As all can see, flat texture does not change ... maybe prboom introduced the bug ?
hawkwind
 
Joined: 04 Mar 2009

Re: Problem with Boom linetype 166

Postby Graf Zahl » Thu Nov 11, 2010 7:20 pm

No, that code is precisely the same in Boom 2.02. And it doesn't really matter what Boomref.txt says. The important thing is what the code does.

And there was no texture change. The floor just moved below the surrounding sector so that it got covered by flat bleeding.
User avatar
Graf Zahl
 
Joined: 19 Jul 2003
Location: Germany


Return to Closed Bugs

Who is online

Users browsing this forum: No registered users and 1 guest