Page 1 of 1

Companions with multiple looks - collection test page

Posted: Sat Jun 20, 2020 6:00 pm
by Wain
Do you like to collect as many looks as possible for each companion pet?

I’ve created a test page that lists all the companion pets that have multiple looks (and sizes), and if you’re logged in to WCM and have a valid character added then it’ll grab your Armory data and indicate which colours of each pet you have and haven’t collected:

https://warcraftmounts.com/multi_look_companions.php

It’s not normally my thing to create pages for companion pets, but this is something that Warcraft Pets doesn’t support yet and I wanted it for my own use. So I thought I’d share it here in case anyone else finds it handy too. 😊 If WCP adds support for this in the future I’ll probably just remove the page.

Please let me know if you have any problems with it, or have any suggestions.

Re: Companions with multiple looks - collection test page

Posted: Sat Jun 20, 2020 7:19 pm
by Vephriel
This is super useful!

Even though I only choose to collect one of each pet, this still helps me look at all of my options and pick my favourite from them.

Re: Companions with multiple looks - collection test page

Posted: Sun Jun 21, 2020 1:17 pm
by Wain
I've updated the page, so now when you're logged in it will split the info into different sections:
- pets for which you're missing colours and still have space to collect (I'm ignoring the chance you might own 2-3 of the one colour)
- pets for which you're missing colours, but you can't collect any more (because you own 3 colours)
- pets for which you own all the colours
- the size-only pet variants are at the end, but I don't differentiate those based on how many you own

Re: Companions with multiple looks - collection test page

Posted: Wed Jul 01, 2020 11:12 pm
by Xota
Is it possible for a person to check if they have identical looking pet model/skin/size-wise, but on a different pet type? I was looking for that in the pet journal api once, but got side-tracked.

I saw Quintessene's page for "unique tinted pets for 8.2", that's why I was wondering if it could be done automatically or if it had to be done by eye. https://wowpetaddiction.blogspot.com/20 ... hagon.html

Re: Companions with multiple looks - collection test page

Posted: Thu Jul 02, 2020 7:45 am
by Wain
Xota wrote:
Wed Jul 01, 2020 11:12 pm
Is it possible for a person to check if they have identical looking pet model/skin/size-wise, but on a different pet type? I was looking for that in the pet journal api once, but got side-tracked.

I saw Quintessene's page for "unique tinted pets for 8.2", that's why I was wondering if it could be done automatically or if it had to be done by eye. https://wowpetaddiction.blogspot.com/20 ... hagon.html
It would probably be too much work for me to map every display ID for every pet in the database to its colour, and I'm not looking to replace WCP :) But maybe I could just look at the pets I am displaying and flag which ones are colours that are completely unique to them. I could put a little star in the corner or something. If the user wants to know which other pets display the non-unique looks they could follow the link to WCP and search for related pets.

Re: Companions with multiple looks - collection test page

Posted: Thu Jul 02, 2020 11:31 am
by GormanGhaste
I know I'm missing pets from BfA patches, but at this point I want to have all the 9.0 info/pics before I update the wild pets thread :)

Re: Companions with multiple looks - collection test page

Posted: Fri Jul 03, 2020 12:05 pm
by Wain
I compiled a complete list of all the unique looks that are on multi-look pets, and made the mistake of doing it directly in MySQL Workbench. I don't know why I did that, I knew better. I spent hours on it. I went to update and it crashed and I lost it all. :cry:

Re: Companions with multiple looks - collection test page

Posted: Fri Jul 03, 2020 2:07 pm
by Xota
Oh, ya, I didn't mean to suggest you should do it. Just curious if it's been done. I'm guessing someone could use C_PetJournal calls, GetNumDisplays() and GetDisplayIDByIndex().

If WCP has something like petopia, where it's indexed by looks directly, I haven't figured it out. Like if I want to see what pets other than adder can use the black snake skin, I open up the 22-24 other snakes in "similar models", and see which of them has the black snake thumbnail in alternate skins.

I guess I know what I can do that will be more fun than farming gold.

Re: Companions with multiple looks - collection test page

Posted: Tue Jul 07, 2020 5:16 am
by Wain
Xota wrote:
Fri Jul 03, 2020 2:07 pm
Oh, ya, I didn't mean to suggest you should do it. Just curious if it's been done. I'm guessing someone could use C_PetJournal calls, GetNumDisplays() and GetDisplayIDByIndex().

If WCP has something like petopia, where it's indexed by looks directly, I haven't figured it out. Like if I want to see what pets other than adder can use the black snake skin, I open up the 22-24 other snakes in "similar models", and see which of them has the black snake thumbnail in alternate skins.

I guess I know what I can do that will be more fun than farming gold.
I'd like to do something, though :) I can use Armory queries to get all valid pets and a lot of the pet data. The rest I can get from the database tables.

Re: Companions with multiple looks - collection test page

