[Source] Battle of Immortal Pather

05/25/2010 20:58 0xDEC0DE#1
So for lack of better words i call this program Pather, I don't see it as revolutionary or anything however i think its a fair example of IPC using Named Pipes and DLL injection if you can dig through my messed up code. It was fun to make and it's the first time i've used dll injection or IPC so i'm just giving you forewarning it's not pretty...

Program
What the program does:
-It basicaly takes in user inputed coordinates and follows them step by step
-NOTE: it travels in straight lines and won't go through walls, one might say "go around solid objects"
-Also made a quicky Record function that records changes in destination Coordinates

Theory on how the program works:
1) BoIPather Creates a Named Pipe Server
2) BoIPather Injects Dino.dll into game.exe
3) Dino.dll sets itself up as a Named Pipe Client
4) BoIPather sends a message to the injected Dino.dll through the Named Pipe to invoke a response containing the address of a dynamic variable.
5) With the obtained address of the dynamic variable BoIPather does stuff~

SS of Program:
[Only registered and activated users can see links. Click Here To Register...]

Source
BoIPather
-HomeGrown: is a file that i keep must of the functions i use for everyday things
-ProcessDialog: Form i use to select a processes
-Pather: Contains form events, 3 Threads and 4 functions. This is the meat of the program.
Dino
-This is the injected dll, some of the code isn't mine but some of it is.
PipeTest2
-You can ignore this, it's what i use to test the server

Note: I'll probably clean it up in the future, however if you have any questions about the program or the source code feel free to ask.

Disclaimer: The program isn't idiot proofed so expect a couple of error messages. Also i probably shouldn't be releasing this yet but w.e.
05/26/2010 00:12 boblhead#2
What do you think you would use this for? Could this be used for questing? or with your Main program? Since you really only said what its does and not what its for :D
05/26/2010 01:09 0xDEC0DE#3
It's really just an example but it could be used to fix the problem where you get stuck out in the middle of nowhere not attacking anything or when you attack something you're not supposed to. What would be preferable would be calling in-game function which I'm currently attempting but I don't know much about it though I'll learn.
05/26/2010 08:20 Kyrogue#4
thanks
05/26/2010 11:25 wurstbrot123#5
this would be a nice feature in a bot, but seriosly, for that game
you dont really need a bot :p
05/26/2010 16:23 0xDEC0DE#6
Quote:
Originally Posted by wurstbrot123 View Post
this would be a nice feature in a bot, but seriosly, for that game
you dont really need a bot :p
yeah pretty much, but it's still fun to make it and I enjoy the challenge.
05/26/2010 19:18 boblhead#7
Quote:
Originally Posted by wurstbrot123 View Post
this would be a nice feature in a bot, but seriosly, for that game
you dont really need a bot :p
its easy for questing and efficient. you set the bot up to kill 60 mobs for a q come back like 10 mins later and its done rinse and repeat.
12/11/2010 02:08 PspherAkire#8
is dis a bot??
12/24/2010 16:27 d4xyjen#9
well actually with a right knowledge you can now make BoiGB auto return to spot with this code thanks for the release.


Hint : if location <> mapname then execute blahblah
12/24/2010 17:27 DasNiveau#10
closed