Board Thread:Questions and Answers/@comment-1915363-20170212141347/@comment-1820055-20170212201937

even though it is an online game, kancolle has a different environment/situation from "realtime" online games where you control characters, tanks, ships etc.

those realtime games require a persistent connection of client and server and be able to notify and listen each other of data, unlike the HTTP requests of browser games, which is one-way trigger. only client can tell server when there's an action.

this means the realtime servers need to be consistently running, never know when a new player connection will popup, so it's constantly listening from its server ports. these realtime servers are usually compiled before running. because when they are already running, you can't disturb them.

when there is a game update, they need to stop the server, update the code, recompile them, and re-start the server. if you don't recompile and re-start, even if you update game code, it won't apply.

kantai collection however, is not like this. kancolle is still a browser game, and is using the same technology as your regular "website". http requests from client to server, server responds.

there are modern ways to do seamless and continuous integration and deployment for these web technologies. kancolle is using PHP server backend and you don't need to precompile and restart webservers for php codes updates to apply.

however, you don't want to break people's games while you are still uploading your file to ftp, when it's still 50% and someone requests a function that's on that file. that is, because I think the kancolle devs are still using ancient deployment workflow, which I think they are. I think they are still manually uploading files via FTP to their servers, because you know, kancolle devs. i bet they don't even have build jobs and do everything manually. they should have automated unit tests that double-check server groups for consistencies but I think they verify each server group manually.

but technically php web can be deployed seamlessly, but even with the best build jobs and deployment workflow, I think kancolle would still need a maintenance, for reasons I may not foresee right now (probably in terms of assets), though not this long of a maintenance.