ArmA/ArmA2/OFP have the worst engines of any games I have ever worked with. That being said, they are the only series of games that do what they do - nowhere else can you have semi-realistic combined arms combat on such a massive scale. Also, the dev team is very supportive of its modding community, a trait that is becoming increasingly rare nowadays.
I really can't emphasize how painful it is to do any nontrivial modding with their engine though. To give an example, the ACE guys (a mod which adds a ton of features, infantry units, vehicles, and weapons to the game) somewhat recently added a working CCIP pipper to some of the aircraft in the game. In order to make this work, they had to do the following:
1) Create a screen overlay and add a 'map' object to it. Map objects are normally used to (surprise) draw a map similar to what you would see on a paper map.
2) Make every object on the map invisible. This requires explicitly setting hundreds of map attributes.
3) Size the map, which is based on the island size. Since there isn't any way to directly retrieve the size of an island, they have to do this by zooming the map and doing some trig.
4) Clip the map object so that it only overlays the portion of the HUD projected on the user's screen.
5) Add a callback to the onDraw event of the map object, and render the pipper.
This is literally the only way to create an overlay that will reliably render every frame. A map object has to be used because it is the only object that offers an 'onDraw' event. Bear in mind that I'm leaving a lot of stuff out of that description too - determining the point of impact of the bomb actually requires doing numerical integration to predict the path of the bomb.
Back on topic, it's really unfortunate what happened to those two members of the dev team. A potential twenty years in prison for taking some snapshots from publicly accessible locations is bullshit.