• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Errant

Recruit
19 Badges
Sep 16, 2019
4
0
  • Crusader Kings II
  • BATTLETECH: Season pass
  • Crusader Kings II: Horse Lords
  • BATTLETECH: Heavy Metal
  • BATTLETECH: Flashpoint
  • Shadowrun Returns
  • BATTLETECH - Digital Deluxe Edition
  • Age of Wonders III
  • BATTLETECH
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Magicka
  • Europa Universalis IV: Res Publica
One line summary of your issue
Mech Variety has disappeared.

What platform are you running the game on?

Steam

What operating system do you use?
Windows 10 Home
Which version of the game are you running?
1.7.0-589R
What DLC do you have installed?
Flashpoint,
Urban Warfare

Please explain your issue is in as much detail as possible.
Recently started a few new careers and a lot of the 'mechs have become very rare. An absurd amount of Commandos and Firestarters (Fought a lance where 3/4 were firestarters). Lots of Blackjacks , Centurions and Cicadas have become way more frequent. An absurd amount of Griffins (1N variant) and more crabs than i would normally see. I have yet to see a Kintaro and Shadow Hawks have become quite rare as well. Black Knights have gone from fairly rare to one of the most frequent heavy mechs and i'm having a similar experience with catapults.

As for assaults there is an absurd number of Atlas' spawning. I did an attack and defend mission and had a Davion (?) Lance spawn with 3 Atlas' and one other mech that I can't remember. Highlanders have become fairly rare.

Seems that something changed with the encounter rates for mechs and not in a good way.

The attached Screenshot where there are 3 Atlas' and one unidentified 80T Mech (I would assume an awesome) was obtained from simply loading my campaign and starting a "Battle" type contract (These mechs are what spawned on a first attempt). Seems like the mechs that are highest in the alphabet have a tendency to spawn more frequently.

Edit: To provide further proof, I've attached 2 more screenshots from 2 other missions to reinforce the rate at which atlas spawns have increased. This situation applies to spawn rates for lights, mediums and heavies as well. If necessary I can provide screenshots from a new career to highlight the increase in spawns for those weights as well.
Have you tried verifying your files?
No

Steps to reproduce the issue
Start a Career and behold the Commando Spam.

Attach DxDiag (PC), System Info log (Mac), or run sudo lshw -html > specs.html and uploaded specs.html (Linux)

Attach Output Log
Windows: \Users\YourUserName\AppData\LocalLow\Harebrained Schemes\BATTLETECH\output_log.txt
Mac OS: Users >{name} > Library > Logs > Unity > Player.log
Linux: ~/.config/unity3d/Harebrained Schemes/BATTLETECH/Player.log


If the game crashed, please attach the crash file with the time stamp closest to the crash.
Windows: [Steam library folder]\steamapps\common\BATTLETECH\DumpBox
For v.17 and beyond try here: C:\Users\[YourUserName]\AppData\LocalLow\Harebrained Schemes\BATTLETECH
OSX: Macintosh HD > Users > [username] > Library > Application Support > Steam > steamapps > common > BattleTech > DumpBox
Linux: [Steam library folder]/steamapps/common/BATTLETECH/DumpBox


If a save game was loaded at the start of the game session, upload it. Please make sure to upload the save game with the timestamp closest to when you loaded it.
Windows:
Steam: [Steam installation folder]\userdata[SteamID]\637090\remote\C0\SGS1
GOG: 'C:\Users\USER_ID\AppData\Local\GOG.com\Galaxy\Applications\50593543263669699\Storage\Shared\Files\C#\SGS#'
Vanilla:'C:\Users\USER_ID\AppData\LocalLow\Harebrained Schemes\BattleTech\C#\SGS#'
OSX:
Steam: Macintosh HD > Users > [username] > Library > Application Support > Steam > userdata > [SteamID] > 637090 > remote > C#> SGS#
GOG: Macintosh HD > Users > [username] > Library > Application Support > GOG.com > Galaxy > Applications > 50593543263669699 > Storage > Shared > Files > C# > SGS#
Vanilla: Macintosh HD > Users > [username]> Library > Application Support > unity.Harebrained Schemes.BattleTech > C# > SGG#
Linux:
Steam: /home/.steam/steam/userdata/[steamID]/637090/remote/C#/SGS#
GOG: /home/[username]/.config/unity3d/Harebrained Schemes/BATTLETECH/remote/C#/SGS#/
Vanilla: /home/[username]/.config/unity3d/Harebrained Schemes/BATTLETECH/remote/C#/SGS#/


