No description
Find a file
2023-07-22 04:00:17 -03:00
.github build: fix vcpkg builtin-baseline for enable GHA builds (#498) 2023-04-04 16:53:00 -07:00
android compiling and generating apk 2023-07-22 04:00:17 -03:00
android-studio compiling and generating apk 2023-07-22 04:00:17 -03:00
cmake cleanup: remove unused CMake modules 2023-03-21 19:44:18 -03:00
data fix: mapmarks images order 2023-05-20 13:19:35 -03:00
mods Rename 'addons' folder to 'mods' to avoid 2012-07-16 20:07:42 -03:00
modules fix: battlelist error | first time you open the client (#553) 2023-07-14 13:31:53 -03:00
src feat: compilling with visual studio 2023-07-22 03:34:26 -03:00
tools feat: client auto updater 2023-05-11 11:38:24 -03:00
vc17 feat: compile android with visual studio (not working 100%) 2023-07-18 01:36:29 -03:00
.dockerignore Improved Docker support 2019-09-26 18:23:08 -07:00
.editorconfig Create .editorconfig 2023-01-26 16:02:05 -03:00
.gitattributes Normalize source code 2012-07-28 02:07:57 -03:00
.gitignore Add Android support (#335) 2022-09-23 15:01:16 -03:00
.reviewdog.yml Fix github actions, cmake rework and integrate with vcpkg and improvement on protobuf (#257) 2022-06-03 17:14:30 -03:00
AUTHORS Update README, TODO, AUTHORS 2012-07-09 12:26:03 -03:00
BUGS Update README, TODO, AUTHORS 2012-07-09 12:26:03 -03:00
CMakeLists.txt Add Android support (#335) 2022-09-23 15:01:16 -03:00
CMakePresets.json [Enhancement] - CMake build using static library (#306) 2022-09-07 21:57:03 -03:00
Dockerfile improve: update GHA to read builtin-baseline from vcpkg.json (#403) 2023-02-06 11:33:12 -03:00
GitVersion.yml Fix github actions, cmake rework and integrate with vcpkg and improvement on protobuf (#257) 2022-06-03 17:14:30 -03:00
init.lua refactor: auto reload module rewritten from lua to c++ 2023-07-12 17:45:03 -03:00
LICENSE Update copyright year for 2020 2019-12-31 10:07:29 +00:00
OTClient.sublime-project Sublime project file (#210) 2022-02-02 21:07:32 +01:00
otclientrc.lua Fix text edits wrapping 2013-01-17 09:34:45 -02:00
README.md Update README.md 2023-07-12 17:50:04 -03:00
recompile.sh Fix github actions, cmake rework and integrate with vcpkg and improvement on protobuf (#257) 2022-06-03 17:14:30 -03:00
sonar-project.properties Fix github actions, cmake rework and integrate with vcpkg and improvement on protobuf (#257) 2022-06-03 17:14:30 -03:00
vcpkg.json improve: remove tinyxml and add pugixml instead 2023-04-28 11:23:48 -03:00

OTCLient - Redemption

Discord Shield Build - Ubuntu Build - Windows License: MIT

Based on edubart/otclient Rev: 2.760

Note: for those who are with the walking system stuttering...

Features

  • C++20
  • Refactored/Optimized Rendering System
  • Auto Reload Module (init.lua)
  • Attached Effects System (to create aura, wings...) (code sample: effects.lua, outfit_618.lua, code test)
  • Idle Animation Support
  • Highlight Mouse Target (press shift to select any object)
  • Crosshair
  • Floor Shadowing
  • Floor View Mode (Normal, Fade, Locked, Always, Always with transparency)
  • Anti-Aliasing Mode Options (Note: Smooth Retro will consume a little more GPU)
  • Floating Effects Option
  • Optimized Terminal
  • Refactored Walk System
  • Support for more mouse buttons, for example 4 and 5
  • Module Controller System (Code example)
  • Some bugs fixed contained in edubart/otclient
  • Client 12.85 ~ 12.92, 13.00 ~ 13.14 support (protobuf)
  • Market has been rewritten to work only Canary
  • Async Texture Loading
Community (Features)
  • Mobile Support @tuliomagalhaes & @BenDol
  • Support Tibia 12.85/protobuf by @Nekiro
  • Support Discord RPC by @SkullzOTS (Doesn't work with CMAKE)
  • Action Bar by @DipSet
  • Access to widget children via widget.childId by @Hugo0x1337
  • Shader System Fix (CTRL + Y) by @FreshyPeshy
  • Refactored Battle Module by @andersonfaaria
  • Health&Mana Circle by @EgzoT, @GustavoBlaze, @Tekadon58 (GITHUB Project)
  • Tibia Theme 1.2 by Zews (Forum Thread)
  • Add option ADJUST_CREATURE_INFORMATION_BASED_ON_CROP_SIZE in config.h by @SkullzOTS
  • Encryption System by @Mrpox (Note: This implementation is unsafe)
    • To enable just go to config.h, set 1 in ENABLE_ENCRYPTION and change password on ENCRYPTION_PASSWORD
    • To enable Encrypting by "--encrypt" change ENABLE_ENCRYPTION_BUILDER to 1 (by @TheMaoci). This allows to remove code of creating encrypted files off the production build
    • To generate an encryption, just run the client with flag "--encrypt SET_YOUR_PASSWORD_HERE" and don't forget to change the password.
    • you can also skip adding password to --encrypt command it automatically will be taken from config.h file (by @TheMaoci)
  • Support HTTP/HTTPS/WS/WSS. by @alfuveam
  • Discord RPC by @SkullzOTS
    • To enable just go to config.h, set 1 in ENABLE_DISCORD_RPC and configure the others definitions
    • You can see the step by step in YouTube
OTClient V8 (Features)
  • Lighting System
  • Floor Fading
  • Path Finding

- Want to help? Just open a PR.

What is otclient?

Otclient is an alternative Tibia client for usage with otserv. It aims to be complete and flexible, for that it uses LUA scripting for all game interface functionality and configurations files with a syntax similar to CSS for the client interface design. Otclient works with a modular system, this means that each functionality is a separated module, giving the possibility to users modify and customize anything easily. Users can also create new mods and extend game interface for their own purposes. Otclient is written in C++20 and heavily scripted in lua.

For a server to connect to, you can build your own with the forgottenserver or canary.

The Mobile Project

This is a fork of edubart's otclient. The objective of this fork it's to develop a runnable otclient on mobiles devices.

Tasks that need to do:

  • Compile on Android devices
  • Compile on Apple devices
  • Adapt the UI reusing the existing lua code

Current compiling tutorials:

Where do I download?

Compiled for Windows can be found here (but can be outdated):

NOTE: You will need to download spr/dat files on your own and place them in data/things/VERSION/ (i.e: data/things/1098/Tibia.spr)

Features

Beyond of it's flexibility with scripts, otclient comes with tons of other features that make possible the creation of new client side stuff in otserv that was not possible before. These include, sound system, graphics effects with shaders, modules/addons system, animated textures, styleable user interface, transparency, multi language, in game lua terminal, an OpenGL 2.0 ES engine that make possible to port to mobile platforms. Otclient is also flexible enough to create tibia tools like map editors just using scripts, because it wasn't designed to be just a client, instead otclient was designed to be a combination of a framework and tibia APIs.

Compiling

If you are interested in compiling this project, just go to the wiki.

Build and run with Docker

To build the image:

docker build -t mehah/otclient .

To run the built image:

# Disable access control for the X server.
xhost +

# Run the container image with the required bindings to the host devices and volumes.
docker run -it --rm \
  --env DISPLAY \
  --volume /tmp/.X11-unix:/tmp/.X11-unix \
  --device /dev/dri \
  --device /dev/snd mehah/otclient /bin/bash

# Enable access control for the X server.
xhost -

Need help?

Try to ask questions in discord

Bugs

Have found a bug? Please create an issue in our bug tracker

License

Otclient is made available under the MIT License, thus this means that you are free to do whatever you want, commercial, non-commercial, closed or open.