Bounce states not entered when hitting top/bottom of actors
Moderator: GZDoom Developers
Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
- Marisa the Magician
- Posts: 3886
- Joined: Fri Feb 08, 2008 9:15 am
- Preferred Pronouns: She/Her
- Operating System Version (Optional): (btw I use) Arch
- Graphics Processor: nVidia with Vulkan support
- Location: Vigo, Galicia
- Contact:
Bounce states not entered when hitting top/bottom of actors
Whenever a bouncer hits an actor from above or below, the bounce happens normally but they don't enter any bounce state if the USEBOUNCESTATE flag is on, they only do if the actor is hit from the sides.
Here's a small map where you can see the problem in action.
Here's a small map where you can see the problem in action.
- Major Cooke
- Posts: 8175
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: Bounce states not entered when hitting top/bottom of act
That... reminds me. Sometimes actors bounce improperly off the top of actors too, or maybe that was fixed? I don't remember honestly but that was also something a while ago.
- Marisa the Magician
- Posts: 3886
- Joined: Fri Feb 08, 2008 9:15 am
- Preferred Pronouns: She/Her
- Operating System Version (Optional): (btw I use) Arch
- Graphics Processor: nVidia with Vulkan support
- Location: Vigo, Galicia
- Contact:
Re: Bounce states not entered when hitting top/bottom of act
You mean cases where the bouncers would just slide along the top of the actor? I think that doesn't happen anymore.
- Major Cooke
- Posts: 8175
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: Bounce states not entered when hitting top/bottom of act
Yeah, that's the one.
Re: Bounce states not entered when hitting top/bottom of act
what about bouncers getting sucked inside walls if their edge clips a corner?
- Marisa the Magician
- Posts: 3886
- Joined: Fri Feb 08, 2008 9:15 am
- Preferred Pronouns: She/Her
- Operating System Version (Optional): (btw I use) Arch
- Graphics Processor: nVidia with Vulkan support
- Location: Vigo, Galicia
- Contact:
Re: Bounce states not entered when hitting top/bottom of act
That can happen with non-bouncers too. It's a glitch with pretty much anything that moves fast and has a small radius.
-
- Posts: 419
- Joined: Fri Dec 22, 2017 1:53 am
- Graphics Processor: ATI/AMD (Modern GZDoom)
- Contact:
Re: Bounce states not entered when hitting top/bottom of act
I just noticed this in GZDoom's code in P_BounceActor method. In line 3644 of p_map.cpp:
The code for the Bounce State entering is under the if statement and does not exist in the else statement, causing bug.
Code: Select all
if (!ontop)
{
DAngle angle = BlockingMobj->AngleTo(mo) + ((pr_bounce() % 16) - 8);
double speed = mo->VelXYToSpeed() * mo->wallbouncefactor; // [GZ] was 0.75, using wallbouncefactor seems more consistent
if (fabs(speed) < EQUAL_EPSILON) speed = 0;
mo->Angles.Yaw = angle;
mo->VelFromAngle(speed);
mo->PlayBounceSound(true);
if (mo->BounceFlags & BOUNCE_UseBounceState)
-
- Posts: 419
- Joined: Fri Dec 22, 2017 1:53 am
- Graphics Processor: ATI/AMD (Modern GZDoom)
- Contact: