Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
If anything I wish there was an option to weight it in favor of the standard... so that there is always a 50/50 chance (even if you got a billion Reaper classes... but to admit there is only two so)
It seems to work for me, still generating Skirmisher Heavy/Heretic, Templar Psion/Dragon and Reaper Scythe/Cryptic, but with probabilities slightly favouring the classic heroes. I must test this systematically, but 3 regular reapers in a row and a few regular Skirmishers and Templars look promising and my PC hasn't melted yet.
--------------------------------WARNING--------------------------------
I am not an exprienced modder. I'm not even entirely sure which programming language I've used here. There was some luck involved in finding this one.
Also, my solution looks suspiciously simple, so there may be some issues which I'm not aware of. In this case, I'd appreciate constructive criticism.
So, here's what to do:
Edit file
steamapps\workshop\content\268500\1373823499\Script\MultipleFactionSoldierClasses.u
Lines 339/340 should look like this:
if (RBase > 1)
R = (class'Engine'.static.GetEngine().SyncRand(RBase,"MultipleFactionSoldierClassController::"$GetFuncName()));
I commented these out (just put '//' in front) and inserted these new lines just below the original ones:
if (RBase >= 1)
R = (class'Engine'.static.GetEngine().SyncRand(RBase));
"The fix" above in particular seems to be a placebo at best. Here's the relevant piece of the source code:
The RBase variable is the number of potential classes the mod will randomly choose from.
The default logic is that if there's more than one to choose from, then the selection will be randomized.
If there's not more than one, then the first - and only - class on the list will be selected automatically, without accessing the random number generation function.
Strictly speaking that's unnecessary to do, because `SYNC_RAND_STATIC(1) would always generate 0 anyway.
So even if "the fix" would have worked, it would not have altered the mod's logic in any way.