A** is not a "nice" word unless you are referring to a donkey, and even then the forum probably wouldn't be able to tell the difference. The word "bad" in itself would not be a problem.
Instead of spelling out the word with spaces, so that any human being can still read it, maybe you can substitute certain letters with other characters?
If parents and teachers let children use the forum for homework they probably don't want them to see words like that.
I don't know what an exact antonym for "bada**" would be. Try looking it up in a dictionary and if it doesn't list an antonym you can try to determine an appropriate one from the definitions given.