Commit graph

20 commits

Author SHA1 Message Date
jeefo
48e157c7b4
nav: allow null-velocity jump links
nav: fix: bots failure to switch weapon back after jump
refactor: re-organize some sources
2023-05-10 09:08:34 +03:00
jeefo
a616f25b1a
bot: implemented asynchronous pathfinding
nav: floyd-warshall matrices and practice updates are done asynchronously by now
add: yb_threadpool_workers cvar, that controls number of worker threads bot will use
add: cv_autovacate_keep_slots, the amount of slots to keep by auto vacate
aim: enemy prediction is now done asynchronously by now
bot: minor fixes and refactoring, including analyze suspend mistake (ref #441)

note: the master builds are now NOT production ready, please test before installing on real servers!
2023-05-06 20:14:03 +03:00
jeefo
e7712a551a
backport: nodes flooder (analyzer) from cs-ebot
analyze: allow to disable goal marking
analyze: add cvars descriptions and bounds
nav: added optional post path smoothing for astar algorithm
nav: now bots will use Dijkstra algo instead of floyd-warshall if memory usage too high (controlled via yb_path_floyd_memory_limit cvar) (fixes #434)
nav: vistable are now calculated every frame to prevent game-freeze during loading the game (fixes #434)
graph: pracrice reworked to hash table so memory footprint is as low as possible (at cost 5-10% performance loss on practice) (fixes #434)
control: bots commands now is case-insensitive
bot: major refactoring of bot's code
nav: issue warnings about path fail only with debug
practice: check for visibility when updating danger index
analyzer: suspend any analyzing on change level
control: add kickall_ct/kickall_t
nav: increase blocked distance in stuck check
2023-05-02 09:42:43 +03:00
jeefo
29c00565dc
aim: verify camp angles from nav data before using them
aim: tweaked a bit grenade handling, so bots should use them more
aim: reduce time between selecting grenade and throwing it away
aim: removed hacks in look angles code, due to removing yb_whoose_your_daddy cvar
aim: use direct enemy origin from visibility check, and not re-calculate it
aim: update enemy prediction, so it now depends on frame interval for a bot
aim: additional height offset are tweaked, and now used only for difficulty 4
nav: tweaked a bit player avoidance code, and it's not preventing bot from checking terrain
nav: do not check banned nodes, when bucket sizes re too low
nav: cover nodes are now selected depending on total bots on server
nav: let bot enter pause task after long jump
nav: extend velocity by a little for a jump, like it was in first versions of bot
nav: stuck checking is now taken in account lower minimal speed if bot is ducking
fix: navigation reachability timers, so bots will have correct current node index while camping
fix: bots are unable to finish pickup or destroy breakable task, if target is not reachable
fix: cover nodes are now calculated as they should
fix: manual calling bots add_[t/ct] now ignores yb_join_team cvar
bot: tweaked a little difficulty levels, so level 4 is now nightmare level, and 3 is very heard
bot: minor refactoring and moving functions to correct source file
bot: add yb_economics_disrespect_percent, so bots can ignore economics and buy more different guns
bot: add yb_check_darkness that allows to disable darkness checks for bot, thus disallowing usage of flashlight
bot: camp buttons are now lightly depends on bot health
chat: welcome chat message from bots is now sent during first freeze time period
crlib: switch over to stdint.h and remove crlib-own types
crlib: fixed alignment in sse code
2023-04-07 14:46:49 +03:00
jeefo
53df621dfc
build: reworked build and package to simplify process
build: reworked build and package to simplify process
build: windows dll is now compiled by clang, msvc build added to extras package
fix: clear all the implicit conversions in the code (also fixed some bugs)
fix: crash on  never xash3d-fwgs engine
fix: fixed bad bot behaviors on aarch64
fix: crash on some maps due to missing previous node
fix: finally removed memset(this) within bot creatin
2023-04-02 12:17:12 +03:00
dmitry
5104508665
refactor: change comparison order in weapon pickup code 2022-02-22 10:21:21 +03:00
dmitry
80890c25e1
fix: graph urls
update: yapb.cfg with latest cvars
2022-01-04 00:10:36 +03:00
dmitry
3205e1253f
refactor: use xash3d physics interface to handle with linkents, so do not hook dlopen/dlsym while running under xash3d
add: force set sv_forcesimulating to 1 while running under xash3d
2021-09-30 16:37:40 +03:00
dmitry
5563168800
fix: msvc build
build: switch to msvc. too much hassle with meson & windows cross-build
2021-09-14 16:17:16 +03:00
dmitry
d17c1808aa
fix: bots continuesly trying to reach goal, after falling down while going on path.
add: bots path type (fast,optimal,safe) is now updated randomly on every round start.
add: more sse functions for mathlib, support for neon (thanks to sse2neon lib)
2021-09-14 15:10:14 +03:00
dmitry
28e9f44dee
build: simplify workflow
linux; switch to gcc to support older hlds builds as well
win32: switch to clang as default compiler
2021-09-12 13:04:05 +03:00
dmitry
f55730ac6d
fix: occupied point check radius calculated incorrectly
fix: occupied point calculation takes too much cpu power
fix: buffer overrun in messaging processing
fix: running bots on hlds 3111e (cs 1.5) on linux*
build: added back correct ldscript for gcc and clang

* for some reason only gcc-compiled binaries working on centos5.8 and hlds 3.1.1.1e. clang binaries crashing immediately, so if you want to run bot on ancient os and/or hlds you need to recompile with gcc, as default linux binaries built with clang.
2021-09-10 19:42:24 +03:00
dmitry
6cd471ead2
msvc: fix project files [skip ci]
signing: use sha384
2021-09-08 21:23:05 +03:00
jeefo
74f1ab866b Fixed linux listenserver startup problems
Fixed multiple buffer overruns and memory leaks.
2020-11-23 00:06:18 +03:00
ds
f23d031d2c add: basic amxx module api (actual module pending). 2020-11-05 15:17:06 +03:00
ds
fa47e418b2 add: implemented #122.
fix: bots try to defuse already beeing defused bomb (fixes #116).
fix: line ending in source code.
fix:  do not retreat with sniper weapon, if currently shooting and have ammo.
crlib: added deque class.
2020-09-16 13:07:47 +03:00
dmitry
419626df0e crlib: reworked detours. 2020-06-21 09:45:09 +03:00
dmitry
c74d8e91e4 cfg: reworked map-specific configs, so they are now located in yapb/conf/maps/*map*.cfg
cmd: fixed handling "yb" & "yapb" command prefixes.
2020-06-16 11:19:30 +03:00
dmitry
785e927185 crlib: update upstream
msvc: fix project paths
2020-06-16 11:19:30 +03:00
dmitry
cf501b75b7 merge changes from the defunct ubot 2020-06-16 11:19:30 +03:00
Renamed from project/yapb.vcxproj (Browse further)