On topic of helping meet needs, I have a few tips:
- The crafting need can be met by making a craft workshop for any dwarf that doesn't have a main job that is a craft. You then assign the workshop to only that dwarf and add a manager job for a craft that repeats once a month (or probably once a season is enough). After that you never need to think about it. Like a lot of DF, it's a PITA to set up. Yes, it means you need 10s of workshops that are idle most of the time. I kind of find it funny that world gen fortresses have ten times more workshops than you would ever need... coincidence? Of course, but it's funny ;-)
- I'm pretty sure you can satisfy the "helping someone" need by caging or restraining a grazer and assigning the dwarfs who need the boost with "Animal Care". They will feed the grazers with either a plant or a prepared meal and receive the positive thought as well as satisfy the need (or at least that's what I remember the last time I tried it -- haven't done it yet in my current game).
- The food preference is a lot easier to take care of than I realised before. The key is to make prepared meals. This allows you to extend your ingredients with fillers. Make a stockpile with at least 2 tiles that can hold drinks next to your kitchen (because 1 will get filled with an empty barrel -- stupid thing). Put your other ingredients further away (mine are about 4 tiles away). Make biscuits (easy meal). They only take 2 ingredients. Give to the booze stockpile near the kitchen from the main booze stockpile.
What will happen is that your dwarf will pick some random solid ingredient when starting the job and then when they are choosing the next ingredient, they will be standing next to the booze. They will always select the booze in this case. If you have good growers (and especially if you are using fertiliser), you can make really large stacks of plants, which will make ridiculous stacks of booze. This will make similarly ridiculous stacks of biscuits -- one ingredient of which is guaranteed to be favoured by some of your dwarfs because it is a booze they like. There are a *lot* less boozes than there are ingredients so more chance to satisfy dwarfs. The solid ingredient also ends up getting multiplied, effectively. So if you have 5 giant tiger meat and 40 plum wine, then you end up with 45 giant tiger meat biscuits with minced plum wine. Your dwarfs who like giant tiger meat *or* plum wine will search out these biscuits if they are in the required radius (and I've tested this myself as well).
I've noticed that most of my dwarfs either have a liked food that I can get or a liked booze that I can produce. Since I can easily make stacks of 40-50 (or even higher) for each, it means that there is a good chance for each dwarf to find a food that they like within the month or so when they eat. Thinking about it now, it might be worth buying lots of small stacks of rare food that you can't produce yourself. This will allow you to get the maximum extension later.
There are probably better configurations for food production than I've outlined, but I've tested that configuration and it works really, really well. PatrikLundell's script for buying liked food would probably complement this extremely well. I was thinking that lavish meals might work out better (more variety), but I think that practically guaranteeing each solid ingredient is used with a large booze stack is better. Getting the dwarfs to randomise the drink production is a bit more challenging, though ;-)