Información sobre WoW 4.0.3 – Cataclismo [obsoleto]

Como todo el mundo sabe, desde el 7 de Diciembre de 2010 está disponible la nueva expansión Cataclismo (Cataclysm). dicha expansión introduce cambios enormes en el sistema de funcionamiento del juego a nivel servidor-cliente que de momento, no es posible emular en NINGÚN servidor privado.

La única recomendación que podemos trasladar desde el equipo de Reinos de Leyenda es que NO se actualice a Cataclismo ni a ninguna versión del cliente superior a 3.3.5a.

Quien juegue en el oficial y quiera jugar en Reinos de Leyenda también, deberá tener dos copias independientes y separadas del juego, una con la versión 3.3.5a para Reinos de Leyenda y otra con la versión actualizada correspondiente al oficial.

No hay fecha estimada de cuando se podrá pasar a WoW 4, ni siquiera si se sabe se podrá pasar, Blizzard ha complicado muchísimo las cosas para desarrollar servidores privados basados en la versión 4 del WoW.

La explicación técnica de los desarrolladores de trinity sobre los problemas que plantea la actualización a versión 4:

Battle.net: One might argue that it’s simply a new and innovative serialization platform, but I do believe
there’s more to it. With BNet, they switched to SRP-6a (as opposed to SRP-6) and now use SHA-256,
rather than SHA-1. Battle.net also uses a VM for (de)serialization, and bit streams to read/write the
serialized data. Furthermore, Battle.net packets don’t contain a length in their header, making parsing
rather annoying. Why not just stick to SRP-6 and SHA-1, why not just stick to byte streams? I think it’s
rather obvious that some of these changes were made to kill private servers (think; a private server storing
account passwords with SHA-1 would now have to somehow switch to SHA-256 (which, by the way, Blizzard
did with the “Battle.net conversions”)). To top it off, it would be lots of fun if they removed Grunt while
they’re at it.

Randomized opcodes: Speaks for itself.

Direct opcode handler assignments: In the 4.x client, opcode handlers are being assigned directly to the
internal handler array in NetClient, rather than through NetClient__RegisterMessageHandler and
ClientServices__RegisterMessageHandler. Again, an obvious move to make it harder to spot opcode handlers.

Obfuscation: Battle.net.dll is now obfuscated – obvious move against emulation, again. Who knows, maybe
that’ll hit the game executable too?

Streamed client patches: Makes it hard to work against a specific patch, which we’ve been able to do so far.
While this one also serves as a general improvement to their patching model, it’s also a change that will
make emulation very uncoordinated.

Circular debugging: See here. This is a means of preventing debuggers from attaching to the process.

Disclaimer: The above points represent my speculations solely.
I really have no idea what Blizzard’s real intentions are.