Before, it did level up based on how much the status quo was messed up (if a loser bot got pushed in front, or a rival bot got pushed ahead).
Now, bots will additionally level up based on the best of the 4 players' overall performance, and the performance of the human player that beat them. This means that back of the pack bots will level up more often and the rival won't level up if you place poorly.
The new formula ensures ALL bots are guaranteed at least 1 level up if you come in first place, whereas the old formula had a decent chance of not leveling up some bots. However, loser Chao getting boosted from 12th into 1st, or your rival getting sent to 7th, will still wildly piss them off :B
- k_hud.c: Add K_DrawSticker function (was previously named M_DrawSticker)
- Seperated the confirm handling into the menu ticker (fixes the confirm delay being framerate dependent)
- Updated to use the button graphics
Reuses most of the anti-grief code, but with a very low timer (5sec) and they simply hold Y when reaching it until they eventually respawn from the ring shooter.
- Added new spindashing conditions:
- In offroad.
- Trying to go up-hill on a steep slope.
- On a conveyor going the opposite direction they're trying to go. (Barren Badlands)
- Instead of checking for any spindash condition and adding to the confirm timer, it adds to the confirm timer for every single condition.
- Increased the confirm time from 2sec to 3sec to accommodate for this change.
- Fixed not using precise momentum angle, causing the low-speed scenarios spindash is intended for to not always work.
- Bots now check for spindash conditions even in damage states, allowing for spindashes after a spinout.
- Fixed the spindash confirm not decreasing over time when entering a condition and then exiting it, causing random spindashes when it wouldn't make sense.
- It's pretty barebones so far, more stuff has yet to be done
- Updated to use the current method of checking if a memu button is pressed
TODO: Port the menu drawer
TODO: Fix confirm delay handling
- Preliminary work so that the feature can be tested later down the line when the menu is reimplemented
- Made sure any secret revealing presence info is guarded behind a non-DEVELOP build check
Previously based on prediction radius, which meant it was so low that it might barely even nudge at all. Now we try to nudge a lot, but clamp the radius to make it thinner if it goes off-road.
P_LineOpening results are stored in a locally made struct instead of being a bunch of disorganized globals.
Waypoint traversals can go thru 1 line, if it was blocked by step-up rules, for free, similar concept to sound-blocking lines in Doom.
Also includes secret support for widescreen.
I was planning to put this on tab rankings, which doesn't have borders.
Pause menu does, but it would be a waste to strip it back out again.
- Uses function pointers to highlight display players instead in demo playback
- Was previously doing this to avoid all players being highlighted in local splitscreen, but this is now relevant there too thanks to bots