This is amazing!
Thanks!
I will absolutely add it to masterwork df; did you test it a lot? I wonder if you get 5 statues if you chop a corpse into upper body, arm, arm, leg, leg, and use the bodyparts to run the reaction.
Well, I tested the script just enough to ensure basic functionality; I thought I'd leave the extensive playtesting to the community. The way the script is currently written means that using body parts will also produce the modified statues, as body parts also contain the necessary references to the creature they came from. My raw modding is a little rusty, but couldn't you simply specify in the reaction that the reagent must be a CORPSE rather than a CORPSEPIECE to ensure proper functioning? I guess that you'd also want to use the [UNROTTEN] token unless you want skeletons being turned into statues.
If no one objects, I'd volunteer to write the workshop and reactions for this.
Considering that I wrote this script motivated by your request, I see no reason why anybody should object to this.
Would this mean that we can custom-make statues or other items that correlate with specific historical figures? I'm not thinking about taxidermy now, but a special craftsdwarf shop that makes specific engravings/decorations that the player can select, instead of always getting random ones.
Yes! To my knowledge, such a thing is entirely possible, and has actually been for quite a while now. I've been thinking about it, and might attempt one sometime (although such a task would be better left to the more experienced script-writers; I'm just a novice who learns stuff by reverse-engineering other scripts). A gui like that used in Putnam's "hack-wish" script could be used to select the desired shape, plant, tree, item, creature or even historical figure depicted in the image. A gui for selecting basic item improvements like spikes would be even easier to make. The only issue, of course, is the script's complexity. However, using something like reaction-product-trigger would mean that the actual decoration selection would occur only after the product was created, as the item needs to actually exist before being modified. (taxidermy.lua works by letting the game create the statue normally, and then edits the image and decoration data using information obtained from the corpse - you can actually see the original statue if you pause the game less than a tick after the reaction ends).
Easiest would be just a single reaction for the craftsdwarf, using corpse and thread.
I've just realised that I forgot to add support for multiple reagents! I'll try to fix that eventually; right now you'll have to make do with using the corpse as your sole reagent.
Meanwhile, I've edited the script to fix an error regarding images.