diff --git a/apps/launcher/advancedpage.cpp b/apps/launcher/advancedpage.cpp
index 9b6e5fa8c..dcf376362 100644
--- a/apps/launcher/advancedpage.cpp
+++ b/apps/launcher/advancedpage.cpp
@@ -23,6 +23,7 @@ bool Launcher::AdvancedPage::loadSettings()
loadSettingBool(showEnchantChanceCheckBox, "show enchant chance", "Game");
loadSettingBool(showMeleeInfoCheckBox, "show melee info", "Game");
loadSettingBool(showProjectileDamageCheckBox, "show projectile damage", "Game");
+ loadSettingBool(rebalanceSoulgemValuesCheckBox, "rebalance soulgem values", "Game");
// Expected values are (0, 1, 2, 3)
int showOwnedIndex = mEngineSettings.getInt("show owned", "Game");
@@ -61,6 +62,7 @@ void Launcher::AdvancedPage::saveSettings()
saveSettingBool(showEnchantChanceCheckBox, "show enchant chance", "Game");
saveSettingBool(showMeleeInfoCheckBox, "show melee info", "Game");
saveSettingBool(showProjectileDamageCheckBox, "show projectile damage", "Game");
+ saveSettingBool(rebalanceSoulgemValuesCheckBox, "rebalance soulgem values", "Game");
int showOwnedCurrentIndex = showOwnedComboBox->currentIndex();
if (showOwnedCurrentIndex != mEngineSettings.getInt("show owned", "Game"))
diff --git a/apps/openmw/mwclass/misc.cpp b/apps/openmw/mwclass/misc.cpp
index 4b1a8844d..d2f5d35ba 100644
--- a/apps/openmw/mwclass/misc.cpp
+++ b/apps/openmw/mwclass/misc.cpp
@@ -89,13 +89,13 @@ namespace MWClass
// use soulgem value rebalance formula from morrowind code patch
int soul = creature->mData.mSoul;
- float soul_value = 0.0001 * pow(soul, 3) + 2 * soul;
+ float soulValue = 0.0001 * pow(soul, 3) + 2 * soul;
// for Azura's star add the unfilled value
if (Misc::StringUtils::ciEqual(ptr.getCellRef().getRefId(), "Misc_SoulGem_Azura"))
- value += soul_value;
+ value += soulValue;
else
- value = soul_value;
+ value = soulValue;
}
}
diff --git a/files/settings-default.cfg b/files/settings-default.cfg
index 87443ff1a..a2524ff17 100644
--- a/files/settings-default.cfg
+++ b/files/settings-default.cfg
@@ -216,6 +216,9 @@ followers attack on sight = false
# Can loot non-fighting actors during death animation
can loot during death animation = true
+# Makes the value of filled soulgems dependent only on soul magnitude (with formula from the Morrowind Code Patch)
+rebalance soulgem values = false
+
[General]
# Anisotropy reduces distortion in textures at low angles (e.g. 0 to 16).
diff --git a/files/ui/advancedpage.ui b/files/ui/advancedpage.ui
index 6832b86df..28d0f0543 100644
--- a/files/ui/advancedpage.ui
+++ b/files/ui/advancedpage.ui
@@ -109,6 +109,16 @@
+ -
+
+
+ <html><head/><body><p>If this setting is true, the value of filled soulgems is dependent only on soul magnitude.</p><p>The default value is false.</p></body></html>
+
+
+ Rebalance soulgem values
+
+
+
-