To summarize, I\'m a little confused as to how I would design such a database that allows indefinite badge-rule creation without requiring structu
I would not create an increment for the edit badge. I think you should have a job running in the background and count() the numbero of post edited for members that haven't the badge of editing yet. When you see that the count is over the range you want, you add an entry in the database that tell that the user have the badge.
I think it's about the same for other badges. Try to limit the number of writting and do not write directly the count of the badge information in the user table. Use a table that will contain badge information and link it to the user table.