• Networking: The investigation is still on the way, we've switched to backup telecom carriers since the episode but we're still working in settling everything as it must be. We'll add more updates as we have them available. Incoming and outgoing emails will be restricted, and user registration has been disabled until the issue is resolved.

Compiling DBOG 2.0 Tools and Fixing Dependencies

Joined
Oct 1, 2020
Messages
139
Reaction score
112
Hello everyone! As promised, I will teach you all how to compile the tools provided with DBOG 2.0 and even how to properly fix the dependencies for these tools. Also, please forgive me for not including pictures in this tutorial. I'm still not finished preparing everything on this new computer. When I get everything finished I will update the tutorial with images!

First, a quick disclaimer: Some tools can not have their dependencies fixed because there are certain libraries for the tools missing from the source. Without somehow recreating these files or somehow obtaining them, it will be impossible to compile them. One example is the CharacterEditor.

Now onto the tutorial!

1: You will need to find yourself a copy of Microsoft Visual Studio 2010 (preferably the Ultimate edition but I believe any version can work!). This is a very important step because without this, you will not be able to compile the tools easily. You can attempt to convert the projects to compile properly in Visual Studio 2019 but it will be a very difficult process that even I don't know how to do. So try your best in finding a copy of Visual Studio 2010!

2: Make sure you extract Xtreme Toolkitpro that Daneos provided somewhere (I extracted it onto the main source directory. Where you extract it doesn't matter).

3: Open the DboClient solution in Visual Studio 2010. Depending on your computer the projects could take a while to load.

4: Set the build configuration to Release4Tools

5: Once the solution is fully loaded, in the tools folder in the solution explorer import the tool you wish to compile.

6: Once you do that, make sure you convert all libraries as well as the tool project to v100 in their project settings (this is an important step, since the libraries are all set to v142 by default).

7: Open the tool's project properties and change the tool's output directory to the location of your choice.

8: Right click on the tool project and click build. Errors will pop up in the output console, but that's fine. I will now explain to you how you should properly handle these errors.

There will be two types of errors that you will mainly encounter here, and they are going to be include errors and linker errors. These are easier to fix than you may think. I will now explain how you can fix the include errors.

When the output console tells that they could not find a certain header file it does not mean these headers are missing. For the most part they are already present in your source code files.

1: Go into your main source folder where you extracted your server and client source code.

2: File explorer has a feature where you can search for a specific file, so what you need to do is refer to the output console and type into the search bar the name of the header file that Visual Studio cannot find. If the header file is present, then you're one step closer to compiling the code. If the header file is not found anywhere, then unfortunately the tool cannot be compiled.

3: Once you have found the header file the tool needs, right click the tool's project settings and locate a field called "Additional Include Directories". This should be under "C/C++->General".

4: Once you located this field edit the directories and include the path to the main folder the header file is located in.

5: Now press Apply and compile the tool again. Repeat this process until all the Include errors are fixed.

Now I will explain the Linker errors. It's pretty much the same concept.

1: Refer to the output console for the missing lib file's name.

2: In the file explorer, go back to where you extracted the client and server code. Then use the search bar to locate the lib file.

3: If you find the lib file, go back to Visual Studio and open the tool's project settings:

4: In the project settings go to "Linker->Input". There will be a field called "Additional Library Directories". In there, edit the directories and add the directory to where the lib file's located.

5: Press Apply and repeat these steps.

Once all include and linker errors are solves, you should be able to compile the tools! Remember, there are some tools that cannot be properly compiled because of missing header files and libraries. Unless you're able to recreate these libraries, it will be impossible to compile them.

I hope this tutorial helped! If you manage to compile a tool properly by converting it to support Visual Studio 2019, please share it with the community!

And again, when I finish preparing my new computer I will upload images!
 
Do you have a new link to Xtreme Toolkit? Its been taken down and I can't find it anywhere
 
here u have, uploaded by MakotoYuki
 
Hey Makoto , i am running a 1.0 server and i wanted to ask if this techniques work also with 1.0 projects ?
 
Hey Makoto , i am running a 1.0 server and i wanted to ask if this techniques work also with 1.0 projects ?

The main principle of compiling the tools should be the exact same. However, to make these tools compatible with the 1.0 client you must make some adjustments within the tools' source codes.
 
The main principle of compiling the tools should be the exact same. However, to make these tools compatible with the 1.0 client you must make some adjustments within the tools' source codes.

Can you please by any chance provide me some help ? I can do a lot when it comes to source but i am weak at c++ console coding. I will really appreciate
 
Can you please by any chance provide me some help ? I can do a lot when it comes to source but i am weak at c++ console coding. I will really appreciate
I can't help in that regard, unfortunately. My knowledge on how these tools work is minimal at the moment. I am mainly focused on the client and server themselves. The best advice I can give you is to look over the source code and try to learn how it works. Although, when I properly learn more about how these tools work, I will either create a guide on them or upload any modifications I made to the tools onto the github.
 
Back