I created Wildfire 2 (technically Wildfire 3, but Wildfire 2 was never completed) last week to act as a gameserver for a couple of uni projects. The Wildfire (and thus GSv2) protocol was never intended for this kind of use (actual as a communication layer for an actual gameserver) so Wildfire v2 will have several added features like:
- On-demand communication- no pausing the server’s network thread for 250 millisecond. When data comes in, it is dealt with immediately.
- An additional encryption layer- Wildfire v1 only used XOR encryption along with MD5 for personal data such as emails and passwords. With Wildfire v2, the entire gamedata block of the packet is encrypted with DES 1024 encryption.
- A Client Command Authorisation (CCA) code (randomly generated by the server) is required by the client for certain types of request (such as log-out), this ensures that a request comes from the real client.
- Support for additional commands such as chat and joining a session via a QR code (intended for use with mobile games- instead of players having to find their friend’s session in a list, they can just scan the QR code shown on their friend’s device to connect)
Wildfire 2 will not be backwards-compatible with Wildfire 1/GSv2 and so with Wildfire 2 we say good-bye to GSv2-supported games such as Crysis. Not to say the Wildfire 1 MS (master-server) won’t still be running- Wildfire 2 uses a different port than Wildfire 1 (29980 instead of 29910).