TL;DR, you are experiencing this issue because of poor network conditions either on your side, or on IMC’s side.
One good practice would be to ask others who are experiencing similar issues, which server they are in, which ISP they are subscribed to, which location/city they live in(please be careful when sharing your location, DO NOT GIVE OUT YOUR EXACT ADDRESS ON THE INTERNET).
If this is happening with a lot of people, with different ISPs, cities and/or servers, then it maybe a problem from IMC’s side. Personally, I think IMC may have been cutting costs on the servers’ capacity and bandwidth.
If this is happening with people from the same city and ISP then you probably have to switch to another ISP(if you can’t switch, then you will have to accept that you will not be able to enjoy Tree of Savior, sorry).
Now, explaining how this sort of thing happens:
CMIIW, this ‘bug’ is an effect of how Tree of Savior is made to work. This is not a bug in intent, because most Korean action games are initially planned to be published only on Korea, they are assuming there will be almost no issues with internet connectivity.
This development method becomes highly problematic when these games come to the international market as the game servers are located so far away from the international community.
The game works like this:
-
Player wants to do an action(in this case, presses a skill button).
-
The game client shows the player the skill animation, locks the character to the last frame of the animation(the pose you see during the ‘bug’) and tells the server that the skill is used and waits for the server to calculate whatever needs to be done on the game. While waiting for the server, the game client will not accept any other gameplay input from the player.
-
The server is done with the calculation and gives the result back to the game client.
-
The game client shows to the player the damage, or buff, or whatever the skill is supposed to do.
The problem is on step 2.
- The game client is programmed to freeze your character until the server gives the results back and;
- If the server doesn’t give the results back after a specific amount time, the game client basically just says: “I’m tired of waiting for you slowpoke, forget it, let’s just pretend this thing never happened”.