LOG IN

DEVELOPER'S BLOG

Read more

Recent Client Optimization Measures

Greetings, Saviors! Today on the blog we’re talking about our game client. Many of you have long been noticing that, when user numbers go up or during busy battle scenarios, the client’s response time tends to drop rather low. And in fact, while the game’s graphic engine is able to portray images with its distinctive unique 2d-like feel, it was suffering from a lot of performance-related problems. So, in this post, we want to notify the information about how much we improved in the new patch. The biggest issue with the current engine was the high number of draw call. Every time this number reached a certain level, the CPU would become overworked while the performance of GPU was underutilized. One of the main reasons behind this high number of draw calls was the abundance of particle effects. Whenever an enemy dies, or a character on screen attacks, and even when doing nothing, a large number of particle effects is required to render all the small objects moving in the background.   - Particle Effect Batching   In order to reduce the number of draw calls, we need to group together particles of the same type to create draw call batches. The problem is that most particles used are semi-transparent, so without depth sorting, they won’t be rendered the way we intend. The current engine prioritizes rendering accuracy, so particle effects of all types were mixed together, making batching impossible and increasing the number of draw calls. We considered, in this case, that improving the client’s performance was a more urgent matter and decided to slightly compromise the visual accuracy of the game in favor of allowing more batching. We’re also applying other measures to improve performance and reduce draw calls, such as exploiting multiple render targets, shadow processing optimization and character instancing.   - Multiple Render Target   - Shadow Processing Optimization and Character Instancing   - We tested versions with and without the optimization measures applied and compared the results.   - Chart Showing FPS (Frame Per Second) and MS (Millisecond per frame) Figures by time The top of the graph shows FPS variation (the higher, the better), while the bottom represents MS figures (where lower is better). With all the optimization measures applied, we witnessed an increase of approximately 2.5 times in minimum FPS. We were able to see that the gaming environment was improved greatly by the fact that by raising the minimum FPS allowed the game to maintain at least 60 FPS on the testing specifications. Note that these results were obtained in a testing environment and can differ depending on each user's PC specifications. However, the inconvenience caused by these problems is expected to reduce significantly in most situations. Besides of these issues, there are still some problems need to be optimized such as CPU multicore utilization and Graphics data-side optimizations. These measures are part of all efforts to continue providing a better environment to TOS players. Thank you.  

Developer's Blog
May 30th, 2016
Read more

Steam TOS Service Improvement Plan

Greetings, Saviors! First of all, we would like to thank you for the love and support you’ve been showing for Tree of Savior. We hope this post addresses some of the most pressing issues you’ve been asking about and sheds some light on how we are working to improve them.   Client Lag Issue The graphic engine optimization is currently in process. We had some major progress and the patch is being prepared. How much it smoothed the overall experience and improved the performance is going to be announced through our Dev Blog.   Server Lag Issue As stated in our previous announcement, temporary restrictions limiting access for new players to Tree of Savior are now in place. We will alleviate the “slow server process speed” symptoms through temporary maintenance before we permanently solve this server lag issue. As previously announced, there have been other DDoS attacks on the [SA] Silute server. Every attack results in the particular machine getting banned, which means far lower machines compared to the user count, and we have been denied adding more machines to the server. The SA server shall be moved to a NA location due to the fact that normal service operation is practically impossible with the current local service provider. The regional pricing will remain the same even after the machine’s location transfer. The server will stay in NA until we find a good solution to the SA problem.   Persistent Bot Problem The Bot Classifier for [SEA] Telsiai, [SA] Silute and [SEA] Varena servers is under maintenance and has not been fully operational. This is a problem related to DB backup, which cannot be solved easily and requires extended maintenance to fix, which is why we are putting it on hold for now. In the case of [SA] Silute, the problem should be solved and the situation normalized after today’s relocation. We also expect to solve the problem for [SEA] Telsiai and Varena and get back to normal operation on those servers as soon as possible.   Why haven’t you applied to iTOS the same patch as kTOS? The regions for iTOS are more and diverse and applying a patch for each region takes some time. Our previous patches also had problems of that sort. Such problems resulted in the updates and the game access being unavailable. Also, after we update the Korean version and receive feedback from the users there, we sometimes end up making changes to it again, so getting a final version of the update that we can apply to iTOS can take some time. That is the reason why we were unable to apply patches frequently.    Feedback and Communication from the Staff Are Insufficient From now on, we will have a regular Q&A time with the Dev Team based on the opinions from you, the users. Also, a CM will gather up questions raised on the forum and forward them to the Dev Team and provide our users with answers.   Token Prices Our players have long been voicing out their opinions about the price of Tokens, and after some internal discussion we’ve decided to lower Token prices. We plan to compensate those who are currently using or have recently purchased Tokens as a result. Details will be announced in a separate news post. link : https://treeofsavior.com/news/?n=434   Thank you for reading and have fun playing Tree of Savior.

