mehah / otclient

An alternative tibia client for otserv written in C++20 and Lua, made with a modular system that uses lua scripts for ingame interface and functionality, making otclient flexible and easy to customize
Other
269 stars 209 forks source link

logo OTClient - Redemption

Discord Shield Build - Ubuntu Build - Windows License: MIT

πŸ“‹ Table of Contents

  1. Logo What is otclient?
  2. πŸš€ Features
  3. Android The Mobile Project
  4. πŸ”¨ Compiling
  5. 🐳 Docker
  6. 🩺 Need help?
  7. πŸ“‘ Bugs?
  8. ❀️ Roadmap
  9. πŸ’― Support Protocol
  10. ©️ License
  11. ❀️ Contributors

Logo 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.

[!NOTE]

Based on edubart/otclient Rev: 2.760

πŸš€ 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.

Haskanoid Video Peoplemon by Alex Stuart Space Invaders
ThingCategory Attached Effect Texture(Png) Attached Effect
Particule

Haskanoid Video Peoplemon by Alex Stuart Space Invaders
Title Attached Effect
Title Widget
Title Particule
πŸ™‹ Community (Features)
Haskanoid Video Peoplemon by Alex Stuart Space Invaders
Interface Density Pixel Joystick (patrykq)

Haskanoid Video Peoplemon by Alex Stuart Space Invaders
Example interface Example in game future discord-game-sdk
Haskanoid Video Peoplemon by Alex Stuart Space Invaders
Creature Map Mount

Haskanoid Video

Haskanoid Video

Example 1 Example 2 Example 3

Haskanoid Video Peoplemon by Alex Stuart
Interface
In-game

πŸ’Έ Sponsored (Features)
Haskanoid Video Peoplemon by Alex Stuart Space Invaders
Creature.
Items
UICreature
OTClient V8 (Features)

Android The Mobile Project

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:

Current compiling tutorials:

πŸ”¨ Compiling

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

🐳 Docker

In order to build the app for production, run the following command :

1) To build the image:

docker build -t mehah/otclient .

2) 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

[!TIP]

if using Nostalrius 7.2, Nekiro TFS-1.5-Downgrades-7.72 OR any protocol below 860 that the walking system is stuttering. set force-new-walking-formula: true in setup.otml

In Old Protocol , if you consider that the speed of the item is too fast, modify item-ticks-per-frame: 75 in setup.otml

❀️ Roadmap

TO-DO list Status PR
Android compatibility Branch
Familiar outfit #39
wheel of destiny None
Forge None
Analyzer #802
fix: Extended view new-layout None
Sound tibia 13 None

πŸ’― Support Protocol

Protocol / version Description Required Feature Compatibility
TFS
(7.72)
Downgrade nekiro /
Nostalrius
force-new-walking-formula: true
item-ticks-per-frame: 75
βœ…
TFS 0.4
(8.6)
Fir3element item-ticks-per-frame: 75 βœ…
TFS 1.5
(8.0 / 8.60)
Downgrade nekiro /
MillhioreBT
force-new-walking-formula: true
item-ticks-per-frame: 75
βœ…
TFS 1.4.2
(10.98)
Release Otland βœ…
TFS 1.6
(13.10)
Main repo
otland (2024)
See wiki βœ…
Canary 13.21 OpenTibiaBr Assets , Enable HTTP login and port 80 βœ…
Canary 13.32 OpenTibiaBr Assets , Enable HTTP login and port 80 βœ…
Canary 13.40 OpenTibiaBr Assets , Enable HTTP login and port 80 βœ…

©️ License

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

❀️ Contributors

If you are interested in supporting the project, go to this link, any value is great help, thank you.