06-02-2010, 04:55 PM
If a developer has some time I'm interested in how the object handler would work.
First of all it's awesome that we finally can use a lot more objects then we'd been used to, but I'm sure there are some limits.
I guess that every x seconds the handler iterates through every online player, and checks which world and region the player is in. If player A is in the main world near the pirate ship, the handler would return all objects in the vicinity and stream it to the player, and also destroy the objects that are out of sight. Player B could be in a race map and will get other objects from, maybe, another array.
If we have thousands and thousands of objects (which we will), how will this remain responsive enough? Will there be seperate arrays (or tables, I don't know what it's called in pawn) for each world? Will the interval for checking the position of the player change based on the amount of players to reduce lag? Will it be world-based or will there be one massive array? Will it distribute the checks or will it check every player at once at the predefined interval?
Since I'm not really active (sorry about that, but I would like to be active in creating maps, if everything works as good as advertised) I don't know if we use an existing streamer, and if it's pawn-based or a C++ plugin. I guess the latter one could speed up things even more.
In some other map-related topic I learned that there can be 255 objects per 600x600 (meters?) area, is that correct?
First of all it's awesome that we finally can use a lot more objects then we'd been used to, but I'm sure there are some limits.
I guess that every x seconds the handler iterates through every online player, and checks which world and region the player is in. If player A is in the main world near the pirate ship, the handler would return all objects in the vicinity and stream it to the player, and also destroy the objects that are out of sight. Player B could be in a race map and will get other objects from, maybe, another array.
If we have thousands and thousands of objects (which we will), how will this remain responsive enough? Will there be seperate arrays (or tables, I don't know what it's called in pawn) for each world? Will the interval for checking the position of the player change based on the amount of players to reduce lag? Will it be world-based or will there be one massive array? Will it distribute the checks or will it check every player at once at the predefined interval?
Since I'm not really active (sorry about that, but I would like to be active in creating maps, if everything works as good as advertised) I don't know if we use an existing streamer, and if it's pawn-based or a C++ plugin. I guess the latter one could speed up things even more.
In some other map-related topic I learned that there can be 255 objects per 600x600 (meters?) area, is that correct?