Commit Graph

2054 Commits

Author SHA1 Message Date
EricksOliveira
6ae96f19b9 Big update InviteToGroupAction.cpp (#1154)
* Group improvement: Bots will no longer auto-invite players who have DND enabled.

* Group fix: Bots will no longer invite self-bots to groups with dnd enabled.

* Invite fix: Bots will no longer invite DnD players from their guild.

* Guild group invite improvement: Lower level guildmembers may now invite higher level players to help them out.

* Crash fix: Bots inviting players into a group that are being teleported.

* Invite fix: Bots will no longer automatically convert to raid when inviting real players.

* Group fix: Bots now properly group up automatically again.

* Group fix: Bots no longer invite themselves to groups from the guild.

* Fix

* Fix build

* New Fix

* .

* ..
2025-04-11 23:42:29 +02:00
SaW
287875c436 Set Lockpicking Skill (#1140)
On init and on maintenance
2025-04-11 19:29:07 +02: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
0d19f298da Loot packet fix (#1190) 2025-04-10 21:00:05 +08:00
kadeshar
fe519854a4 - Added skipping disperse tactic while bot is in stay stance (#1180) 2025-04-08 20:55:07 +08:00
Yunfan Li
3f52563ca7 Move LoadFromDB from player session to world session (#1173) 2025-04-08 20:54:51 +08:00
Yunfan Li
cd5b15ddc1 Fix keyring for low level bots (#1177) 2025-04-08 10:11:07 +08:00
Yunfan Li
2f3f8d565c Make battleground join / arena join / loot money session packet (#1178)
* Make battleground / arena join session packet

* Loot money

* Avoid aoe crash
2025-04-08 10:11:03 +08:00
tomcoffingiii
2fced71069 Update RaidIccActions.cpp - (#1174)
Add logic to gracefully handle bots falling off platform during LK phase 2 fight
2025-04-07 17:05:52 +08:00
EricksOliveira
3d743ccab3 Crash fix: Bots now properly turn their corpse into bones when resurrected so they don't have a second corpse after dying and releasing again. (#1165) 2025-04-04 21:56:56 +08:00
EricksOliveira
7446d0b1d4 Summon improvement: Selfbot no longer complains about being unable to… (#1166)
* Summon improvement: Selfbot no longer complains about being unable to summon to itself.

* Fix build

* .
2025-04-04 21:56:22 +08:00
kadeshar
dccbccc090 - Added Biting Cold cheat (#1131) 2025-03-31 22:47:30 +08:00
EricksOliveira
a50dc87dbc Fixed crash in MoveFromWhirlwindAction::Execute function (#1150)
* Fixed crash in MoveFromWhirlwindAction::Execute function

This PR fixes a crash in the MoveFromWhirlwindAction::Execute function in NexusActions.cpp. The error occurred when accessing boss->GetPosition() without checking whether boss was a valid pointer. The fix adds a nullptr check before calculating the distance, preventing invalid accesses and ensuring the stability of the action execution.

* Fix comment
2025-03-31 22:47:13 +08:00
Yunfan Li
7676fd6427 Fix multithread issue on LFG and group leave (#1143) 2025-03-31 22:46:27 +08:00
Revision
21020b4564 Merge pull request #1153 from NoxMax/NoxMax-patch-1
playerbots.conf.dist comment fixed
2025-03-31 01:34:51 +02:00
NoxMax
31de2a0f32 playerbots.conf.dist comment fixed
Fixed comment for BotActiveAlone, now that its default value has been changed from 10% to 100%
2025-03-30 14:27:37 -06:00
EricksOliveira
3faa3c639a This update adds null pointer checks and extra validations to the AttackAnythingAction::isUseful() method, preventing invalid accesses that could cause crashes. (#1135)
Checking bots and botAI before method calls.

Validating targets and confirming if they are still in the world (IsInWorld()).

Adding debug logs (LOG_DEBUG) to make it easier to identify issues.
2025-03-29 10:58:57 +01:00
EricksOliveira
ad8c42d81b Crash fix: Bots inviting teleported players. (#1142) 2025-03-29 10:57:24 +01:00
Paolo
917c96a281 Add config option for RND bot trading. (#1132)
* Add config option for RNDbot trading.
2025-03-28 16:10:49 +01:00
EricksOliveira
495269bfa0 Add possible crash fix when summoning an invalid bot (#1125) 2025-03-28 16:08:40 +01:00
EricksOliveira
d2204d41e2 Fix crash in trade status action (#1123)
* Fix crash in trade status action
2025-03-28 16:08:05 +01:00
mostlynick3
50200584d1 Correct UseMeetingStoneAction to only apply on meeting stone portals 2025-03-28 16:01:09 +01:00
EricksOliveira
8f92fbade3 BG crash fix: Fixed a crash when the bot was marked as being inside a battleground but had no battleground. (#1122) 2025-03-26 20:48:36 +08:00
Yunfan Li
d9da6d942d Make make a full check before questgiver choose such as reputation (#1109) 2025-03-26 20:47:46 +08:00
kadeshar
feb7bb8a8b Added Vault of Archavon strategy with Emalon tactics (#1117) 2025-03-25 13:28:53 +01:00
EricksOliveira
105b16358f BG: Crash fix when bots are trying to determine the eye flagcarrier when the battleground no longer exists (#1119) 2025-03-25 13:27:13 +01:00
EricksOliveira
08b77acd8d Chat: Fix index out of bounds crash in case verb_pos equals zero (#1115)
Prevents invalid accesses to the word[] array, preventing possible crashes.

Improves the message selection logic in bot chat.

Fixes an error in the switch-case structure, ensuring that all possible messages are used correctly.
2025-03-24 21:57:39 +08:00
avirar
c83cf0706a ItemUsageValue: Handle items that create required items (#1091)
* Updated IsItemUsefulForQuest to handle items that create required quest items

* Debug output

* Removed unneeded botAI->

* Debug output in Calculate

* -> not .

* Comprehensive debug output for quest usage

* Corrected logic for lootable items when sync quest is enabled

* #include "LootObjectStack.h"

* Corrected call to IsItem

* Removed debug statements

* Reimplement ItemCount >= RequiredItemCount

* Modified CanLoot to loot all items when loot source is an item in their bags

* Set loot target when sending Open packet
2025-03-24 21:47:25 +08:00
mostlynick3
47ffe37519 ICC - Implement Val'kyr grabbing bots and dropping (#1098)
* ICC - Implement Val'kyr grabbing bots and dropping
2025-03-24 11:26:21 +01:00
Yunfan Li
e319334b03 Fix frost nova crash (#1106) 2025-03-22 13:59:32 +08:00
Noscopezz
76830796e9 ICC minor update (#1104)
* ICC PP WIP

WIP

* added mutated plague for PP

* BPC added (kinetic and boss targeting need to be done by player)

OT collects dark nucles, bots spread on vortex and other stuff they do ok on their own.
Tested only on 10NM, should work on 25NM

* Tank pos. correction

* BQL, ranged spread, link, flame, bite, tanking tested 10NM

to do (better fire spread, hc tacti, melee spread when in air)

* LDW improved

improved shadow logic, ranged spread for easier shadow handling

* dbs update, fixed teleporting

Bots should only go and teleport to the mage that is actually below zero now

* DBS ranged fix

Ranged should spread more quickly and freak out less

* Festergut && DBS

fixed ranged spread (both)
fixed spore logic (fester)

* Rotface fix

Improved big ooze tanking (static pos, todo kiting)
ooze explosion spread mechanic fix
ooze pool fix
Player needs to mark rotface with skull icon, oterwise bots try to attack oozes

* BQL fixed for 25nm

todo: better melee logic in air phase, better melee flame spread

* VDW, Sister Svalna, Sindy update

Sister Svalna, bots can pickup spears and throw at svalna when she has shield up

VDW added healer strats to use portal and heal boss (atm druids are for raid healing only, so use druide + any other healer, ideally player should be healer)
todo (focus on supressers, add healer rotations, atm they use quickest spell they can)

Sindragosa
Added tank boss manipulation (boss orientation and position)
bots detect (buffet, unchained magic and chilled to the bone and act accordingly)
bots detect frost beacon move to safe spot and los frost bombs around them, while dpsing tombs (todo stop dps if only one tomb is left, if we have frost bombs around, not a big deal atm since in nm they dont one shot)
Last phase bots los behind tomb to loose buffet, tanks swap when they have hi buffet count.
Player should tell bots with skull rti if they should kill tomb or focus boss.
todo (dynamic tomb los in last phase so that healers can see tank but also hide behind tomb to break los from boss)

Removed some debug messages, improved LM spike action (nearest bots also try to help kill it)

Improved Lady Deathwshiper shade action (only targeted bots will run away instead of every bot that is near it)

dbs improved tank switch

I recommend to use 3 healers (just to be safe) and 2 paladin tanks (warr seems to struggle with agro) in 10 man
25 man 6-7 healers (just to be safe) Since most of the bosses are about survival and not dps

* LK Update (doable)

LK added

Improved tank switching for all bosses

Fixed PP gas cloud kiting
Malleable goo todo (dont know how to detect it since its not object or npc) just summon ranged bots to safe position to bypass

BPC  fixed OT sometimes not tanking kele
kinectic bombs todo (for now player should take care of them)

Sindragosa fixed rare case when she is in air phase but tombs went to last phase position

LK
Bots can handle necrotic
Bots can handle adds
Bots should focus valkyre that actually grabbed someone (if unlucky and player just use attack command and summon bots to you if they are far away from you) if they grab bots you can either summon to make them useless or let bots cc them and do it legit way.

Defile should be watched by player and once it was cast just summon bots to you
Vile spirits for some reason go to the ground and get nuked by bots aoe spells so there is not much to be done

**Player needs to be alive the whole LK fight since you will have to watch out for frost spehers (sometimes bots ignore them), summon bots when defile is up and summon ranged bots if they get stuck near shambling or raging spirits since their aoe will wipe you)

all in all LK  is doable both 10 and 25nm, player needs to have knowledge of lk fight and needs to know how to use multibot addon and make macros for eg summoning or commanding groups of bots or individual bots)

Dont forget frost/shadow/nature resist auras in whole ICC since it will help alot

I have done whole icc 10 and 25 with 2 pala tanks, 2/5 heals and rest dps,  if you use +1 or +2 heals it should be easier (since I was testing I did close to 0 dmg in fights same with heals)

* fixed changes made by mistake

fix

* Malleable fix (simple spread mechanic)

Malleable mechanic added (simple spread for now)
Gas cloud fixed (Bots sometimes got stuck between puddle and kite location)

* Defile Update

Bots detect and avoid defile (they struggle to find a way back to the boss around it tho, use summon to help them)

Melee bots should be able to stand behind/to the flank of shambling/spirits

* GS fixed bots not returning to their ship for A and H

Bots will return back to ship after killing mage

* PP gas cloud kiting improved

PP gas cloud kiting improved

* BPC targeting fixed

Bots will mark valid prince with skull RTI now

* BQL added melee spread in air pahse

BQL added melee spread

* VDW healing rotation improved

Healers will now use strong heals and hots

* Fixed Necrotic Plague

Fixed issue with Necrotic where it would get dispelled too soon, or would not get dispelled at all

* LK Update

Refined defile logic
Added 3 points for ranged and melee in winter phase (east, west, south when facing throne)
fixed frost spheres targeting (hunter will focus them)
Atm bots will reset z axis if they fall underground or if they get teleported by lk
Better positioning in 1st phase

* 10HC update until PP

LK defile improved for 10nm (bots sometimes stood 2 close to defile until it grew few times)

Improved rotface for HC

PP remade for 10HC.
Gas cloud is now properly kited
Fixed a rare case of server crash when there were ooze and gas cloud alive at same time.
Bots will move around puddles according to its size now.
Bots that get unboud plague will simply move away from raid and die thus loosing it from raid.
Volatile ooze improved stacking.
Fixed ranged sometimes glitching thru walls when spreading out from other members.

10HC PP is now doable but its hard without summoning (summoning break gascloud and ooze targets so its easier to do). You need to watch boss so you dont phase 2 soon otherwise you will get 2x ooze and cloud which is almoust always a wipe. If abo is not played near perfection bots will struggle with oozes and gas clouds if they are not slowed on time. Always save energy to slow gas cloud since it will wipe the group if it reach its target.
Bots will sometimes stand in puddle, just command them to move and they will figure out what to do.

todo (proper malleable handling)

* Up until Sindy 10HC

BPC added shadow prison handling, bots stop moving if more than 12 stack, tanks more than 18
Improved spreading logic

VDW
fixed issue where bots in portal wold move at half speed compared to real player

* fixed accidental change

* LK 10HC update

Added Shadow trap logic
(if they stand in it, not a big deal since bots wont get yeeted only players will)
When harvest soul, only player will be in another dimension (you must survive)

**Sindy and LK can be done, but I must dissapoint purist, at my skill level I could not achieve to do HC without using summon or other "cheat" bot functions.

Other bosses are all doable now in 10hc

* ICC fixes GS, PP; BQL, SINDY

Minor fixes, bite action improved

* ICC improve Sindy

Bots will now choose non beacon position based on difficulty, 10/25

* ICC fixed missing A/H buff

Fixed missing ICC buff for A and H

Buff will only be present when logged on and in ICC, once any bot or player leave ICC the buff is gone to prevent abuse.

This will make ICC easier now and with recent DPS update and movement improvement bots will now actully do decent dps and even greater healing.

Ally buff
https://www.wowhead.com/wotlk/spell=73828/strength-of-wrynn

Horde buff
https://www.wowhead.com/wotlk/spell=73822/hellscreams-warsong

* revert last change

revert buff

* ICC improve Rotface

Bots will now mark Rotface with skull icon, which will make them focus boss instead of oozes automatically

* ICC Festergut 10 Man fix

There was a rare case in 10 Man when 2 tanks would get spores which made them both stack at melee spot. Now the code will check if any of the spored player is main tank, if it is, it will stay at melee and other spores will go at ranged spot since off tank doesn't really need to stand near main tank all the time.

* ICC BPC major update, fix and improve

Fixed main tank sometimes not tanking both bosses (vala and talda)

Improved marking of current prince

Empowered vortex: bots will now spread out when it is being cast, instead of always spreading(ranged). This will make melee also spread better now since bots will calculate and move to optimal positions.

Added Kinetic bomb handling.
Hunters will take care of bombs, if no hunter is present then any ranged dps will take care of kinetic bombs.

* ICC BQL/VDW major update + minor fixes/improvements

LDW improved spreading for ranged, tanks will move boss in the middle of the room now when shield is depleted which will make bots bug less around pillars

GS Assist tank will not teleport to enemy ship and will keep tanking adds on our ship now

DBS ranged spread improved (they will calcualte spot for each bot and stick with it reducing movment to minimum), fixed bug where in 25 man ranged bots would go behind walls, making them unable to dps boss, improved rune of blood tanking

Festergut ranged spread improved (they will calcualte spot for each bot and stick with it reducing movment to minimum)

BQL Melee spread improved, bite logic improved, added swarming shadows logic (not perfect but at least it wont be all over the room anymore), Tanks will properly handle blood mirror now

VDW boss and raid healers will be automatically assinged depening by number of healers(if more than 3 healers in group, 2 will focus on raid and others will heal boss, otherwise one healer will heal raid). Druid will be assigned to raid healing if no druid present then some other random heal class. Added rotations for druid healers if they end up healing the boss. Raid healers will not use portals anymore. Healers will come to the ground now after using portals (they were stuck in air)

* ICC LK minor update

PP

Removed pre stacking for ranged when volatile ooze spawn (they will kill it much faster now and only stack if someone actually gets targeted by ooze)

LK

Hunters will use trnaq shot to remove enrage from shamblings

Improved valkyr cc

Minimized ping-ponging during winter phase

* ICC minor Sindy improve

Reduced position tolerances and forced movement for beacon and non beacon positions which will make bots move to spot that they actually need to be at instead of randomly running to sindragosa or beaconed players.

* ICC minor update

GS

Bots will mark mage with skull rti

Rotface

Fixed bots glitching thru walls and floors (added check if position is valid before moving)

PP

Bots will mark volatile ooze with skull rti now which will help them focus it and kill asap (usefull for heroic when both volatile ooze and gas cloud are present at the same time)

VDW

Added default group position in the middle if the room so that bots don't spread out too much which will force them to focus supressers more

Fixed Boss healers not keeping themself alive when low on HP

* ICC LK minor update

Commented out z axis bypass since it was fixed with recent core updates.

Bots no longer fall thru buggy platforms so its no longer needed which in return makes valkyrs works as they should.
2025-03-21 20:20:25 +08:00
kadeshar
9ddc71a9d7 - Changed Eye of Eternity healers selection (#1102)
- Added Iron Assembly strategies for normal mode
- Improved Hodir Biting Cold strategy
2025-03-21 20:19:59 +08:00
SaW
28be2b13c3 Optimize Mountaction: Movement Logic with Early Return for Matching F… (#1099)
* Optimize Mountaction: Movement Logic with Early Return for Matching Forms or Speed

Added a missing check, so if both master and bot are in matching forms or master is mounted with corresponding speed, early return as there is nothing to do.

This improves logic, actions, and prevents some strange movement behavior when both master and bot already are in travel form.
2025-03-20 19:53:56 +01: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
f039e88393 Fix faction count calculation error (#1085)
* Fix faction count on add randombots

Co-authored-by: kadeshar <kadeshar@gmail.com>

* Fix class balance issue with periodic login and logout

---------

Co-authored-by: kadeshar <kadeshar@gmail.com>
2025-03-17 19:40:03 +01:00
Yunfan Li
015d6605a6 Fix move npc action (#1087) 2025-03-17 23:52:41 +08:00
avirar
c4a4d3a9e6 Rogue bots can unlock items in their bags and in the trade window (#1055) 2025-03-17 15:10:33 +01: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
0fabf174c0 Fix rpg game objects quest accept and reward (#1080) 2025-03-15 17:50:00 +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
SaW
88356bb507 Prevent crash on update SQL (#1076)
Delete entries before adding to avoid duplicates.
2025-03-14 08:40:55 +01:00
kadeshar
e1f11fa2f2 - Code refactoring in RaidUlduarActions (#1065) 2025-03-08 12:42:08 +01: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
Revision
7dff970e37 Merge pull request #1063 from kadeshar/freya-strategies
Freya strategies
2025-03-06 22:36:43 +01:00
kadeshar
7c49a7b681 - Added tactic for Freya Nature bomb
- Added tactic for Freya Eonar's gift
2025-03-06 19:06:27 +01:00
SaW
4f43600e7a Silence error if preferred mounts SQL table playerbots_preferred_mounts does not exist (#1062)
* Fix error spam if DB does not exist
2025-03-06 15:03:23 +01:00
avirar
f7f949eda4 Item Usage and Loot Roll (#1059)
* Better Disenchant and final AH usage

* CalculateRollVote instead of just needing on items allowed by StoreLootAction::IsLootAllowed
2025-03-06 13:39:33 +01:00
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