Commit Graph

2056 Commits

Author SHA1 Message Date
xSparky911x
92d63c7cbc fix classbots autogear not working when altbots autogear turned off (#1060)
* fix classbots autogear not working when altbots autogear turned off
2025-03-06 13:31:46 +01:00
SaW
b9747fdd69 Reinstate cached preferred mounts (#1058) 2025-03-05 17:24:54 +01:00
valsan-azerty-boi
a4fe45afbb Fix server crash when bots apply strategies on a custom naxx raid (#1052) 2025-03-04 20:35:36 +01:00
SaW
bf22f20997 Fix: Bots not mounting in BG's anymore (#1056)
Bots didn't stop as they were supposed to, leading to some issues.
2025-03-04 13:42:41 +01:00
SaW
13a4dde643 Avoids the possible incorrect swimming state when bots coming ashore (#1051)
Improves the check for when in/under water, avoiding the possible incorrect swimming state when bots coming ashore (shortly swimming in air).
2025-03-03 15:10:47 +01:00
SaW
fe21dfe48e Fix/Feature: Bots can use travel/flight Shapeshift where appropriate (#1042) 2025-03-03 15:10:35 +01:00
avirar
9edddc5b26 Hunter equip bug (#1050) 2025-03-03 15:09:47 +01:00
Yunfan Li
d8cb75d376 Fix m_CastItem in CastSpell (#1047)
Fixed issues where some items and spells bypass item level requirement or use incorrect item level.
2025-03-02 20:20:51 +01:00
SaW
098950ceea Fix SpecialSpells to be correctly applied (#1044) 2025-03-01 22:42:58 +01:00
SaW
9fbf60d812 Resolve most warnings - PlayerbotAI (#1025)
Resolve most warnings - PlayerbotAI

---------

Co-authored-by: blinkysc <37940565+blinkysc@users.noreply.github.com>
2025-03-01 14:19:07 +01:00
Yunfan Li
fbfcbbcddc EnablePeriodicOnlineOffline config and modify CalculateTotalAccountCount (#1043)
* EnablePeriodicOnlineOffline config

* Add Comments on PeriodicOnlineOfflineRatio
2025-03-01 21:05:43 +08:00
Yunfan Li
9ff0e8e94d ChatHelper link localization (#1036) 2025-03-01 11:18:05 +08:00
Dennis
e540875b9c dynamically load database names for cleanup queries (#1040)
* dynamically load database names for cleanup queries
2025-02-28 18:39:28 +01:00
Yunfan Li
a3e305fbed Improve XP rate config (#1035) 2025-02-28 01:05:08 +01:00
blinkysc
67d805f700 Cleanup Database More (#1032)
* Resolve conflicts

* format
2025-02-27 14:34:26 +08:00
blinkysc
17672bd5b5 Properly cleanup database with playerbot delete (#1027)
Properly cleanup appropriate databases when AiPlayerbot.DeleteRandomBotAccounts is set to 1
2025-02-26 19:19:11 +01:00
SaW
20a69db45a Githubactions - Cancel workflow fix (#1029)
Fix: Cancels the obsolete tasks as desired.
2025-02-26 18:57:31 +01:00
SaW
c697b81404 Githubactions - Cancel workflow on new commits in the same PR (#1028) 2025-02-26 16:44:44 +01:00
avirar
3a4e8e729b Allow bots to enter all TBC dungeons (rep/keys/quest attunements) (#1014)
Update will allow any adequately leveled bot to queue for all random and specific TBC dungeons. Normal and Heroic modes that require attunement or keys will be accessible by bots.

InitReputation: Level 70+ Bots will receive Honored rank for all the required factions needed for Heroic keys to function. I've placed the calls to InitRep before InitMounts, I feel we can do something with that in the future. Randomised rep values might allow bots to obtain other mounts?
InitKeyring: All bots receive all non-rep required keys (Shattered Halls Key, Shadow Labyrinth Key, Key to the Arcatraz), and bots with the required rep (Honored) get the other keys.
InitAttunementQuests: Level 60+ bots complete the Caverns of Time and Magister's Terrace attunement quests.
Updated acore_playerbots SQL; playerbots_dungeon_suggestion_definition; max_level increased to 73 (from 70) for all TBC Heroics and Magister's Terrace nomal. Allows more level appropriate bots to join.
2025-02-26 15:55:16 +01:00
SaW
2766d553c7 Maintenance command to retain defined special spells (#1024)
fixes a bug that caused the maintenance command to have bots lose the special spells
2025-02-26 13:32:26 +01:00
kadeshar
4968245471 - Fixed Hodir strategy bugs (#1015) 2025-02-24 20:11:29 +01:00
Yunfan Li
95c2ba9105 Permission check and readability improvements (#997)
* AiFactory check by spell instead of level

* Ignore group security for guild invitation
2025-02-23 20:09:59 +01:00
SaW
114eeb3b37 Fix chat and beautify server promo box (#1008)
* Fix chat and beautify server promo box
* Remove all unnecessary hooks

---------

Co-authored-by: sudlud <sudlud@users.noreply.github.com>
2025-02-23 13:29:19 +01:00
sudlud
326637c93b add enabled hook lists for performance improvement (#1004) 2025-02-22 23:38:26 +01:00
SaW
a28e2bbb4b Disable Hire command (#1003)
Not correctly implemented at this time, will cause crash and other issues, as it would change the bot to the requester's account.
2025-02-22 23:37:53 +01:00
Yunfan Li
62e0235e73 Scripts and sessions update to align with acore (#987) 2025-02-22 12:08:53 +08:00
SaW
a44650c7f6 Include pvp as default non-combat strat for alt/class bots (#1001) 2025-02-22 10:59:18 +08:00
Yunfan Li
4b1febc62a Minor improvments on logs, stats weights and aoe distance calculation (#995)
* StatsCollector for paladin spell

* Remove error log on MoveFromGroup

* Log and timer for CreateRandomBots

* Improve aoe trigger distance calculation

* Reduce spirit weights for heal priest and paladin
2025-02-22 10:57:33 +08:00
avirar
a0278f1efb Hunter ammo equip bug and other issues with BuyAction.cpp (#986)
Resolves #947

Equip logic was failing as projectiles were never returning ITEM_USAGE_EQUIP in ItemUsageValue.cpp, added two cases where equip is returned:

If no ammo is currently set
If new ammo has higher DPS than old/currently equipped ammo
While testing this using "b [itemlink]" and "b vendor" to purchase arrows I noticed some issues with BuyAction.cpp and have resolved them:

Bots will now perform the "equip upgrades" action for any bought item that has an equip usage
When using "b vendor" to buy all useful items from vendors within interaction distance, it now sorts the list of available items by calculated item score and buys the highest scoring item (if it is higher than the currently equipped item) for each slot. It should not buy multiple items for the same slot anymore, saving gold/emblems/etc.
"b vendor" will now only attempt to buy 1 of each item. Consumable and projectile item types can be bought up to 10 times per execution as long as it is still useful to buy the item in each iteration of the for loop. All items were following this behaviour previously and since the equip command was only given after the for loop it would buy 10 of an item before triggering it wasn't useful to buy more.
And finally, resolved issues where a bot runs out of ammo mid-fight:

Re-enabled combat and non-combat "no ammo" strategies to perform "equip upgrades" action.
Modified GenericTriggers.cpp; AmmoCountTrigger::IsActive to return true when the bot has ammo but it is not equipped yet.
2025-02-21 18:32:10 +01:00
Yunfan Li
e33c61e90a Fixes on naxxramas heigan and thaddius (#994)
* Fix naxx thaddius

* Fix naxx heigan strats
2025-02-21 17:53:07 +01:00
Yunfan Li
0a76fc1d5f Better tank target selection (#996) 2025-02-21 16:20:33 +01:00
SaW
419e96e5aa Revert expireActionTime (#991)
* Revert expireActionTime

* Revert expireActionTime

* Revert RemoveExpired

* Revert RemoveExpired

* Revert RemoveExpired

* Revert Action expiration
2025-02-21 11:32:00 +08:00
SaW
61333a02bf Avoid creating accounts if both maxRandom & ClassBots are set to zero (#984)
Fix for https://github.com/liyunfan1223/mod-playerbots/issues/978
2025-02-19 09:46:28 +01:00
Yunfan Li
bb729e35b9 Fix stuck on knockback, enhance movement & flee and trap weave strats (#980)
* Hunter trap weave strats

* Do not allow actions to stack

* Remove trap weave by default

* Refactor on Engine

Co-authored-by: SaW <swerkhoven@outlook.com>

* Remove unused funcs in Queue

* Remove ExpireActionTime config

---------

Co-authored-by: SaW <swerkhoven@outlook.com>
2025-02-18 22:55:44 +08:00
SaW
6353c86b53 Change "Initializing guilds..." from INFO to DEBUG (#982)
To avoid it being needlessly spammed in the console.
2025-02-18 11:59:13 +01:00
kadeshar
050cc24e9c Hodir tactics (#977)
* - Added tactic for Hodir Biting Cold ability

* - Added tactic for Hodir Flash Freeze
- Modified tactic for Hodir Biting Cold
2025-02-17 22:22:46 +08:00
SaW
58a596a40e Only invoke InitGuild when randomBotGuildCount > 0 (#975)
* Only invoke InitGuild when randomBotGuildCount > 0

* Moved Random bot guild count/delete to more appropriate section of config.
2025-02-16 13:42:15 +01:00
kadeshar
6749a4257b - Added protection for unparsable data in worldposition contructor (#974) 2025-02-15 17:18:34 +01:00
SaW
624e48068e Autocalc Accounts - take rotation into account (#971)
* Takes bot rotation into account and adjust accordingly when enabled as it requires to be higher than MaxRandomBots to function properly.
* Correct default config to reflect that bots pool size for rotation should be higher than MaxRandomBots
* Revert space at start of all lines.
2025-02-14 23:31:26 +01:00
Revision
dfcfe46865 Replace tabs with spaces (#973) 2025-02-14 20:12:02 +01:00
Yunfan Li
49b046f36c Allow addclass bots that are not in a real guild (#970) 2025-02-14 18:45:17 +01:00
SaW
4793644a15 Auto calculate RandomBotAccountCount by default (#964)
* Remove RandomBotAccountCount requirement

* Remove RandomBotAccountCount

* Remove randomBotAccountCount

* Remove randomBotAccountCount

* Update playerbots.conf.dist

* Style

* Set RotationPoolSize to 20 to work with the bot amount defaults

* Update PlayerbotAIConfig.cpp: Sync with default config

* Set +1 where appropriate

* Acc patch (#73)

* Account for TBC
* Still made it possible to change manually if desired

* uint32 randomBotAccountCount;

* Update Playerbots.cpp
2025-02-14 22:03:53 +08:00
SaW
c2caf3c564 Re-instate random bots guilds (#969)
I believe this should have been enabled again at some point.
2025-02-14 21:48:10 +08: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
Sascha
ab7acfbdfc edit to announcement (#967)
* German full translation

With the power of ChatGPT i translated all chatter texts into German locale.
Insterted the German texts into text_loc3.
Everything else should stay unchenged.

* forgot headline

* Edit to announcement

fits better into the AC MotD and looks much better
2025-02-13 11:37:36 +01:00
Yunfan Li
f10e3c0fb1 Add announcement on server initialization and character login (#963)
Add announcement on server initialization and character login.

For repack distribution and public server host, avoid unintentional violations of AGPLv3.0 license.
2025-02-12 17:06:18 +01:00
SaW
6cb1599b52 CheckMountStateAction refactor Final (#960)
- Fix for the issue that bots occasionally moved awkward when mounted inside BG's
- Removed redundant mount data retrieval
- Removed redundant extra check on if carrying a flag (already covered in isUseful)
- Removed no longer necessary code
- Combined some conditions as having them separate made little sense anymore
- Moved checking carrying flag into the BG logic
2025-02-11 11:39:29 +01:00
Sascha
d7b3843024 German full translation (#961)
* German full translation

With the power of ChatGPT i translated all chatter texts into German locale.
Insterted the German texts into text_loc3.
Everything else should stay unchenged.
2025-02-10 22:57:24 +01:00
Yunfan Li
2c224d3121 Add LimitTalentsExpansion config (#954) 2025-02-09 21:50:04 +08:00
kadeshar
08008a3155 Worldbuff startup fix (#951)
* - [Performance] Fixed world buff loading from config file

* - [Refactoring] Changed mathod name
2025-02-08 12:31:06 +01:00