|
Post by TimeOfDeath on Jul 20, 2024 16:53:01 GMT -5
www.doomworld.com/forum/topic/146577-self-referencing-sector-help/To remove the HOMs, don't make the self-referencing sector have zero height (raise the ceiling by one unit). To stop the monsters from seeing you, don't make it a self-referenced sector at all, make the border sector and the inner sector have a very high ceiling and make the inner sector's floor one unit below the ceiling, and use missing textures for everything. Like this: hydroshock-fix.zip (65.86 KB)
|
|
|
Post by Bob Page on Jul 20, 2024 23:05:19 GMT -5
This is actually very helpful, thanks!
|
|
|
Post by Attila on Jul 21, 2024 7:26:15 GMT -5
Disclaimer: this post of mine is off-topic to original user problem, but since title only talks about self-referencing sectors, I figured out someone doing something else with self-referencing sectors might benefit from correcting a widespread misunderstanding about self-referencing sectors and monster behavior (being able to see player from inside self-referencing sector and vice versa). So, regarding self-referencing sector and monster sight: self-referencing sectors do not produce "monster doesn't see" artifact in vanilla engine by themselves (dunno if height can influence this, though), it is what some reject builders do, such as Zennode. Reject is a lump that can tell the engine which sight checks to omit, and Zennode produces it a certain way that self-referencing sectors typically get omitted always. If you build a map with zero-filled reject, the engine will do sight checks from anything to anything, and normal setups with self-referencing sectors will see monsters getting alert, tracking player and attacking through them just fine. So if you have, for example, monsters inside self-referencing sector not seeing the player, it is an artifact produced by your reject builder, not standard engine behavior. Self-referencing sectors also don't block shots in vanilla (and Doom 2 compatibility limit-removing). Dunno about advanced formats from Boom onwards, only think I remember GzDoom has or did have a compatibility switch to alter this behavior (I am no longer using GzDoom, though). Also, from what I remember about Zennode, while self-referencing sector will be hidden both ways from others, it doesn't mean that sight across it is blocked for other sectors, unless it completely stands in the way of sight between sectors. That is, if there is a line of sight between sectors that doesn't pass through self-referencing sector, then in reject both sectors will be marked as "check to see", and since self-referencing sector doesn't actually have effect on the way engine itself is testing visibility, engine check might find a line of sight that traces through self-referencing sector, for in its view, it is a valid line of sight. And if someone, on the contrary, wants to use self-referencing sectors and have monsters attacking, they can either build a zero-filled reject, or use a reject builder or nodebuilder that are smarter about self-referencing sectors. One such nodebuilder is VigilantBSP ( github.com/vigilantdoomer/vigilantbsp). Its reject generation code is otherwise a copy of Zennode's, but it offers a different strategies to mitigate this bug and produce a non-zero reject where self-referencing sectors don't break monster attacks. This was used in some DBP map where there was a map with heavy self-referencing sector use, to have player moving on bridges in space (bridges only marked by suspended textures on the sides) and monsters were certainly not dormant throughout. From what I understood, VigilantBSP is an amalgam of different nodebuilder technology, he didn't write his nodebuilder from scratch but started by copying open-source code from other GPL-compatible nodebuilders, then introduced fixes, made some stuff run on parallel threads, and added some new functionality. It seems to be no longer updated but so are some nodebuilders that are still in use.
|
|
|
Post by sexybzzrak on Jul 21, 2024 7:27:31 GMT -5
Self-referencing sectors? More like GAY NIGGA SECTORS! Trolololol
|
|