57 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
Cryo81
707210f6a5
fixing multiple 'unused variable' warnings (#1224) 2025-05-01 21:00:54 +02:00
Yunfan Li
24efa7efa2
General improvement on init and strats (#1064)
* Potions strats and potions init

* Druid and shaman spell in low level

* Ammo init improvement

* Rogue low level

* Fix melee attack action (for caster with no mana)

* Disable pet spells that reduce dps

* Talents improvement

* Remove CanFreeMove check

* Reduce penalty for non-dagger weapon for rogue
2025-03-08 12:36:06 +01:00
Yunfan Li
099d4bdd22 Fix shaman enchant inv type 2025-01-19 21:46:54 +08:00
Yunfan Li
bc33851189 Mage improvement (fire mage aoe) 2025-01-19 20:06:10 +08:00
Yunfan Li
3b7415e819 Shaman totems enhancement 2025-01-01 20:40:48 +08:00
Yunfan Li
df5b10c9ad Revert classes folder 2024-12-14 16:23:13 +08:00
Yunfan Li
e7416db7dc Modify file structure 2024-12-13 20:14:25 +08:00
Yunfan Li
4644fd8459 Minor spell enhancement 2024-12-07 12:57:18 +08:00
Yunfan Li
11377436cd [Strategy] Rename "assist dps" to "healer dps" 2024-10-04 21:49:47 +08:00
Yunfan Li
37c5c1dcdf [Spell] Fix alternative healing spell 2024-10-04 14:38:09 +08:00
Yunfan Li
008d098eda [Assist Dps] Healer assist dps strats 2024-10-04 14:14:16 +08:00
Yunfan Li
a84c7f35f3 weapon type fix 2024-09-02 17:47:46 +08:00
Yunfan Li
360a025b34 Estimated dps calculation 2024-09-01 17:11:46 +08:00
Yunfan Li
ae37876848 Shaman stats weight and totem 2024-09-01 15:46:39 +08:00
Yunfan Li
0c71ae5c61 Shaman maelstrom weapon 2024-09-01 14:37:35 +08:00
Yunfan Li
2782e0dc6e Spells 2024-08-16 23:44:46 +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
Atidot3
c48d69a802 Fix shaman cure strategy 2024-07-27 10:33:49 +02:00
Bobblybook
aaaa53b96f Correct alternative actions for weapon buffs 2024-07-17 19:00:20 +10:00
Bobblybook
cc3b0dda7c
Update ShamanTriggers.cpp
Accept all offhand weapon types
2024-07-17 01:41:24 +10:00
Bobblybook
6e48585f76
Fix endless earthliving-> flametongue buff loop 2024-07-17 01:12:15 +10:00
Bobblybook
228e79ac87
Add weapon check for OH 2024-07-17 01:10:52 +10:00
Bobblybook
936fa40a62
Update CasterShamanStrategy.cpp
Re-add new ele mastery trigger
2024-07-14 14:23:38 +10:00
Bobblybook
a1fe7e5d24 Fix/rewrite Shaman weapon buff checking (incl. dual wield support)
Replace the self-weapon shaman imbues with buff checking similar to rogue poisons. Includes support for buffing offhand for enhancement DW shamans.
2024-07-14 14:09:55 +10:00
Yunfan Li
68565dd813 [Class spell] Shaman elemental mastery 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
2b11f791f2 Score calculation for item spell 2024-04-13 14:42:07 +08:00
Yunfan Li
f03e12cb38 Enchant paladin divine sacrifice 2024-03-27 10:26:14 +08:00
Yunfan Li
0819f5c46c Enchance shaman healer 2024-03-25 19:14:47 +08:00
Yunfan Li
5f31941820 Auto save mana strategy 2024-03-23 18:11:46 +08:00
Yunfan Li
aab51a8182 Spell casting 2024-03-12 18:39:23 +08:00
Yunfan Li
1a11ec0717 Miscs for spell casting 2024-01-30 14:02:50 +08:00
Yunfan Li
111109b112 Raise flee action relevance 2023-12-22 00:05:09 +08:00
Yunfan Li
b96244b28f Thunderstorm 2023-12-17 17:46:00 +08:00
Yunfan Li
b5503ca00a increase expected group dps 2023-10-30 23:05:57 +08:00
Yunfan Li
a76290a149 better shaman totem strategy 2023-10-29 00:16:31 +08:00
Yunfan Li
10462126b4 miscs 2023-10-25 20:29:32 +08:00
Yunfan Li
45d0ae00ab default actions 2023-10-22 12:50:17 +08:00
Yunfan Li
4672b3edcf spell modification 2023-10-04 22:32:04 +08:00
Yunfan Li
bb1ea0c395 naxxramas gluth 2023-09-03 17:52:44 +08:00
Yunfan Li
14b94e20fb major class spells 2023-09-02 22:37:11 +08:00
Yunfan Li
fca4d17c97 test: ms_time 2023-08-02 03:46:15 +08:00
Yunfan Li
e93b1edcd5 fix strategies conflict for rndbot 2023-07-30 14:33:52 +08:00
Yunfan Li
02521589cf fix earth shield 2023-07-27 00:13:24 +08:00
Yunfan Li
8c914e5723 sapphiron strategy fix 2023-07-24 15:58:48 +08:00
Yunfan Li
9c1bb63d10 razuvious strategy 2023-07-18 21:00:49 +08:00
Yunfan Li
68adc0e81a increase revive spell priority 2023-07-15 11:28:39 +08:00