From: Jaka K. <lyn...@us...> - 2012-10-07 21:53:46
|
gemrb: Infinity Engine emulator The branch master has been updated via 0cbd9782641b25795739db6b2277cffbf70aff69 (commit) via 33dd342593c8668c97b290d540397849f2e4e36f (commit) Summary of changes: gemrb/core/Interface.cpp | 1 + gemrb/core/Scriptable/Actor.cpp | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) from 75b9890f32b3cc391763b32d757bb417f869baa4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=0cbd9782641b25795739db6b2277cffbf70aff69 commit 0cbd9782641b25795739db6b2277cffbf70aff69 Author: Jaka Kranjc <lyn...@us...> Date: Sun Oct 7 23:45:14 2012 +0200 change the default difficulty xp adjustment, since only bg1 has an override (and even that is fishy) diff --git a/gemrb/core/Scriptable/Actor.cpp b/gemrb/core/Scriptable/Actor.cpp index fcaa5ea..403efd2 100644 --- a/gemrb/core/Scriptable/Actor.cpp +++ b/gemrb/core/Scriptable/Actor.cpp @@ -108,7 +108,7 @@ static ieVariable CounterNames[4]={"GOOD","LAW","LADY","MURDER"}; static int dmgadjustments[6]={0, -50, -25, 0, 50, 100}; //default, easy, normal, core rules, hard, nightmare //XP adjustments on easy setting (need research on the amount) //Seems like bg1 halves xp, bg2 doesn't have any impact -static int xpadjustments[6]={0, -50, 0, 0, 0, 0}; +static int xpadjustments[6]={0, 0, 0, 0, 0, 0}; static int FistRows = -1; static int *wmlevels[20]; http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=33dd342593c8668c97b290d540397849f2e4e36f commit 33dd342593c8668c97b290d540397849f2e4e36f Author: Jaka Kranjc <lyn...@us...> Date: Sun Oct 7 23:29:30 2012 +0200 implemented the "Suppress Extra Difficulty Damage" config var diff --git a/gemrb/core/Interface.cpp b/gemrb/core/Interface.cpp index 3cd1472..e8db0a1 100644 --- a/gemrb/core/Interface.cpp +++ b/gemrb/core/Interface.cpp @@ -3968,6 +3968,7 @@ bool Interface::InitializeVarsWithINI(const char* iniFileName) {"Game Options", "Nightmare Mode", 0}, {"Game Options", "Selection Sounds Frequency", 0}, {"Game Options", "Sound Processing", 1}, // TODO: turn sound off completely; someday we could swap the driver for NullSound and back + {"Game Options", "Suppress Extra Difficulty Damage", 0}, {"Game Options", "Weather", 1}, }; diff --git a/gemrb/core/Scriptable/Actor.cpp b/gemrb/core/Scriptable/Actor.cpp index 5806234..fcaa5ea 100644 --- a/gemrb/core/Scriptable/Actor.cpp +++ b/gemrb/core/Scriptable/Actor.cpp @@ -127,6 +127,7 @@ static ieDword bored_time = 3000; static ieDword footsteps = 1; static ieDword always_dither = 1; static ieDword GameDifficulty = DIFF_CORE; +static ieDword NoExtraDifficultyDmg = 0; //the chance to issue one of the rare select verbal constants #define RARE_SELECT_CHANCE 5 //these are the max number of select sounds -- the size of the pool to choose from @@ -1546,6 +1547,9 @@ GEM_EXPORT void UpdateActorConfig() core->GetDictionary()->Lookup("Difficulty Level", GameDifficulty); } if (GameDifficulty>DIFF_NIGHTMARE) GameDifficulty = DIFF_NIGHTMARE; + + // iwd has a config option for leniency + core->GetDictionary()->Lookup("Suppress Extra Difficulty Damage", NoExtraDifficultyDmg); } static void InitActorTables() @@ -3593,7 +3597,9 @@ int Actor::Damage(int damage, int damagetype, Scriptable *hitter, int modtype, i // -50%, -25%, 0, 50%, 100%, 150% if (Modified[IE_EA] < EA_GOODCUTOFF) { int adjustmentPercent = dmgadjustments[GameDifficulty]; - damage += (damage * adjustmentPercent)/100; + if (!NoExtraDifficultyDmg || adjustmentPercent < 0) { + damage += (damage * adjustmentPercent)/100; + } } } ----------------------------------------------------------------------- This is an automated email from the git hooks/post-receive script. -- gemrb: Infinity Engine emulator |