Attach screenshot / video
 

Attachments

  • DxDiag.txt
    92,3 KB · Views: 24
  • output_log.txt
    805,8 KB · Views: 6
  • Atlas Rawr.png
    Atlas Rawr.png
    4,7 MB · Views: 97
  • Sample 2.png
    Sample 2.png
    4,7 MB · Views: 51
  • Sample 3.png
    Sample 3.png
    4,4 MB · Views: 59
Last edited:
Upvote 0

ED-209

Second Lieutenant
4 Badges
Apr 1, 2018
178
0
  • Pillars of Eternity
  • BATTLETECH
  • Shadowrun Returns
  • Shadowrun: Dragonfall
There are a number of threads about this on the Battletech subreddit. For example:
[mod edit: no unapproved links- including reddit]

The gist of the issue is that OpFor mech spawning now appears to be weighted alphabetically by mech name, not properly randomised for a given weight class.
 
Last edited by a moderator:

rpkamm

Recruit
39 Badges
Sep 17, 2019
1
0
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Mare Nostrum
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV: Third Rome
  • BATTLETECH
  • Europa Universalis IV: Cradle of Civilization
  • Crusader Kings II: Jade Dragon
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Dharma
  • Shadowrun: Dragonfall
  • BATTLETECH: Flashpoint
  • Crusader Kings II: Holy Fury
  • Europa Universalis IV: Golden Century
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
  • Crusader Kings III
  • Europa Universalis 4: Emperor
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Europa Universalis III Complete
  • Europa Universalis IV
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II
  • Europa Universalis IV: Call to arms event
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Magicka 2
  • Europa Universalis IV: Common Sense
Signed up here to report that I've observed the same thing.

I post on r/battletechgame, and I created a thread asking for other people's observations. I'd link to my post but I don't think that's allowed.

It appears random OpFor mechs are generated by tonnage as usual but then pulled from the list in alphabetical order, rather than randomly.

So Light Mechs are overwhelmingly Commandos and Firestarters, Mediums are Blackjacks, Centurions and Cicadas, Heavies are Black Knights, Cataphracts and Catapults, Assaults are Atlases, Awesomes, Banshees etc.

Not the best image but here's the Ctrl+K screenshot I took of a "Spoiler" mission OpFor: https://i.imgur.com/fVCmcxq.jpg - multiple Blackjacks, Commandos and Firestarters and one sad and lonely Jenner.

It seems Assassination targets aren't affected because I took a one-skull Assassination mission and the target was a Vindicator. The OpFor "support" Mechs were all Commandos, though!
 
Last edited:

Pode

Lt. General
72 Badges
May 3, 2005
1.474
92
  • Crusader Kings III: Royal Edition
  • Crusader Kings III
  • Surviving Mars: Digital Deluxe Edition
  • Surviving Mars
  • 500k Club
  • BATTLETECH - Backer
  • BATTLETECH - Beta Backer
  • BATTLETECH - Digital Deluxe Edition
  • Crusader Kings II
  • Mount & Blade: Warband
  • Stellaris Sign-up
  • Stellaris
  • Deus Vult
  • Europa Universalis: Rome
  • Rome: Vae Victis
  • Europa Universalis III: Collection
  • Majesty 2
  • Sword of the Stars
  • Naval War: Arctic Circle
  • Europa Universalis IV
  • Victoria: Revolutions
  • Hearts of Iron III
  • Hearts of Iron IV: Cadet
  • Supreme Ruler 2020
  • Supreme Ruler: Cold War
  • Age of Wonders III
  • Magicka
  • Pride of Nations
  • War of the Roses
  • Sengoku
  • Warlock: Master of the Arcane
  • The Showdown Effect
  • Dungeonland
  • Knights of Pen and Paper +1 Edition
There's at least 1 report of all enemy pilots being Defenders, so the pilot specialties may be alphabetized as well.

Hobbes has started 3 straight careers on Arn, so career starting worlds are suspect also.

Anybody want to look at how often AC10s are spawning in stores?
 
Last edited:

Prussian Havoc

