Seeing how Toady One is against opensourcing DF, despite the fact that it has proven to be really productive in the past (see gcc, linux, firefox, X server, etc... but that and his rather dubious reasons are off topic atm), I would like to stress the importance of making some kind of scripting interface for DF, much preferably using some well-established programming language, like Lua (i'd stick with Perl personally, for lots of reasons, C syntax and simplicity of embedding being among the most important ones).
The availability of Scripting API could possibly help solving a lot of issues:
- automatic vein/gem mining
- automated exploratory mining designations (major pain in the ass currently)
- improved production orders
- custom triggers/actions (found gems? mine them, then if value < 25 - cut and encrust, if > 25 - store rough... or struck alunite or some other nonvaluable stone? just go on mining without bugging me for christs sake)
- ai scripting? like smarter skill-based job queues without needing to specifically turn on and off every dwarfs labors (example: designate large area for wood cutting, and professional wooductters only go and fell trees, and everyone else hauls them)
- building blueprints (make 200 beds & furniture items; mine 200 rooms; clean stuff up; build things; smooth; engrave;)
- heck, even wholesale fortress blueprints. unmanned operation, lol. code it, fire it up, sit back and enjoy.
- tons and tons of possible stuff, it really depends on the specification of API itself.
Please consider.