Sucky Collision

Status
Not open for further replies.

Liliam

Member
It has become evident that Iron Turret Zone still exhibits the same problem as before, being that the far back wall in the red base is bugged, and even allows the player to go through the thok barrier if he nudges himself through one of the corners.

I have tried moving control sectors, increasing the width of the thok barrier, redrawing the problematic linedefs, recreating the corresponding sectors, pasting over the sector work from the blue base (which is fine), moving the entire map, deleting the blockmap, rebuilding all the nodes and nothing works. I do not know how to fix this issue.

Weren't thok barriers supposed to be unnecessary in SRB2 2.0? I'm not seeing it.
 
Have you done a full nodesbuild? Actually do zennode filename.wad from the command line instead of the quick nodesbuild that SRB2DB normally does. It frequently takes forever (Something along 3 minutes for NAGZ on my computer), but it produces a far better nodesbuild and can fix issues like that.
 
No good. ZenNode does nothing to the wad file.

Code:
C:\Program Files\SRB2 Doom Builder>zennode f_ironturret.wad
ZenNode Version 1.2.1 (c) 1994-2004 Marc Rousseau

Working on: f_ironturret.wad

  MAP86   : BLOCKMAP - 11274/11274 (100%)   Compressed:  48%       0.001 secs
            NODES -  372/372  (100%)  SEGS -  1134/1134  (100%)    0.072 secs
            REJECT - Efficiency:  36.8%/36.8%  Sectors:    54      0.008 secs

1 Level processed in 0.081 seconds - No Levels needed updating.
12.345679 levels/sec
 
Upon thinking a bit out of the box and sleeping for about three hours, I've come to the conclusion that the offender was the control sector for the red light block. Something in the collision octree must be awry, letting the game think that Sonic is supposed to be able to reach it from inside the base.

Moving the control sector away from the problematic wall fixed the hole it had, but its permeability is still questionable. The wall is still "broken" and collision against it doesn't behave correctly, but without the sector on the other side at most the player can only go halfway inside the wall. I assume this problem is unfixable, at least in the map itself.
 
Some weeks ago I had done a 500 x 1000FU map with thokbarrier and 1 player start, just to start messing with something in DB.

I realized linedefs that face towards -X and -Y axes let a half of character's hitbox get stuck in the walls (and sometimes it lets the character go through the corner); while towards +X and +Y axes, the collision is perfect.

 
Last edited:
So what you're saying is that if I flip all my negative linedefs I'm golden?

EDIT: Doesn't seem to work. I am assuming that a linedef's orientation corresponds to which side is the front and which is the back.

EDIT EDIT: LINEDEFS lump seems to say otherwise.

TRIEDIT: Unless SRB2DB's linedef drawing tool doesn't work as expected, this doesn't seem to work. I deleted the old linedefs and drew new ones so that they started in lower coordinates than they ended and the linedef was still botched.
 
Last edited:
I've finally figured out the problem. This is a glitch inherent to SRB2, so all maps who fall into these circumstances display it. It works as follows:

If the player attempts to run into the southernmost or westernmost wall of a level and the thok barrier behind that wall is less than 64 fracunits thick, the player's hitbox will be allowed to go halfway inside the wall. From there, the outermost linedef of the level is 32 fracunits or less away, so if the game is misled to think that the level continues beyond that wall (presence of control sectors nearby), the player will be able to exit the normal level boundaries.

What's most surprising is that whatever causes this is what forces our levels to have thok barriers in the first place. Try it yourself, make a square sector, with one-sided walls, and attempt to thok outside the level. You'll notice that while the northernmost and easternmost walls work fine, the westernmost and southernmost ones offer little to no resistance.

I've tried this in other maps, and the bug is present globally. For instance, in the contest map Ancient Arboretum Zone, the indents in the walls of the rooms behind the crushers are 32 fracunits away from the thok barrier, so the player can get himself halfway inside the wall (they're the southernmost walls in the level).

Whether this can be fixed or not I have no idea, but it would be wise of you to make your thok barriers at least 64 units thick, or at least around the edges of your map.
 
I was about to post something about it, but my lunchtime was stronger than me.

This glitch doesn't depend on which quadrant you've built the map. I tried to move whole Mill Citadel Zone 2 to +X/+Y quadrant and the glitch persists.

South- and westward collisions let a half of character's hitbox get in the thokbarriers. While north- and eastward collisions are perfect. So perfect you can even remove north- and eastward thokbarriers from the map (see MAPM1, Sept-Oct'09 OLDC).

but it would be wise of you to make your thok barriers at least 64 units thick, or at least around the edges of your map.

or... create fake pillars, like this:

| |
| |_
| . |____
|_______
 
Last edited:
This glitch doesn't depend on which quadrant you've built the map. I tried to move whole Mill Citadel Zone 2 to +X/+Y quadrant and the glitch persists.
You said it had to do with linedef's angle, ie. the coordinates of its start and end vertices. This is incorrect. It has to do with the player's angle, or otherwise the relative positioning of the linedefs towards him.

It's a very dumb bug.
 
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top