Developer's Blog
May 27th, 2016
Read more

Thank You For 100k Likes!

Greetings, Saviors. Thanks to your support, our Facebook page now has over 100,000 likes! To show our gratitude, we would like to showcase a special art illustrated by our art director, maggi. Thank you for supporting Tree of Savior! https://www.facebook.com/treeofsavior/likes

Developer's Blog
April 26th, 2016
Read more

About the Bot Report Function

Many of you are showing your concern on bots. Bots are a big problem to the developers as well because they interrupt game play and negatively affect the game's economy. The bot report function we added to the game can effectively ban bots if used properly, but we also have to consider the possibility of its abuse. Throughout time, we've been doing research on how we can minimize this abuse. We're going to explain our report feature in close detail and tell you what to keep in mind when reporting bots. First, not all reports hold the same validity. Each account has a value called "Report Influence Index." This value cannot be seen by players, but it increases whenever said account correctly reports a bot. If a user is reported repeatedly by others, that user is very likely to be a bot. In addition, if the reporter is an influential individual, their report is most likely valid so we can set a priority on which account to ban first. This is where the Report Influence Index (RII) comes in. In terms of numbers, a player with 10 RII has the same impact as 10 different players with 1 RII each when reporting suspicious users. Accounts with high report counts will then move to the next step of verification. Some have suggested using CAPTCHA, but that too, will be breached eventually. It puts needless restrictions on the players, so we are not considering its use. Instead, what we chose to use is a server-side classifier based on Machine Learning (ML) technique. The classifier uses the comprehensive activity log of a reported account to determine if it's a bot in percentages. We will not be revealing the classifier's exact mechanism, as it can be manipulated by violators to bypass the system. We train our classifier by constantly inputting new data. The fact that we can maintain its accuracy is its advantage, because we're going to manually determine which factors should be considered to identify bots. The classifier's accuracy depends on how we determine the behavior criteria, and we examine over 20 basic criteria. The machine showed 99% accuracy on our Korean server when we set the machine to output fewer false positives. If we set strictness value low, the classifier will detect more bot with lower accuracy and vice versa. An account that is deemed to be a bot becomes subject to restriction after a GM's additional confirmation. If that account gets banned, then all the users who reported that account gain one RII point. However, should the reported account be declared clean, the reporter's RII value will be negatively affected. The RII is not a simple difference between the numbers of accurate and inaccurate report counts, and the algorithm we use to determine the final RII value can be changed in the future. Therefore, you should not report bots if you're unsure of their offense. The system can backfire on you if you're not careful. For example, a player going afk while leaving a heavy object on the attack key has to be handled differently from regular bots. The classifier can deem the afk player innocent from looking at the honest play records, so afk players should not be reported using the report function as that will work against your RII. Lastly, if we're not absolutely sure the reported account is a bot, then it will not be banned and the reporter's RII will remain unchanged. We're going to keep examining and upgrading the system and do our best so bots will not ruin your play experience. Thank you for reading and have fun playing Tree of Savior.

Developer's Blog
April 20th, 2016
Read more

On the State of Server's Economy

Hello. Today on the Developer's Blog, we would like to address a few rumors circulating the forum.   While we were working on recent issues related to Steam's payment system, we came across a post with a screenshot of a user owning two or three hundred million silver. Some of you commented that it was demotivating. The payment abuse and that screenshot have been reported to a certain Korean website as well and an article came out stating that Steam server has serious problems. Some users even say a server wipe is needed. Is it necessary? You might wonder.   A short answer would be ‘no.’   First, the screenshot is simply not true. We can look through our server database and figure out the actual amount of silver the account in question owns, what the user traded, and the movement of silver on each server. We can even identify which top 100 accounts possess the most silver. We can identify daily changes of total amount of silver. It turned out the user in the screenshot only owned less than a hundredth of the alleged amount.   Due to the nature of MMORPGs, data in the game client can easily be altered. We believe that screenshot is also a result of such practice, and the change only appears on the user's own screen. This altered data doesn't get transmitted to the server that deals with monetary transaction, meaning the game's economy isn't affected.   Contrary to what some users pointed out, the TP obtained through transaction exploit is irrelevant to the silver increase in the game. Even if abusers purchase and sell Tokens using the TP they unfairly gained, it does not generate new silver. The silver simply moved from one account to another during the transaction. During those transactions, actually total amount silver decreases due to 10% market fee. This may have influenced silver's RMT value or Token-to-silver ratio, but we have confirmed that it did not affect the total amount of silver circulating the servers.   We take economical stability seriously, and our GMs monitor the statistics every day. Whenever we make systems related to trades, we make sure to check for possibilities of the damage they may do to the server's economy. We plan to explain the bot problem and the report system we made to counter it in our next blog post. Thank you.    

