im afraid I dont have time right now to explain how this works, but i was thinking of ways to bot tibia undetectably. this is 100% legal, it doesnt modify the client in any way, it simply modifies the environment it runs in, not to mention it would be impossible to detect because there are so many flavours of linux all compiled with different versions of gcc.
so, step by step instructions
step 1: cd into your tibia directory
step 2: copy the following into wrapper.c and compile using
Code:
gcc -shared -o wrapper.so wrapper.c
Code:
#include <stdio.h>
#include <sys/socket.h>
#include <sys/types.h>
/* its handy to know which socket we're connected to */
int xsock = -1;
int gamesock = -1;
int connect (int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen)
{
printf ("connect\n");
if (xsock == -1) {
xsock = sockfd;
} else {
gamesock = sockfd;
}
return __connect (sockfd, serv_addr, addrlen);
}
int send (int s, const void *buf, size_t len, int flags)
{
if (gamesock == s) {
printf ("send %d\n", len);
}
return __send (s, buf, len, flags);
}
ssize_t write(int fildes, const void *buf, size_t nbyte)
{
if (gamesock == fildes) {
printf ("write %d\n", nbyte);
}
return __write (fildes, buf, nbyte);
}
ssize_t read(int fildes, void *buf, size_t nbyte)
{
int n = __read (fildes, buf, nbyte);
if (gamesock == fildes && n != -1) {
printf ("read %d\n", n);
}
return n;
}
step3: type
Code:
export LD_PRELOAD=$PWD/wrapper.so
step4:
step5: profit
step6: when youre done, you can either close the terminal, or use
Code:
export -n LD_PRELOAD
to unexport LD_PRELOAD and stop other programs trying to used your hacked functions
enjoy ;p