There are many utilities out there for DF, I'm sure most players are familiar with Dwarf Therapist or one of the many similar utilities, for example. They are currently based on pure memory manipulation, enterprising players sitting down to figure out what pieces of memory does what in a running copy of DF, then figuring out how to change that to make things easier to manage. We could do a lot more than this, and do it much faster, simpler and with greater cross-version compatibility if there were some sort of API included in DF for doing this. It doesn't have to be very complicated or fancy, a simple open TCP socket, by default only open for local connections, with a simple text protocol would probably be good enough for the entire thing.
Things that could be tamed to a much greater extent that way include, but are not limited to:
* Dwarf labors/names/mood
* Reading and designating in the stocks menu
* Adding and altering manager orders
* Mass designating preset build/dig orders, think pretty, OCD-friendly blueprints
This has probably been suggested many times in the past already, but this time is
different. This time is
special, because...I added a note about this on the eternal suggestion voting list! I have done my part, the rest is now up to you. I need you, noble dwarf-herder in agreement, to head on over to:
http://www.bay12forums.com/smf/eternal_voting.php..and search for the title "External API for DF utilities" and put down your vote for this. (I recommend searching, because it's currently pretty far down in the list.)