Speziell bei den jetzigen WoW-Servern ist nur die Gameengine dem Originalen Server nachempfunden und nicht 1 zu 1 zum original Server.
Das ganze ist ganz leicht zu erklären: Man hatte bis jetzt nicht die Möglichkeit die Sourcen von Blizzard einzusehen.
Ich denke selbst wenn man die Möglichkeit hat, würde man immernoch bei den jetzigen System bleiben, weil es einfacher zu Warten ist, als das man sich in Sourcen von Blizz hineinlesen müsste um überhaupt einen Schritt in den Codes tun zu können.
Tjoa, die Opcodes bekommt man durch "sniffing" raus, der Rest war jahrelange Entwicklungsarbeit der Communitys und Try and Error
Das grobe Grundgerüst der Server ist an und für sich nichts besonderes.
Ein Thread für die ListenSockets, nen Thread für die Sessions und nen OpcodeHandler um mit eingehenden Opcodes vom Client was anfangen zu können.
Was die Sache knifflig macht ist dem Server seine Funktionen zu geben.