PDXCON 2019 ~ MechWarrior of the Year
51 Badges
May 12, 2017
8.139
274
forum.paradoxplaza.com
  • Victoria 3 Sign Up
  • A Game of Dwarves
  • Age of Wonders: Planetfall Premium edition
  • Empire of Sin - Premium Edition
  • Sword of the Stars II
  • Stellaris: Megacorp
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • BATTLETECH: Flashpoint
  • Stellaris: Apocalypse
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • Age of Wonders: Planetfall
  • Age of Wonders: Planetfall Deluxe edition
  • Age of Wonders: Planetfall Season pass
  • BATTLETECH: Heavy Metal
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
  • Tyranny: Gold Edition
  • Victoria 2
  • Stellaris
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Humanoids Species Pack
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • BATTLETECH
  • Tyranny - Bastards Wound
  • Age of Wonders III
  • BATTLETECH - Initiate of the Order
  • Victoria 2: A House Divided
  • Surviving Mars
  • Victoria 2: Heart of Darkness
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall - Revelations
  • Stellaris - Path to Destruction bundle
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Tyranny - Tales from the Tiers
Now that you mention it, it does seem to be all Black Knights and Catapults for me too.
 

Errant

Recruit
19 Badges
Sep 16, 2019
4
0
  • Crusader Kings II
  • BATTLETECH: Season pass
  • Crusader Kings II: Horse Lords
  • BATTLETECH: Heavy Metal
  • BATTLETECH: Flashpoint
  • Shadowrun Returns
  • BATTLETECH - Digital Deluxe Edition
  • Age of Wonders III
  • BATTLETECH
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Cossacks
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Magicka
  • Europa Universalis IV: Res Publica
Decided to take some screenshots from my career playthrough, these are from 1 - 1.5 difficulty missions.

1.) L&M : 2 Commandos and a destroyed Blackjack on the ground.
2.) Assassination Sample - 1 - Destroyed Blackjack , 2 & 3 are destroyed commandos with an active Blackjack on the field.
3.) Assassination Pt 2 - Assassination target turns out to be a Cataphract.
 

Attachments

  • L&M Sample.png
    L&M Sample.png
    3,6 MB · Views: 48
  • Assassination Sample.png
    Assassination Sample.png
    4,2 MB · Views: 35
  • Assassination Pt 2.png
    Assassination Pt 2.png
    4,3 MB · Views: 41

CSX

Sergeant
31 Badges
Mar 7, 2018
80
1
  • Shadowrun Returns
  • Stellaris: Nemesis
  • Stellaris: Necroids
  • Stellaris: Federations
  • BATTLETECH: Heavy Metal
  • Stellaris: Lithoids
  • BATTLETECH: Season pass
  • Cities: Skylines - Campus
  • Surviving Mars: First Colony Edition
  • Stellaris: Megacorp
  • BATTLETECH: Flashpoint
  • Cities: Skylines Industries
  • Surviving Mars: First Colony Edition
  • Shadowrun: Dragonfall
  • Cities: Skylines
  • Stellaris: Distant Stars
  • Cities: Skylines - Parklife
  • Surviving Mars: Digital Deluxe Edition
  • Stellaris: Apocalypse
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Green Cities
  • Stellaris: Synthetic Dawn
  • Surviving Mars
  • BATTLETECH
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Stellaris
  • Cities: Skylines - After Dark
  • Shadowrun: Hong Kong
  • Stellaris: Ancient Relics
Now that you mention it, it does seem to be all Black Knights and Catapults for me too.

Yeah I didn't really notice it until someone pointed it out and now it's pretty consistent where only one mech or two or on a highly populated mission will not be one of the A-B-C mechs. Hell in the mediums even Centurions have been really rare, but I've had a couple missions that were almost all Blackjacks. Same with the pilots. Lots of Defenders, and in the higher skull missions all of them are the high-Guts pilots.

And switching to a new areas to go against different OpFors hasn't changed it, so it's not just crazy faction bias.
 

Justin Kase

Lt. General
44 Badges
Feb 28, 2018
1.527
0
  • BATTLETECH: Flashpoint
  • BATTLETECH - Initiate of the Order
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Cities: Skylines - Parklife
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • Hearts of Iron IV: Expansion Pass
  • Imperator: Rome
  • Hearts of Iron IV: Expansion Pass
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
  • Prison Architect: Psych Ward
  • Hearts of Iron IV: La Resistance
  • Island Bound
  • Age of Wonders III
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings Complete
  • BATTLETECH
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Crusader Kings II
  • Victoria: Revolutions
  • Leviathan: Warships
  • Hearts of Iron III
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
Are you using any mods?

