You could basically use SetPlayerPosFindZ to move one or more players in small steps over your map. Invert the direction so there are no big teleports that stream out the map for the player.
Код:
-->-->-->-->
<--<--<--<--
-->-->-->-->
<--<--<--<--
You can either move slowly and get accurate results (but big area will take days), or fast, but there will be some offset then that you need to subtract, as SetPlayerPosFindZ actually moves the player a bit over the actual ground.
Thats what I did before MapAndreas existed, when I needed the coordinates for the bombing fs (I had them in MYSQL OMGOMGOMG). I once posted my full code for this here, but that was years ago and I cant find it anymore. Theres nothing difficult about it anyways. Be aware that this takes a while. If you want 1x1 steps, whole San Andreas has 36,000,000 fields to check, and using a 10ms delay (which might already be too short to get good results) youll end up with 100 hours of mapping.
Alternatively I thought about a "live mapping", that tracks the position of players on your server, and saves the z coordinate of walking players while they move. Youll need trusted players for that of course, as hackers would ruin that, and it will take a while until the map is dense enough to be useable.