Metamorph

Metamorph

4M Downloads

POV server side issue

AileRozy opened this issue ยท 5 comments

commented

Ver. 1.1.4 for 1.10.2

When server side metamorph config B:disable_pov=true
player who with small morph trying to go through tunnel lower then 2 blocks makes them suffocation and taking damage, if B:disable_pov=false on server side player won't get hurt.

and may I ask player with about 1.5 block height morph trying to go through 1.5 block height tunnel will having some force pushing them off like player been pushed off when stand near the dropping sand, is this normal?

commented

Ok, so here's what going. I initially added disable_pov to fight the conflict between MorePlayerModel or other mods which modify player's POV (eyeHeight and AABB).
So this what happens:

player who with small morph trying to go through tunnel lower then 2 blocks makes them suffocation and taking damage

On the client side, POV isn't disabled, so the player's AABB for the client is modified, while on the server it's default. It seems like the server doesn't check the AABB or push of the player, because of that player is getting suffocated on the server (because of different AABBs).

So disable_pov is more of a singleplayer config option.

and may I ask player with about 1.5 block height morph trying to go through 1.5 block height tunnel will having some force pushing them off like player been pushed off when stand near the dropping sand, is this normal?

If that happens when disable_pov=true on server and disable_pov=true on the client, then yes, it sounds normal, because server's player is colliding with that wall's ceiling, meanwhile client attempts to pass that tunnel, while getting synced back.

commented

sorry for the late reply
I've test other bugs and have a test for colliding issue too.

in singleplayer(LAN) games when disable_pov=true players still suffocated when view in a full block with morphs lower then default eyeHeight and won't been push out, not only on server side so I think it is a issue.
2017-12-10_04 26 23

and when disable_pov=false player still been push out from full blocks while the entity you morphed can go through that height normally(player won't cause suffocation when go through), I think it is a issue too.
it normally happens when then morph is nearly same height with roof, and roof are smaller then 3*3.
2017-12-10_04 30 24
2017-12-10_04 30 37
2017-12-10_04 30 45
2017-12-10_04 06 52
2017-12-10_04 13 34
2017-12-10_04 06 59

have we get any chance to fix this? I don't know how it works so I don't have any suggestions now but hope it can be fix in future.

mods used while testing:
forge-1.10.2-12.18.3.2477
metamorph-1.1.4-1.10.2 (also tested 1.1.3 & 1.1.2 with same result with colliding)
ShinColle-1.10.2.5.0 (also tested without it with same result)

commented

I don't get the screenshots where you in different mooshroom morphs. In one you are able to enter, while in other you can't... Could you explain this phenomena?

And I don't think I will be able to fix it anytime soon.

commented

in first pic, I'm trying to go through the tunnel but I was been push off, this is like you stand between two blocks, one side of the block drop sand down and you been push off by sand.

it happens when there's full block on the edge of the roof, when you morph into some morph that wasn't default height (like 1.11.5blocks, 2.02.5blocks etc.) and your head touch these roof near the edge, you get push off, no matter you're trying to go through tunnel or just trying to jump and your head hit the roof like that.
you'll be push to the nearest edge, where the air blocks are.

if there isn't any air blocks with in 3 blocks same height with those roof, you won't be push to anywhere like third pic, and this makes you able to go through tunnel.

commented

@AileRozy oh, I see what's going on. I don't think I can fix that issue because that's looks like it's Minecraft's problem with the code related to handling player movement when walking over slabs. You see, Mooshroom's height is 1.4, and slabs are 0.5 blocks high. I guess what happens here is code responsible for walking over slab pushes you up where your top goes over 2.0 and thus colliding it with upper block, and then your character goes down (due to gravity), but once you touch horizontal face of slab it pushes you up again, and so on...

I'll make a test, and if my assumptions correct, then there is nothing I can do about it.