• 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!

TibiaAPI: Record, Redact, Extract, and Watch

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
TibiaAPI is an open-source, cross-platform proxy written in C# that currently supports protocols 11.80-12.40*. The name is dedicated to the original TibiaAPI that I was lucky enough to be a part of.

Four apps have been created for public use: Record, Redact, Extract, and Watch.
  • Record lets you record your gaming session.
  • Redact lets you anonymize your recordings.
  • Extract lets you extract data from your recordings, including converting them to OTBM files.
  • Watch lets you watch your recordings through a client.

The core library (TibiaAPI.dll) targets .NET Standard 2.0 so it can be used with any platforms that support it. All of the apps target .NET Core 3.1 so that they can be used on Windows, Linux, and macOS. Please read the README on the GitHub repository for more detailed information.

The GitHub repository is now live: jo3bingham/TibiaAPI (https://github.com/jo3bingham/TibiaAPI)

There are currently no pre-built releases, so you will need to download and install the .NET Core 3.1 SDK in order to build and run the apps.

If you enjoy the project, and like the work that has been put into it, feel free to donate. Donations aren't necessary, but anything is appreciated. Thanks!
Paypal: PayPal.Me/jo3bingham
Revolut: @josephlh4
Bitcoin: 1JWuyfeCV4SJtmDv16d3SadV4Nq8xtCB5v
Ethereum: 0xaD4d3650A89a2786B60F86c2980d772aa412741F
XRP: Address: rw2ciyaNshpHe7bCHo4bRWq6pqqynnWKQg | Tag: 1431977163

* - Protocol 12.40 is still under development, but is up-to-date enough to be used. Plus there are some unknowns from older updates that haven't been solved. I haven't used outside information (e.g., otservbr-global) to address unknowns, so it is possible they are known and can be easily addressed.
 
Last edited:

Nekiro

Legendary OT User
TFS Developer
Joined
Sep 7, 2015
Messages
2,307
Solutions
101
Reaction score
1,284
Once again with absolutely fantastic project. Awesome work.
 
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham

Rydan

Member
Joined
Mar 8, 2015
Messages
26
Reaction score
24
Location
Germany
I can't wait to maybe finally see an open tibia server that actually has a real tibia map and is up to the same standard we have been using for so long. While you're at it, use this chance to get rid of the items.otb as a whole, there is a reason why we haven't been using the TFS one or one at all for everything we did.
 
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
With the official client update to 12.40.10030, CipSoft added the client version as a string to the Login packet sent from the client. This has been addressed and pushed to master. For those using pre-built releases, those will be updated later today (which will include other various improvements).
 

Aurelion

Systems Engineer
Premium User
Joined
Sep 4, 2019
Messages
137
Solutions
6
Reaction score
111
I must inject the dll into the client or there is another way to execute it?
 
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
I must inject the dll into the client or there is another way to execute it?
This is a proxy, it doesn't touch the client in any way. By default, the proxy listens on port 7171 on localhost. All you have to do is start the proxy (for example, by running the Record app) then login with a client that has its login address pointed at http://127.0.0.1:7171/ and its RSA key changed to the Open-Tibia one that's been used for years. If you need help with the client you can try this tool (note that I haven't test it myself): opentibiabr/client-editor (https://github.com/opentibiabr/client-editor)
 
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
Dropping in with a couple of updates.

1. I am in the process of creating more wiki articles on the repo. These include detailed instructions on how to use each app, and the api itself, as well as more fun, bot features you can use the api to emulate (e.g., outfit changer, talk actions, etc.), and even a look into how I use the api to reverse-engineer new packets.

2. I have been accepted into GitHub Sponsors. So for anyone who wants to sponsor development monthly can now do so: Sponsor @jo3bingham on GitHub Sponsors (https://github.com/sponsors/jo3bingham)

Also, I want to say a quick thank you to those who have donated so far. I really appreciate it!
 

Chriistian.L.B

Active Member
Joined
Apr 17, 2008
Messages
133
Solutions
1
Reaction score
29
How to make it work with windows 10 ? Record an otserver, set client location and login ip ?
 

Guilherme sua

Well-Known Member
Joined
Dec 19, 2015
Messages
59
Solutions
1
Reaction score
54
Incredible tool.

Would it be possible to generate automatic spawn when saving the map?
 

Chriistian.L.B

Active Member
Joined
Apr 17, 2008
Messages
133
Solutions
1
Reaction score
29
Pass --monsters to extract monster data to a local file named monsters.txt. Monster data is in the format: Name Position. e.g., Rat 54321,09876,8. Note that monsters are tracked by ID, so it's possible to have more than one creature at/near a position if a monster tracked at that position dies and another spawns.
 
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
OP
jo3bingham

jo3bingham

Excellent OT User
Joined
Mar 3, 2008
Messages
1,074
Solutions
13
Reaction score
667
GitHub
jo3bingham
Two new articles have been added to the wiki!

The first is on how to use the included Record and Extract apps to map track: jo3bingham/TibiaAPI (https://github.com/jo3bingham/TibiaAPI/wiki/%5BHow-To%5D-Track-Maps)

The second is on how you can use TibiaAPI to intercept, modify, block, and send packets to the server and client: jo3bingham/TibiaAPI (https://github.com/jo3bingham/TibiaAPI/wiki/%5BHow-To%5D-Intercept,-Modify,-Block,-and-Send-Packets)

The second article includes bonus example code at the end, using information from the article, for creating your own auto-haste feature! 👀
 
Last edited:
Top