Also, I am wondering if it is more to do with the specific LanceDefs.

I just did a new Career and got these results in my first 4 missions (name followed by lance generation) - and a 4 skull for fun:

SimpleBattle_LetterOfMarque (Liao OpFor) (.5 Skull)
lancedef_mech_d2_dynamic_lightFire
  • mechdef_commando_COM-1B
  • mechdef_javelin_JVN-10F
  • mechdef_locust_LCT-1M
lancedef_mech_d2_dynamic_lightCavalry
  • mechdef_locust_LCT-1M
  • mechdef_jenner_JR7-D
  • mechdef_firestarter_FS9-H

DestroyBase_DeniableDestruction (Marik OpFor) (1 Skull)
lancedef_mech_dynamic_battle
  • mechdef_commando_COM-2D
  • mechdef_commando_COM-1B
  • mechdef_commando_COM-1B
lancedef_turret_d3_dynamic_lightTurret
  • turretdef_Light_Laser
  • turretdef_Light_Laser
  • turretdef_Light_Laser
  • turretdef_Light_Laser
lancedef_mech_d2_dynamic_lightFire
  • mechdef_commando_COM-1B
  • mechdef_commando_COM-1B
  • mechdef_locust_LCT-1M

Assassinate_DeadOrAlive (Marik OpFor)(1 Skull)
lancedef_mech_d2_dynamic_lightScout
  • mechdef_firestarter_FS9-H
  • mechdef_firestarter_FS9-H
  • mechdef_commando_COM-1B
lancedef_mech_dynamic_support
  • mechdef_griffin_GRF-1N
  • mechdef_locust_LCT-1M
lancedef_mech_d2_dynamic_solo
  • mechdef_wolverine_WVR-6K

AmbushConvoy_Interdiction (Pirate OpFor) (1.5 Skull)
lancedef_vehicle_d3_dynamic_lightBattle
  • vehicledef_SCORPION
  • vehicledef_STRIKER
  • vehicledef_BULLDOG
  • vehicledef_BULLDOG
lancedef_mech_dynamic_cavalry
  • mechdef_blackjack_BJ-1DB
  • mechdef_firestarter_FS9-H
  • mechdef_firestarter_FS9-H
  • mechdef_jenner_JR7-D
lancedef_mech_dynamic_support
  • mechdef_locust_LCT-1M
  • mechdef_locust_LCT-1M
  • mechdef_locust_LCT-1M
  • mechdef_locust_LCT-1M

SimpleBattle_TakeTheBait (Marik OpFor) (4 Skull)
lancedef_mech_dynamic_battle
  • mechdef_atlas_AS7-D
lancedef_mech_d5_dynamic_MedSupport
  • mechdef_blackjack_BJ-1DB
  • mechdef_cicada_CDA-3C
  • mechdef_blackjack_BJ-1
  • mechdef_blackjack_BJ-1

I think part of the problem is that some of these are too restrictive in the potential choices in certain ranges - for example - the Dynamic Support in that 4th contract wound up with all Locust LCT-1M but that is in part due to the possible choices. The first 2 slots are looking for Long Range and Light 'Mechs - which are the Panther and Locust 1M. The last 2 slots are looking for Indirect Fire and Light 'Mechs - which is... the Locust 1M.

But then I look at the 2nd contract and see that the Dynamic Battle lance wound up with 3 Commandos. The first 2 slots are just 'any' non-Urbie Light, the 3rd is a Medium Range light (which the Commando fits). So I am not sure if that is an issue with the generation, or just luck of the draw :p

Though I will say that in both cases it took the Alphabetical first available option that fit the parameters.
 

Pode

Lt. General
72 Badges
May 3, 2005
1.474
92
  • Crusader Kings III: Royal Edition
  • Crusader Kings III
  • Surviving Mars: Digital Deluxe Edition
  • Surviving Mars
  • 500k Club
  • BATTLETECH - Backer
  • BATTLETECH - Beta Backer
  • BATTLETECH - Digital Deluxe Edition
  • Crusader Kings II
  • Mount & Blade: Warband
  • Stellaris Sign-up
  • Stellaris
  • Deus Vult
  • Europa Universalis: Rome
  • Rome: Vae Victis
  • Europa Universalis III: Collection
  • Majesty 2
  • Sword of the Stars
  • Naval War: Arctic Circle
  • Europa Universalis IV
  • Victoria: Revolutions
  • Hearts of Iron III
  • Hearts of Iron IV: Cadet
  • Supreme Ruler 2020
  • Supreme Ruler: Cold War
  • Age of Wonders III
  • Magicka
  • Pride of Nations
  • War of the Roses
  • Sengoku
  • Warlock: Master of the Arcane
  • The Showdown Effect
  • Dungeonland
  • Knights of Pen and Paper +1 Edition
