I'm working on building out user badges as a major feature on a news site, where users can submit or vote on various amounts of various types of content to get X or Y badge, some of which give the users new permissions and some of which are merely decoration.
I was planning on using userpoints and badges, but the integration there is pretty rudimentary, while you can do a bit more sophisticated auto-assigning of roles and then give roles a badge automatically. This, however, would create roles for everything from "users who have uploaded a profile picture" to "user who have uploaded 10 types of x content," and the prospect of all those roles just feels wrong at some level.
Are my fears misguided? Should I be worried about creating 40+ roles just to use for assigning badges to, and users having up to 40 roles assigned to them?
Some of the other appealing methods to this approach are the fact that I know that roles are around for the long term, and I can use roles to create a "checklist" of things a user hasn't done (for example, a PHP check to see if a user is not of "users who have uploaded a profile picture" role is then encouraged to upload a picture, etc).
Any thoughts are greatly appreciated!

Comments
Roles and Permissions
That does seem like overkill, Michael, but if you have badges which grant new permissions, then you would probably want those associated with a user role.
For merely decorative badges, there certainly cold be a much simpler solution.
To be honest, I'm beginning
To be honest, I'm beginning to regret not creating more roles before I launched my site, and I have a handful of them now.
One of the problems I've encountered with Drupal is that most modules will allow you to assign content to certain roles, but they don't allow you to exclude certain roles from content. (Notice I say most).
So, in my setup, I have registered users, anonymous users, and premium users (those who pay a monthly fee for access to all content). If I want to run a fairly aggressive ad campaign to only anonymous and normal users, but not to premium users... I typically can't do that. Once I add a registered user to the content, well, all premium users are also registered users.
I am considering ways to add all users to a non-premium role, auto-remove them from the role when they become premium, and add them back to it if they leave premium, but that will be a heck of a headache, compounded by the fact that I have 3200+ registered users who need to be added to new roles.
If I had added extra roles in the beginning, I wouldn't be facing this problem now.
In my experience, it's always better to have extra roles you don't use right up front, than have to work around that deficiency down the road when you need to expand on your original thoughts.
Thanks, I really appreciate
Thanks, I really appreciate the thoughts. I'm having a heckuva a time getting everything to gell properly, but, because I want to slowly introduce the ability to do things, I might take your path.
Mike, your thoughts are always appreciated, but you knew that.
Web guy, SpareChangeNews.net
Twitter: @morisy / @sparechangenews