@MichaelHale A red dot that you can move with the arrow keys:
landscape = Map[
If[# < .47, 1, If[RandomReal[] < .03, 2, 3]] &,
GaussianFilter[RandomReal[1, {100, 100}], 5], {2}];
plotLandscape[pos_] := ArrayPlot[
ReplacePart[landscape, pos -> 4],
ColorRules -> {1 -> Blue, 2 -> Black, 3 -> Brown, 4 -> Red}
]
DynamicModule[{pos = RandomChoice[Position[landscape, 3]]},
EventHandler[
Dynamic@plotLandscape[pos],
"RightArrowKeyDown" :> (pos = pos + {0, 1}),
"LeftArrowKeyDown" :> (pos = pos + {0, -1}),