TGameCtrl_r.dll LIB/Header Generator

This forum contains the items, weapons, resources or other files shared between players.

Moderators: osRose dev team, ospRose dev team, osiRose dev team, Moderators

Forum rules
Client Editing is a delicate subject. osRose and osiRose will not support or use any Client Editing tool or results as a standard. So you are free to experiment, test, and develop there on Client Editing, but at your own risk :)
Don't share ANY files, graphics, items that don't belong to you.

TGameCtrl_r.dll LIB/Header Generator

Postby Qix on Sat May 25, 2013 7:29 am

Threw this together. I wanted to be able to hook into the GUI functionality and I figured TGameCtrl_r was the place it was taking place.

So, I needed a lib/header files, and instead of making them manually I made a generator. Given the fact that the DLL is likely to change on different clients I figured I'd release the generator itself.

Everything in the JAR is included, but if you want to build from source make sure that JNA and the platforms JAR that comes with it are both on the build path. (The only JNA I used was to use Windows' built in name de-mangler).

Needless to say this only works on Windows.

To use, just drop the batch file and the jar in your game directory and run the batch file.

Let me know if there are bugs. Generated files include TGameCtrl_r.lib, TGameCtrl_r.exp, TGameCtrl_r.def, and TGameCtrl_r.hpp.

If you are using a version other than MSVC 2012 (11.0), you'll need to edit the batch file to change the install directory and point to vcvarsall.bat.

Yes, I know the source is hairy. I wanted to finish this so I could drink some wine and socialize. This is the product of about 3 hours of work.

Binaries (place in game directory and run batch file):
TGameCtrlGenerator.zip
Binaries
(1.11 MiB) Downloaded 953 times


Source:
TGameCtrlGenerator_src.zip
Source
(4.42 KiB) Downloaded 844 times
o-o
User avatar
Qix
Smoulie
Smoulie
 
Posts: 34
Joined: Sat May 18, 2013 10:33 pm
Location: Behind you...

Re: TGameCtrl_r.dll LIB/Header Generator

Postby Juan on Sat May 25, 2013 9:34 am

The dll didn't changes that much. Also, i dont see how you can extract all the needed information without doing some parts manually. TGameCtrl is full of inheritance, virtual functions, publics members and many other things that can't have with only the c++ mangling. Between I have exjam's dll somewhere on my computer if you want.
User avatar
Juan
Rackie
Rackie
 
Posts: 219
Joined: Fri Oct 10, 2008 6:25 pm

Re: TGameCtrl_r.dll LIB/Header Generator

Postby Qix on Sat May 25, 2013 4:13 pm

Juan wrote:TGameCtrl is full of inheritance, virtual functions, publics members and many other things that can't have with only the c++ mangling.



This takes care of literally all of that. Run it and see :) It uses VFTable entries exported by the DLL to resolve inheritance and positions them semantically according to how they should be. It compiles perfectly. It also uses Windows' de-mangler, so all of the prototypes are as close to the originals as possible, less parameter names (you have to figure those out yourself).
o-o
User avatar
Qix
Smoulie
Smoulie
 
Posts: 34
Joined: Sat May 18, 2013 10:33 pm
Location: Behind you...

Re: TGameCtrl_r.dll LIB/Header Generator

Postby deivares on Tue Apr 24, 2018 3:32 am

Sorry to bump a 4 years ago POST :lol: .. I extracted the DLL and got the files normally .. I would like to know if there is a tutorial or a way to export the project to DLL .. I'm using Visual Studio 2012 !!
deivares
Smoulie
Smoulie
 
Posts: 45
Joined: Wed May 15, 2013 12:17 am


Return to Submit client ressources

Who is online

Users browsing this forum: No registered users and 2 guests

cron