I guess what he wants is to rank possible locations for cities, so the city does not exist yet.
"Value", of course, must be defined. You can either devise your own definition and algorithm, or look at the map generation helpers scripts in Assets/Gameplay/Lua since they probably contain something like that.
Now, to work with hexes, you need to use Map.plotDirection(x, y, DirectionTypes.DIRECTION_NORTHEAST). You can also directly use Map.GetPlot(x, y), here are how the "X" are laid out:
Code:
0 1 2 3 4 5 (even y)
0 1 2 3 4 5 (odd y)
0 1 2 3 4 5 (even y)
0 1 2 3 4 5 (odd y)
However be careful if you prefer Map.PlotXYWithRangeCheck(x, y, dx, dy, range), because this function rely on GetPlotXY(x, y, dx, dy) and this one does something strange (if you use dx = 0 and dy = 2, from plot (5, 5), it will return (6, 7): every two rows it goes one tile left or right, depending on whether dy is positive or negative). Now you may probably use it if you are careful (for a range of 3 you probably need dx going from -5 to +5, dy from -3 to +3).