Some of my earliest lessons in "how not to write software" came from listening to the ranting of a friend who worked on the original eAthena implementation (i.e. back when it forked from the Japanese Athena project and gained the "e" in its name). All of the fragile handoffs between the multiple server types (character, map, login) and the client. Most notable were the mountains of code, network and otherwise, that had to be written in knowingly buggy, inefficient or incorrect manner simply to properly mimic the official server functionality.
There was also one attempt to make an alternative client for the official servers to deal with some of the lackluster interface issues (longstanding, serious/obvious bugs from 2002 that lasted until 2009ish). From what I recall, it was way too much work, and the core features were easier to deliver as a sort of (eula-breaking) addon to the official client.