Muler is a metascript that can do this. It lets you create reference tables in abilities: 10-15=Character find enough food to feed a Medium-sized creature for one day. 16-20=Character finds a common herb. Roll on the appropriate environment's common herb table to determine the result. >=21=Character finds a rare herb. Roll on the appropriate environment's rare herb table to determine the result. Then you can access the appropriate data by number. If you use a die roll, you can report the die roll, too, and you can use the result of the roll elsewhere in your macro. Since metascripts operate in a loop until there isn't any more meta-work to be done, you could automate those herb rolls as they were encountered from your table (automatically rolling against the appropriate table -- or automatically retrieving data from another mule). There are lots of ways to approach it, depending on your setup, so if you're interested in this sort of thing, post back and I'll break an example down.