Merge pull request #2329 from Capostrophic/options

Some options shuffling
pull/541/head
Andrei Kortunov 6 years ago committed by GitHub
commit 610628eb25
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -74,7 +74,6 @@ bool Launcher::AdvancedPage::loadSettings()
loadSettingBool(preventMerchantEquippingCheckBox, "prevent merchant equipping", "Game");
loadSettingBool(classicReflectedAbsorbSpellsCheckBox, "classic reflected absorb spells behavior", "Game");
loadSettingBool(rebalanceSoulGemValuesCheckBox, "rebalance soul gem values", "Game");
loadSettingBool(chargeForEveryFollowerCheckBox, "charge for every follower travelling", "Game");
loadSettingBool(enchantedWeaponsMagicalCheckBox, "enchanted weapons are magical", "Game");
loadSettingBool(permanentBarterDispositionChangeCheckBox, "barter disposition change is permanent", "Game");
int unarmedFactorsStrengthIndex = mEngineSettings.getInt("strength influences hand to hand", "Game");
@ -82,6 +81,7 @@ bool Launcher::AdvancedPage::loadSettings()
unarmedFactorsStrengthComboBox->setCurrentIndex(unarmedFactorsStrengthIndex);
loadSettingBool(requireAppropriateAmmunitionCheckBox, "only appropriate ammunition bypasses resistance", "Game");
loadSettingBool(magicItemAnimationsCheckBox, "use magic item animations", "Game");
loadSettingBool(normaliseRaceSpeedCheckBox, "normalise race speed", "Game");
// Input Settings
loadSettingBool(allowThirdPersonZoomCheckBox, "allow third person zoom", "Input");
@ -135,7 +135,6 @@ void Launcher::AdvancedPage::saveSettings()
saveSettingBool(preventMerchantEquippingCheckBox, "prevent merchant equipping", "Game");
saveSettingBool(rebalanceSoulGemValuesCheckBox, "rebalance soul gem values", "Game");
saveSettingBool(classicReflectedAbsorbSpellsCheckBox, "classic reflected absorb spells behavior", "Game");
saveSettingBool(chargeForEveryFollowerCheckBox, "charge for every follower travelling", "Game");
saveSettingBool(enchantedWeaponsMagicalCheckBox, "enchanted weapons are magical", "Game");
saveSettingBool(permanentBarterDispositionChangeCheckBox, "barter disposition change is permanent", "Game");
int unarmedFactorsStrengthIndex = unarmedFactorsStrengthComboBox->currentIndex();
@ -143,6 +142,7 @@ void Launcher::AdvancedPage::saveSettings()
mEngineSettings.setInt("strength influences hand to hand", "Game", unarmedFactorsStrengthIndex);
saveSettingBool(requireAppropriateAmmunitionCheckBox, "only appropriate ammunition bypasses resistance", "Game");
saveSettingBool(magicItemAnimationsCheckBox, "use magic item animations", "Game");
saveSettingBool(normaliseRaceSpeedCheckBox, "normalise race speed", "Game");
// Input Settings
saveSettingBool(allowThirdPersonZoomCheckBox, "allow third person zoom", "Input");

@ -71,11 +71,8 @@ namespace MWGui
std::set<MWWorld::Ptr> followers;
MWWorld::ActionTeleport::getFollowersToTeleport(player, followers);
// Apply followers cost, in vanilla one follower travels for free
if (Settings::Manager::getBool("charge for every follower travelling", "Game"))
price *= 1 + static_cast<int>(followers.size());
else
price *= std::max(1, static_cast<int>(followers.size()));
// Apply followers cost, unlike vanilla the first follower doesn't travel for free
price *= 1 + static_cast<int>(followers.size());
int lineHeight = MWBase::Environment::get().getWindowManager()->getFontHeight() + 2;

@ -2372,7 +2372,8 @@ void CharacterController::update(float duration, bool animationOnly)
moved.x() *= scale;
moved.y() *= scale;
if(mPtr.getClass().isNpc())
static const bool normalizeSpeed = Settings::Manager::getBool("normalise race speed", "Game");
if (mPtr.getClass().isNpc() && !normalizeSpeed)
{
const ESM::NPC* npc = mPtr.get<ESM::NPC>()->mBase;
const ESM::Race* race = world->getStore().get<ESM::Race>().find(npc->mRace);

@ -238,3 +238,34 @@ An enchanted bow with chitin arrows will no longer be enough for the purpose, wh
This was previously the default engine behavior that diverged from Morrowind design.
This setting can be toggled in Advanced tab of the launcher.
strength influences hand to hand
--------------------------------
:Type: integer
:Range: 0, 1, 2
:Default: 0
This setting controls the behavior of factoring of Strength attribute into hand-to-hand damage, which is using the formula
Morrowind Code Patch uses for its equivalent feature: damage is multiplied by its value divided by 40.
0: Strength attribute is ignored
1: Strength attribute is factored in damage from any actor
2: Strength attribute is factored in damage from any actor except werewolves
This setting can be controlled in Advanced tab of the launcher.
normalise race speed
--------------------
:Type: boolean
:Range: True/False
:Default: False
By default race weight is factored into horizontal movement speed like in Morrowind.
For example, an NPC which has 1.2 race weight is faster than an NPC with the exact same stats and weight 1.0 by a factor of 120%.
If this setting is true, race weight is ignored in the calculations which allows for a movement behavior
equivalent to the one introduced by the equivalent Morrowind Code Patch feature.
This makes the movement speed behavior more fair between different races.
This setting can be controlled in Advanced tab of the launcher.

@ -225,9 +225,6 @@ classic reflected absorb spells behavior = true
# Show duration of magic effect and lights in the spells window.
show effect duration = false
# Account for the first follower in fast travel cost calculations.
charge for every follower travelling = false
# Prevent merchants from equipping items that are sold to them.
prevent merchant equipping = false
@ -264,6 +261,9 @@ only appropriate ammunition bypasses resistance = false
# Use casting animations for magic items, just as for spells
use magic item animations = false
# Don't use race weight in NPC movement speed calculations
normalise race speed = false
[General]
# Anisotropy reduces distortion in textures at low angles (e.g. 0 to 16).

@ -56,16 +56,6 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="chargeForEveryFollowerCheckBox">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Account for the first follower in fast travel cost calculations.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Charge for every follower travelling</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="enchantedWeaponsMagicalCheckBox">
<property name="toolTip">
@ -169,6 +159,16 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="normaliseRaceSpeedCheckBox">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Don't use race weight in NPC movement speed calculations.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Normalise race speed</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>

Loading…
Cancel
Save