Commit graph

83 commits

Author SHA1 Message Date
Sally Coolatta
062ea7e430 Use scale 1 instead of 0 for player oblivion shrink 2020-09-27 10:36:44 -04:00
Sally Coolatta
17b8a5d603 Shrink when dying post-finish
I started this in another commit and forgot to fully finish it. Also allows attacking bot-controlled players who won
2020-09-26 05:40:01 -04:00
Sally Coolatta
e19cffa819 Quitting players act like bots 2020-09-25 02:27:11 -04:00
Sally Coolatta
99a1bacb81 Turning code overhaul
Packet drops are still broken, but at least netgames are playable now.
2020-09-22 00:35:44 -04:00
Sally Coolatta
fc663d4d86 Bots work again 2020-08-18 05:40:21 -04:00
Sally Coolatta
f9ca40e673 Merge branch 'master' into the-scary-22-merge 2020-08-12 20:59:09 -04:00
Sally Coolatta
8731c6b7a4 Another round of fixing up
- gametyperules are now fitting for kart, not applied to the whole codebase though
- a few more files compile
2020-08-11 16:13:17 -04:00
Sally Coolatta
69b6ba2f18 I tore apart the entire code to try and fix braking friction and gave up, so now it's back to v1
My rewrites clean up a LOT of weird/misleading behavior anyway, so I'm gonna push this regardless. Someone else will have to figure out another way to reimplement braking friction though -- we can't use it as is because it prevents being able to bump people.
2020-07-28 03:34:39 -04:00
Sally Coolatta
fc89f2cc47 Remove start boosts, let you roam, kill you for crossing the line before the start 2020-07-24 02:59:47 -04:00
Sally Coolatta
559b879a28 move bot ticcmd to SV_Maketic 2020-06-07 03:41:56 -04:00
Sally Coolatta
42419f7bc6 Add comments for functions 2020-06-04 17:14:14 -04:00
Sally Coolatta
9603c5fea7 Revise rival score system, so that it's much more likely to make the rival status switch places 2020-06-04 16:52:24 -04:00
Sally Coolatta
4005288d40 Adjust max/min rubberband multiplier with bot difficulty
Lv. 1: Ranges from x0.75 to x1.0 (never speeds up, only slows down)
Lv. 5: Ranges from x0.875 to x1.5 (completely average)
Lv. 9: Ranges from x1.0 to x2.0 (never slows down, only speeds up)
2020-06-04 15:59:51 -04:00
Sally Coolatta
30df376d04 Higher friction while rubberbanding
They are now x2 as difficult :)
2020-06-03 14:02:14 -04:00
Sally Coolatta
91b0246d99 Merge branch 'master' into grand-pricks 2020-05-31 15:53:31 -04:00
Sally Coolatta
990733a5cc Minimum prediction distance
Lets them properly steer while respawning
2020-05-28 18:46:33 -04:00
Sally Coolatta
d2aa03b44e Change 3*rad/4 to rad
Should let them use slightly more of the track
2020-05-28 18:45:14 -04:00
Sally Coolatta
5f97070a47 FixedDiv should be here instead of FixedMul 2020-05-28 18:29:00 -04:00
Sally Coolatta
fdb13b76d1 Make K_BotTopSpeedRubberband a function 2020-05-28 16:46:21 -04:00
Sally Coolatta
b8b4d913a8 Reverse order bots are removed 2020-05-28 13:44:53 -04:00
Sally Coolatta
20b2dabae9 Merge branch 'pet-robo' into grand-pricks 2020-05-25 12:44:59 -04:00
Sally Coolatta
4916516e2e Prevent duplicate skins, fix bots not being able to be disabled, change default to "off" 2020-05-24 17:12:58 -04:00
Sally Coolatta
5d77807a78 const radreduce, removed unused "dir" property 2020-05-24 16:16:01 -04:00
Sally Coolatta
597baf212b Allow rubberbanding up to exiting players 2020-05-24 15:55:26 -04:00
Sally Coolatta
dbc30da69f Dial back the bot steering changes a bit 2020-05-24 15:55:10 -04:00
Sally Coolatta
02605a5ace Split bot code into multiple files & clean up 2020-05-24 15:08:10 -04:00
Sally Coolatta
56867fb203 Going above top speed makes radius smaller 2020-05-24 11:13:20 -04:00
Sally Coolatta
edfc14c506 Better steering
- If they're already turning in one direction, they are more likely to steer in that direction for objects
- Bots have to want to turn in 1 direction for a few frames in a row before it'll let them