Developer's Blog
April 17th, 2016
Read more

Changes regarding trading restrictions, bot policy

Greetings, Saviors! We’ve been listening to your recent feedback regarding trading restrictions and bot presence in Tree of Savior, and would like to announce some changes we’ll be making to improve your in-game experience. 1) Less Trade Restrictions As mentioned in previous announcements, the trade restrictions were implemented to address RMT issues. However, based on your feedback, we have determined that it may feel a bit too high-handed.  As such we have decided to implement new measures to reduce the inconvenience of trading restrictions on non-Token users in order to reduce trading restrictions on regular users. We are planning on allowing Non-Token users to partake in 1:1 trading. However, we are not yet certain how we will implement this new system. More details will be released as soon as they have been decided upon. The changes are intended to remove restrictions to players who may not be Token users but wish to help out or give class restricted items to other players. We also hope this will dissuade bots from collecting items through farming.   2) Bot Report Function We wish to continuously strive towards reducing the bot problem and provide better gaming experiences for normal players. As such, we are working on implementing the much requested bot report function. Not only that but we’re also developing and testing a system to detect bots faster.  Through the reporting system, you will not only able to select and report suspected bots, but you will also be able to report items in the market suspected of being part of RMT (e.g. low-value items sold at unusually high prices). Through this system, GMs will be able to catch more bots by prioritizing and reviewing cases reported by users. However, we know that this system can be misused or even abused and are in the process of polishing rules to regulate the system. We wish to provide merits to those who accurately report bots, and penalize those who misuse the system to report innocent users. This will most likely be a constantly updated set of rules since there will always be different cases. As always, we thank you for your continued support, understanding, and enthusiasm for Tree of Savior.   Sincerely, IMC Staff

Developer's Blog
April 14th, 2016
Read more

Statement on Trade Restrictions

Hello. We are the "Tree of Savior" development team. Many players have voiced negative opinions on the 1:1 trade restriction of our game system. We’d like to announce our stand on this system and explain why we cannot modify it immediately.   Economy is an important part of an MMORPG. It’s difficult to maintain one, yet very easy to ruin.   The main factor that ruins in-game economy of F2P games is gold (in this case, silver) selling. Unlike the P2P model, F2P games are much more vulnerable to exploit because gold sellers make near to zero investment on accumulating in-game currency. They can make essentially an infinite amount of silver in the game. Therefore, it’s important to know what can control in-game transactions effectively.   We can track down and ban the gold sellers individually, but that’s a primitive method of defense and gold sellers are constantly developing newer ways to run their business. Causing players to make minimum investment, which is mediated by Tokens, is only the first step to enforcing the limitation on gold sellers.   How are we to regulate and block gold sellers who purchase Tokens? In the end, RMT(Real Money Trading) is the goal of selling in-game currency. The second method we can use, then, is preventing one-way transfer of goods.   Gold sellers transfer their goods using the following method:  (1) Run multiple bot accounts (to accumulate silver)  (2) Transfer the silver to a separate "seller’s account"  (3) The silver on said seller's account then goes to the buyer   There’s no need to regulate trades where the goods being traded from each side are similar in value. However, an uneven transaction is observed when trades are made between bots and seller’s accounts or between sellers and buyers.   Gold sellers transfer silver using the market system. Through the market, transactions are made by listing cheap items at high prices. The sellers would purchase these items to “send over” their silver to the buyers. To stop this, we could put a set silver value on the items. By doing so, we'll be able to quickly notice the discrepancy when an item isn't sold at its rightful price. The problem is, it’s difficult to maintain a set price on every item in the game.   To tackle this, we have also implemented mechanisms to limit one-way transactions through the market. With our current market system, once an item is sold enough times through the market, highest and lowest market values are automatically generated. Players cannot list items at prices that exceed this range. On top of it, there’s already a limit on how many items can be listed.   In addition, trades are temporarily held for 48 hours upon completion. This gives our staff time to detect and cancel any suspicious transactions before buyers and sellers get their goods. In the future, we hope to reduce this time frame by developing a system that can automatically detect and block such suspicious trades. We are continuously working on this function.   We do not believe these restrictions can completely shut out gold sellers. Rather, what we’re trying to do is utilize this system to make gold selling something that isn’t worthwhile to both gold sellers and buyers.   Finally, after considering the arguments stating that making team storage a premium feature is irrelevant to preventing gold sellers, we’ve decided to lessen the restrictions on this part. We will be modifying this feature for the upcoming patch.   We’re also developing an in-game report function for players to use, and we anticipate other inconveniences to naturally diminish once we successfully administer bots.   We hope this defined our reasoning behind the trade restriction we’ve implemented. Thank you for your attention.

Developer's Blog
April 8th, 2016
Read more

What are Guild Battles?

