ALL THE THINGS

ALL THE THINGS

31M Downloads

Celebration Fanfare shouldn't play for known appearances in Unique Mode

Nulgar opened this issue ยท 7 comments

commented

"Collected Things Trigger a Celebration" in Unique Mode
The fanfare is great, but in Unique Mode, it shouldn't trigger for sources where you already collected a shared Appearance. Could be controlled by a secondary option.
It can be misleading, especially when you get a random item, e.g. from a token or chest.
PS: Similarly, learning copies of already collected Battle Pets also trigger the fanfare. I would consider 1/3 being sufficiently collected for my purposes.

Lookalikes of class-specific items
If you have collected a class-specific appearance, e.g. a Tier item, but not any lookalikes, it shows these lookalikes as "collected from another appearance" on other classes, but you couldn't use this look on other classes. Similar for the PvP sets in WoD, where each faction got the other faction's looks the following season.
Could these cases be marked differently? I could imagine a yellow tint of the "known_circle" icon.

commented

Lookalikes of class-specific items
Hmmm Unique Mode should already handle this expectation. In fact we very often get complaints asking why it doesn't consider appearances collected, and the explanation is due to the Class/Faction/Race restrictions and needing to use Main Only to get the desired outcome they are looking for.
Can you post a screenshot of an example that works contrary to this in Unique Mode (NOT with Main Only)?

commented

Ok, hmpf, my bad, looking back at it, I may have confused indicators from Can I Mog It? with ones from ATT, and/or phrased it the wrong way around altogether.

Let's scratch that and reduce this to the Celebration sound.

commented

Sorry, I should've circled back to the Celebration Sound, but I had a local "hotfix" that worked so far, but now you changed how the fanfare is triggered and broke that fix :D ah, I see, the function was merely moved to another file, but, let's get back to this anyway.

Let me explain again: In Unique Mode, collecting shared appearances of something you already learned from another source, or learning a copy of a pet, still triggers the collection fanfare.

For example, when buying something from the right column here:
image

My request is for an option to suppress this fanfare for "duplicate" appearances/pets in Unique Mode.

commented

I don't particularly care about the jingle playing when you unlock a new source since technically a switch on the collection database is going from "I don't know this" to "I know this". Whether or not you know an appearance from a different source already at that moment would just add unnecessary lag or sometimes result in no jingle playing at all based on when the collection logic executed.

Curiously though, what was your hotfix?

commented

For appearances:
in src\Classes\Transmog.lua, function UniqueModeItemCollectionHelperBase, only call PlayFanfare if newAppearancesLearned > 0 (a local variable already filled)

For pets:
in AllTheThings.lua, function app.events.NEW_PET_ADDED, only call PlayFanfare if C_PetJournal_GetNumCollectedInfo(speciesID) == 1 (that function does get called anyway earlier to check if it's > 0, so that could be stored in a local to avoid calling it twice)

So, the only thing I could see causing additional significant CPU time would be the check for that new option, but I assume there's caching in place to minimize the CPU cost. Not that this code would be called often, from a computer's point of view ;)

commented

I agree with the points of this issue, and both Appearances (in Unique Modes) and Battle Pets properly only play their fanfare based on whether you have collected something new.

commented

Currently this works as intended and as desired specified by the user.