08-24-2008, 05:00 AM
hi fellow linux users, id like to show ppl what ive been up to lately.
ive been hacking on a open source proxy as of recent, but instead of pushing for rapid code development ive given a lot of thought into the design of the proxy. What noname proxy is is a platform for building modules ontop of, kinda like what the tibia api does, except because im intercepting packets at the network level, and dont have to worry about concurrency issues. One of the major design goals was to implement hooks, which are executed when particular messages are recieved. At present i have one toy hook (in corehooks.cpp) which modifies the message of the day. Im hoping it will be enough to demonstrate how easy it is to add functionality with my framework. Infact the whole protocol will be implemented through hooks. Anyway, at the moment it doesnt do to much, and theres a slight issue.
Anyway, if you want to try it out heres what you need to do
get the sources from http://code.google.com/p/nonameproxy/
compile launcher, and then run it with the directory and path to the client as arguements.
for example if launcher is in the same directory as tibia then
launcher ./ ./Tibia
will do.
now compile the proxy using make.
run nonameproxy
when you connect with the launched client, wait a few seconds between recving the character list and connecting to the game server. The reason for this is im yet to run the login and game servers in seperate threads, therefore after the login the login server has to shut down and the game server has to start up. After this you can connect through the proxy and all packets will be written to stdout
another neat thing is that you can use an ot ip changer and set the ip to the machine running the proxy and port 1337. this will allow ppl to bot remotely, which i think is cool
anyway this isnt supposed to be useful yet, its just meant to demonstrate a concept. And btw if youre wondering wheres the gui youre out of luck. Eventually there will be a protocol for communicating with the proxy, and therefore a gui could be built which could in theory remotely communicate with the proxy, so it could also be controlled from abroad. Anyway, cheers.
ive been hacking on a open source proxy as of recent, but instead of pushing for rapid code development ive given a lot of thought into the design of the proxy. What noname proxy is is a platform for building modules ontop of, kinda like what the tibia api does, except because im intercepting packets at the network level, and dont have to worry about concurrency issues. One of the major design goals was to implement hooks, which are executed when particular messages are recieved. At present i have one toy hook (in corehooks.cpp) which modifies the message of the day. Im hoping it will be enough to demonstrate how easy it is to add functionality with my framework. Infact the whole protocol will be implemented through hooks. Anyway, at the moment it doesnt do to much, and theres a slight issue.
Anyway, if you want to try it out heres what you need to do
get the sources from http://code.google.com/p/nonameproxy/
compile launcher, and then run it with the directory and path to the client as arguements.
for example if launcher is in the same directory as tibia then
launcher ./ ./Tibia
will do.
now compile the proxy using make.
run nonameproxy
when you connect with the launched client, wait a few seconds between recving the character list and connecting to the game server. The reason for this is im yet to run the login and game servers in seperate threads, therefore after the login the login server has to shut down and the game server has to start up. After this you can connect through the proxy and all packets will be written to stdout
another neat thing is that you can use an ot ip changer and set the ip to the machine running the proxy and port 1337. this will allow ppl to bot remotely, which i think is cool
anyway this isnt supposed to be useful yet, its just meant to demonstrate a concept. And btw if youre wondering wheres the gui youre out of luck. Eventually there will be a protocol for communicating with the proxy, and therefore a gui could be built which could in theory remotely communicate with the proxy, so it could also be controlled from abroad. Anyway, cheers.


.text+0xb0): undefined reference to `MemUtil::MemUtil(int)'