KrzychuG Posted November 7, 2010 Posted November 7, 2010 @TILEMACHOS, take a look at that post. There's a link do scode.zip that contain parts of code with hooking to client/onEvent function with two small examples. Code is incomplete but can be used to make something more usefull. You'll also need an easyhook lib.
TILEMACHOS Posted November 7, 2010 Posted November 7, 2010 I just shown this post...Yeah excacly what i was thinking :D This is Amazing Thank you very much my friend :)
clockman Posted November 7, 2010 Author Posted November 7, 2010 Kids won't undestand it anyway (useful only for developers) Hook class generator + bonus http://piotrzegar.pl/Generator.zip Shared under GPL, if you change and add some useful -> i wanna a copy :P Edit: If someone know some good hook lib or some code (trying to avoid using easyhook) with some thread & stacktrace checking (sometimes in some case if i got hook on Something() and calling Something() by my own from other thread hook is called, i thinked to check in hook some stacktrace if it was called by my dll or client, but didnt found yet good way to get stack trace (dll handles or names)).
TILEMACHOS Posted November 7, 2010 Posted November 7, 2010 Wow thnx... All the information i have to export manually is in one place :D Off course i ll give you my adds but you have to wait i just started :D Thanks again.. I wish i was able to give you some karma :(
clockman Posted November 7, 2010 Author Posted November 7, 2010 You writing it in delphi or pure c++ ? I had some "gui" code what i was making some times ago (l2walker like) with plugins support ... but leaved that.. Better was to "trying" make it ingame via html or commands... I'm not using this code anymore, maybe except a Action system, Event system was for GUI only thats why it's disabled. But maybe it will help you... http://piotrzegar.pl/gui.zip Shared under GPL, if you change and add some useful or find some bug :P -> i wanna a copy
TILEMACHOS Posted November 7, 2010 Posted November 7, 2010 I wanna build it in C++... You have done amazing job Those files are just a dream..what more i can say...!!! It will be a headache for Servers Developers Hope Vips & Moderators OverKarma you here..you are the best
KrzychuG Posted November 7, 2010 Posted November 7, 2010 Wonder if it would be possible to create a lib that could work as an interface (with some protocol) that could be controlled by either some outside gui or from in-game. It could just give access to most important client functions/variables from outside and then preety much unlimited possibilities to be used with any language, even the scipting ones.
TILEMACHOS Posted November 7, 2010 Posted November 7, 2010 What excacly do you mean...? L2walker is a controller interface that hooks and can call API's from L2 and can control the whole client... The functions of L2 are inside the .U files written in c language...the API calls can be found in the dll files of the client... Clockman made a great project... He did what excacly L2walker IG is doing... On the other hand he made an in game HTML interface wich is lightweight and fast...but we cannot add some function that l2walker has in html... So i m thinking of making a GUI program written in C++ that will be like l2walker..and if it is possible i ll add some more function and a better and easiest scripting language like L2.NET has :) I am talking so much about L2walker because everyone who understand how it is working he also knows that is a masterpiece Bot for Lineage2 cause of the easy user interface... So L2walker is no open source...then it's time to make one like this :D
KrzychuG Posted November 7, 2010 Posted November 7, 2010 Actually, i never really got into l2walker and thought that in-game version uses rather packet snifing/modifying like l2net, l2r/l2c and similair. OOG version simply replaces the client so it's easier as well. What i mean, is to create a lib that could be a brige between client and some outside user interface. You could connect to that and control the game with that. You'd be able to read every info client has and run every function client allows. If someone wants a L2Walker like GUI, fine, if someone want's to control it via autohotkey/autoit for example, let's just allow him to connect and do that. Concept is simple if you got what i mean.
clockman Posted November 7, 2010 Author Posted November 7, 2010 The main problem with a "base game engine" what you tryign to create and connect it to gui, or what i trying to create and i'm much closer to finish i thing is than you need to colect all game info, and create a wraper for all posible game actions. This is hell of work. You need own managers of colections for users, items, skills. You need to know on what game you running, some game actions you can make via api methods, but some of those methods can be called only in specyfic time from specyfic functions. If you got those base engine, then adding interface for communications is just 1 day work... Then you can easly add some gui what support any plugins. And you keep some logic in those plugins, but some base logic, protections need to be still in a "engine". Don't forget that game evolve and api changes. Control game via api is much harder then, because if something will be changed it wont work. Anyway you can do more, you can control rings from duel around players and use it for something else, you can write what you want in titles in what color you want. You can delete some npc make game faster. I'm already what i can geting from packets because its well documented in l2j and got acces to more data than via game structures.
SSnakEE Posted November 8, 2010 Posted November 8, 2010 hmmm when I type ///CFG window appears, but when I click any button in new appeared window game crashes :-\ I play on server off Hellbound. Is there any solution for this issue?
KrzychuG Posted November 8, 2010 Posted November 8, 2010 Well, the way you're going is much more complex and chronicle/throne dependant due to changes in the client and new features, skills and so on that has be added each time NCSoft adds something. What i thought sounds easier and a bit more complatible since these basic functions doesn't change that often. Just letting people to access client from the outside. If for example someone would like to have a CP clicker only he could read a max and current CP value and then tell the client to use a cp potion if needed, similiar thing for target change and so on. It would be an API with access to basic function that could be expanded in the future with new functions.
wytaz Posted November 8, 2010 Posted November 8, 2010 looks wery promising, keep this project going :P
TILEMACHOS Posted November 8, 2010 Posted November 8, 2010 Well, the way you're going is much more complex and chronicle/throne dependant due to changes in the client and new features, skills and so on that has be added each time NCSoft adds something. What i thought sounds easier and a bit more complatible since these basic functions doesn't change that often. Just letting people to access client from the outside. If for example someone would like to have a CP clicker only he could read a max and current CP value and then tell the client to use a cp potion if needed, similiar thing for target change and so on. It would be an API with access to basic function that could be expanded in the future with new functions. Releasing 3-4 different bot depending on client is nothing... The hard part is built the main program.. :) I think it is better have an AIO program than have to many programs that are made for one task only
Recommended Posts