in both cases it took the Alphabetical first available option that fit the parameters.

That seems to be the issue,the parameters seem to be working but not the random selection of things that meet them. My money is on random weights of 10 instead of 0.1
 

Prussian Havoc

PDXCON 2019 ~ MechWarrior of the Year
51 Badges
May 12, 2017
8.139
274
forum.paradoxplaza.com
  • Victoria 3 Sign Up
  • A Game of Dwarves
  • Age of Wonders: Planetfall Premium edition
  • Empire of Sin - Premium Edition
  • Sword of the Stars II
  • Stellaris: Megacorp
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • BATTLETECH: Flashpoint
  • Stellaris: Apocalypse
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • Age of Wonders: Planetfall
  • Age of Wonders: Planetfall Deluxe edition
  • Age of Wonders: Planetfall Season pass
  • BATTLETECH: Heavy Metal
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
  • Tyranny: Gold Edition
  • Victoria 2
  • Stellaris
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Humanoids Species Pack
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • BATTLETECH
  • Tyranny - Bastards Wound
  • Age of Wonders III
  • BATTLETECH - Initiate of the Order
  • Victoria 2: A House Divided
  • Surviving Mars
  • Victoria 2: Heart of Darkness
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall - Revelations
  • Stellaris - Path to Destruction bundle
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Tyranny - Tales from the Tiers
Not mods installed.
 

Justin Kase

Lt. General
44 Badges
Feb 28, 2018
1.527
0
  • BATTLETECH: Flashpoint
  • BATTLETECH - Initiate of the Order
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Cities: Skylines - Parklife
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • Hearts of Iron IV: Expansion Pass
  • Imperator: Rome
  • Hearts of Iron IV: Expansion Pass
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
  • Prison Architect: Psych Ward
  • Hearts of Iron IV: La Resistance
  • Island Bound
  • Age of Wonders III
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings Complete
  • BATTLETECH
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Crusader Kings II
  • Victoria: Revolutions
  • Leviathan: Warships
  • Hearts of Iron III
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
Looking at the one contract with Vehicles (as there are less parameters to search) 3/4 of them are the first available alphabetically

Unit 1 : light / vehicle (excluding noncombatant) - second alpha - Scorpion (Galleon would be first)
Unit 2 : medium / vehicle (excluding noncombatant) - first alpha - Striker
Unit 3 : heavy / vehicle (excluding noncombatant) - first alpha - Bulldog
Unit 4 : vehicle (excluding noncombatant and assault) - first alpha - Bulldog​

Looking at d5 Dynamic MedSupport (exclude noncombatant / urbie)

Unit 1 : medium / mech / lance support - first alpha - BJ-1DB
Unit 2 : medium / mech / lance support - second alpha - CDA-3C (BJ-1DB would be first)
Unit 3 : medium / mech (exclude vangurard / support) - first alpha - BJ-1
Unit 4 : medium / mech (exclude suport) - first alpha - BJ-1​
 

Mpstark

Corporal
12 Badges
Dec 25, 2013
25
0
  • Crusader Kings II
  • Stellaris
  • BATTLETECH
  • BATTLETECH: Flashpoint
  • Prison Architect
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV
I've created a test case where I generate 10,000 units (using UnitSpawnPointOverride.SelectTaggedUnitDef, which is what the game uses to spawn tagged units from lances) with very little conditions (i.e. no tags, no exclude tags, no company tags, in Jan 3025) and I ran it two times (Test 1 + 2) with a game restart in between. I got the same result for both tests (which I would think is undesirable) and a massive glowing 'there is something wrong' sign is that the Atlas AS7-D is 503 of those spawns and the BattleMaster BLR-1G is 1 of them, where one would expect that all units returned by the MDD (from mdd.GetMatchingUnitDefs) would have equal chances because the list is simply shuffled and then the first unit in the shuffled list is taken. To me, this indicates some sort of massive bias in the shuffle.