Greetings Saviors! This is the Tree of Savior Dev Team. We are happy to announce that we will be continuing further updates on this blog to keep you in the loop of what is going on behind the scenes. Today, we would like to introduce a new feature we’re currently working on: Guild Battles. First of all, please note that this feature is still a work in progress and the final product may look different from what we’re showing you here.   What are Guild Battles? Guild Battles are a type of PVP play that sets guilds of different servers against each other to compete for victory. They will be available twice a day and the overall guild ranking will be determined based on ELO rules. ▲ The name of each guild is displayed along with its corresponding server. The competing guilds must attack each other’s Guild Towers, located in their respective team headquarters, with the first guild to destroy its opponent’s Guild Tower within the time limit being declared the winner. Analyzing the enemy’s strategies and developing defensive strategies for your own guild will be major decisive factors for victory.   ▲ The first guild to destroy its opponent’s tower wins. If neither guild manages to destroy the opponent’s tower within the time limit, victory will be awarded to the guild with the highest kill count. In the event of an even number of kills, the title goes to the guild with the most accumulated damage. This means that guilds will need to consider offensive tactics as well as defensive strategies in order to win Guild Battles,. Gathering the guild members to strategize and discuss different control methods before entering the Guild Battles will also be crucial in gaining an advantage.   Participating in a Guild Battle via the Auto-Matching System To participate in a Guild Battle, the guild master should go to Battle League > Guild Tower Battle and click the ‘Join’ button to initiate auto-matching. ▲ Determining an opponent via auto-matching The guild masters will be moved to the battle area once an opponent is found, and preparation for the Guild Battle will begin upon entering the battlefield. ▲ Remaining preparation time for the Guild Battle Guild members will be able to enter the battlefield during the preparation period but will not be able to do so once the Guild Battle begins, so please make sure to enter during the preparation period. The Battle Begins Each guild will be assigned a random headquarters out of the 8 available areas. ▲ Guild Battle Battlefield The battle will begin immediately after the preparation period. ▲ Victory Condition Locating the enemy’s tower is an important part of the battle as it is one of the main victory conditions. Use every strategy that your guild has at your disposal to search and destroy the enemy’s tower within the 30 minute time limit. Having your Guild Tower’s location discovered first can lead to an unfavorable battle. Another good tactic is to have fast-attacking classes target the enemy tower while the others focus on preventing the opponent from interfering since Guild Towers in the Guild Battles only receive 1 damage per hit just like regular Guild Towers. ▲ Defensive headquarter entrance The entrance to each guild’s headquarters is rather narrow and can create a bottleneck making it risky if you decide to go for an all-out attack. ▲ Players can spectate while waiting to resurrect. There will be resurrection countdown if your character falls during a Guild Battle. You will be able to spectate other guild members during this time, allowing you to plan ahead and decide where you will be needed the most. ▲ The ‘Results’ window shows the victors as well as individual kills, deaths and score points.   You will be able to confirm the victors of the battle through the ‘Results’ window. Make sure to strategize and implement tactics that will give your guild every edge possible since, as mentioned earlier, a guild must destroy its opponent’s tower or have the higher kill count to win.   Ranking and Rewards You will be able to check your guild’s ranking across all servers through the ‘Guild Battle Rank’ window which will be reset every Sunday after 11:59:59PM. Guilds will be rewarded in accordance to their rank while the server that is home to the weekly 1st place guild will become the winning server, increasing the bonus TP limit to 8TP for all users on that server. We hope this will encourage guilds of all servers to keep competing for the top spot. [Ranking and reward items] Rank         Reward items   1                  60x 100TP Chests     2                  40x 100TP Chests   3                  30x 100TP Chests   4                  20x 100TP Chests   5                  5x 100TP Chests   6                  5x 100TP Chests   7                  5x 100TP Chests   8                  5x 100TP Chests   9                  5x 100TP Chests  10                 5x 100TP Chests   Reward items won via the Guild Battle ranking can be claimed by clicking the ‘Reward’ button on the ‘Guild Battle Rank’ window. The items will then be transferred to the corresponding guild’s common storage, where the guild master can distribute (transfer) them to other guild members. Those items can be received through the personal message box of individual guild members, which will then be bound to the guild member once obtained. This is as much as we can say about the Guild Battle system for now and we will make future announcements in order to keep you updated on the implementation schedule. Hope to see you soon with more good news. Thank you.    

Developer's Blog
April 7th, 2016
Read more

TOS Developers' English Blog is now Open.

Hello.  We are "Tree of Savior (TOS)" Development Team. This blog was created to share you more information about the development of TOS before the official homepage is created. For the announcements of the future schedules of TOS, we will announce on our Facebook page, http://www.facebook.com/treeofsavior. Thanks. ▲ Goddess of Fire, Gabiya

Developer's Blog
December 31st, 2015