While the other answers here are really good for generating the
kinds of static landscapes that would work for this specific
need. There are other methods that people coming across this
question might be looking for if they want to create landscapes
that change over time or appear much more realistic you can
follow this technique. Unlike the other answers you begin this
with an entirely empty map. Start with what you would consider
to be sea level. Use Perlin Noise to add very slight variation,
if you have 256 possible elevations, don't vary more than 3-5 in
either direction. This builds the first few billion years of
your landscape without having to actually run a simulation for
that long. Split the map along straight or curved lines to
create plates, the more detailed the shapes of the plates the
more interesting your landscape with be. Keep them large. Give
each plate a direction, speed. Over a given timeframe move the
plates in step-wise fashion around the map, dragging all tiles
above them with them. Whe