Open SeriousBarbie opened 1 month ago
Here map with small edits: MH-Forever-Fix-2_test.zip
Button located in water, below player start.
I can confirm bug with 469e - mover can't be pushed. However on 469d it act weird. Like there no collision at all and you collide with something far before actual mover. Way outside mover bounding box. That sound as broken mover.
And if you rebuild movers on 469e, then mover act as should.
Also if you goes on 469d from right side to left, from wall, mover not collide either. It collide only if you goes forward to it, or from left to right near wall.
If this is a singular issue I would not mess around with broken maps; I'd just rebuild and then publish it. But what about the holy backward compatibility then? :-P
We will talk with team internally about that. However sometimes need draw line. Which bug considered as need maintain, and which no.
Here how collision happen on 469d:
https://github.com/user-attachments/assets/20a8ef07-2d12-4bdc-909b-204522066491
From right side not collide. From left, front and bottom collide with brush when far away from it.
Mover bugged. It created from default cube 256x256x256, and later vertex edit to smaller size - 48x32x16.
So mover use two bounding box. Outer is 48x32x16 and internal one 256x256x256. Normally they must match.
Collision hash implementation can't handle this properly. So on this mover collide only few planes from inner box (big one). That be left one and front one. And even they collide partially.
If all planes collide properly on big box, button will be able push from top via ground.
that how really look collision model of this mover:
Detail of implementation of collision hash make collide only few planes of it. So this is broken map, which need be fixed.
Pushed fix, which you can test on test build 769. Can be turned off by set [Engine.GameEngine] FixUpMoversBoundingBox to False.
However this fix discover true nature of this movers - big huge cube 256x256x256. We can't reproduce bugged behavior of FCollisionHash, which can be:
In exact this case there only few walls which collide with player, and this walls can change during mover movement.
I'll fix that map.
Improve fix for broken movers. Now fix support 3 values for Engine.GameEngine.FixUpMoversBoundingBox (set in ini as number):
0 - None 1 - Full 2 - pre-469e (default)
However if you disable octree via set Engine.GameEngine.UseOctreeCollisionHash to False, then 2 (pre-469e) will act as 0 (none).
Add warning on save map with broken movers.
With latest fix collision size of bugged button in fix mode (pre-469e), goes be enough moderate. Even not collide from top. It visible, but you can't touch it.
Mover18 does not work with UT OldUnreal-UTPatch469e-Windows-test745 on local play; with UT v436 it works. Download map on DU (I can also upload the map somewhere.)