Commit graph

74 commits

Author SHA1 Message Date
NepDisk
d4abf4dfcb Fix some cases of bots randomly tapping brake in the air 2026-02-24 09:40:23 -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
minenice55
5fd1955845 doesn't work for what we need but...
implement K_BotDefaultSpectator
2026-02-10 23:25:51 -05:00
minenice55
40d566f607 UNTESTED stop bots from spawning in item breaker 2026-02-10 17:04:51 -05:00
NepDisk
71175d82ca Don't allow bots to do grip turns in the air 2026-02-09 22:41:22 -05:00
yamamama
4fe0dff858 Add grandprixinfo.gp checks I forgot about 2025-12-29 10:41:05 -05:00
yamamama
474a59ab7c Add "Lunatic" and "Maniac" modes
DUDE TOUHOU LMAO

Jokes aside:
* Lunatic = Master difficulty with modifications to make the races
  significantly more difficult:
  * Introduces a "lunaticmode" boolean to grandprixinfo;
    the demoversion has been upped to 0x0010 due to this
  * The bot modifier is, at MINIMUM, 2.0, making them aggressive as hell;
    Rival bots use a 2.5 modifier
  * Bump Spark is always off in this mode
  * RUNNERAUGMENT results have their distances significantly shortened;
    if a rival bot takes the lead, this distance is shortened even FURTHER
    so they don't frontrun against the human player endlessly
  * Alt. Invinc shows up earlier as a sort of "mercy" for human players;
    it would otherwise not show up until the race was effectively over
  * Maniac = Nightmare difficulty (Master at Expert speed)
    with Lunatic's changes
2025-12-28 21:13:30 -05:00
minenice55
2ffd575fcd test: this might actually be fine? 2025-12-13 19:46:15 -05:00
GenericHeroGuy
38907e9d80 Hashes for new patches and disable bot drifting
I'm sorry but the bots just eat so much shit 🥹
2025-12-13 01:43:15 +01:00
NepDisk
8881ade6fe Port some votescreen cleanup from RR 2025-12-12 18:15:21 -05:00
NepDisk
fe330fc283 Port bot unlock permit stuff 2025-12-11 21:47:07 -05:00
NepDisk
3028839f2f Port most of SECRET_SKIN and player->availabilities changes from RR
based on 6d0637d39d
2025-12-11 20:47:52 -05:00
GenericHeroGuy
75ecc81e23 Hashes and tweaks for new patches 2025-12-09 17:59:57 +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
c173a2dcd6 Fix transitive dependencies on k_waypoint.h 2025-10-29 23:34:44 +01:00
Eidolon
ecad6e8183 Merge branch 'node0Bot' into 'master'
Fix node 0 being occupied by a bot in dedicated servers for clients

done by JugadorXEI

Closes #385

See merge request kart-krew-dev/ring-racers!77
2025-10-27 12:07:54 -04:00
toaster
877ee24ac2 Add "allowdemos" option to K_CanChangeRules()
It's been used interchangably as "this is a singleplayer gameplay context" and "This is a no cvar changing context". This addition repairs some behaviour which might have been inconsistent between netgame and netreplay.
2025-10-23 20:36:05 +02:00
NepDisk
21777d651e Only show warning with bots on 2025-10-22 17:48:44 -04:00
NepDisk
2d1903f026 Don't spawn in bots if map does not have new waypoints 2025-10-22 11:56:00 -04:00
NepDisk
e1083d9d74 Add toggle to force rivals 2025-10-15 12:45:26 -04:00
GenericHeroGuy
28e341ce92 Restore kartbot_modifiermax and the mapheader option
It now uses the raw value directly, so maps using it will need to be updated
2025-10-14 21:57:04 +02:00
NepDisk
4495ae6b4c Merge branch 'blankart-dev' into AirDrop 2025-09-20 19:33:10 -04:00
NepDisk
49c0b2c00e Make Airdrop drop lines only turn yellow when you have ringboost 2025-09-20 10:23:15 -04:00
NepDisk
de5a8594b9 Add more conditions here 2025-09-20 09:43:32 -04:00
NepDisk
aba9e23a0d Readd bot airbrake logic for bot controllers 2025-09-20 09:40:27 -04:00
NepDisk
dbabd84715 Don't use map modifier 2025-09-19 22:41:00 -04:00
NepDisk
044e8c6ec1 Remove sclar on driftskill, make small grip lock out after drifts and make bots go neutral faster at high speeds 2025-09-18 16:53:08 -04:00
NepDisk
6512d71e4e Try to improve regular turns and drifts 2025-09-18 15:59:45 -04:00
Wumbo
9ab3987e0d Fix some oversights with kartbot_cap 2025-09-11 11:05:55 -04:00
Wumbo
9874a36f91 Add kartbot_cap cvar 2025-09-10 16:09:59 -04:00
GenericHeroGuy
d2c010ea01 Switch to a difficulty-based drift skill formula
This will get reworked later down the line (hopefully), but for now, I
think it ought to be consistent regardless of stats. Should make driftpoint
placement less of a nightmare at least
2025-08-31 22:33:26 +02:00
GenericHeroGuy
98fd7d0015 Shrink XD_RESPAWN to avoid potential netxcmd bloat 2025-08-31 21:43:43 +02:00
GenericHeroGuy
8d99f98bea Actually sync respawns properly 2025-08-31 21:32:16 +02:00
GenericHeroGuy
c9802c36c8 Add const, move driftskill to botdata
No more messing with respawn waypoints in K_BotTicker
2025-08-31 21:03:23 +02:00
GenericHeroGuy
bc4408b203 Expose botdata stuff to Lua 2025-08-31 20:40:24 +02:00
JugadorXEI
dc9bec000a Bot library for Lua (botvars getter/setter, bot functions) 2025-08-31 14:16:49 +02:00
GenericHeroGuy
e8d43ec8a3 Constantinople 2025-08-30 17:06:42 +02:00
GenericHeroGuy
68a644fe2f Replace the test cvars with botdata variables 2025-08-30 14:22:48 +02:00
GenericHeroGuy
b21319011e Fix perfstats, fix RNG desync 2025-08-28 23:24:55 +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
GenericHeroGuy
8a895d4813 Update hashes, bot tweaks, fix thwompsactive 2025-08-06 01:30:43 +02:00
NepDisk
9ee65fc0e7 Make bots use the same turncode as players: Redone
No more extra ticcmd bits so its less complicated
2025-07-16 10:28:14 -04:00
NepDisk
ab672ff2f3 Fix bot race start boost randomization desync 2025-07-15 20:19:12 -04:00
NepDisk
64fd5b93ac raise skinlimit to 4096
Why not UINT16_MAX? Thats 22gb of allocation lmao
2025-06-10 15:38:11 -04:00
NepDisk
dcc8b1d868 Stop bots from moving when exiting properly. 2025-06-05 08:35:53 -04:00
GenericHeroGuy
7fbf5830a7 Trying to handle various different speeds... 2025-05-27 17:05:09 +02:00
GenericHeroGuy
553ce473b1 Use turnvalue for handling instead of some weird approximation 2025-05-26 23:53:24 +02:00
GenericHeroGuy
b6b3920a17 Merge branch 'blankart-dev' into improveddrifiting 2025-05-26 22:09:34 +02:00
GenericHeroGuy
9ef9e41dba Use prediction/pathfinding for drift waypoints 2025-05-25 02:44:36 +02:00