|The Love Potion (from Wikipedia)|
To brew a potion, a recipe is required. Every recipe specifies one or more special components that are required, in addition to mundane ingredients and procedures. There may be more than one recipe for the same potion (each making use of different special components). Recipes can be discovered in play much like scrolls or purchased from specialists such as apothecaries (who tend not to share the secrets of their livelihood) or sages (who often charge ungodly prices).
Potion recipes have a level, just like spells. In order to brew a potion from the recipe, the character in question must be able to cast spells of the equivalent level. Potion components cost 500 GP and one week per level (so a second level potion would cost 1000 GP of ingredients and require two weeks of work). Like magic research, brewing potions may be done during downtime punctuated by adventuring, as long as too much time (by referee ruling) does not pass. Characters do not need to spend money separately to establish a laboratory. It is assumed that as items are created, the character naturally accumulates the paraphernalia required, and this is abstracted into the cost of ingredients.
Fighters and thieves should use the magic-user spell progression to determine if a given character is skilled and knowledgeable enough to create a particular item. Costs are identical (500 GP for level 1 poison, etc). The only significant difference is that each "brew" of poison results in 1d6 doses (unless otherwise specified in the recipe). Different poisons may also have different application methods (also by recipe), so one poison may be contact, one poison may be injected (i.e., for coating a weapon), another poison may end up being a beaker full of gas that may be hurled like a grenade. Mutatis mutandis for fighters. In addition to incendiaries, fighters can create (or oversee the creation of) siege engines and siege works. Schematics for these work exactly as other recipes, and are rated similarly by level.
Note that though the ability to brew potions is available to characters of any level (given appropriate class), the costs involved (along with the fact that spending GP results in XP) means that characters that craft several items (be they scrolls, potions, or something else) will naturally end up becoming higher level, with no other constraints required.
Optional rule: cross-class brewing. One kind of class may create the type of recipe items appropriate to another class (assuming a recipe and special components are available), but the the costs are doubled due to unfamiliarity and the crafting is only successful on a d20 roll less than or equal to the intelligence score. Upon failure, the components are not wasted, but another week must be spent (and another check made) until either the brewing is successful or the task is abandoned. In any case, the spent GP results in XP (learning from failure!).
I'm thinking that maybe each class should begin with one basic first level recipe (love potion, healing potion, minor firebomb, and minor poison, perhaps).
(In Hexagram, provisionally, the ability to brew potions comes with the alchemy trait, the ability to brew poison comes from the assassination trait, and the ability to craft incendiaries or do siege-work comes with the ranged combat and melee combat traits, respectively.)