Page 1 of 1

Vault replacement idea: Vaultster + a background ftp daemon

Posted: Mon Dec 10, 2007 7:50 am
by Hialmar
Just thought about this possibility for replacing the current vault system after reading the notes about patch 1.12 that Wynna posted.

We could use something similar to Vaultster (might be what goes in 1.12).

Here is how it worked in NWN1: when you portal from one server to another, vaulster first uploads your bic file to the destination server and then your PC portals.

The problem is that your bic file is only on one server, therefore if the server goes down you cannot play.

The solution I thought about is: on every server we have a background ftp daemon (that's a server software that runs all the time) that regularly (maybe each hour or few hours) uploads the locally modified bic files to a ftp server (this could be the current vault computer).

In this way, if the server goes down we have a backup copy of every PC and can manually transmit them to another server.
This last operation could even be automated through a PHP interface. Ie Joe the player connects on a website and ask his PC to be transmitted to the ALFA2 X server. The websites checks that his current server is down and that server X is a neighbor and pushes the bic file to the server using the above mentioned daemon.
This last part is a bit more complex so not sure about this.

Any advice ?

Posted: Mon Dec 10, 2007 8:20 am
by indio
What would be great is if we could use the WorldGate concept, so only the modified elements of the bic file get added to the remote vault. But this idea is very cool, because besides a central backup device, with luck it can be turned into a much more seamless enterprise than the NWN1 vault.

Posted: Mon Dec 10, 2007 3:05 pm
by Hialmar
*nods* using differential updates could be possible yes.

Re: Vault replacement idea: Vaultster + a background ftp dae

Posted: Mon Dec 10, 2007 3:36 pm
by Wynna
Hialmar wrote: This last operation could even be automated through a PHP interface. Ie Joe the player connects on a website and ask his PC to be transmitted to the ALFA2 X server. The websites checks that his current server is down and that server X is a neighbor and pushes the bic file to the server using the above mentioned daemon.
This last part is a bit more complex so not sure about this.
I like the thought of automating portal requests for downed servers!

Posted: Wed Dec 12, 2007 6:32 pm
by ç i p h é r
If the ftp daemon runs hourly, isn't there a good possibility that there will be differences between the local bic and the "vault" bic? If so, we're going to run into problems reconciling these differences. Also, dead PCs must be exempt from these kinds of transfers.

Posted: Thu Dec 13, 2007 10:45 am
by Hialmar
*nods* maybe every 10 minutes then.

Of course there is always a risk that there will be a difference when a server will go down but this happens as well with the current system: if the server crashes, the PC file isn't written to the vault.

Another solution would be to integrate this ftp client to NWNx4 and start the upload from the module (on disconnects/portalling and maybe once every 10 minutes for each connected PC).
In fact this could be even easier to code because vaultster is using FTP IIRC so the client might already be there.

As for dead characters, the file won't change so it won't be uploaded unless people use them to connect to the morgue and check people on the server but this can be detected easily in the logs and the people can be warned.