Commit graph

32 commits

Author SHA1 Message Date
NepDisk
7ec95f7d96 Nerf bot ringchain threshold 2026-02-24 10:21:57 -05:00
NepDisk
f8ba24191a Don't bot stack sneakers when accel is not held or bot is braking
This might solve some cases of a bot stacking sneakers when it shouldn't
2026-02-24 09:45:49 -05:00
NepDisk
f18dee3db7 Allow bots to stack sneakers
When stacking is on bots will attempt to stack them together. Their timing is based on their difficulty, less skilled bots are more wasteful while better bots are less wasteful. Also adjusts Rocket sneakers to also use this logic.
2026-02-24 08:51:23 -05:00
NepDisk
21cab921fa Make bot mashing more dynamic
Instead of being based on a fixed range of tiers, it is now based on a sine curve. The larger the useodds is the more they mash. Also don't calculate if you are going to be forced to mash anyway.
2026-02-24 07:57:10 -05:00
NepDisk
50ad49eba0 Update bot mashing logic for more useodd tiers 2026-02-23 14:32:05 -05:00
NepDisk
3b298c2a25 Vendoring Tracy again
Having this as a submodule is causing issues
2026-02-21 12:36:05 -05:00
NepDisk
b4ffbe8ba4 Move tracy and libbacktrace to submodules 2026-02-19 16:06:24 -05:00
NepDisk
df3209281e Remerge S-Monitor back into Invin 2026-02-17 10:52:01 -05:00
yamamama
fb6066dea9 Fix up some uncaught issues with the S-Monitor split
- Cancel-music is fixed
- Offroad gradienting is fixed
- Introduced the "slot-unhog" system (decaying power lets you pick up items again)
- Renamed some more internal variables
2026-02-16 18:44:09 -05:00
yamamama
d5ca5516de Split Classic and Alt. Invincibility
- It's what the people want, why bother to complain?
- Alt is now its own separate item titled the S-Monitor
- Several variables, macros, functions, and comments have been renamed to fit this change
2026-02-16 18:40:48 -05:00
minenice55
6eb1a6688a get everything working exactly like the prototype 2025-12-09 00:38:57 -05:00
minenice55
474924a507 let bots check item cooldowns
also allow smarter bots to burn flame shield fuel to go thru offroad a bit faster
2025-11-12 09:50:02 -05:00
GenericHeroGuy
a2396fbdac Item refactor, part 2
Clean up alt item stuff, replace the billion parameters with kartroulette_t
2025-11-07 18:01:13 +01:00
GenericHeroGuy
efac1d27c2 Item refactor, part 1
Too much shit to explain, read the diff (you should anyway!)
Very sloppy, expect lots of fixes
TODO: SOC it all, separate "active odds" table, how to handle alt items
2025-11-06 22:59:02 +01:00
GenericHeroGuy
1a3630c640 Redapple the Bubble Shield, part 1/?
* The bubble remains inflated after holding the button, and slowly deflates
* Popping the shield now gives you flashtics, in addition to the speedboost
* Popping it also makes you invulnerable to proxmines!?
* Getting hit by an item while the shield is deflated protects you from
  JUST the spinout exactly ONCE, geez, think of the poor D5 players
* Players can be bumped by the inflated shield again, but it's very weak
* Bumping players with a deflated shield depletes half its HP, inflated
  bumps cost the same as other bumps
2025-10-31 22:31:28 +01:00
GenericHeroGuy
c173a2dcd6 Fix transitive dependencies on k_waypoint.h 2025-10-29 23:34:44 +01:00
NepDisk
2acf3725e3 Fix Bubble and Flame activating instatly when holding item down
You know have to let go once after rolling to use it.
2025-09-13 00:55:18 -04:00
NepDisk
1c52947194 Small Cleanup
Make itemodds compile as C, remove .vscode
2025-09-11 11:16:13 -04:00
Anonimus
a8dc5774e2 Refactor odds and move them to their own file
* Race odds now use 16 tiers and are intended to be balanced around 16 players
* DISTVAR has been increased to 2048 to match the new tier capacity
* Race odds now use a max-75 scale, with the x4 multiplier in calcs being used only in a battle odds context
2025-09-10 16:45:40 -04:00
NepDisk
8637fd772a Allow bots to reflect with the Bubble Shield rework since it no longer hits players. 2025-08-31 22:52:02 -04:00
NepDisk
0efd36ac5d Fix the Bot Flame Shield usage.
Turns out negative itemconfirm was a shitty hack. Lets rewrite this to use itemdelay instead.
2025-08-31 21:05:33 -04:00
GenericHeroGuy
e8d43ec8a3 Constantinople 2025-08-30 17:06:42 +02:00
GenericHeroGuy
6feb25cefe (WIP) Rewrite bot code to be much more sane
Bot logic is now handled exclusively by the server, now in the actual game
loop code, rather than during ticcmd generation. No TICCMD_BOT needed!
botdata_t has been added to store any variables that clients don't need.

Behavior differences:
* Brakedrifting actually works now... to the detriment of the bots
* Respawn triggers 1 second sooner (and actually causes braking)
* No longer spams respawn when a track lacks waypoints
* Turning might be less responsive?
  `botvars.turnconfirm += cmd.bot.turnconfirm` is gone... who knows
* No longer affected by timescale

Plus, no more outdated or copy-pasted comment blocks!
2025-08-28 21:42:51 +02:00
NepDisk
c9b16e1301 Allow bots to mash for items now based on useodds 2025-07-16 12:16:37 -04:00
NepDisk
0b1324aed3 Make bots properly use the flameshield rebalance 2025-07-16 11:33:08 -04:00
NepDisk
1d6dd4125a Remove Droptarget. 2025-05-10 07:31:51 -04:00
NepDisk
3fb79e4a1f Start chaining at half of sneaker time for more consistency 2025-04-22 16:41:04 -04:00
NepDisk
9b9e4db51e Let bots chain some boosts with rings 2025-04-22 16:31:40 -04:00
NepDisk
ed7b667aa7 Update File headers to use BLANKART 2025-04-19 13:33:28 -04:00
NepDisk
ef11c55b41 Merge and Update Flameshield overhaul concept 2025-02-28 00:54:24 -05:00
NepDisk
064be1b201 Merge branch 'bortsport' into blankart-dev 2025-02-26 19:43:22 -05:00
NepDisk
553676e588 Basic port of durrs bot code
It doesn't work as of yet.
2025-02-21 22:44:07 -05:00
Renamed from src/k_botitem.c (Browse further)