Skip to content

Implement DP_QC_NUDGEOUTOFSOLID extension, fix Quake item bugs

bones_was_here requested to merge bones_was_here/nudgeoutofsolid into master

Implement DP_QC_NUDGEOUTOFSOLID extension

This was the main goal: to get a more capable "move out of solid" function than what's available in QC. It succeeds in most cases where WarpZoneLib_MoveOutOfSolid() fails, usually in less CPU time, and the resulting bbox placement is usually ideal.

My (second attempt) sv_legacy_bbox_expand branch (which includes significant refactoring of the QC droptofloor function) needs it to produce results I'm happy with, and it will be an upgrade pretty much anywhere this is needed.


Fix missing entities (and possibly other bugs) in Q1BSP

This is included because in a separate branch it would have had annoying merge conflicts.

Q1BSP hull recursion had a subtle bug that prevented tracebox from moving an entity that started in solid, out of solid. It would instead report seemingly impossible results.

There were also several bugs in the droptofloor() builtin, affecting id1 and community maps, in the "main" path and the fallback sv_gameplayfix_droptofloorstartsolid* paths. It will now print warnings about entity placement problems.

Merge request reports