Posted: Thu Jul 09, 2020 8:09 pm
by Xota
Using just C_PetJournal calls, I've made cross referencing tables for displays and species, marking all the displays I currently own. My goal was/is to have it spit out displays that I don't have, and which species would be the best to get them on. Or more generally, which displays are necessary for which species, if a collector's goal is to get them all.

Issues I've run into:
1. A bunch of pet species don't have their possible displays stored. GetNumDisplays should always be >= 1, but it's zero a lot. In those cases, I assume there's only 1 possible display (either the one I have, or the default one for the species). If that assumption is wrong, then oh well.
2. A pet may have special effects that aren't reflected by a unique displayID. eg: Spirit Crab, Shadowback Crawler, and Coastal Scuttler all have the same displayID, but the first 2 have special effects so they look different (ghostly and corrupted, respectively)
3. I'm using PlayerModel:SetDisplay() to see what displayIDs look like, and it doesn't do scaling. Tol'vir Scarab shares a look with one of the Scarab Hatchling looks, and they have different displayIDs probably because one is a lot larger than the other. But SetDisplay shows them without any scaling.

Re: Companions with multiple looks - collection test page

Posted: Fri Jul 10, 2020 3:19 am
by Wain
Xota wrote:
Thu Jul 09, 2020 8:09 pm
1. A bunch of pet species don't have their possible displays stored. GetNumDisplays should always be >= 1, but it's zero a lot. In those cases, I assume there's only 1 possible display (either the one I have, or the default one for the species). If that assumption is wrong, then oh well.
I know that Armory data intentionally don't return display IDs for pets that change colours randomly. Could it be those?
Xota wrote:
Thu Jul 09, 2020 8:09 pm
2. A pet may have special effects that aren't reflected by a unique displayID. eg: Spirit Crab, Shadowback Crawler, and Coastal Scuttler all have the same displayID, but the first 2 have special effects so they look different (ghostly and corrupted, respectively)
That's unexpected. Usually the special effects are tied to the display ID, but I guess not for all.
Xota wrote:
Thu Jul 09, 2020 8:09 pm
3. I'm using PlayerModel:SetDisplay() to see what displayIDs look like, and it doesn't do scaling. Tol'vir Scarab shares a look with one of the Scarab Hatchling looks, and they have different displayIDs probably because one is a lot larger than the other. But SetDisplay shows them without any scaling.
Yeah, the game UI seems to ignore scaling. I only get it from the creatureDisplayInfo table: https://wow.tools/dbc/?dbc=creaturedisp ... .0.1.35078

Re: Companions with multiple looks - collection test page

Posted: Fri Jul 10, 2020 5:00 pm
by Xota
Wain wrote:
Fri Jul 10, 2020 3:19 am
Xota wrote:
Thu Jul 09, 2020 8:09 pm
1. A bunch of pet species don't have their possible displays stored. GetNumDisplays should always be >= 1, but it's zero a lot. In those cases, I assume there's only 1 possible display (either the one I have, or the default one for the species). If that assumption is wrong, then oh well.
I know that Armory data intentionally don't return display IDs for pets that change colours randomly. Could it be those?
The only one I remember off the top of my head that changes randomly is Sen'jin Fetish, for which GetNumDisplays returns 3.

These are the 81 with GetNumDisplays = 0

Alliance BalloonAlpine FoxlingAlpine Foxling KitArcane EyeArctic HareBlorpBlue Mini JousterBrilliant KaliriBrilliant Spore
Chi-Ji KiteCopper HopperCourt ScribeCreepy CrateCrimson SporeCrowDancing Water SkimmerDarkmoon BalloonDarkmoon Cub
Darkmoon EyeDarkmoon GlowflyDarkmoon MonkeyDarkmoon RabbitDarkmoon TonkDarkmoon TurtleDarkmoon ZeppelinDe-Weaponized Mechanical CompanionEye of the Legion
Festival LanternFetish ShamanFleeting FrogFrigid FrostlingGarden FrogGarden MothGlobe YetiGold Mini JousterGolden Pig
Grasping ManifestationGregarious GrellGusting GrimoireHarpy YounglingHorde BalloonHorse BalloonHungering ClawIron StarletteJade Tentacle
Jungle DarterLil' Siege TowerLil' War MachineLofty LibramLumpyLunar LanternMasked TanukiMasked Tanuki PupMurkablo
Murloc BalloonMystical Spring BouquetNightmare BellNightsaber CubPebblePint-Sized Pink PachydermPurple PufferSand ScarabSea Pony
Seaborne SporeSearing ScorchlingSilver PigSnowshoe HareSpirit of CompetitionStunted YetiSyd the SquidTiny SnowmanTolai Hare
Tolai Hare PupUmbrafen SporeUunaWhite MothWolf BalloonWondrous WisdomballYellow JunkhopperYu'lon KiteZangar Spore

Re: Companions with multiple looks - collection test page

Posted: Sat Jul 11, 2020 12:40 pm
by Wain
Odd, that seems buggy then. I can't see any connection between those pets :/