Tree of Savior Forum

I've been wondering is possible to do an update like warframe does it?

Like the title says is it possible to the same thing as warframe when it comes to updating their game. It is a win- win both player and dev. What is your opinion on this people? Not many companies are doing this.

How does Warframe “do it”?

5 Likes

Might as well elaborate and explain it as not all people here played that game.

2 Likes

Usually, players are in the game and they are never disconnected but are asked to download the patch when it goes live. It’s hard to explain but here is an image to give you an idea.

What the OP means is a streaming update, typically for a hotfix.

No, that is not really possible for games that are not primarily instance based. It could be done with very minor patches, but it would still be unwise.

2 Likes

I would be nice though right :smile:

Warframe? What is warframe? They should do it like ANet did it for GW since 2005. :stuck_out_tongue: No server downtime. Forever (or until the servers are shut down)!

And you didn’t even have to restart the client after a major patch, because everything was streamed while playing.

Oh, I would not complain if they could find a functional way of doing it; that’s for sure!

Warframe is rather advanced in the network architecture and engine fields, as opposed to ToS which is based on old tech with lots of crutches. Sure, it would be nice to have on the fly updates and little to no downtime, but that won’t really happen unless IMC rewrites most of the code from scratch (read: most likely never and definitely not soon).

Can you provide any proof of what you are saying?

The part about using an old Granado Espada engine they said themselves (you can look up the early Q&A):

[quote]Q5) Did you develop your own engine?

A5) We are using the internally developed engine which has been in use and updated since the start of “Granado Espada”. This engine was customized to meet the needs to express the impressions of 2D characters, hand drawn art and etc. Except for the graphics side of the engine, we are using the same engine which is being used to develop “Wolfknights”, the other game that we are currently developing.[/quote]

Granado Espada’s engine is old. We’re talking “bits of code from 2002” old.
And seeing how every minor fix requires a lengthy server maintenance, I daresay that server-side code is quite old-fashioned as well.

Old-fashioned doesn’t necessarily mean “bad” - for example, World of Warcraft is (technically) using a heavily modified Warcraft 3 engine, and I’m not saying it’s impossible to rewrite it - but it’s sure as hell extremely hard and time-consuming to redefine the whole architecture.

Took WoW what, several years to really get the proper cross-server, phase-supporting locations up and running? And we’re talking Blizzard resources here. So no, I wouldn’t expect any changes any time soon.

It would be hard, since no one can really imitate tennos :slight_smile:
But yeah, it would be nice if they did it like that.

Comparing ToS and Warframe is like comparing banana and avocado.

Warframe has a mission run system where making updates make it a lot easier. If they release an update during a mission you will stay in the “old version” of the game (which you started the mission with) and then you have to relog after finishing the mission to update your client.

Updates are not applied 100% on the run (that is, at the exact time it is deployed wether if it’s inside mission or not) because that would be extremely problematic for many reasons.

ToS does not follow this “mission” system so if you wanted updates during server up-time they would have to be done 100% on the run. Just imagine, taking from a programmer’s viewpoint, if you deployed a new update changing a skill while thousands of users could be potentially using that skill at the time of deployment. It could cause a lot of issues.

You would need, at some point, to make a “pause” so no players do anything and you can deploy your updates. But if the update changes something client-side then the players would need to relog. And then you realize this is exactly the definition of the server maintenance.

I’m sure they could shorten the maintenance time to say, 5 minutes. Or just as long as it takes to re-compile the game servers. That is, if they had everything prepared to do the merge beforehand. But then again, the purpose of maintenace is not just “applying patches”. It’s a good practice to also spend the maintenance downtime to check for compatiblity issues, potential exploits regarding the new updates, and doing a few other things that are just easier to do while the servers are off.

That, or you could have an architecture that allows you to download and cache the updated code and then apply the changes let’s say, on next character select. Or location transition. And if you don’t want players to mix the old and new, you send a warning and then perform a forced log-out and/or teleport the players from the affected location. Still beats having to sit out several hours of maintenance that just happens to overlap with your usual play time.

…But that would require a lot (make that in bold and capital letters) of work to address an issue that is not, for all intents and purposes, a deal-breaker.

Hotfixes were already added without server downtime, if you didn’t know.

Like here:

But for major changes it is important that all players have the same update on their clients and for such maintenances with server downtime for everyone is important.