Skip to content
Permalink
Browse files

- Added a house rule to allow Improved Ability's maximum to be 1.5 of…

… skill rating instead of 0.5.
  • Loading branch information...
chummer5a committed Aug 31, 2019
1 parent 4f3ee4f commit 437ce96b7dfb2e7616da40ea1d44560dead6ad50
@@ -864,7 +864,11 @@ public int TotalMaximumLevels
if (BoostedSkill != null)
{
// +1 at the end so that division of 2 always rounds up, and integer division by 2 is significantly less expensive than decimal/double division
intReturn = Math.Min(intReturn, (BoostedSkill.LearnedRating + 1) / 2);
intReturn = Math.Min(intReturn, ( + (BoostedSkill.LearnedRating + 1)) / 2);
if (CharacterObject.Options.IncreasedImprovedAbilityMultiplier)
{
intReturn += BoostedSkill.LearnedRating;
}
}
if (!CharacterObject.IgnoreRules)
{
@@ -23,6 +23,7 @@
using System.Text;
using System.Windows.Forms;
using System.Xml;
// ReSharper disable StringLiteralTypo

namespace Chummer
{
@@ -112,6 +113,8 @@ public class CharacterOptions : INotifyPropertyChanged
private bool _blnSearchInCategoryOnly = true;
private string _strNuyenFormat = "#,0.##";
private bool _blnCompensateSkillGroupKarmaDifference;
private bool _cyberwareRounding;
private bool _increasedImprovedAbilityMultiplier;

private string _strBookXPath = string.Empty;
private string _strExcludeLimbSlot = string.Empty;
@@ -401,6 +404,8 @@ public void Save()
objWriter.WriteElementString("priorityspellsasadeptpowers", _blnPrioritySpellsAsAdeptPowers.ToString());
// <usecalculatedpublicawareness />
objWriter.WriteElementString("usecalculatedpublicawareness", _blnUseCalculatedPublicAwareness.ToString());
// <increasedimprovedabilitymodifier />
objWriter.WriteElementString("increasedimprovedabilitymodifier", _increasedImprovedAbilityMultiplier.ToString());

// <karmacost>
objWriter.WriteStartElement("karmacost");
@@ -762,6 +767,8 @@ public bool Load(string strFileName)
objXmlNode.TryGetBoolFieldQuickly("autobackstory", ref _blnAutomaticBackstory);
// House Rule: Whether Public Awareness should be a calculated attribute based on Street Cred and Notoriety.
objXmlNode.TryGetBoolFieldQuickly("usecalculatedpublicawareness", ref _blnUseCalculatedPublicAwareness);
// House Rule: Whether Improved Ability should be capped at 0.5 (false) or 1.5 (true) of the target skill's Learned Rating.
objXmlNode.TryGetBoolFieldQuickly("increasedimprovedabilitymodifier", ref _increasedImprovedAbilityMultiplier);

objXmlNode = objXmlDocument.SelectSingleNode("//settings/karmacost");
// Attempt to populate the Karma values.
@@ -1562,7 +1569,6 @@ public string NuyenFormat
}

private int _intCachedEssenceDecimals = -1;
private bool _cyberwareRounding;

/// <summary>
/// Number of decimal places to round to when calculating Essence.
@@ -2349,6 +2355,15 @@ public bool CyberwareRounding
set => _cyberwareRounding = value;
}

/// <summary>
/// Whether the Improved Ability power (SR5 309) should be capped at 0.5 of current Rating or 1.5 of current Rating.
/// </summary>
public bool IncreasedImprovedAbilityMultiplier
{
get => _increasedImprovedAbilityMultiplier;
set => _increasedImprovedAbilityMultiplier = value;
}

#endregion
}
}
@@ -6,6 +6,7 @@ Application Changes:
- Added an exclusion to gameplayoptions.xml that allows for the customisation of the limbs that are permitted for Redliner and Cyber Singularity Seeker. Closes #1168
- Weapons mounted on vehicles in create mode can now switch the dicepool calculation method they use between character skill, remote-operated gunnery and dogbrain, among others. Closes #3801
- Added a validity check for Adepts to ensure that they're not over their powerpoint maximum when moving into career mode.
- Added a house rule to allow Improved Ability's maximum to be 1.5 of skill rating instead of 0.5.

Application Fixes:

@@ -109,6 +110,7 @@ New Strings:
- String_DescDamaging
- String_DescObject
- Message_InvalidPowerPoints
- Checkbox_Options_IncreasedImprovedAbilityModifier

Changed Strings:

Some generated files are not rendered by default. Learn more.

@@ -192,6 +192,7 @@ private void cmdOK_Click(object sender, EventArgs e)
_characterOptions.FreeMartialArtSpecialization = chkFreeMartialArtSpecialization.Checked;
_characterOptions.PrioritySpellsAsAdeptPowers = chkPrioritySpellsAsAdeptPowers.Checked;
_characterOptions.EnemyKarmaQualityLimit = chkEnemyKarmaQualityLimit.Checked;
_characterOptions.IncreasedImprovedAbilityMultiplier = chkIncreasedImprovedAbilityModifier.Checked;
string strLimbCount = cboLimbCount.SelectedValue?.ToString();
if(string.IsNullOrEmpty(strLimbCount))
{
@@ -706,6 +707,7 @@ private void PopulateOptions()
chkReverseAttributePriorityOrder.Checked = _characterOptions.ReverseAttributePriorityOrder;
chkAllowHoverIncrement.Checked = _characterOptions.AllowHoverIncrement;
chkSearchInCategoryOnly.Checked = _characterOptions.SearchInCategoryOnly;
chkIncreasedImprovedAbilityModifier.Checked = _characterOptions.IncreasedImprovedAbilityMultiplier;
nudContactMultiplier.Enabled = _characterOptions.FreeContactsMultiplierEnabled;
nudContactMultiplier.Value = _characterOptions.FreeContactsMultiplier;
nudKnowledgeMultiplier.Enabled = _characterOptions.FreeKnowledgeMultiplierEnabled;
@@ -120,6 +120,9 @@
<metadata name="tlpKarmaCostsList.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="tlpKarmaCostsList.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>25</value>
</metadata>
@@ -5569,6 +5569,10 @@ Only one attribute may be at its Maximum value during character creation.</text>
<key>Checkbox_Options_AllowEasterEggs</key>
<text>Allow Easter Eggs</text>
</string>
<string>
<key>Checkbox_Options_IncreasedImprovedAbilityModifier</key>
<text>Improved Ability is capped by Learned Rating x 1.5 instead of 0.5</text>
</string>
<string>
<key>String_SelectBP_LifeModuleSummary</key>
<text>Enter the maximum availability and karma you are allowed to create your character with (Default {0})</text>

0 comments on commit 437ce96

Please sign in to comment.
You can’t perform that action at this time.