Commit graph

100 commits

Author SHA1 Message Date
jeefo
61fad287e7 Get rid of Visual Studio warnings.
Relicensed under the MIT license.
Added safety checks here and there.
2019-09-22 00:08:37 +03:00
jeefo
ff6c56aeac Fixed crash in message dispatcher after 'meta unload'.
Various cosmetic changes.
2019-09-22 00:08:37 +03:00
jeefo
9720a63401 Do not buy secondary without enough money on not first round. 2019-09-22 00:08:37 +03:00
jeefo
91c4d9ce1f Bots are now able to destroy random breakables around him, without touching them.
Added cvars descriptions and yapb.cfg generation.
Finally fixed bomb-defuse problems.
Fixed unaligned access in bot compression/decompression.
Fixed low-fps aim code falure.
2019-09-22 00:08:37 +03:00
jeefo
f673f5cd0a Many small fixes to combat behaviour, navigation and perfomance. 2019-09-22 00:08:37 +03:00
jeefo
858d247893 Minor fixes. 2019-09-22 00:08:37 +03:00
joint
9947e41549 Fixed player avoidance code.
Speedup network message handling.
2019-09-22 00:08:37 +03:00
jeefo
a186f33ffb More fixes to optiomal node search.
Support for replying to UTF-8 chat messages.
Minor refactoring.
2019-09-22 00:08:37 +03:00
jeefo
1d3910d629 Fixes for best waypoint searching and waypoint advance code.
Fixed software renderer true for OSX & Linux.
Fixed software renderer is default for OSX & Linux.
Fixed GCCs -pedantic warnings.
2019-09-22 00:08:37 +03:00
Dmitry
bbaac860dd Cosmetic changes. 2019-09-22 00:08:37 +03:00
Dmitry
1bc1fd1913 savepoint, changelog later.. 2019-09-22 00:08:37 +03:00
jeefo
68f2f010fd Major refactoring (#86)
Major code refactoring.
2019-09-22 00:08:37 +03:00
jeefo
2eef246e97 Check for reload when hiding. 2019-09-22 00:08:37 +03:00
jeefo
9eaca5a27b Minor refactoring. 2019-09-22 00:08:37 +03:00
Dmitry
7b3b80354d Fixed bots don't use silencers.
Fixed T bots sometimes goes to next plant, when currently crossing current.
2019-09-22 00:08:37 +03:00
jeefo
602d2ddd8c Fixed bots unable to search bomp defuse point, cause search radius is too small for buckets.
Fixed uninitialized variable in team counting.
2019-09-22 00:08:37 +03:00
jeefo
8456bb57cb Rise limit of waypoints to 3072. Need compatability testing.
This change invalidates all 'learned' bot data, such as visibility, pathmatrices and experiences, so file versions of them are bumped.

Tweaked yb_quota_mode.
Allowed low-skill bots to throw grenades.
2019-09-22 00:08:37 +03:00
jeefo
c78fc5a60d Fixed low-difficulty bot's unable to search the planted C4. 2018-11-01 11:53:44 +03:00
jeefo
5f6a1638d6
2.9 Update (#64)
* Fixed bots not camping in camp spots.
Fixed chatter/radio message cycling. (need feedback).
Fixed CTs unable to defuse bomb.
Fixed backward jump path generation in waypoint editor.
Fixed autoradius in waypoint editor.
Fixed autoradius menu non closeable.
Fixed bots version display on entering game.
Fixed memory leak in DLL-loader. (non metamod).
Fixed bots able to see through smoke.
Fixed team-detection on non-standard modes.
Fixed quota & autovacate management.
Fixed bunch of warnings from static analyzers.
Greatly imporoved grenade throwing.
Grealty reduced bot CPU usage.

* Fixed stack-corruption in memory-file reader.
Fixed A* pathfinder not working correctly.
Fixed 'Tried to write to uninitialized sizebuf_t error' on bot add/remove.
Minor tweaks to camping and bot enemy aiming

* Make clang happy.

* Fixed VIP-dection on some maps.
Fixed occupied waypoint checker.
Small refactoring of code with clang-format.

* Fixed clang compilation

* Fixed compilation.

* Debugging seek cover task.
Some more code cleanup.

* Fixed typos.

* Fixes to attack movement.
Revert Z component updates.

* Fixes for aiming at enemy.
Fixes for seek cover & enemy hunt tasks.
More refactoring.

* Making clang happy once again?
Tweaked grenade timers.

* Revised language comparer hasher

* Fixed build.

* Fixed build.

* Optimized headshot offsets.
Optimized aim errors and enemy searches.
Get rid of preprocessor macroses.
Added back yb_think_fps. Use with caution.

* Minor refactoring of code.

* Check if tracking entity is still alive.
Do not duck in crouch-goal waypoints.
Remove ancient hack with failed goals.

* Get rid of c++14 stuff.
Tweaked isOccupiedPoint.

* Changed pickup check radius.

* Fix compilation.

* Fixed bots ignore breakables.
Fixed A* pathfinder.
Fixed searching for optimal waypoints.
Fixed bot waypoint reachability functions.

* Get rid of new/delete calls in pathfinder.
Disallow access to yapb waypoint menu on hlds.
Minor refactoring.

* Updated linux/osx makefile

* Spaces -> Tabs in makefile.
Made G++ happy.

* Updated makefile.

* Fixed heap buffer overflow in config loader code.

* Lowered CPU usage a bit, by using "waypoint buckets" for searching closest node.
Do not traceline for doors on map, that have no doors.
Get rid stack-based containers.

* Remove win-only debug crap.

* Refactored string class.

* Fix OSX compiling.

* Minor refactoring of corelib to use cpp move-semantic.

* Use reference for active grenades searcher.

* Use system's atan2f () as it's eror rate is a bit lower.
Fixed bots continuously stays in throw smoke task.
Fixed bots reaching camp-goal jumping or stays they for some time.
Increased radius for searching targets for grenades.
Tweaked bot difficulty levels.
Improved sniper weapon handling. Trying to stand still while shooting.
Increase retreat level only if sniper weapon is low on ammo.
Fixed predict path enemy tracking timer is always true.
Allow bots to process their tasks while on freezetime, so on small maps they already aiming enemies when freezetime ends.
Fied bots endlessy trying to pickup weapons.
Reduce surpise timers when holding sniper weapons.
New aim-at-head position calculation.
Shoot delay timers are now based on bot's difficulty.
Prefer smoke grenades more than flashbangs.
Fixed kill-all bot command not killing one random bot for first time use.
Do not play with jump velocity, now using the same as in waypoints.
Tweaked shift move, so zero move speed not overriden with shift speed.
Radius waypoint searcher use waypoint bucket as well.
Increase reachability radius for dest waypoint, if it's  currenlty owned by other bot.
Partially fixed bots choice to use unreachable waypoints.

* Makes OSX clang happy?

* Support for compiling on llvm-win32, makefile to be done.
Increased default reachability time.

* Fixed build.

* Move level-initialization stuff from Spawn to ServerActivate, so bot will not check init-stuff every entity spawn. This should save few CPU cycles.

* Fixed active grenades list not working after changelevel.
Reworked items pickup code, so every bot is not firing sphere search every time, but instead we maintain our own list of intresting entities, so every bot is accessing this list. This should lower CPU usage more a little.

* Precache should be done in spawn...

* Do not use engfuncs in intresting entities.

* Fixed GCC-8.2 warnings.
Minor refactoring.

* Added some safety checks to intresting entities.
Get rid of stdc++ dependency for GCC & ICC under linux.

* Remove -g from release make.
Cosmetic changes.

* Re-enabled debug overlay.

* Remove test header...

* Some static-analyzer warnings fixed.
Support for X64 build for FWGS Xash3D Engine.

* Reduced time between selecting grenade and throwing it away.
Do not try to kill bots that already dead with kill command.
Several fixes from static-analyzers.

* Update CI.

* Fixed bot's not added after the changelevel on Xash3D engine.

* Revert commit that enables movement during freezetime. Everything goes bad, when there is no freezetime....

* Bots will try to  not strafe while in combat if seeing enemy only partially.
Do not use "shift" when considering stuck.

* Weapon price for Elite is 800$ since CS 1.6...

* Fixed bots at difficulty 0 can't shoot enemies.

* Cosmetic change.

* Fixed assert in ClientDisconnect when quitting game while meta unloaded yapb module.
Consider freed entities as invalid.

* Bigger distance for throwing he grenades.

* Faster version of atan2f().

* Removed accidentally left SSE header.

* Cosmetic changes to enums.

* Tweaked difficulty levels.
Bots on Android will have a difficulty level 2 by default.
Fixed LTO builds under linux.

* Do not consider Android CS as legacy.

* Get rid of system's math functions. Just for fun)

* Use SSE2 for sincos function.

* Fixed failed during load wayponts still allows to add bots, thus causing bot to crash.
Added ability to delete waypoint by number using "yb wp delete".
Enabled Link Time Optimization for Linux and OSX.

* Fixed CI Builds.
2018-10-28 19:26:36 +03:00
jeefo
62e9cccf7b Corrected usage of think interval for each bot.
Fixed double-jump task behaviour;.
Lowered CPU usage in player avoidance code.
Removed unused commands from 'yb help'.
Dirty fix for #44.
2017-02-06 22:31:54 +03:00
jeefo
ac0a2e1a8f First commit of the year in this repo.
Tweaked a little weapon recoil compensation code.
Some of the cosmetic code changes.
Rewrote chatter loading code, so it's works a bit faster now.
Optimized angle clamping in bot  vision code.
2017-01-03 02:11:16 +03:00
jeefo
e15b6219ec Force T bot to plant the bomb if inside bomb-plant area and has C4.
Minor refactoring.
2016-11-03 23:56:22 +03:00
jeefo
8527f0a34b fixed android compiling 2016-09-16 22:55:31 +03:00
jeefo
c07065ca9d tweaked a little weapon firing code
fixed chatter icon not disappearing
set bots correct walk speeds
implemented some sse2 stuff
update linux & android makefiles
2016-09-16 16:10:22 +03:00
jeefo
bcf11cf6ff disable gcc -fno-builtin 2016-09-14 09:20:33 +03:00
jeefo
0f97db33db fixed crashes on door open on xash3d
workaround bug with svc_bad after adding bots
reworked a little how bot menus works
some more source cleanup
2016-09-13 19:09:20 +03:00
jeefo
3c5d056fec rewritten a little weapon selection code
fixed bots do not chat when dead
some code cleanup
2016-09-11 21:01:06 +03:00
jeefo
c4d6ce3c45 a little cleanup of code 2016-09-10 19:31:38 +03:00
jeefo
db79df8d38 fixed crash on escaping from bomb on really small maps (de_iceworld ie)
reworked how yb_quota works
fixed engine is not notified about bot cvar is beeing changed
2016-06-23 15:30:19 +03:00
jeefo
de1e9b68e2 get rid of goto statements 2016-04-04 10:51:52 +03:00
jeefo
bc2e57a7a8 code refactoring, still testing
some fixes all over the place
fixed all warnings from clang
2016-03-12 14:35:44 +03:00
jeefo
5ff6b9ecde added compile-time support for up to 64 maxplayers 2016-03-10 00:37:33 +03:00
jeefo
1259276bcb bump version number
fixed some of coverity warnings
2016-03-09 23:32:45 +03:00
jeefo
4b0188222f fixes clang warnings
fixed bad combat strafe dir direction selection
added more 'shoot thru wall' code as reaction on sound
2016-03-09 22:34:24 +03:00
jeefo
95d9d4db0c removed metamod-messages, since there will be nor updates to metamod ifaces. 2016-03-05 23:08:07 +03:00
jeefo
d5a8b3642b fixed bomb defuse check doesn't verify pressing IN_USE button of client
fixed potential crash bug in IsPointOccupied
processing global refactoring
2016-03-01 22:52:17 +03:00
jeefo
f8344a464e a little cleanup of code save point 2016-03-01 13:37:10 +03:00
jeefo
cd48b98180 fixed infinite loop on bad waypoints. now bots will crash down, instead of eating all the ram.
more magic-numbers replacements.
2016-02-29 23:50:16 +03:00
jeefo
be55afdd78 improved support for xash3d (fixed weapon selection)
fix #28 #27 #24 #20 #19
2016-02-06 23:37:58 +03:00
jeefo
9e5c1540f9 improved sniping
fixed bots never choice camping tactic, due to agression level oveflow
cosmetic changes
2016-01-30 13:15:50 +03:00
jeefo
a04f47273e disable by default ultra-mega-high-skill mode
pvs check done only for new enemy
2016-01-16 11:00:40 +03:00
jeefo
aeb712c2b3 fixed race-condition in bomb location detection
fixed visited goals are not cleared on round-start
2016-01-07 18:49:55 +03:00
jeefo
4204f4e9f2 fixed rare crashbug in ClientUserInfoChanged
fixed chatter ignores yb_communication_type
fixed waypoint display distance, when host entity is alive
fixed bomber choose most longest route to bombplant (in middle of round).
2016-01-05 20:29:34 +03:00
jeefo
a07850d09d bumped version to 2.7.2 2016-01-04 20:18:14 +03:00
jeefo
c9011b00fd revert some old commits, that break compatability.
fixed copyright year.
2016-01-04 18:26:06 +03:00
jeefo
2c10910972 removed bunch of cvars from public query list.
only yb_version is now publicly queryable.
2016-01-04 15:28:38 +03:00
jeefo
4b8c18001d removed useless things
merged changes for xash csdm into master
2015-12-26 17:19:20 +03:00
jeefo
36b865abde do not compare traceresult fraction directly 1.0
some cosmetic changes
bots will spray more logos
reduced "cheating" in jumping a little bit
optimized checking 3d vector for zero
2015-08-15 18:09:15 +03:00
jeefo
95a02680ca fixed FindNearest() default value to use with squared length's 2015-08-03 00:31:37 +03:00
jeefo
ac3a5c7c3f remove of pod-bot-mm msec method
fixed weird aiming on low fps machines
fixed potential crash bug in weaponn selection code
2015-08-03 00:05:27 +03:00