Commit Graph

40 Commits

Author SHA1 Message Date
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
Yunfan Li
feda619066 Engine optimization for better performance and mem usage (#1462)
* Optimize loot

* World channel talk

* General improvement

* Engine rebuild for performance and memory usage

* Fix crash with AutoDoQuest = 0
2025-07-25 12:11:03 +02:00
Yunfan Li
265f969656 Improve and fix unholy dk rune triggers 2025-01-19 17:10:10 +08:00
Yunfan Li
9d7a300c6d Unholy dk 2024-09-07 00:04:37 +08:00
Yunfan Li
f20d3aea6c Unholy dk 2024-09-06 20:29:56 +08:00
Yunfan Li
593b30bbb0 Arm warrior and dk 2024-09-06 20:29:38 +08:00
Yunfan Li
a1cb9dea05 Improve class spell and use trinket 2024-08-14 18:37:21 +08:00
Yunfan Li
53611c9040 Run clang-format 2024-08-04 10:23:36 +08:00
Yunfan Li
f32ca5472a Unholy Deathknight 2024-07-28 19:12:01 +08:00
Yunfan Li
05e799cff4 [Class spell] Improve warrior, dk, paladin 2024-07-13 11:41:16 +08:00
Yunfan Li
7325ba7dcb [Class spell] Aoe threat check 2024-07-07 21:51:19 +08:00
Yunfan Li
d0ee39aa3a [Raid] Naxx grobbulus 2024-06-05 19:37:39 +08:00
Yunfan Li
00a3436d77 Army of the dead 2024-04-10 20:32:43 +08:00
Yunfan Li
9eb9fd3a7d Unholy DK 2024-04-10 19:10:47 +08:00
Yunfan Li
d01953d2e0 Unholy spell order 2024-04-09 23:25:07 +08:00
Yunfan Li
4db0e30dd3 Unholy spell order 2024-04-09 23:24:08 +08:00
Yunfan Li
e11ea57dde DK death and decay 2024-04-08 23:30:15 +08:00
Yunfan Li
65ad88154b Unholy DK 2024-04-08 23:10:52 +08:00
Yunfan Li
a9c3236e35 Unholy DK 2024-04-08 22:09:26 +08:00
Yunfan Li
a63c6b6709 smarter dps target and tank target 2023-10-22 01:27:37 +08:00
Yunfan Li
a24e60f03d facing to & reach party member to resurrect 2023-09-14 23:29:09 +08:00
Yunfan Li
243a4df967 optimize class spell 2023-09-08 12:44:38 +08:00
Yunfan Li
762ac0142b miscs 2023-09-07 14:18:20 +08:00
Yunfan Li
bb1ea0c395 naxxramas gluth 2023-09-03 17:52:44 +08:00
Yunfan Li
50a2be40f7 dk presence 2023-09-03 14:35:24 +08:00
Yunfan Li
14b94e20fb major class spells 2023-09-02 22:37:11 +08:00
Yunfan Li
1136b7bfdc debuff on melee attackers 2023-08-28 17:28:36 +08:00
Yunfan Li
a2045d6d76 miscs: CMSG received correctly (quest, loot etc.) 2023-07-26 13:17:48 +08:00
Yunfan Li
951d8be038 miscs(class spell) 2023-07-24 20:35:48 +08:00
Yunfan Li
5956875cae frost presence for blood dk 2023-07-14 15:21:40 +08:00
Yunfan Li
33576bd969 fix(spell): paladin and dk aggro spell, warrior 2023-06-11 15:55:36 +08:00
Yunfan Li
231b0b51e4 movement action 2023-06-07 22:58:36 +08:00
Yunfan Li
0f483047e5 warlock and dk strategy port 2023-06-03 14:01:20 +08:00
Yunfan Li
a44b310c0a debuff trigger and action, allow multiple spell 2023-06-02 19:57:08 +08:00
Yunfan Li
d45a7dc5b8 fix party member dispel. 2023-05-29 23:03:21 +08:00
Yunfan Li
1d276732e2 dk raise dead 2023-05-28 00:00:23 +08:00
Alvin Zhu
de5dde91f6 fix DK spell 2023-03-07 10:16:53 +08:00
whipowill
92ce54a3cd Compile bug fixes. 2022-05-20 12:41:13 -05:00
whipowill
9a6709f5c1 Compile bug fixes. 2022-05-18 17:03:01 -05:00
UltraNix
b952636f0d Big update. 2022-03-12 22:27:09 +01:00