113 Commits

Author SHA1 Message Date
bash
cf4f0f6dc7 renamed function name 2025-10-06 21:07:43 +02:00
bash
1faf20f567 removeFromGroup replaced with worldpackets 2025-10-05 20:05:56 +02:00
bash
0cc15411c1
license update (#1674) 2025-09-30 15:19:44 +02:00
Revision
fcb956ec1b Removed unnecessary spaces 2025-09-19 22:43:50 +02:00
Revision
ace813516d Replaced tabs with spaces 2025-09-19 21:00:09 +02:00
bash
c9b4cfa184
[Revert] Threading leftover which belonged to other related PRs's (once green needs be merged) (#1583)
* Revert "Correct side effects of  merge f5ef5bd1c2039290be1b1108872d046e1e65ebe1 (#1512)"

This reverts commit 966bf1d6afbf946ac92931b7d572fd76d79c56b0.

* Revert "Fix ACCESS_VIOLATION in mod-playerbots: purge stale AIs, add thread-safety, and harden HasRealPlayerMaster (#1507)"

This reverts commit f5ef5bd1c2039290be1b1108872d046e1e65ebe1.
2025-08-20 20:13:45 +02:00
bash
8d51092d42
As requested revert for threadfixes last few days (#1552)
* Revert "[Large server fix] #1537 Serialize playerBots/botLoading with a mutex and use snapshot-based loops to fix concurrency crashes (#1540)"

This reverts commit 3fff58df1a2058894e9b758be07869aec87c2c70.

* Revert "[Fix] teleport to invalid map or invalid coordinates (x , y , z  200000, o ) given when teleporting player (g UI d full type player low , name , map , x , y , z , o )  (#1538)"

This reverts commit ca2e2ef0dbd8dcfb16123db65ae638424550e50c.

* Revert "Fix: prevent MoveSplineInitArgs::Validate velocity asserts (velocity > 0.01f) for bots, pets, and charmed units (#1534)"

This reverts commit 4e3ac609bd23d991150d956d4e69ee6de2fcf2bf.

* Revert "[Fix issue #1527] : startup crash in tank target selection — add TOCTOU & null-safety guards (#1532)"

This reverts commit c6b0424c29b6a1bf5b3574135128d30d19838411.

* Revert "[Fix issue #1528] Close small window where the “in a BG/arena” state can change between the check (InBattleground() / InArena()) and grabbing the pointer (GetBattleground()), which leads to a null dereference. (#1530)"

This reverts commit 2e0a161623eaa97b7d9ceea076779ae0cabeb877.

* Revert "Harden playerbot logout & packet dispatch; add null-safety in chat hooks and RPG checks (#1529)"

This reverts commit e4ea8e2694b0f6d098a945c6f863526cd14f9b3f.

* Revert "Dont wait to travel when in combat. (#1524)"

This reverts commit ddfa919154529fee59e7ba30d2ebe29c0ae4abdf.

* Revert "nullptr fix (#1523)"

This reverts commit 380312ffd231fd5e663a8a17daa80dd39906e3f0.

* Revert "Playerbots/LFG: fix false not eligible & dungeon 0/type 0, add clear diagnostics (#1521)"

This reverts commit 872e4176137b66c83ebcb03932fa8ff1e39fd791.

* Revert "nullptr exception (#1520)"

This reverts commit 3d28a815089fd0a878a6a1d469db657c6030d4b2.

* Revert "Removed bot freezing at startup and system message, not relevant anymore (#1519)"

This reverts commit bcd6f5bc066d5e8a54f2d37b7dfc54e5db0dd2d1.
2025-08-12 22:10:47 +02:00
Alex Dcnh
3fff58df1a
[Large server fix] #1537 Serialize playerBots/botLoading with a mutex and use snapshot-based loops to fix concurrency crashes (#1540)
* MoveSplineInitArgs::Validate: expression 'velocity > 0.01f' failed for GUID Full

* Update BotMovementUtils.h

* Playerbots: guard against invalid-Z teleports

* Update PlayerbotMgr.cpp
2025-08-12 08:15:22 +02:00
Alex Dcnh
4e3ac609bd
Fix: prevent MoveSplineInitArgs::Validate velocity asserts (velocity > 0.01f) for bots, pets, and charmed units (#1534)
* MoveSplineInitArgs::Validate: expression 'velocity > 0.01f' failed for GUID Full

* Update BotMovementUtils.h
2025-08-12 01:53:48 +02:00
Alex Dcnh
e4ea8e2694
Harden playerbot logout & packet dispatch; add null-safety in chat hooks and RPG checks (#1529) 2025-08-11 16:27:25 +02:00
Alex Dcnh
872e417613
Playerbots/LFG: fix false not eligible & dungeon 0/type 0, add clear diagnostics (#1521)
Tested
2025-08-10 21:23:02 +02:00
Alex Dcnh
966bf1d6af
Correct side effects of merge f5ef5bd1c2039290be1b1108872d046e1e65ebe1 (#1512)
* Update PlayerbotMgr.h

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.h

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.h

* Update PlayerbotMgr.cpp

* Update PlayerbotMgr.h

* Update PlayerbotMgr.h
2025-08-08 20:36:03 +02:00
Alex Dcnh
f5ef5bd1c2
Fix ACCESS_VIOLATION in mod-playerbots: purge stale AIs, add thread-safety, and harden HasRealPlayerMaster (#1507) 2025-08-07 00:31:00 +02:00
Yunfan Li
ee99b66d04
Sync with azerothcore (#1492) 2025-08-02 16:10:49 +08:00
Alex Dcnh
ba9cb5a256
Add optional gender parameter to .playerbot bot addclass command (#1491) 2025-08-01 21:45:29 +02:00
NoxMax
db7a17ffde
Fix: Properly track RNDbot and AddClass accounts, and login faction balance issue (#1434)
* AssignAccountTypes & AddRandomBots

Fix: Properly track RNDbot and AddClass accounts, and login faction balance issue

* code style edits

* fix addclass init on first build of playerbots_account_type
2025-07-27 14:13:20 +08:00
bash
720c063716
Update PlayerbotMgr.cpp (#1414) 2025-07-02 21:54:52 +02:00
Alex Dcnh
57a2c9a742
Update PlayerbotMgr.cpp (#1412)
Remove double #include "ChannelMngr.h"
2025-07-02 20:27:04 +02:00
EricksOliveira
f8660bc939
Do not disband alt bots group when master goes away (#702)
* Do not disband alt bots group when master goes away

* This update makes the original PR functionality optional, which prevents alternative bots (random bots) from automatically leaving the group when the master leaves.

* Fix

---------

Co-authored-by: bash <31279994+hermensbas@users.noreply.github.com>
2025-05-25 00:19:11 +02:00
Revision
dc703cc897
Fixed a typo in filename and renamed table for consistency (#1279)
* Fixed a typo in filename and renamed table for consistency

* Added update file to rename the tables

* Drop old tables if they exist and create new ones if they don't exist already
2025-05-10 13:47:22 +02:00
Icemansparks
0574ac5eff
feature - (#1100) Linking of "trusted" accounts to allow altbot-control apart from own account or guild (#1267)
* Add table to store the security keys for accounts.

* Add table to store relationships between accounts.

* Add a new configuration option to enable or disable trusted account bots.

* add checks for linked accounts

* Handle account linking and chat commands

* fix uppercase typo

* change query & fix chatcommandtable

* add missing functions to header

* move account linking to updates dir

* moved table creation to correct updates folder

* use playerbots db instead of character db

* fix db

* fix install?

* remove duplicated logic and add hashing to stored securityKey

* add object before call

* change chat variable

* rename SQL file for correct execution order

* add  header include for ubuntu compatibility

* remove old sql
2025-05-05 15:06:29 +02:00
EricksOliveira
34a888978e
Fix: Prevent concurrent bot initializations during .playerbot init= commands (#1227)
A simple RAII mechanism with std::unordered_set<ObjectGuid> to track GUIDs of init bots.

Ensures that multiple threads or calls do not execute PlayerbotFactory::Randomize() logic at the same time for the same bot.
2025-04-27 12:47:02 +02:00
Cryo81
07e4dec70d
Warning fix + ilvl function fix (#1210)
* 1 variable order warning fixed
70 unused variable warning fixed

* Fixed GetEquipGearScore function

---------

Co-authored-by: Julien MAS <julien.mas81@gmail.com>
2025-04-20 14:26:42 +08:00
Yunfan Li
19447c3914
Enable new rpg strategy by default (#1192)
* Add RandomBotMinLevelChance

* Save mana only for healer

* Disable addclass dk for low level player

* Target selection and debuff cast with less players in group

* Change default rpg strategy and bots count in config

* Logs clean up

* Improve init=auto

* Remove login logs after initialization

* Rndbots stats for quest

* Prediction chase in reach combat

* Poor & Normal items ensurence for init=auto
2025-04-11 20:31:38 +08:00
Yunfan Li
3f52563ca7
Move LoadFromDB from player session to world session (#1173) 2025-04-08 20:54:51 +08:00
kadeshar
c93bf38463
- Fixed checking MaxAddedBots (#1083) 2025-03-17 15:47:48 +08:00
xSparky911x
54c8909ddb
add ability to add or remove character with same name as account (#1070)
* add ability to add or remove character with same name as account

* seperate bot add and bot addacount so that characters with same name as an account doesn't add all toons from that account but adds the character instead if so desired
2025-03-16 12:45:42 +08:00
Yunfan Li
62e0235e73
Scripts and sessions update to align with acore (#987) 2025-02-22 12:08:53 +08:00
Yunfan Li
49b046f36c
Allow addclass bots that are not in a real guild (#970) 2025-02-14 18:45:17 +01:00
kadeshar
bf195efaea
- Fixed loading WorldPosition from string to fix RTSC points loading (#965)
- Restored loading from playerbots_db_store
- Added deletion before saving to playerbots_db_store
2025-02-13 11:39:20 +01:00
Yunfan Li
14bdc0ec5a
Always allow addclass bots login and init (#946)
* Change the way to check addclass bots and allow adding them by characters name

* Always addclass bots login and init

* Comments and message
2025-02-05 12:56:37 +08:00
Yunfan Li
fef67081ec
Improve login and init permission for rndbots and addclass bots (#930)
* Improve login and init permission for rndbots and addclass-bots

* Add AllowAcountBots config

* Update config description
2025-02-03 19:46:49 +08:00
Yunfan Li
c2a023afa2 Leave group on login instead of disband group if group is invalid 2025-01-19 17:10:11 +08:00
SaW
453fa4b4f5
Fix reload command security (#774) 2024-12-14 17:55:06 +01:00
EricksOliveira
c8dd44fe93
Fix Logs LOG_ERROR for LOG_DEBUG 2024-10-20 11:46:16 -03:00
EricksOliveira
65b6e15ea1 Fix Crash - OnBotLogin
1. Improvements in error handling: Added detailed logs for cases where botAI or master are null, allowing better failure tracking.

2. Additional null pointer checks: Added checks to ensure that the botAI and master are valid before performing actions dependent on these objects, preventing potential crashes.

3. Optimization in bot login logic: Revised the bot input flow to ensure it is added to the group appropriately depending on its relationship to the master.
Added logic for handling different types of groups (raid, LFG, etc.), including the possibility of automatic conversion to raid if necessary.
2024-10-18 09:27:46 -03:00
Yunfan Li
8d524cdaf0 [Combat formation] Compatible with naxx and avoid aoe 2024-09-26 20:01:10 +08:00
Yunfan Li
311bdbd91b Serveral crashes fix 2024-09-07 12:08:38 +08:00
Yunfan Li
406949f6dd Misdirection and tricks of the trade 2024-09-04 20:08:44 +08:00
Yunfan Li
484a2ae458 Item usage and equip initialization 2024-09-04 18:08:19 +08:00
Yunfan Li
f804ba2d65 Speed up addclass with pre calculation 2024-08-31 19:58:28 +08:00
Yunfan Li
6d9aba4066 SaveToDB in randomize 2024-08-20 00:34:35 +08:00
Yunfan Li
e983f9be00 [Crash fix] Duplicate loading bot 2024-08-19 23:31:32 +08:00
Atidot3
25b010dd1e Merge code line 2024-08-04 12:04:06 +02:00
Yunfan Li
53611c9040 Run clang-format 2024-08-04 10:23:36 +08:00
Atidot3
ab4e3c2c45 Last fixes on chat + database incorrect charset 2024-08-01 18:58:41 +02:00
Atidot3
79d0f3fd28 Refactoring bot chat and sayaction caused by group crash <NOT FINISHED> 2024-07-31 22:39:59 +02:00
Atidot3
06a63aa730 fix current_zone_name incorrect values + refactoring guild broadcast simplier + refactoring randomTalk to actually use area / zone general etc 2024-07-28 18:42:51 +02:00
Atidot3
d21d1e9b68 Suggest dungeon implementation + log action unknown to help debug 2024-07-27 10:13:33 +02:00
Atidot3
916a0002e8 Fix crash 2024-07-25 17:56:53 +02:00