If a bot ever says "I'm going to donate zero", then everyone else knows to donate zero, as they'll lose money if they don't.
If a bot never says it, but does donate zero, then the other bots can calculate their expected earnings (from what the others say they'll donate) and their actual earnings, and know that someone lied, thus eroding trust, meaning they'll donate less money each time, out of fear they'll lose money