In my experience map textures size is not so important. If it is done properly every textures can be 1024x1024 and there would be no problem. 512x512 are overall blurry and looking not so convincing in game.
But for that, every texture must be indexed. There is no problem if you have 20 textures with size 1024x1024 if they are indexed, that's only some 20Mbs of memory space. Which really is nothing. If they are not indexed, it could go up to the fourth times that, some 80-100Mbs, and that's a bit "heavy" for the game's engine. If you see 1000 squares in game covered with those 20 textures, its still 20, not 1000, the game repeats them, it will take place for just 20 of them in the memory.
On some weaker machines game is stuttering because graphic card can't do anisotropic filtering (so, its good to disable that on lap tops), and not because of big texture sizes.
@ lowfighter
With due respect, I think that you made a mistake. One square (or one pixel) in map_t, is always covering area of 1600x1600 meters in game if there is no multiplier number at the end of textures slot in load.ini file. For example:
LowLand2 = NTL_/land/summer/NTL_Darwin_Small/NTL_Darwin_Small_burmascrub.tga
Would be 1600x1600 meters.
LowLand2 = NTL_/land/summer/NTL_Darwin_Small/NTL_Darwin_Small_burmascrub.tga,2
Would be 800x800 meters.
LowLand2 = NTL_/land/summer/NTL_Darwin_Small/NTL_Darwin_Small_burmascrub.tga,4
Would be 400x400 meters.
LowLand2 = NTL_/land/summer/NTL_Darwin_Small/NTL_Darwin_Small_burmascrub.tga,8
Would be 200x200 meters (and there is no greater number than 8 )
That means that textures covers "whole square" (in 1600x1600), only quarter of square (in 800x800) and so on. In that way you get better and sharper looking texture, but because the rest of that particular square (or pixel in map_t) is covered with that same texture in that same size (2, 4, or 8 ) tilling is more visible.
You can also add "-" sign at the end of the texture slot. In that way you would have less tilling look, but also more blurry look of the texture in game, because texture is made bigger than one square in map_t.
For example:
AirField3= NTL_/land/summer/NTL_Darwin_Small/NTL_Darwin_Small_DarwinAF.tga,-2
Means that texture is fourth times bigger (not 2 times because we are talking about square meters here) than square or pixel in map_t and in game, it is also showing only one quarter of the texture for one pixel in map_t (which would be one square in game).
In my experience it is best to make originally textures which would really cover 1600x1600 meters. In example if the texture is made from the Google Earth images, scale it down to the real earthly 1600x1600 meters and then take it. There is a liner tool in Google Earth to measure that.
Thats how I see that.
Examples: