There are 2 main reasons people choose to have duplicate pets: To have different breeds and to have different skins. Both of which I believe show a certain amount of collecting effort. Have you thought about giving extra credit for having different (or better) breeds or different skins of the same pet?
Edit:
Here is an explination of what I mean
After computing the score as you do you then look a breed. There are basically 4 levels of breed (15,17,18, 20)
If you have 3 pets of the same kind you look at the breed of your "best pet", the one you count for other calculataions. Lets say you get
0 for 15
1 for 17
2 for 18
3 for 20
Then you look at the duplicates and you get 1 point for each that is a different breed for the best one. Maybe an aditional point for having both genders represented. So you could get a maximum of 6 points per pet for breeds. Of course this would be limited by the number of available breeds for a particular pet, and should probably always be zero for any pet that only has one breed.
For skin (if possible) you could get 1 bonus point for each different skin. So you would get 2 points if you have 3 different skins. (I personally value skin over breed so I would probably give 2 or 3 points for each skin
I know people go to a lot of effort to get different breeds and skins and it would be nice if that were reflected in their pet score. Just a suggestion though.


