Class system update:
1. Experience can now be earned by all friendly units around the unit who makes the kill. The radius defaults to -1, which is the current behavior of killer only. To change go to hack/scripts/base/classes.lua and change the radius = -1 line to whatever you would like. Experience is added straight up to all units, not divided amongst them. Plan accordingly.
2. Spells can now have an associated "cost" to learn. This cost is represented by experience and is tracked separately from class and total experience. The price of learning a spell will be subtracted from this amount, and if you don't have enough, the spell will not be learned. To add a cost to the spells add [SPELL_COST:#] To the spell entry in the classes.txt file.
3. A new script, add-experience.lua, has been made so that you can gain experience with interactions (or anything that can trigger scripts, like reactions). Eventually I will be implementing an automatic way to generate experience from interactions, but for now you will need to use the syntax
modtools/interaction-trigger -onAttackStr "whatever your CDI:VERB is" -command [ classes/add-experience -unit \\ATTACKER_ID -amount # ]
By default you will gain no experience from interactions. Can also be used for reactions with the following syntax
modtools/reaction-trigger -reactionName TRAIN_CLASS -command [ classes/add-experience -unit \\WORKER_ID -amount # ]
All scripts *should* work with the updated DFHack for 40.xx, but remember that the syntax has been dramatically changed, so that the scripts no longer function off of reading SYN_CLASSes and instead rely entirely on the system shown above. Please let me know if there is any difficulty.
Looking to the future, I am almost done with a working "Civilization" system which has the basics in it (adding animals, items, materials, etc...). I am going to keep working on it for awhile until I get most of the features I had originally planed implemented, then I am also going to handle the "Living World" aspect that I mentioned earlier, with the hopes of tying the two together into a cohesive system that allows for the "story" to progress while you play the game.
After I am frustrated enough, or somehow magically get it all to work, I am then going to tackle a gui based journal that is currently planned to keep track of most generic information (e.g. 17 Migrants arrived, 12 Goblins and 2 Trolls sieged us, Ultimate Super Name the thong was created, etc...), as well as more specific things that a modder might want you to have access to while playing (e.g. Metal working flow charts, expanded descriptions, etc...). Finally I will also be adding a quest system into the journal that will reward players based on modder created quests.
That is what I am planning for now. (And my poor mod gets further delayed by my DFHack ideas, oh well)