Originally posted by "Corona688"...
We run an old text game built on an ancient and mysterious codebase. It occasionally does strange things for reasons that've been lost to the mists of time.
Sometimes it refused to create new characters. It loathed certain names with a passion, like 'Counterlock', and nothing would explain why. No error message, nothing at all, just abject silence and a failed system call. This happened extremely rarely, fortunately, but really bunged the system up good when it did. We'd have to dig in and delete the offensive objects before the application system could resume normal operation.
When it broke down on Pandamonium, I got mad. I dove into the source itself and added trace statements through every step of the process. Finally I stumbled into a function that appeared to be checking for, hmm... 'jerks?' Previously banned players, perhaps? This is what printf revealed:
The offending function has been replaced with a stub that always returns zero, and we can at long last name characters 'damn', 'f*ck', and 'sh*t' if we well and truly want to.