mirror of
https://github.com/1dot13/source.git
synced 2026-09-02 14:36:06 +02:00
New option: Reduced stat growth at high levels (#183)
Add optional stat growth reduction at 80+ and 90+ This makes mercs with high base stats more valuable as it is harder to grow to their levels
This commit is contained in:
@@ -1428,6 +1428,11 @@ void LoadGameExternalOptions()
|
|||||||
gGameExternalOptions.usLeadershipSubpointsToImprove = iniReader.ReadInteger("Tactical Difficulty Settings","LEADERSHIP_SUBPOINTS_TO_IMPROVE", 25, 1, 1000 );
|
gGameExternalOptions.usLeadershipSubpointsToImprove = iniReader.ReadInteger("Tactical Difficulty Settings","LEADERSHIP_SUBPOINTS_TO_IMPROVE", 25, 1, 1000 );
|
||||||
gGameExternalOptions.usLevelSubpointsToImprove = iniReader.ReadInteger("Tactical Difficulty Settings","LEVEL_SUBPOINTS_TO_IMPROVE", 350, 1, 6500);
|
gGameExternalOptions.usLevelSubpointsToImprove = iniReader.ReadInteger("Tactical Difficulty Settings","LEVEL_SUBPOINTS_TO_IMPROVE", 350, 1, 6500);
|
||||||
|
|
||||||
|
// rftr: optionally slow stat growth at 80+ and 90+. this gives more value to mercs with high base stats
|
||||||
|
gGameExternalOptions.ubMaxGrowthChanceAt80 = iniReader.ReadInteger("Tactical Difficulty Settings", "MAX_GROWTH_CHANCE_AT_80", 100, 1, 100);
|
||||||
|
gGameExternalOptions.ubMaxGrowthChanceAt90 = iniReader.ReadInteger("Tactical Difficulty Settings", "MAX_GROWTH_CHANCE_AT_90", 100, 1, 100);
|
||||||
|
|
||||||
|
|
||||||
// Alternate algorithm for choosing equipment level. Mostly disregards soldier's class and puts less emphasis on distance from Sector P3.
|
// Alternate algorithm for choosing equipment level. Mostly disregards soldier's class and puts less emphasis on distance from Sector P3.
|
||||||
// SANDRO - moved into the game
|
// SANDRO - moved into the game
|
||||||
//gGameExternalOptions.fSlowProgressForEnemyItemsChoice = iniReader.ReadBoolean("Tactical Difficulty Settings", "SLOW_PROGRESS_FOR_ENEMY_ITEMS_CHOICE", TRUE);
|
//gGameExternalOptions.fSlowProgressForEnemyItemsChoice = iniReader.ReadBoolean("Tactical Difficulty Settings", "SLOW_PROGRESS_FOR_ENEMY_ITEMS_CHOICE", TRUE);
|
||||||
|
|||||||
@@ -1149,6 +1149,10 @@ typedef struct
|
|||||||
UINT16 usLeadershipSubpointsToImprove;
|
UINT16 usLeadershipSubpointsToImprove;
|
||||||
UINT16 usLevelSubpointsToImprove;
|
UINT16 usLevelSubpointsToImprove;
|
||||||
|
|
||||||
|
// rftr: optionally slow stat growth at 80+ and 90+. this gives more value to mercs with high base stats
|
||||||
|
UINT8 ubMaxGrowthChanceAt80;
|
||||||
|
UINT8 ubMaxGrowthChanceAt90;
|
||||||
|
|
||||||
// HEADROCK HAM B2.7: When turned on, this will give a CTH approximation instead of an exact value, on CTH Bars and "F" key feedback.
|
// HEADROCK HAM B2.7: When turned on, this will give a CTH approximation instead of an exact value, on CTH Bars and "F" key feedback.
|
||||||
BOOLEAN fApproximateCTH;
|
BOOLEAN fApproximateCTH;
|
||||||
|
|
||||||
|
|||||||
@@ -305,6 +305,16 @@ void ProcessStatChange(MERCPROFILESTRUCT *pProfile, UINT8 ubStat, UINT16 usNumCh
|
|||||||
usChance += (usChance * (pProfile->bWisdom + (pProfile->sWisdomGain / SubpointsPerPoint(WISDOMAMT, pProfile->bExpLevel)) - 50)) / 100;
|
usChance += (usChance * (pProfile->bWisdom + (pProfile->sWisdomGain / SubpointsPerPoint(WISDOMAMT, pProfile->bExpLevel)) - 50)) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// rftr: reduced growth rates at 80+ and 90+ (to make mercs with higher base stats more valuable)
|
||||||
|
if (bCurrentRating >= 90)
|
||||||
|
{
|
||||||
|
usChance = min(min(gGameExternalOptions.ubMaxGrowthChanceAt80, gGameExternalOptions.ubMaxGrowthChanceAt90), usChance);
|
||||||
|
}
|
||||||
|
else if (bCurrentRating >= 80)
|
||||||
|
{
|
||||||
|
usChance = min(gGameExternalOptions.ubMaxGrowthChanceAt80, usChance);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// if the stat is Marksmanship, and the guy is a hopeless shot
|
// if the stat is Marksmanship, and the guy is a hopeless shot
|
||||||
if ((ubStat == MARKAMT) && (pProfile->bSpecialTrait == HOPELESS_SHOT))
|
if ((ubStat == MARKAMT) && (pProfile->bSpecialTrait == HOPELESS_SHOT))
|
||||||
|
|||||||
Reference in New Issue
Block a user