Prevents twitching & makes them less indecisive in general
2020-05-24 11:12:38 -04:00
Sally Coolatta
38ec153e90 A bit redundant 2020-05-22 20:49:33 -04:00
Sally Coolatta
f442b934cc Adjust wall steer radius with speed 2020-05-22 20:20:17 -04:00
Sally Coolatta
19f352e4a4 Commentate K_BotReducePrediction better, use angle rather than distance for path split picking 2020-05-22 20:19:58 -04:00
Sally Coolatta
1ec651ff00 Combine K_FindRandomItems & K_FindEggboxes 2020-05-18 15:30:55 -04:00
Sally Coolatta
c3a5193150 Remove this code, it's in grand-pricks & functional now 2020-05-18 15:19:48 -04:00
Sally Coolatta
7bdb1e9458 Rival always rubberbands to the front of the pack 2020-05-14 02:23:03 -04:00
Sally Coolatta
482141a95f Reduce spacing between bots 2020-05-13 02:47:10 -04:00
Sally Coolatta
fa5fccffc5 Implement lives system
Lose a life & restart the current race if you place below the top half. Lose all of your lives, and you get kicked to the title screen.
2020-05-13 02:14:39 -04:00
Sally Coolatta
2282fa7452 Adjust bot rubberbanding distance with game speed 2020-05-10 00:17:36 -04:00
Sally Coolatta
4a3262da41 Initial GP commit
Has a rudimentary option in the menu, which spawns the specific bots & spawns you on Green Hills in singleplayer.
2020-05-09 03:42:51 -04:00
Sally Coolatta
9429ae80e1 Only do this if you're the server :VVV 2020-05-07 22:19:32 -04:00
Sally Coolatta
efc8ce335c Rubberbanding spacing was reworked
Instead of the spacing being completely difficulty dependent (which would cause them not to rubberband to 1st place if they were any difficulty lower than 9), it's based on their difficulty & overall race standings & a little bit of port priority instead. This enables you to see a pesudo "rival" even when every bot is the same difficulty.
2020-05-07 04:07:13 -04:00
Sally Coolatta
d2172fc54b Bot amount & difficulty is now controlled by cvars 2020-05-07 02:37:06 -04:00
Sally Coolatta
3b6a2fed77 Make the safe distance from the road farther 2020-05-04 21:46:00 -04:00
Sally Coolatta
cb34ea1388 Consider FOFs when figuring out sectors to be careful near 2020-05-02 02:01:39 -04:00
Sally Coolatta
69e5cf8205 Bots can use bubble shield and flame shield, albiet a bit simplisticly
This means they can now use ALL items!
2020-05-01 23:44:03 -04:00
Sally Coolatta
664a9528ed Eggbox stuff
- Bots can roll & use eggboxes now
- Bots can be "tricked" by eggboxes and treat them like normal items, depending on their difficulty and how many normal items are around them.
- If exploding and in 1st place, they'll slow down to try and find someone to explode next to.
- Item usage is difficulty dependent, and thus far more aggressive for the rivals
2020-05-01 22:55:58 -04:00
Sally Coolatta
b9e24d921c Bots reduce their rubberbanding top speed if they're facing the wrong way 2020-04-30 17:28:34 -04:00
Sally Coolatta
1fcfdd5bae Bot hints
Thing type 2004, adds a map-defined point for bots to gravitate towards or away from.
Angle: Changes radius, defaults to a 32 radius (or 64x64 area) without.
Ambush: When off, makes bots steer towards. When on, makes bots steer away.
Parameter: Changes how much the bot steers away/towards this point. If 0, defaults to 2.

(also, made bots ignore strong offroad if they could take a shortcut)
2020-04-30 14:15:10 -04:00
Sally Cochenour
c06c4049c4 Bots play more careful around damage, insta-kill, and strong offroad 2020-04-28 14:24:09 -04:00
Sally Cochenour
44334602e5 New "wall steering"
Rather than trying to steer away from walls (and failing), just pull the predicted point back and make the radius stricter.

Not an ideal solution compared to what the other method was trying to go for, but this has a better success rate -- and even in cases where false positives come up (like many instances Ezo pointed out), they will no longer be incapacitated by it.
2020-04-27 17:06:36 -04:00
Sally Cochenour
be70afcbbd Object steer polishing
Notably, looks in an oval area instead of a circle
2020-04-27 13:42:01 -04:00