Commit Graph

39 Commits

Author SHA1 Message Date
Keleborn
52c3e96641 Rename groupmaster to groupleader and related variables. (#1875)
Fix the naming conventions. 
Master should be reserved to identify a bots Master. 
groupleaders are not necessarily group masters and it should be clear
what the bot is looking for. (In most solo cases leader=master)
2025-12-03 13:25:01 +01:00
bash
0cc15411c1 license update (#1674) 2025-09-30 15:19:44 +02:00
ThePenguinMan96
8545225923 Merge branch 'master' into Tame-Chat-Action-/-Pet-Chat-Action-(stances/commands) 2025-08-01 23:30:23 -07:00
Keleborn
a1dd6f6fc5 New roll for item action (#1482)
* New roll for item action

* Add general roll command as well.

* Update ChatCommandHandlerStrategy.cpp

Add accidental removal of glyph equip

---------

Co-authored-by: bash <31279994+hermensbas@users.noreply.github.com>
2025-08-01 21:44:52 +02:00
ThePenguinMan96
aa6f8153a1 Tame Chat Action / Pet Chat Action (stances/commands)
Hello everyone,

I am on a quest to make bot's pets completely functional, focuses on solving issues #1351 , #1230 , and #1137 . This PR achieves the following:

1. Changes the current "pet" chat command to "tame", which is more intuitive that only hunters can use it. The modes are "tame name (name)", "tame id (id)", "tame family (family)", "tame rename (new name)", and "tame abandon". Tame abandon is new - it simply abandons the current pet. Also, now, if you type in "tame family" by itself, it will list the available families. See pictures below for examples.
2. Added new "pet" chat command, with the following modes: "pet passive", "pet aggressive", "pet defensive", "pet stance" (shows current pet stance), "pet attack", "pet follow", and "pet stay". Previously, the pet's stance was not changeable, and there were some less than desired effects from summonable pets - see the issues above.
3. New config option: AiPlayerbot.DefaultPetStance, which changes the stance that all bot's pets are summoned as. This makes sure when feral spirits or treants are summoned by shamans and druids, they are immediately set to this configured stance. Set as 1 as default, which is defensive. (0 = Passive, 1 = Defensive, 2 = Aggressive)
4. New config option: AiPlayerbot.PetChatCommandDebug, which enables debug messages for the "pet" chat command. By default it is set to 0, which is disabled, but if you would like to see when pet's stances are changed, or when you tell the pet to attack/follow/stay, and when pet spells are auto-toggled, this is an option. I made this for myself mainly to test the command - if anyone notices any wierd pet behavior, this will be an option to help them report it as well.
5. Modified FollowActions to not constantly execute the petfollow action, overriding any stay or attack commands issued.
6. Modified GenericActions to have TogglePetSpellAutoCastAction optionally log when spells are toggled based on AiPlayerbot.PetChatCommandDebug.
7. Modified PetAttackAction to not attack if the pet is set to passive, and not override the pet's stance to passive every time it was executed.
8. Modified CombatStrategy.cpp to not constantly issue the petattack command, respecting the "pet stay" and "pet follow" commands. Pets will still automatically attack the enemy if set to aggressive or defensive.
9. Warlocks, Priests, Hunters, Shamans, Mages, Druids, and DKs (all classes that have summons): Added a "new pet" trigger that executes the "set pet stance" action. The "new pet" trigger happens only once, upon summoning a pet. It sets the pet's stance from AiPlayerbot.DefaultPetStance's value.
2025-08-01 01:18:16 -07:00
ThePenguinMan96
e40c2b21f2 Channel Cancel checks for Channeled AOE DPS Spells
Hello everyone,

I liked the channel cancel I did on mage recently, where they cancel blizzard if there is only 1 enemy left. I decided to do the same for the following classes:

Druid: Hurricane
Hunter: Volley
Priest: Mind Sear
Warlock: Rain of Fire

I moved the "ChannelCancel" action to it's own file, so other classes could benefit from it. I removed it from the mageactions.
2025-07-28 01:35:56 -07:00
Yunfan Li
4a00c954ed RPG update travel flight status (#1445) 2025-07-23 23:37:41 +08:00
Boxhead78
309d177dd8 Battleground Rewrite
- Refactored BattleGroundTactics.cpp
- Bots choose strategies to determine if they are more aggressive or defensive in objectives
- Largely improved bots tactics in WSG, AB, AV and EY
- Improved how bots chase flag carriers
- Fixed some bots stuck in action loops - especially in WSG and AV
- Fixed several other Bugs
2025-07-03 08:25:55 +02:00
kadeshar
3d6d454337 Stay strategy improvement (#1072)
* - Stay Strategy work in combat and with RTSC

* - Fixed summon with stay strategy

* - Added new stay strategy support for chat commands
2025-03-20 10:53:16 +01:00
Yunfan Li
38912d4a8a Auto do quest feature (new rpg strategy) (#1034)
* New rpg startup speed up and refactor

* New rpg do quest

* Fix invalid height in quest poi

* Add quest accept and reward limitation

* New rpg quest improvement

* Organize quest log, reward quests and fix grind target

* Quest dropped statistic and remove redundant code

* Decrease grind relevance lower than loot

* Fix new rpg drop quest

* Go to reward quest instead of innkeeper when quest completed

* Fix incorrect logic in do quest reward

* Fix reset quests in factory

* Fix crash on grind target value

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

* Fix a minor error in DoCompletedQuest

* Let bots get rid of impossible quests faster

* Increase loot fluency (especially for caster)

* Remove seasonal quests from auto accept

* Enhance quest accept condition check

* Add questgiver check (limit acceptation of quest 7946)

* Questgiver check and localization

* Near npc fix

* Fix quest item report

* Add lowPriorityQuest set for quests can not be done

* Improve gameobjects loot

* Do complete quest

* FIx move far to teleport check

* Accept or reward quest from game objects

* Fix possible crash in rpg game objects

* Fix ChooseNpcOrGameObjectToInteract crash

---------

Co-authored-by: SaW <swerkhoven@outlook.com>
2025-03-14 21:31:33 +08:00
Yunfan Li
dba84da6f3 [New Rpg] Implement GO_INNKEEPER and NEAR_NPC status 2024-12-02 00:35:23 +08:00
Yunfan Li
0fd894176b [New Rpg] New rpg start up (add GO_GRIND and NEAR_RANDOM status) 2024-11-30 23:48:29 +08:00
Bobblybook
b526a07303 Generalise dragon flanking action 2024-10-12 23:51:00 +11:00
Yunfan Li
eea652f5d5 Tank face and dps behind 2024-09-24 11:46:39 +08:00
Fuzz
d29569e9ea added 'move from group' action/strat/shortcut-action 2024-08-26 22:30:36 +10:00
Yunfan Li
5a5cfa74ab Levelup maintenance compile 2024-08-14 19:14:43 +08:00
Yunfan Li
2ddaae9ef0 Dynamic delay 2024-08-14 18:37:21 +08:00
Yunfan Li
a1cb9dea05 Improve class spell and use trinket 2024-08-14 18:37:21 +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
aeae6410f6 Allow bots to manage their own quest log and removed quests based on conditions 2024-08-02 22:45:14 +02:00
antony
274101c000 Fix crash:
PlayerbotAI::FindOilFor was making the server randomly crashing
ChooseTravelTargetAction::getNewTarget: when active bot groupping was making the server crash as looking for unexisting params

Several bug fixes and tweak to Quest and Group

New fucntionnality:
Bots will now share quests randomly to their party
Bots will try to accomplish group member quest before moving on to new target
Bots will try to sells items only after few levels ( 5 ) when in group
When dropping a quest bots will try to select a new one they are on instead of idling for few time
Bots will no longuer try to invite themselfs to group or if group is full
Bots are now allowed to leave party by themself
Bots in groupe if not leader are forbbiden to tag in bgs
Bots in bot-groups no have a more limited range to look for grind target

Polish logs
2024-07-31 12:26:48 +02:00
Atidot3
d21d1e9b68 Suggest dungeon implementation + log action unknown to help debug 2024-07-27 10:13:33 +02:00
Yunfan Li
db1cfa6abc [Random bots] Ensure teleport after randomize 2024-07-13 11:41:16 +08:00
Yunfan Li
f26227027d [Combat formation] Combat formation set up 2024-07-07 13:10:50 +08:00
Yunfan Li
10799e689c Avoid aoe base 2024-04-14 00:02:57 +08:00
Yunfan Li
9e78a0b36a Pet attack (fix shadowfiend) 2024-02-08 00:36:16 +08:00
Yunfan Li
a24e60f03d facing to & reach party member to resurrect 2023-09-14 23:29:09 +08:00
Yunfan Li
d31fbc0353 automatically action for random bots 2023-08-05 18:41:15 +08:00
Yunfan Li
d183d285b6 refactor raid naxx related 2023-07-14 23:13:46 +08:00
Yunfan Li
bf6b8db4e2 anubrekhan strategy port 2023-06-22 10:39:22 +08:00
Yunfan Li
634ce3d183 naxx raid grobbulus 2023-06-08 11:46:14 +08:00
Yunfan Li
98e46a3d02 miscs(raid strategy, distance triggers, etc) 2023-06-06 00:11:35 +08:00
Yunfan Li
d45a7dc5b8 fix party member dispel. 2023-05-29 23:03:21 +08:00
郑佩茹
b2821d7f3a Rewrite bot texts 2022-09-26 17:20:59 -06:00
qudzy
ed35a2ae67 Refactor instance suggestions 2022-05-05 21:01:02 +02:00
郑佩茹
f1bcca1a7b Port fixes until b4094bf - flying, mount animations, bot attack range, free food option 2022-03-22 17:13:10 -06:00
郑佩茹
a7f412b428 Fix corrupt item cache crashes, bot whispers, trade crashes 2022-03-22 11:04:21 -06:00
UltraNix
b952636f0d Big update. 2022-03-12 22:27:09 +01:00