Check this out:
https://eu.battle.net/forums/en/wow/topic/17617202610
This is the script:
local ARENA_PROFILE = "Arena";Please note the five 'local' lines at the top. These correspond to your profile names. Change the names inside the " " to the correct names that you use. At current, all five profiles need to actually exist in order to prevent bugs. You can then use https ://addon.bool.no to turn the script into an addon.
local BG_PROFILE = "Battleground"
local PARTY_PROFILE = "Party"
local RAID_25_PROFILE = "Raid25";
local RAID_40_PROFILE = "Raid40";
function switchProfile()
if InCombatLockdown() == false then --This should fix in-combat issues.
isArena, _ = IsActiveBattlefieldArena();
if isArena == true then --**IN ARENA**.
if GetActiveRaidProfile() ~= ARENA_PROFILE then --if arena profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(ARENA_PROFILE); --...set arena profile.
print("Activated RaidProfile: "..ARENA_PROFILE)
end
elseif InActiveBattlefield() then --**IN BG**.
if GetActiveRaidProfile() ~= BG_PROFILE then --if battleground profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(BG_PROFILE); --...set battleground profile.
print("Activated RaidProfile: "..BG_PROFILE)
end
elseif GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) > 0 then --**IN INSTANCE GROUP**
if GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) > 25 then
if GetActiveRaidProfile() ~= RAID_40_PROFILE then -- if Raid40 profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(RAID_40_PROFILE); --...set raid40 profile.
print("Activated RaidProfile: "..RAID_40_PROFILE)
end
elseif GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) > 5 then
if GetActiveRaidProfile() ~= RAID_25_PROFILE then --if Raid25 profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(RAID_25_PROFILE); --...set raid25 profile.
print("Activated RaidProfile: "..RAID_25_PROFILE)
end
else
if GetActiveRaidProfile() ~= PARTY_PROFILE then --if Party profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(PARTY_PROFILE); --...set Party profile.
print("Activated RaidProfile: "..PARTY_PROFILE)
end
end
elseif GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) > 0 then --**IN MANUAL GROUP**
if GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) > 25 then
if GetActiveRaidProfile() ~= RAID_40_PROFILE then -- if Raid40 profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(RAID_40_PROFILE); --...set raid40 profile.
print("Activated RaidProfile: "..RAID_40_PROFILE)
end
elseif GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) > 5 then
if GetActiveRaidProfile() ~= RAID_25_PROFILE then --if Raid25 profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(RAID_25_PROFILE); --...set raid25 profile.
print("Activated RaidProfile: "..RAID_25_PROFILE)
end
else
if GetActiveRaidProfile() ~= PARTY_PROFILE then --if Party profile is not active
CompactUnitFrameProfiles_ActivateRaidProfile(PARTY_PROFILE); --...set Party profile.
print("Activated RaidProfile: "..PARTY_PROFILE)
end
end
end
end
end
local f = CreateFrame("Frame")
f:RegisterEvent("GROUP_ROSTER_UPDATE") --fires when player joins or leaves group
f:RegisterEvent("PLAYER_REGEN_ENABLED") --fires when leaving combat
f:SetScript("OnEvent",switchProfile);
for exact details on how this script works, see the original post: https://eu.battle.net/forums/en/wow/topic/17617202610#post-4
Addon doesnt work anymore - guess they changed some of the API implements. AND STILL automatic Profile switching by blizzard doesnt function properly.
âIsActiveBattiefieldArenaâ is no Command anymore - same goes for âIsActiveBattlefieldâ - i dont know what to check for now
Near 2021 and still not fixed.
B U M P
Please, Blizzard. This is serious for usâŚ
Do you think weâll make it to the 10 year anniversary of this bug?
I would gladly help reproduce the bug if they would show a just a glimmer of interest in fixing it
Having the same issue. This is very annoying.
There used to be an addon called ProfileSwitcher, which worked wonderfully alongside SortGroup and made it all so smooth and seamless. But for some reason ProfileSwitcher doesnt exist anymore, Im guessing because of some changes blizz made
Bump again.
Actually, yesterday it worked for me - surprisingly. I didnât test it properly but it seems to be working, sort of.
Actually guys it works and it has always worked,on the top left corner you can see the âprofilesâ tab. I have two profiles. One is named âmainâ the other âraidsâ, main profile settings include - âauto activate on 2-3-5 player groups both in pvp and pve. Raid profile activates on 10 man groups and above. Again mark this for all specializations and both pvp pve if you want. When more than 5 people get invited , the position and size will change to your desired profile. For example- my main profile is for m+ and pvp , the frames are super big and close to the middle of my screen. Raid profile is at the default position on the smallest size. When you click the arrow near your default raid frames, you can select which profile you want to move where. If anyone is still interested or still needs help feel free to contact me. I hope this was helpful!
I have similar settings in TBC Classic. It used to work fine in Classic but now something is broken for me.
I have 2 profiles one for 5man (PvP and PvE) other for 10+ man also for PvP and PvE it is selected properly when it should activate yet it doesnt.
Always last used profile is active regardless if I join 5man group or big raid I have to switch it manually.
Iâve tried even full UI wipe but it didnât help.
So 9 years later it seems to be still an issue.
BUMP, still not working Shadowlands 9.1.5
Another bump still not fixed in 9.2.5
Hopefully Blizzard fixes this with the UI overhaul in DF because this is very annoying.