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

TFS 0.X Removing speed cap

allanet

Member
Joined
Jan 20, 2012
Messages
19
Reaction score
9
I'm been trying to remove the speed cap (at least with mouse clicking) without success.
I want that when someone click on minimap, he will be almost instantly there. On old SVN (XML) servers works that way, but in TFS there's a speed cap.
I'm using TFS 0.4

I tried to increase max_speed on player.h
C++:
#define PLAYER_MAX_SPEED 25000

But even if the player have 25000 speed there's a speed cap (there a slight delay between tiles).
Result: players level 100k have the same speed as level 500k.

I've tried to remove this delay in creature.cpp and player.h and player.cpp without success.

Sources: mattyx14/otxserver (https://github.com/mattyx14/otxserver/tree/otxserv2/path_8_6x)
 
Can you see no speed difference at all when you changed it to 25000, compared to the value set previously?
Did you compile after you set the changes?
 
It raised the speed limit, but it result in a small difference.

It raised the speed cap on database ("speed value"). but i can't get the player to move faster.

In fact after 5000 there's no difference at all ingame, somehow there's another speed cap limiting this value.
Of course I had compiled.
Maybe somewhere there's a movement cap to prevent lag or some packets limiting function.
 
Last edited:
Currently base speed formula in player.h:

C++:
        void updateBaseSpeed()
        {
            if(!hasFlag(PlayerFlag_SetMaxSpeed))
                baseSpeed = vocation->getBaseSpeed() + (2 * (level - 1));
            else
                baseSpeed = SPEED_MAX;
        }

I tried to modify to look like this just for testing purpose:
C++:
        void updateBaseSpeed()
        {
            //if(!hasFlag(PlayerFlag_SetMaxSpeed))
                //baseSpeed = vocation->getBaseSpeed() + (2 * (level - 1));
            //else
                baseSpeed = SPEED_MAX;
        }
Aside from everyone starts with maximum speed, i still cannot get the players to move faster.
 
Like I said before, changing basespeed does not work.

A little comparison I made:
My old SVN server (I do not posses the sources files): (Speed value is set to 23962)
Tibia1.gif
This is like i want to be.

My actual TFS (much more slower, even with Speed set to 50000)
Tibia2.gif
 
Back
Top