About this project
it-programming / desktop-apps
Open
We are seeking a highly experienced C++ developer with a strong background in legacy C++ (pre-modern standard) to resolve critical compilation issues for a 2004 MMORPG server suite, 'RockServer'. The project involves migrating the full source code, originally developed in Visual C++ 6.0, to successfully compile within Visual Studio 2010 Ultimate. The server suite comprises several interconnected applications, including LoginServer, GameServer, and GateServer, all sharing a common architectural foundation.
The primary challenge lies in addressing systemic environment configuration and legacy definition problems that currently prevent a successful build. Key technical issues include:
Unrecognized Types: The codebase extensively uses proprietary typedefs such as Void, Int, Char, and Dword, which are not recognized by Visual Studio 2010. This leads to numerous syntax errors (C2146, C4430) that must be resolved.
Macro Hell: The core headers, specifically RockServerBase.h, contain intentional #error directives that are triggered due to undefined critical preprocessor macros like USING_ROCKBASE_LIB or USING_ROCKSV_LIB. These macro definitions need to be correctly configured.
Dependencies: The project relies on external dependencies, including a base DLL (RockBase) and internal static libraries (RockNetLib, RockDBLib). These components require proper linking to ensure the server applications can build successfully.
Your responsibilities will include:
Diagnosis: Thoroughly review the existing header structure (e.g., RockPCH.h, RockServer.h) to identify and inject the necessary legacy type definitions, enabling Visual Studio 2010 to correctly interpret the code.
Configuration: Precisely adjust the Visual Studio project properties, including Include Directories and Preprocessor Definitions, to satisfy the code's security guards and resolve macro-related compilation failures.
Deliverable: The successful completion of this project will result in a fully functional Visual Studio Solution (.sln) where all server applications compile cleanly ('Rebuild All succeeded') and generate their respective executables without errors.
We will provide the full source code, comprehensive server topology documentation in pdf format, and protocol files in json format to aid in the project.
Category IT & Programming
Subcategory Desktop apps
What is the scope of the project? Small change or bug
Delivery term: Not specified
Skills needed