Tibia 8.60 Extended Client DLL source released under MIT licence
Nottinghster released the C++ source code for a Tibia 8.60 Extended Client DLL under the MIT licence on GitHub, adding 32-bit alpha and raised limits.
On 21 September 2026, OTLand developer Nottinghster published the complete C++ source code for a Tibia 8.60 Extended Client DLL on GitHub under the MIT licence. The release acts as a DirectDraw proxy named ddraw.dll that patches the clean 2010 client in memory when launched. Development takes place in the public rodrigopaixaorj/Tibia-860-Extended-DLL repository.
Tibia 8.60 Extended Client DLL is an open-source DirectDraw proxy DLL that patches the classic 2010 Tibia 8.60 client in memory without modifying the executable. Written in C++ by developer Nottinghster under the MIT licence, it adds 32-bit alpha transparency, extended sprite support beyond 65,535, modern .DAT parsing, mounts, and a frame-buffer market window.
What the release contains
The DLL modifies the running client executable in memory to expand graphics capabilities and remove legacy engine limits.
In the rendering pipeline, the DLL introduces 32-bit ARGB alpha blending for OpenGL and DirectX 9. This removes magenta color keying and enables smooth transparency. Sprite indexing shifts from 16-bit to 32-bit uint32_t values, allowing sprite archives to exceed the hardcoded 65,535 cap. An internal RAM cache stores up to 250 MB of sprite data to minimize disk reads. The DLL also redirects DirectDraw interface calls to DirectDraw 7.
Engine limits from the 2010 client are expanded. Player health and mana values now parse as 32-bit signed integers supporting values up to 2 billion, replacing the previous 65,535 cap. Magic effect identifiers and skill levels expand from 8-bit values capped at 255 to 16-bit values reaching 65,535. A commit on 21 September 2026 widened outfit memory allocation from 25 outfits to 512 outfits, resolving an assertion crash in Dialogs.cpp:1612. The DLL also patches client crashes when experience exceeds 2.14 billion, and injects the standard OpenTibia RSA key at memory address Base + 0x1B8980.
File loading is updated with a parser for modern .dat formats. The reader detects both standard 8.60 files and version 10.x and 12.x files marked with signature 0x4A10. It parses ground speed, displacement offsets, character elevation, light values, frame groups, animations, and Market Data under attribute 33.
The user interface receives dedicated gameplay additions rendered directly on the frame buffer. A market interface measuring 750 by 545 pixels provides 4 tabs, 23 categories, search filters, price statistics, and fee calculation. Characters gain mount support with automatic layer positioning, color masking, and a 3-pixel vertical elevation offset. An on-screen mana bar appears beneath the health bar with numerical percentage text. For server communication, the DLL hooks decrypted incoming packets at Base + 0x5C3A0 using opcode 0x32, routing sub-opcodes 0x01 for setting mounts, 0x02 for removing mounts, and 0x03 for market data. To reduce frame drops on Windows 10 and Windows 11, the client's timeGetTime import pointer at Base + 0x1B85A0 is redirected to hardware QueryPerformanceCounter calls.
Why it matters if you play or run a server
Server owners receive an inspectable, open-source codebase for client modifications that were previously restricted to closed-source sales or private distributions.
According to the OTLand release announcement, Nottinghster chose to open-source the project because similar 8.60 client extension DLLs are routinely sold behind private paywalls. Publishing under the MIT licence gives administrators a verified baseline they can inspect and compile without relying on unverified binaries.
The extension functions without external injectors or custom launchers. Because Windows searches the local application directory before system directories, Tibia.exe automatically loads ddraw.dll on startup. The DLL proxies standard DirectDraw calls to C:\Windows\System32\ddraw.dll while executing its background initialization thread. The release credits reverse-engineering research and memory offsets from Jo3bingham's TibiaAPI, alongside graphics hooking concepts from SaiyansKing's Tibia-Extended-Client-Library.
As an honest disclosure, this post is published on the blog of otservers.org, an Open Tibia server directory. Administrators who run 8.60 servers listed on otservers.org can use this codebase to evaluate custom client features while maintaining protocol compatibility.
What to watch
The project remains in an early alpha state without compiled release files, requiring server administrators to build the binary manually.
Nottinghster stated on OTLand that edge cases and bugs remain to be resolved, inviting community pull requests on GitHub. As of 23 September 2026, the GitHub repository has no published binary releases or git tags. Administrators must build the 32-bit DLL using Visual Studio and CMake 3.15 or newer.
A commit on 22 September 2026 removed the runtime config.ini file described in earlier documentation. All feature switches, protocol limits, hardware timers, and server IP settings now reside in include/features.h. Server operators must set these parameters before compiling the standalone binary.
Key takeaways
- Nottinghster published the complete C++ source code for a Tibia 8.60 Extended Client DLL under the MIT licence on 21 September 2026.
- The project runs as a DirectDraw proxy named
ddraw.dllthat loads automatically at client launch without third-party injectors. - Features include 32-bit ARGB alpha transparency, a 250 MB RAM sprite cache, modern
.datloading, and sprite counts exceeding 65,535. - The repository provides no pre-compiled binaries, and a 22 September 2026 commit moved configuration from
config.inito compile-time header files.
FAQ
How do you install the Tibia 8.60 Extended Client DLL?
Installation requires placing a compiled ddraw.dll directly into the Tibia 8.60 client directory containing Tibia.exe. When the client starts, the Windows dynamic link library search order loads the local ddraw.dll instead of the system version in C:\Windows\System32. The DLL initializes its hooks in memory automatically without third-party injectors or modified executables.
What are the system requirements to compile the DLL?
Building the DLL requires a 32-bit Windows development environment with Microsoft Visual C++ from Visual Studio 2019, 2022, or 2026 and CMake 3.15 or newer. The build configuration requires DirectX 9 SDK headers, OpenGL headers, and winmm.lib. Because Tibia.exe is a 32-bit application, the project must be compiled for the x86 architecture.
Can you toggle features using config.ini?
Feature configuration through config.ini is no longer supported in the current repository code. On 22 September 2026, a commit removed config.ini and src/config.cpp to make ddraw.dll a standalone binary. All feature toggles, protocol limits, timers, and server connection parameters are now defined at compile time in include/features.h.
Source: OTLand Discussion: OTLand
Server owners preparing an updated client for launch can list their server for free by following How to List Your OT Server on otservers.org.
Looking for a server to play on? Browse the ranked list.