MegaMek / mekhq

MekHQ is a java helper program for the MegaMek game that allows users to load a list of entities from an XML file, perform repairs and customizations, and then save the new entities to another XML file that can be loaded into MegaMek.
http://megamek.org
133 stars 171 forks source link

Higher than expected opfor with FG3 #5153

Open Makaze2048 opened 2 hours ago

Makaze2048 commented 2 hours ago

Prerequisites and Pre-Issue Checklist

Severity *

Medium (Gameplay Limitation): Non-core functionality is impaired, providing a suboptimal but playable experience.

Brief Description *

Log of FG3 generation as requested by Illiani.

Log file attached, the relevant section when I originally generated is below. I regenerated and messed around with it after that though. Save file is from AFTER I altered the mission manually, don't have one from after it exists and before I made changes.

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:245) - GENERATING FORCES FOR: FRONTLINE DISRUPTION

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:274) - Target Percentage: 120

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:275) - Difficulty Multiplier: 1.0

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2719) - Total Seed Force Generic BV: 7159

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2740) - Total Base Generic BV Budget: 7159 (adjusted for campaign difficulty)

17:55:41,222 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:287) - ++ GENERATING A FORCE FOR THE PLAYER TEMPLATE ++

17:55:41,223 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:287) - ++ GENERATING A FORCE FOR THE ADDITIONAL FORCE TEMPLATE ++

17:55:41,229 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:287) - ++ GENERATING A FORCE FOR THE REINFORCEMENTS TEMPLATE ++

17:55:41,229 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:287) - ++ GENERATING A FORCE FOR THE FORWARD OBSERVER TEMPLATE ++

17:55:41,237 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2719) - Total Seed Force Generic BV: 7159

17:55:41,239 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Free Worlds League Additional Force Generic BV: 3799

17:55:41,240 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Unknown Hostiles Generic BV: 1049

17:55:41,240 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2740) - Total Base Generic BV Budget: 12007 (adjusted for campaign difficulty)

17:55:41,240 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForces(AtBDynamicScenarioFactory.java:287) - ++ GENERATING A FORCE FOR THE OPFOR TEMPLATE ++

17:55:41,240 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:453) - Force BV Multiplier: 1.5 (from scenario template)

17:55:41,246 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:662) - Force Weights: H (HHHH)

17:55:41,253 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:662) - Force Weights: M (MMMH)

17:55:41,259 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:662) - Force Weights: H (HHHH)

17:55:41,332 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:662) - Force Weights: A (HAAA)

17:55:41,333 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:790) - OpFor generated a force with 21537 / 18010 Generic BV

17:55:41,333 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:813) - Final force 21537 / 18010 Generic BV (may exceed by *1.25)

17:55:41,333 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2719) - Total Seed Force Generic BV: 7159

17:55:41,336 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Free Worlds League Additional Force Generic BV: 3799

17:55:41,336 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Unknown Hostiles Generic BV: 1049

17:55:41,337 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2740) - Total Base Generic BV Budget: 12007 (adjusted for campaign difficulty)

17:55:41,344 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2719) - Total Seed Force Generic BV: 7159

17:55:41,347 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Free Worlds League Additional Force Generic BV: 3799

17:55:41,347 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2736) - Unknown Hostiles Generic BV: 1049

17:55:41,348 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.calculateEffectiveBV(AtBDynamicScenarioFactory.java:2740) - Total Base Generic BV Budget: 12007 (adjusted for campaign difficulty)

17:55:41,355 INFO [mekhq.campaign.mission.AtBDynamicScenarioFactory] {AWT-EventQueue-0} mekhq.campaign.mission.AtBDynamicScenarioFactory.generateForce(AtBDynamicScenarioFactory.java:662) - Force Weights: M (MMHH)

Steps to Reproduce

No response

Operating System *

Windows 10

Java Version *

17

MekHQ Suite Version *

Free Text (type manually)

Custom MekHQ Version

10/28 nightly

Attach Files

mekhq.log FG3.cpnx.gz

Final Checklist

RaozSpaz commented 2 hours ago

image

The OpFor generator seems to be grabbing Unknown Hostiles when determining its GBV pool.

IllianiCBT commented 1 hour ago

Thanks for the report, I’ll get this fixed tomorrow. :)