Commit graph

163 commits

Author SHA1 Message Date
jeefo
4b035819cb Fixed possible addrinfo leak. 2019-09-22 01:01:24 +03:00
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
bee9653a71 Mark enemy sensing / hearing stuff as heavyweight. 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
affa64808d Fixed shaky nav aiming.
For the graph files that have many close-placed nodes bots will switch his view constantly to new one when going on path, making it too shaky while moving.

This fix makes bots to look at next node instead of currently reaching one, so aiming is a bit clearer now.
2019-09-22 00:08:37 +03:00
jeefo
50c0cb4b30 Fix linux build. 2019-09-22 00:08:37 +03:00
jeefo
2f4b329ad1 Fixed inablity to delete paths between nodes.
Some fixes to facing node index search.
2019-09-22 00:08:37 +03:00
jeefo
d011aa6551 Bots are now able to buy secondary weapons in first rounds.. 2019-09-22 00:08:37 +03:00
jeefo
296d3a3637 Added forced yb_csdm_mode.
Do not export functions that aren't needed for plugin loading.
2019-09-22 00:08:37 +03:00
jeefo
d04f44d8fc Reduced 'Need backup' for unskilled bots.
Fixed some typos.
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
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
jeefo
5a7dbc2463 Fixed detection mp_freeforall for regamedll.
Added missing addon entities for regamedll.
Fixed bots keep adding to game event when there is now spawn points left on map.
Reduced a little bot difficulty at higher levels.
2019-09-22 00:08:37 +03:00
Dmitry
47fefabe66 Fixed shaky-camera, when bot gets killed.
Make use short bot  name here and there.
Minor tweaks.
2019-09-22 00:08:37 +03:00
Dmitry
c793ab9ee1 Removed accidentally left debug thing. 2019-09-22 00:08:37 +03:00
Dmitry
dae7fc8db7 Added support for amx_parachute.
Minor fixes for KA-maps.
2019-09-22 00:08:37 +03:00
Dmitry
61b2566373 Implemented flashligr and nightvision goggles usage.
Credits for this mostly goes to Immortal_BLG and KWo.
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
Dmitry
d4e1fdb4fb Fixed radio commands that should be issued only when chatter enabled.
Implemented useless waypoint cleaner (yb wp clean <nr/all>).
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
c70e3bd756 Correct team kicking on quota balancing.
Try to fix low-skill bots do not search for bomb.
Bumped year and version.
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
39781ee17b Fixed GCC Strict aliasing warning. 2018-10-30 19:19:56 +03:00
jeefo
5c1facb54b Tweaked chatter timers 2018-10-30 16:01:52 +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
60556a0e4c Completely remove of engine-based visibility checks. This reduces CPU usage when bot searching for enemies. 2016-11-02 22:45:15 +03:00
jeefo
10b89ca011 Fixed autovacate thing once again.
Temporary disabled engine PVS & PAS checks for testing.
2016-11-01 23:57:51 +03:00
jeefo
ceb0f43377 Fixed bad behaviour of A_stricmp, that caused incorrent parsing of bot console commands.
Fixed chatter icon and message notification left on screen if bot was kicked during communication.

Removed yb_csdm_mode. Bot's will automatically know whether they are running under csdm or csdm ffa.

Refactored game-message enums for readability.

Updated yapb.cfg to be actual with code-current bot variables.
2016-10-23 01:49:05 +03:00
jeefo
cc6951c647 fixed refactoring problem 2016-09-22 15:52:03 +03:00
jeefo
75d1f1ec58 fixed 'remove bot menu' not showing up
rewritten posix makefile from the ground
reworked menu logic, so endpoint menu item will redraw menu once again, instead of closing it.
2016-09-22 15:47:35 +03:00
jeefo
97db73cdaa minor optimization 2016-09-19 15:09:09 +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
37a352ac54 re-added support for hl-1.1.0.4 & cs beta 6.6 minimum. 2016-09-14 15:40:42 +03:00
jeefo
18a80dd563 added support for BotVoice message under cs16client & xash.
BotVoice message now showup with correct show time based on duration of voice message.
fixed colored menus under legacy game versions
2016-09-14 11:51:58 +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
81a4b54205 removed debug messages 2016-09-11 23:43:25 +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