Game Development Community

Datablock cache?

by Eric Hartman · in Torque Game Engine · 08/16/2005 (8:56 am) · 4 replies

Just had an idea- do you think it's possible to export all the datablocks to a single file? Then they could be cached similar to the way mission lighting is cached.

When you connect to a server, the server would send you the check sum of its datablock cache and if you have it, then you can load the datablocks from the local file instead of downloading them. Seems like it could substantially decrease network loading times. I've noticed in Blockland that when people are hosting on residential connections it can take FOREVER to transfer the datablocks, even though the game itself will be quite playable.

#1
08/16/2005 (11:29 am)
I think this would be a neat resource. I know that the datablock load phase is much slower than it strictly needs to be, but I've not had a chance to do much in the way of optimizing it.

A cache like this would be super useful for a lot of people, and as a resource, it wouldn't need to be totally compatible with everything like an official GG solution would have to be...

I guess what I'm saying is, I'd love to see someone do an implementation of this idea!
#2
08/16/2005 (12:15 pm)
I didn't realize that all datablocks were sent. I thought there would be something like this implemented.
I would like to see this as well.

What compatibility issues would have to be considered for an official version? just curious.
Platform issues and currrent engine systems, and compatibility issues for engine updates would be considered.
Thoses aren't easily solved, but curious about other obvious issues that would cause problems for an official version.
#3
08/16/2005 (1:35 pm)
The biggest problem is that the system has to work with pretty much any datablock configuration that people have. That means it has to deal with cases where people are retransmitting datablocks (it CAN happen!) as well as with cases where the datablocks that are loaded varies between missions and so forth.

Basically, it should be a totally transparent solution to the end user.

Also has to work OK if it can't generate the file, if the client spams the server, if the server spams the client, and so forth.
#4
08/16/2005 (3:49 pm)
Thanks for the information Ben.
Just like other things in life, no two people would use the same thing the same way.
And like other caches, you want complete control when to use them and when to flush/rebuild them.
Obviously, no easy task.

Still want it, though, dang it!.

Err, sorry about going a bit off topic, Eric.