• 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!
  • 2026 staff recruitment is open! Check it out and consider applying!

Tibia 7.7 Server Decompiled

I’d love to test it on Windows 11 but I guess that is not possible at this moment.

Stupid question, but it has been a while since I messed with OT stuff and I don’t want to rent some VPS just to test this.

But how do I go and do this?

Download something like Virtual Box on my Windows pc.
Install Linux Ubuntu and follow the compiling and running instructions on Github?
 
I’d love to test it on Windows 11 but I guess that is not possible at this moment.

Stupid question, but it has been a while since I messed with OT stuff and I don’t want to rent some VPS just to test this.

But how do I go and do this?

Download something like Virtual Box on my Windows pc.
Install Linux Ubuntu and follow the compiling and running instructions on Github?
You could try Docker, but there is no guide. I posted the docker file to run login and qm few pages back
 
I’d love to test it on Windows 11 but I guess that is not possible at this moment.

Stupid question, but it has been a while since I messed with OT stuff and I don’t want to rent some VPS just to test this.

But how do I go and do this?

Download something like Virtual Box on my Windows pc.
Install Linux Ubuntu and follow the compiling and running instructions on Github?
My early tests were done on Windows 10 with WSL (Windows Subsystem for Linux). I'm not aware if it works on Windows 11 but it should be simple to get up and running if you have virtualization enabled on your BIOS. You don't really need to setup any services for testing locally... Just build each program and run from a different shell, and you should be able to login.
 
Interesting. The source code looks like largely C and is not very impressive to me, but the decompilation process of this is though.
Well done.
 
My early tests were done on Windows 10 with WSL (Windows Subsystem for Linux). I'm not aware if it works on Windows 11 but it should be simple to get up and running if you have virtualization enabled on your BIOS. You don't really need to setup any services for testing locally... Just build each program and run from a different shell, and you should be able to login.
is there a guide for it with this it can be ran globally?
 
is there a guide for it with this it can be ran globally?
You would have to make sure WSL is installed (Debian or Ubuntu would be the simplest) and run each application on its own WSL shell. It could probably listen to external connections if you have a public IPv4 but I haven't tested, and I don't think it would be a good solution overall for hosting. The best solution is still to learn the basics of Linux admin and run it on a 5-10$ VPS. And you can always find good OTS alternatives if you're stuck with Windows.
 
Cool project ... and completely open source? Very admirable. Keep it up!
 
Suggestion if possible: add the protocolstatus I think it will flood the otservlist and also more people using it.
I did sketch out a separate status service that would use the query-manager to serve requests. A relatively simple version is pretty doable, but it would be annoying to conform to the rules of otservlist, specially those regarding AFK players. I'd have to give it some thought but perhaps there is a less restrictive server list? But then, how are these rules even enforced? There would be no way to tell from the status protocol alone, or by playing on the server (unless everyone is AFK or something).

It's probably there but it's a "dot" file .tibia so it doesn't usually show up on the explorer by default. Try running ls -la from the shell and it should be there.
 
I did sketch out a separate status service that would use the query-manager to serve requests. A relatively simple version is pretty doable, but it would be annoying to conform to the rules of otservlist, specially those regarding AFK players. I'd have to give it some thought but perhaps there is a less restrictive server list? But then, how are these rules even enforced? There would be no way to tell from the status protocol alone, or by playing on the server (unless everyone is AFK or something).


It's probably there but it's a "dot" file .tibia so it doesn't usually show up on the explorer by default. Try running ls -la from the shell and it should be there.
These otservlist rules are actually the biggest crap there is, because most servers on this list have fake players and this is so easy to see. It's all bot with unique ip connected to the port with response system by people who monitor the bot group. Just look at the simple system that gesior created from bots on a simple server of war.... [8.60] Thais War with PvP bots (https://otland.net/threads/8-60-thais-war-with-pvp-bots.204193/)

I would follow the basics and whoever wants to improve on the rules he perfects.
 
dockeried this on windows using xmapp inverse proxy passs


and i see this Login Create Account Recover Account
Characters Worlds

404​

Not Found

About​

Client:Tibia Client Version 7.7
Login Server:localhost:7171
RSA Public Key:142996239624163995200701773828988955507954033454661532174705160829347375827760388829672133862046006741453928458538592179906264509724520840657286865659265687630979195970404721891201847792002125535401292779123937207447574596692788513647179235335529307251350570728407373705564708871762033017096809910315212883967
any idea sor help?
 
dockeried this on windows using xmapp inverse proxy passs


and i see this Login Create Account Recover Account
Characters Worlds

404​

Not Found

About​

Client:Tibia Client Version 7.7
Login Server:localhost:7171
RSA Public Key:142996239624163995200701773828988955507954033454661532174705160829347375827760388829672133862046006741453928458538592179906264509724520840657286865659265687630979195970404721891201847792002125535401292779123937207447574596692788513647179235335529307251350570728407373705564708871762033017096809910315212883967
any idea sor help?
Im guessing your proxy adds a trailing / to the route? example /account/ would return 404 ~
 
A couple months ago, I set out to decompile the leaked 7.7 server binary. One of the reasons being to have an insight into the original design of Tibia, but with the plus of tripping all the folks gate-keeping it. Now, this is not a replacement for regular OpenTibia servers. The leak itself contains only the game server which operates with different file formats, rules, mechanics, bugs, etc. I expect it to also contain at least a few typos and translation bugs from the decompilation so it's not ready at all for a production environment.

It was designed with a distributed infrastructure in mind meaning it supports/expects running on a different machine than the login server and database. The game server alone won't do much so I also had to write a few supporting services to get everything running. The central piece of the puzzle is the query manager which needs to run alongside the game server, but in this case was designed to be the database itself for simple single world setups.

For obvious reasons, everything will only compile on Linux. A Windows port is technically possible but would require design changes, which I'm not really interested at the moment, nor would have a lot of value, considering that most dedicated servers run Linux. I won't dwell further on how things work. The source code should be very readable and all repositories will contain a minimal README file to compile and setup each server as a service. The only dependency is OpenSSL's libcrypto which should be straightforward to get installed on most Linux distros.

I set everything up at https://kaplar.net to do some testing and to check if would actually run on a real Linux distro instead of WSL. It will remain online for roughly a month if anyone is interested in testing it, but will require a custom RSA key (hence the ipchanger). I don't expect anything in return except for bug reports. I also don't know if Cipsoft would have a problem with it, although there is always a chance so keep that in mind.

Anyway, there you have it. Have fun.

REPOSITORIES:
regarding this i have compiled and build every now i wonder where do i have to place the real cipsoft files? o e isinde a folder named tibia-game
 
I was able to get everything compiled and connected, I can get character list to load, but cannot log into game. I changed the RSA key. The game server can talk to the query manager, the login server also can talk to the query manager. I did as Olddies said and changed the IP of the gameworld from "localhost" to my VM host in the sql file. Is there some other IP address that needs to be changed?
 
I was able to get everything compiled and connected, I can get character list to load, but cannot log into game. I changed the RSA key. The game server can talk to the query manager, the login server also can talk to the query manager. I did as Olddies said and changed the IP of the gameworld from "localhost" to my VM host in the sql file. Is there some other IP address that needs to be changed?
you need to edit the file communication.cc, search for
Code:
ServerAddress.sin_addr.s_addr = inet_addr(GameAddress);
change it for this one and recompile again
LUA:
ServerAddress.sin_addr.s_addr = htonl(INADDR_ANY);
 
Back
Top