Author Topic: Differential load  (Read 1027 times)

Mainly for uploading saves to servers, saves should be filtered so it only uploads the bricks that:
  • The server has the datablocks for
  • Aren't already placed

While it'd require parsing the save files it would be very useful for reloading larger builds (coughBlockoworldcough) because of minor accidents.

Wrong approach.

I assume you're trying to reduce the time of file transfers?

Wrong approach.

I assume you're trying to reduce the time of file transfers?
Trying to reduce the time it takes to reupload a save because you accidentally dwanded a tiny fraction of it.

Trying to reduce the time it takes to reupload a save because you accidentally dwanded a tiny fraction of it.
Do it over TCP. In fact, let me show you what I was thinking of for a new upload system:

The first attempt to upload the save will be done by directly connecting to the server through TCP. That's normally easy because when people port forward, they often select both TCP and UDP out of ignorance. In addition to that, Blockland port forwards through uPnP with both TCP and UDP. RemoteControl takes advantage of those mechanisms by listening TCP on the server's port.

If this fails, then there are a choice of hosts that (1) the server will connect to and (2) the client will upload to:
   My server
   Any other person with a spare server (specifically you, Null)
   My server at home
Any server can deny an upload (or be unresponsive) and the uploader's client will seek the next server in the queue.

If all pieces fail, the original upload-through-commands system will be used, which is what it is now.

Privacy is expected, avoiding uploading through other servers will be possible.

Do it over TCP. In fact, let me show you what I was thinking of for a new upload system:

The first attempt to upload the save will be done by directly connecting to the server through TCP. That's normally easy because when people port forward, they often select both TCP and UDP out of ignorance. In addition to that, Blockland port forwards through uPnP with both TCP and UDP. RemoteControl takes advantage of those mechanisms by listening TCP on the server's port.

If this fails, then there are a choice of hosts that (1) the server will connect to and (2) the client will upload to:
   My server
   Any other person with a spare server (specifically you, Null)
   My server at home
Any server can deny an upload (or be unresponsive) and the uploader's client will seek the next server in the queue.

If all pieces fail, the original upload-through-commands system will be used, which is what it is now.

Privacy is expected, avoiding uploading through other servers will be possible.
That sounds like a good idea, but I still think that it's stupid that the client uploads parts it knows the server can't handle anyway.

That sounds like a good idea, but I still think that it's stupid that the client uploads parts it knows the server can't handle anyway.
With that there is still another obstacle: bricks can be changed at any time throughout the load.

Fixing that is a lesser priority than a system like I mentioned.

Also, the middle-man servers have host lists to keep clients updated with available servers.