Thursday, January 22, 2009

Lockups are fixed

I'm not certain quite what to make of this one, but it appears as though there is a map editor or compiler out there somewhere that lets inline brush models share surfaces. It doesn't happen with any of the ID1 maps, nor with the Hipnotic or Rogue maps I've tested with, nor with 99% of other maps, but it does happen with some.

This was compounded by the fact that I'm adding these models into the regular texture chains, which causes the texture chain to loop back on itself and become infinite. The fix was to check if a surf has already been added (I just reused visframe for this, as it's not otherwise used here) and not add it again if so.

Let me just say it again - this doesn't happen with ID1.

This I guess is one of the reasons why I generally hate mods, and why coding to ensure mod compatibility can be such a minefield. Of course there is nothing in the engine to prevent this from being legal, but even the standard Q1 map format doesn't support it. So - assuming my analysis is correct - what we have here is somebody who went and invented their own non-standard map format which just happened to work with regular Quake, purely by accident.

To say I'm a bit annoyed would be putting it mildly.

0 comments: