Cross Platform Networking Code and Server Code
Get the servercode using this repository: http://xp-dev.com/svn/Divide-Server/ And the networking code using this: http://xp-dev.com/svn/Divide-Networking/ To download and build see the guide bellow for the engine (the system is almost identical) Proper copyright notices will be added later, but I really wanna thank the people at the MaNGOS project for the inspiration on packet structures. Finally managed to move the networking code to a separate project (that is free and open source, but you have to find it yourself). Compiled the networking code as ".a" file and linked it with the server code. Compiled the server code on Kubuntu and ran it with "sudo ./DivideServer". The end result? LINUX server and Windows Client working togheter in complete harmony. That means that 2/3 of my projects (networking code and server code) are cross platform \:D/ (used gcc 4.5 on Kubuntu and VC.90 on Windows)
Under the hood preview for everyone :)
Some people tried to download the code before and it didn't compile. Here's a step by step guide to get the code going using Visual C++ 2008/2010 (the only, currently supported editions). 1) Download and install Tortoise SVN 2) Create a new folder anywhere you want 3) Right click that folder and select "SVN Checkout ..." 4) The url of the repository is: xp-dev.com/svn/Divide-Framework/ 4.1) That will download the main trunk and all of the branches. To get the main development code, just add "trunk/" at the end of the svn url: http://xp-dev.com/svn/Divide-Framework/trunk/ 5) Press OK, wait for the download to finish and click OK again. After this step, you have a working copy of the source code. You can now browse the code and check it out but it won't compile. You still need a few libraries/SDK's, like: 5.1) Luckily, all of the libraries, except for PhysX can be downloaded from a different repository: 5.1.1) Follow the same steps as for the main trunk. Create a new folder, click "SVN Checkout" and use the following SVN url: https://xp-dev.com/svn/Divide-Dependencies/ 5.2) PhysX can't be shared like the rest of the libraries, so head over to nVidia Developer Zone or Ageia Support and download the SDK from there (registration is required!) 5.3) The libraries are already compiled, but if you wish, you can get them from another source and compile them yourself. They were not altered in any way prior to compiling as MTDd/MTD for a x86 target. 6) Right Click "Computer" and go to "Properties->Advanced system settings->Environment Variables" and under "User variables for XXX" where XXX is your username, click "New ...". Add a new variable named "EngineLibraries" and add the directory where you downloaded the libraries; like in the following image:
7) Go to: << "OutputFolder"\VCData >> where OutputFolder is the folder where you downloaded the source code to and open "Divide VS2008.sln" or "Divide VS2010.sln" with the appropriate IDE.
Page 5 of 5
