Oblivion talk:Alchemy

The UESPWiki – Your source for The Elder Scrolls since 1995
Jump to: navigation, search
Archives
Archive 1: Jul 2006 - May 2007
Archive 2: Jun 2007 - Jul 2008
Archive 3: Jul 2008 - May 2011

Wortcraft[edit]

One aspect of alchemy that many players overlook is how novice level wortcraft mimics difficult to acquire spells from the restoration school. Your intelligence and willpower got zapped by a will o' the wisp? Eat alkanet flower and clouded funnel cap. When your strength gets drained in combat, unglue yourself from the spot by consuming monkshood root pulp. Mandrake root is actually superior to the spell form of Cure Disease because it works instantaneously without leaving the character vulnerable during combat casting.

Even for players who never own a mortar and pestle, it makes a good habit to visit alchemists and scroll through the ingredient offerings for lightweight items that have useful affects. Prices are usually rock bottom and it's more enjoyable to keep a handy source of first age than to limp around Tamriel in search of healers.

Not sure where to fit this within the article. Suggestions welcomed. Calcinator 22:18, 13 April 2011 (UTC)

Fortify Luck[edit]

The article mentions fortify alchemy being useless, but what about fortify luck? The article implies that it doesn't work either (without saying it outright), but I *think* I've seen a difference from a high level fortify luck for 1 s spell. Um the Muse 04:00, 2 July 2011 (UTC)

The page says that only your base attributes are taken into consideration, which would make any Fortifying, or Draining for that matter, pointless. But it could always be mistaken. Feel free to try it out and post your results. --DKong27 Talk Cont 04:16, 2 July 2011 (UTC)
I have noticed a significant increase in potion/poison strength when casting a fortify alchemy 100 points for two seconds spell. My alchemy level is somewhere in the upper journeyman range and this spell gets me double in points for damage and restore potions, and many MANY more seconds of duration. i.e. damage health for 17 points over 28 seconds. And my restore health potions are more in the neighborhood of 72 points for 250 seconds. Also, poisons such as silence are 20 some odd seconds long. I stand in front of my alchemy table in Frostcrag Spire, (which grants 15 to alchemy) cast the spell, and mix with master apparatus. This current character is level 13 and one of those damage health spells kills just about anything with a sneak marksman attack. Fire it from a bow with a weakness to an element, and then cast a medium damage spell and it makes handling multiple enemies much easier.
What happens if you don't use the alchemy table? Also, what platform are you on? It's very rare that there's a difference between platforms, but it's happened a couple of times. Robin Hoodtalk 04:36, 4 February 2012 (UTC)
I tried this out, and no Greater powers with fortify alchemy help, but the alchemy table in Frostcrag Spire does help to improve. I didn't notice it before, but this wiki page confirms this in two places. --2.248.183.162 07:10, 15 May 2013 (GMT)

Name Potions[edit]

(moved from the article)

  • In the PS3 version, a glitch may occur in which failing to customize the name of the potion (e.g. leaving the name value as "Name Potion") will result in the potion not being saved in the inventory.
  • In the PC version it is possible to have a similar bug where you create a new potion called "Name Potion" with no effect. These can be sold, used, (and all other interactions) just like normal, but simply have no effect. It happens if the game hangs while you're making many potions. The "Name Potion" is made from a single ingredient when your Alchemy level is less than 100. High sell value.
Before these go on the article we need better detail on how it happens. Unless there's more information there's little point in including it. If I added every single glitch I've ever seen in the game we'd run out of disk space. rpeh •TCE 10:59, 7 July 2011 (UTC)
I know it's an old post, but I can clarify the PC version of the bug. There seems to be a small delay in the time between when you make a potion and when it checks to see if you have the ingredients to make another. This usually occurs when spamming alchemy and can be reproduced rather reliably. When making potions and you run out of an ingredient needed for the potion to have any effect, there is a small window of time where the "Create" button can still be clicked. If clicked during this time, it proceeds to make a potion as per normal, including using up any ingredients that are selected, except that there are no effects attributed to it. This also causes it to gain the label of "Name Potion" because there are no effects for the system to automatically name the potion. Edit... 4 years later: I might also add that this is a reoccurring bug in the series as it also happens in Morrowind (IIRC) and in Skyrim. Remus Lupine (talk) 22:39, 7 August 2018 (UTC)

Only novice alchemy equipment?[edit]

