TMaps cannot be replicated, unfortunately. I’ve also been reluctant to send such large amounts of data to clients. Whether or not that is a good idea will depend a lot on the specific game, so it is not an implementation I would want to have in the base toolkit. But if you have a relatively moderate grid size and don’t intend to do a lot of changes to the grid at runtime, regenerating the TMaps client side is a sure way to reduce input lag when hovering over tiles.
For large maps it can also be possible to send over the relevant FPathfinding TMaps generated during pathfinding as needed. Since you cannot directly replicate you would have to send over the keys and values as arrays and recombine them to a TMap (or use them as arrays if you do not need to lookup values multiple times per tick). For the hover marker itself it might be possible to use a “naïve” method that does not need access to GridLocations, by using a line trace with PathTrace and placing the marker simply based on this (and info about the location of the GridManager, as well as the tile size).
I don’t think access to GridLocations etc. for clients is that bad for security necessarily, unless the game relies on hidden information that influences these variables.
So to sum up, this is something I haven’t found the perfect, general solution for yet, but there are many different possible solutions depending on the requirements of the specific game.