Ok, then I try to be more concrete. I am currently trying to find out how to store our really huge terrain efficiently - either inside the SGS using a set of (terrain chunk descriptor, terrain mesh/texture info, terrain decoration info) which would sum up in using about 1.05 million GLOs for that, or just storing the terrain chunk descriptors in the SGS and use another extern database outside of the SGS on a different server instead.
If I would need to extract the requested data out of several GLOs and send it back to the client, I need to know if I have enough time to do this in a single task for 1 terrain chunk (the atomic operation here, because our terrain is terraformable and not transaction-safe information could lead to cracks in the mesh, flying objects or objects stuck in the ground visually).
But again, if I am more or less forced to use the out-of-SGS solution and just operating on terrain chunk descriptors inside the SGS which would arise the need to communicate between the SGS and the external database the question arrives “why should I use SGS if the answer to all vital questions for our game so far is use an external database instead?”.
So far we need to externalize the economic database and the terrain database - now to the next point, calculating the flow network for our terrain. Currently this is organized in a huge flow network graph with several “roots” which is traversed down 1 level each idle cycle of the server and the results are stored in the associated terrain decoration info; as it is now we need about 3 to 5 seconds to recalculate the whole flow network using just idle cycles of the server (not realtime, but good enough to render realistic rivers, flooding and dry periods on the terrain). I wonder what the answer will be to these requirements of our game … again “use an external solution for this”?.
I really start thinking that the SGS might be the wrong technology for our game - I can imagine a lot of games which might be able to be run on the SGS, but I am really in doubt if we can implement our requirements on the SGS given the current abilities of the SGS. That is why I ask for more precise information about the timing of task. How much will I be able to do in a task?- How many GLOs may I be able to access with GET before a task might be discarded assuming they would have just a few kB each?-
These are the things I am struggling with … any ideas or comments?
Ragosch