I just started a new archer character that is going to be under-leveled (I'm going to beat the game without ever leveling up). I wanted to be an alchemist/archer, but after reading the alchemy page, it seems you have to level up to get better alchemy equipment. Is there any other way to get even slightly better than novice equipment without leveling up?

74.135.58.92 22:07, 17 June 2014 (GMT)

You can get a full set of Apprentice items from Fathis Aren's tower, and a Journeyman calcinator in the Duke of Mania's quarters in the Shivering Isles. Other than that there is no way to obtain anything other than novice equipment. Silence is GoldenBreak the Silence 22:34, 17 June 2014 (GMT)

Findings based on disassembly of the game engine[edit]

The AlchemyMenu class itself is responsible for handling the creation of potions. It creates a current working potion -- a potion base form -- when opened, and customizes this potion as you select and deselect ingredients. (When you actually cook a potion, you're just given one of the current working potion.) The AlchemyMenu needs to copy all magic effects from the selected ingredients to the potion, but without creating any duplicates. After doing that, it computes the strength on each effect.

If anyone wants to investigate the exact formulae for computing effect strengths, here's the information you'll need for the latest version (1.2.418).

Effect strengths are computed with these functions:

// Address of this subroutine: 0x00548420
void ComputeType1PotionEffectStrength(
   float* outMagnitude, float* outDuration,
   float  baseCost, // ............ // Base cost of the magic effect
   float  mortarAndPestleInfluence, // See below
   UInt32 unknownEnum, // ......... // See below
   bool   isHostile, // ........... // The magic effect is hostile
   float  appaQuality3, // ........ // OBSE docs say this is the retort?
   float  appaQuality1, // ........ // OBSE docs say this is the alembic?
   float  appaQuality2, // ........ // OBSE docs say this is the calcinator?
   bool   isPoison // ............. // All effects are negative; this will be a poison
);

// Address of this subroutine: 0x005486A0
void ComputeType2PotionEffectStrength(
   float* outDuration
   float  baseCost,
   float  mortarAndPestleInfluence,
   UInt32 unknownEnum,
   bool   isHostile,
   float  appaQuality3,
   float  appaQuality1,
   float  appaQuality2,
   bool   isPoison
);

// Address of this subroutine: 0x005487F0
void ComputeType3PotionEffectStrength(
   float* outMagnitude,
   float  baseCost,
   float  mortarAndPestleInfluence,
   UInt32 unknownEnum,
   bool   isHostile,
   float  appaQuality3,
   float  appaQuality1,
   float  appaQuality2,
   bool   isPoison
);

Float mortarAndPestleInfluence is the result of this call, which applies the game setting used for the Mortar and Pestle:

// Address of this subroutine: 0x00548400
ApplyMortarAndPestleMult(/*SInt8*/ GetFormQuality(first apparatus), (*g_thePlayer)->GetLuckModifiedSkill(kActorVal_Alchemy));

Int unknownEnum is computed for each effect and its values appear to line up with this table (the jumps are tangled; they're near 0x0059496C and write the enum to esi):

Unknown enum per effect
Result Effect is hostile Apparatus 1 present Apparatus 2 present Apparatus 3 present
1 No Doesn't matter No Yes
4 No Doesn't matter Yes No
Previous or 0 Yes No No Doesn't matter
3 Yes No Yes Doesn't matter
2 Yes Yes No Doesn't matter
5 Yes Yes Yes Doesn't matter

DavidJCobb (talk) 23:06, 7 January 2018 (UTC)

Disassembly confirms that a potion's weight will be the average of its ingredients' weights. DavidJCobb (talk) 19:30, 24 January 2018 (UTC)
Ah! Reading the article more closely, I see you all knew this. And apparently, potions of the same basic effect have their weights determined by the first cook. I know at least part of the puzzle here: potion weight is calculated when the potion is cooked, in void AlchemyMenu::CookPotion() (0x00594CA0); this same function is what checks whether your potion "already exists," creating a new base form (and assigning its model, icon, and weight) if it doesn't. That check involves a call to a DataHandler method, which returns any existing potion that matches the one passed in (or nullptr if your potion is unique).
Presumably, then, the problem is that that DataHandler method doesn't check the potion's weight. And indeed, the vanilla code would break, because the potion's weight is only set after AlchemyMenu has been told that the potion is unique! The solution is conceptually simple (actually doing the R&D and implementing it is another matter): patch the code in advance of the DataHandler check, so that the potion weight gets set first; and then patch the DataHandler method to check the weight along with whatever else it checks. (Of course, one would have to be mindful of an OBSE hook that wraps that DataHandler method call.) DavidJCobb (talk) 23:39, 24 January 2018 (UTC)
Turns out, I mistook a boolean that means "this is a poison" for "this has positive effects." Fixed in the above. DavidJCobb (talk) 16:18, 8 July 2019 (UTC)

Duration is wrong?[edit]

The given formulae for the duration seem to be wrong. The formula for the strength seemed to work for the few times I tried, but the durations i got are consistently off the mark. Changing the factor between BaseDur = 4*BaseMag doesn´t work, it is more complicated than that. — Unsigned comment by 80.242.207.132 (talk) on 7 February 2019

Alchemy doesn't increase from one-ingredient potions[edit]

This is incorrect:

Your Alchemy experience increases five points per potion created (regardless of the number of ingredients used).

I used Mantle of the Woodsman when I had alchemy level 95. This caused the effective alchemy level to be 105. It allowed me to create potions with only one ingredient before I actually reached level 100. I gained no experience in alchemy from this.

Alchemy originally had a chance to fail[edit]

Fiddling around in the CS, I found this setting sPotionFailed
It says "Your potion failed and your ingredients were lost"
Is this a leftover from Morrowind or did they intend on giving alchemy a chance to fail? --Sgt.McHale (talk) 18:21, 12 January 2023 (UTC)