I then ran 1000 spawns of the first unit from `mech_d8_dynamic_HeavyBattle` twice (tests 3 + 4), though without restarting the game between tests. This time I got a different result between the two tests, but still, the randomization is massively biased towards alphabetical order. The Black Knight BL-6-KNT spawned more than all of the other 'Mechs combined in both runs.

Conclusion: The `Utility.Shuffle(this List<T> list)` method is probably broken in 1.7 and heavily biases the first things in the list, which happens to be alphabetical in many cases. This will affect both lance pulls and unit spawns for the AI, as well as pilots selected for those units. It also affects other aspects of the game, like procedural pilot names and such.

One thing that I want to point out before everyone gets all up in arms -- HBS didn't touch any of the unit spawning code between 1.6.2 and 1.7.0 as far as I know (I'm looking at diffs between decompiled code from both versions). This appears to be an unintentional change because of their upgrade from Unity 5.* to Unity 2018.2 that brought with it Mono 4.* and .net 4.7+ compatibility. This upgrade is ultimately a good thing and likely has something to do with the performance gains of this patch as well as their hunt for bugs like the AKSoundEngine thing. Moving Unity versions like this is a large task, and it wasn't even called out on the patch notes for 1.7. RNG bias in existing code that was previously working and wasn't touched isn't something that you would expect to break and could have easily slipped under the radar of their playtesting crew.

Via the test case mod thing, I've created my own randomization thing and have tested it three times (tests 5, 6, 7) on the same `mech_d8_dynamic_HeavyBattle` lance. I plan to release a standalone mod that should correct the issue until HBS is able to get a patch out. Look for that sometime soon if you're adventurous and have installed ModTek. I've still got some kinks to work out because Shuffle is hard for mods to affect (and might be impossible if the method is getting inlined!)

Full data for all tests is here.

EDIT: A mod that fixes the issue has been released here.
 
Last edited:

Justin Kase

Lt. General
44 Badges
Feb 28, 2018
1.527
0
  • BATTLETECH: Flashpoint
  • BATTLETECH - Initiate of the Order
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Cities: Skylines - Parklife
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • Hearts of Iron IV: Expansion Pass
  • Imperator: Rome
  • Hearts of Iron IV: Expansion Pass
  • Prison Architect
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • BATTLETECH: Heavy Metal
  • Prison Architect: Psych Ward
  • Hearts of Iron IV: La Resistance
  • Island Bound
  • Age of Wonders III
  • Cities: Skylines
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings Complete
  • BATTLETECH
  • Surviving Mars
  • Hearts of Iron IV: Death or Dishonor
  • Crusader Kings II
  • Victoria: Revolutions
  • Leviathan: Warships
  • Hearts of Iron III
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
@Mpstark Excellent work as always bro :)
 

Prussian Havoc

PDXCON 2019 ~ MechWarrior of the Year
51 Badges
May 12, 2017
8.139
274
forum.paradoxplaza.com
  • Victoria 3 Sign Up
  • A Game of Dwarves
  • Age of Wonders: Planetfall Premium edition
  • Empire of Sin - Premium Edition
  • Sword of the Stars II
  • Stellaris: Megacorp
  • Surviving Mars: Digital Deluxe Edition
  • BATTLETECH - Digital Deluxe Edition
  • BATTLETECH - Beta Backer
  • BATTLETECH - Backer
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Shadowrun: Hong Kong
  • Surviving Mars: First Colony Edition
  • BATTLETECH: Flashpoint
  • Stellaris: Apocalypse
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • BATTLETECH: Season pass
  • Age of Wonders: Planetfall
  • Age of Wonders: Planetfall Deluxe edition
  • Age of Wonders: Planetfall Season pass
  • BATTLETECH: Heavy Metal
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
  • Tyranny: Gold Edition
  • Victoria 2
  • Stellaris
  • Stellaris: Galaxy Edition
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Humanoids Species Pack
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • BATTLETECH
  • Tyranny - Bastards Wound
  • Age of Wonders III
  • BATTLETECH - Initiate of the Order
  • Victoria 2: A House Divided
  • Surviving Mars
  • Victoria 2: Heart of Darkness
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall - Revelations
  • Stellaris - Path to Destruction bundle
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Tyranny - Tales from the Tiers
@Mpstark, thank you! Let me echo those above, great job pinning this one down and many thanks for going above and beyond in your efforts toward an interim mod. :bow: