I am wanting to make a grid system that functions like the one used in Runescape. You can kind of see it in this http://imgur.com/a/nWssl. I want to support grids that are at least a couple square km’s, which I don’t think would be an issue if I keep the cell size 1m x 1m (is that too low res?).
I am assuming it would be best to handle all of the basic grid logic in C++ for performance reasons.
If I do use C++, what is the recommended type of storage that I should use? I see TArray’s used quite a bit but they are one dimensional. Of course I could use helper functions to simulate a 2D array but that isn’t preferred. I found this example from Rama https://forums.unrealengine.com/showthread.php?60398-Replicating-a-2D-dynamic-array&p=232520&viewfull=1#post232520 but it looks like that would replicate the entire array whenever there is a change instead of just the changed cell. Am I correct in that assumption? If so, I don’t think that solution would work well if the grid has a lot of stored actors.
Would having a grid just for static objects like trees, walls, and water be better than a grid that holds both static and dynamic objects?
I found this toolkit https://www.unrealengine.com/marketplace/advanced-turn-based-tile-toolkit and am curious if it would be easier to write my specific implementation from scratch or to modify the one on the market to be realtime instead of turn-based.
From these questions you can guess I am a noob. Is this task too difficult for a beginner like me? I feel like if I can at least get the foundation down for my game, adding content like items and mobs should be much easier. Some pointers and/or psuedo-code would be much appreciated!