-
-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
neverputt: Add KEY_FALL as SDL_TAB to call goto_state(&st_fall) to take penalty and... #99
base: master
Are you sure you want to change the base?
Conversation
Why does this fix not have been merged already? The bug ruins a whole course by forcing the player to restart the course. |
To answer your question, as far as it applies to me. I haven't merged this because the proposed patch isn't really up to par (as it were). The problem it attempts to solve is real, of course, but triggering fall-out by pressing TAB is not a good idea. First of all, it's a completely hidden feature to anyone except people who have read this pull request. Secondly, TAB is easy to hit by accident. A better solution in my opinion would be a forfeit / retry button in the pause menu. |
@parasti Thank you for your answer! I agree with you that a retry button would be a better solution. Should I open an issue for this? |
Nice one, although automatic detection would be difficult. Yes, Forfeit / Retry / Abort could be abused on holes with untimed switches and/or teleports that set the player back. The latter would especially be worth tanking the penalty. |
@ChallengeSY I'm not familiar with the Neverball engine, but maybe a logic could do something like this:
The release logic could force a retry / forfeit or it could place the ball nearby to an appropriate location in front of the obstacle for the next stroke, like in realworld mini golf when the ball is against a rail or obstacle). |
There's no such thing as "while the ball touches an obstacle." There are dozens of tiny bounces per second happening. They're just too small to be visible or to trigger the "bonk" sound. Likewise, there's no such thing as "ball movement equals the obstacle's movement". A moving body has a generally constant motion, but again, the ball is making microscopic velocity changes both with and against this motion. This is generally due to the imprecision of floating point computation that plagues all physical simulation. |
Yes - the TAB key is obviously a hack. I'll look at putting in the pause menu. |
@rlk Thanks for clarifying this! |
The main bug we have is that the ball does not properly respond to gravity and friction during the aiming phase. This must be corrected since there are a handful of courses with moving objects that will collide with the ball occasionally, but still allowing a large enough window of time for the ball to stop and the player to start aiming. |
Seems like the importance of allowing aborted strokes has increased in response to a recent discovery on the original course (#203). Version 1.6.0 introduced a regression on Original Course hole 15, allowing a golf ball to stay on one of the moving platforms indefinitely, soft locking the game as a consequence. Alternatively, a new ticket can be opened for fixing or replacing Original Course hole 15. |
... continue.
This is for Neverputt.
When the ball is on top of a moving object, the game cannot continue.
This patch allows the TAB to force the st_fall routine, causing the penalty
and continuing to to the next player.