• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

tibiaproxy v3.2

d33tah

New Member
Joined
Oct 25, 2013
Messages
2
Reaction score
0
@EDIT:

The post below is a bit outdated. Read the next ones for updates.

ORIGINAL POST:

I just finished preparing my tibiaproxy v1.0 for release. I have to admit I wasn't sure whether it belongs to Tibia or OpenTibia category, hopefully mods will move it if it proves irrelevant here. tibiaproxy is (as its name suggests) a Tibia proxy, completely written in Python. It's currrently just a "proof of concept" work that can so far only connect to OpenTibia servers, version 8.20. The latest version works with both real Tibia and OpenTibia, protocol 10.22. The proxy can change the login server messages so that they get transferred through it and then - in game server mode - relay packets between the player and the server. As a proof that the proxy takes part in the communication, all attempts to say anything will effect in executing whatever the player tried to say as a Python code and printing the resulting data, without passing it further to the server. Here's a screenshot:



I'm sending it here rather as a curiosity - the program is currently useless (actually, if I knew how much time will it take to work as it so far does, I'd probably never have started it). I learned a lot about Tibia protocol though and it's possible that I'll port the proxy to 10.20 protocol (DONE). Here's a THEORETICAL list of things the proxy could do if it kept being developed:

  • packet inspection - for educational purposes (learning about Tibia protocol), hacks that affect the server, grabbing OTServ maps, advanced TibiCam,
  • headless bot - a bot that doesn't need the computer with Tibia being turned on to operate. It could be installed for example on a home router with DD-WRT (or anything similar, say, OpenWRT) software. It could prove useful if installed on a host with a more stable internet connection - for example, if the player disconnected, the bot would keep UH'ing the character and let the rest of the team know that the bot owner got disconnected (and perhaps run away to some safe location),
  • account merging and sharing - theoretically one could add support for a situation where two people connect to one Tibia account without kicking each other. It could also be possible to add a function that would allow the user to merge multiple accounts into one - you log in with one master account number and password and are able to pick characters from any of the accounts,
  • hardcore multiclient - connecting through various proxies (Tor? it would probably be too slow) so that MC is even harder to detect.

Here are some technical details - the program is made of 770 lines, 288 of them beign code. The rest are comments and blank lines, added for aesthetics. I did my best to make it all readable and the code as simple as I could, I also devoted some time to write a README.txt (which probably noone will read anyway). The program depends on a Python library called NumPy and it's not a strong dependency - I used it only so that XTEA code taken from XTEA could be ported faster, if I implemented C-style unsigned ints support (there are only bigints in Python), it would all become pure Python code. I have to admit I hardly tested this proxy - I just walked around The Forgotten Server's SVN r1082 map for a while (the server can be found here: http://sourceforge.net/p/forgottenserver/code/1082/tree/). The program didn't crash, though in order to log in you had to make two attempts without restarting the proxy in the meantime.

I'll hold on with writing the instructions on how to launch the proxy until I see it gained some attention - with a bit of luck perhaps README.txt will be enough for you to start it. If you know a bit of Python and want to have a go at developing the project, describe your problem here and perhaps I could help you.

The project is being hosted on github.com - the latest release can be downloaded here:
https://github.com/d33tah/tibiaproxy/releases
 
Last edited:
Hi again,

I had been working on this tool for a month since v1.0 and I am proud to announce version 3.2, which is the first stable one. It supports real Tibia and protocol 10.22. As for the real features, it's still mostly experimental - it has a sketchy plugin system with a "hello" plugin there, which fakes a "yeah, hi" message from the server whenever the player tries to send "hello world".

Here's how to try it out:

  1. Download and unpack tibiaproxy. The latest version is available here: https://github.com/d33tah/tibiaproxy/releases/latest (if you prefer the latest experimental version instead, you can download it here: https://github.com/d33tah/tibiaproxy/archive/master.zip )
  2. Edit config.py file, according to the tips you can find in the comments. If any of the settings is not clear, try asking me about it in this topic.
  3. Install Python environment, latest 2.x version (3.x doesn't work yet). Linux users probably already know how to do it and Windows people should probably go there: http://python.org/download/ (Python 2.7.6 Windows Installer should work well)
  4. After the installation, run the main.py file from the tibiaproxy directory.
  5. Run Tibia 10.22 and, using IP Changer, point it to tibiaproxy as the server (by default it listens on 127.0.0.1, port 7171). Since I couldn't find an IP changer and you might have problems as well, let me know and I'll post instructions on how to modify the Tibia client so that it'd work with tibiaproxy.
  6. Log in using your normal credentials. I don't recommend using any accounts you care about at this stage.
 
Back
Top