Welcome to the AFK Mods bug tracker. In order to report an issue, you need to have a VALIDATED account to post one. Once you have followed the link the registration email sent you, please select a project from the drop down menu below. Select “Open New Issue” and fill out the form with as many details as possible.

Please also consider sending your bug report to Bethesda if you are reporting on an issue with Skyrim Special Edition, Fallout 4, or Starfield. Doing so will help everyone on all platforms.

Issue Data
Status: New
Issue Type: Bug Report
Project: Unofficial Skyrim Special Edition Patch
Component: Unofficial Skyrim Special Edition Patch
Category: Perks & Skills
Assigned To: Nobody
Platform: All
Severity: Low
Votes: 0
Watching: N/A
Opened By Cealdor on Dec 10, 2023 8:05 am

Issue #33685: I think the changes to Haggling and similar perks should be reverted

 
The Haggling perks make prices "X% better" (X = 10, 15, 20, 25, 30). There are two ways to interpret this for buying prices:
  • price factor = 1/(1+X/100)
    You can buy X% more items for your gold.
    Used for the vanilla values (0.91, 0.87, 0.83, 0.8, 0.77).
  • price factor = 1-X/100
    A discount of X%.
    Used for USSEP's values (0.9, 0.85, 0.8, 0.75, 0.7).


  • Plot illustrating the difference between the formulas:
    Spoiler:
    The difference is insignificant for small X, but gets more pronounced as X grows.


    There does not seem to be a linguistic consensus on which formula to use (for example, see this book, page 28). I propose that the vanilla formula is more suitable in this case.

    Argument 1:
    USSEP's formula is more impactful for buying than for selling. To illustrate this, imagine a hypothetical perk that makes prices "95% better". We must also assume that the trade price caps (max sell price = value * 1.00, min buy price = value * 1.05) don't exist, and that sold/bought items can't be bought/sold back.

    When selling, the perk would allow you to earn 95% more gold. However, it would also allow you to purchase items for just 5% of the original price, a dramatically more impactful effect. A perk that makes prices "X% better" should be equally impactful when buying and when selling.

    Argument 2:
    One argument for using the USSEP formula is that Fortify Barter potions and enchantments, as well as Blessing of Zenithar, use it. However, consider the selling and buying price bonuses from leveling the Speech skill. In order to say that these two bonuses are equally strong, we have to use the vanilla formula, as shown below.

    ("Proof" for formulas, and video verification.)

    Spoiler:
    base price factor = 3.3 - .013*min(skill,100)					(1)
    Assuming no perks and effects,
    sell price modifier = 1								(2)
     buy price modifier = 1								(3)
    sell price = round(value of item * sell price modifier / base price factor)	(4)
     buy price = round(value of item *  buy price modifier * base price factor)	(5)
    Inserting equations (1) and (2) into (4), inserting (1) and (3) into (5), and ignoring rounding and skill levels over 100, we get:
    sell price = value of item / (3.3 - .013*skill)					(6)
     buy price = value of item * (3.3 - .013*skill)					(7)
    selling price bonus =
    (sell price / original sell price) - 1 = /(6)/ =
    (value of item / (3.3 - .013*skill)) / (value of item / (3.3 - .013*0)) - 1 =
    (value of item / (3.3 - .013*skill)) * ((3.3 - .013*0) / value of item) - 1 =
    (3.3 - .013*0) / (3.3 - .013*skill) - 1 =
    3.3 / (3.3 - .013*skill) - 1							(8)
    Using the vanilla formula:
    buying price factor = 1/(1+buying price bonus) <=>
    1+buying price bonus = 1/buying price factor <=>
    buying price bonus =
    1 / buying price factor - 1 =
    1 / (buy price / original buy price) - 1 = /(7)/ =
    1 / ((value of item * (3.3 - .013*skill)) / (value of item * (3.3 - .013*0))) - 1 =
    1 / ((3.3 - .013*skill) / (3.3 - .013*0)) - 1 =
    1 / ((3.3 - .013*skill) / 3.3) - 1 = 
    3.3 / (3.3 - .013*skill) - 1							(9)
    As equations (8) and (9) show, selling price bonus = buying price bonus, if using the vanilla formula.


    Example: When leveling Speech from 0 to 100, the final price factor goes from 0.303 to 0.5 — 65% better — when selling, and goes from 3.3 to 2 when buying. The buying price, too, can be said to become "65% better" when using the vanilla formula: 2/3.3 = 1/(1+0.65). If the USSEP formula is used, it can only be said to become around "39% better": 2/3.3 ≈ 1-0.39.

    Affected perks (possibly an incomplete list):
    00058F75 Allure
    000BE128 Haggling00
    000C07CE Haggling20
    000C07CF Haggling40
    000C07D0 Haggling60
    000C07D1 Haggling80
    xx01E7F1 DLC2BlackBookHagglingPerk (xx = Dragonborn digits)
    xx03399F DLC2BlackBookSeekerPerks (xx = Dragonborn digits)

    PS: I regret and apologise for my posts in the mod's comment section. I did not consider that USSEP's bug tracker could be so extensive as to include bug reports for its own changes, but should have checked.

    Related Issues: 8551  22880