Because your line states, hadd -m BadWords 0 $iif($hget(BadWords,0),$false,$true)
you have 0 listed as the item behind BadWords, that is format for /hadd. Whatever you list behind BadWords is the item its going to add to, if 0 is not an item, its going to create it as a new item in the table.