-
Notifications
You must be signed in to change notification settings - Fork 188
Feature: #4838 Added Faction Standing System #7071
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
…tanding method
…ed up the language used for Milestones.
# Conflicts: # MekHQ/src/mekhq/campaign/Campaign.java # MekHQ/src/mekhq/campaign/io/CampaignXmlParser.java
…ving campaign options.
MekHQ/src/mekhq/campaign/universe/factionStanding/FactionStandings.java
Fixed
Show resolved
Hide resolved
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingsTest.java
Fixed
Show resolved
Hide resolved
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingsTest.java
Dismissed
Show resolved
Hide resolved
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingsTest.java
Dismissed
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a minimum viable implementation for the Faction Standing system in MekHQ, including tracking fame changes from various campaign events, integrating faction standing updates into GUI dialogs and mission processing, and adding relevant unit tests.
- New unit tests for faction standing functionalities
- Integration of faction standing processing into campaign dialogs, contract handling, and mission completion
- Updates to XML serialization and campaign daily processes to support the new system
Reviewed Changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingsTest.java | Added tests to validate starting fame values and various processing methods for faction standing changes |
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingUtilitiesTest.java | Added tests for utility methods validating standing level boundaries and negotiation/resupply modifiers |
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingLevelTest.java | Validates correct label/description mapping for different faction types and level uniqueness |
MekHQ/src/mekhq/gui/dialog/DataLoadingDialog.java | Integrated faction standing initialization at campaign load time |
MekHQ/src/mekhq/gui/dialog/ContractMarketDialog.java | Processes faction standing changes when contracts are accepted |
MekHQ/src/mekhq/gui/campaignOptions/contents/GeneralTab.java | Removed deprecated reputation components and added further reading panel modifications |
MekHQ/src/mekhq/gui/campaignOptions/CampaignOptionsPane.java | Added a systems tab for reputation and faction standing, and updated preset handling accordingly |
MekHQ/src/mekhq/gui/adapter/PersonnelTableMouseAdapter.java, BriefingTab.java, PrisonerEventManager.java | Integrated faction standing updates within prisoner-related and mission events |
MekHQ/src/mekhq/campaign/universe/factionStanding/FactionStandingUtilities.java | New utility class providing fame-to-standing mapping and related modifiers |
MekHQ/src/mekhq/campaign/Campaign.java | Integrated faction standing processing into daily campaign events and XML IO |
MekHQ/src/mekhq/campaign/universe/factionStanding/FactionStandingUtilities.java
Outdated
Show resolved
Hide resolved
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #7071 +/- ##
============================================
+ Coverage 12.41% 12.59% +0.17%
- Complexity 7242 7359 +117
============================================
Files 1116 1120 +4
Lines 143890 144704 +814
Branches 22151 22311 +160
============================================
+ Hits 17862 18219 +357
- Misses 124188 124605 +417
- Partials 1840 1880 +40 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
MekHQ/src/mekhq/campaign/universe/factionStanding/FactionStandings.java
Dismissed
Show resolved
Hide resolved
MekHQ/unittests/mekhq/campaign/universe/factionStanding/FactionStandingsTest.java
Dismissed
Show resolved
Hide resolved
# Conflicts: # MekHQ/src/mekhq/campaign/CampaignOptions.java
8D80
Resolve the CampaignOptions conflicts so we don't re-add the removed options. |
Incorporates Changes from #7062
Close #4838
This PR adds the 'Faction Standing' system to MekHQ. This tracks how positively a campaign is viewed in the eyes of other factions.
This PR represents the 'minimum viable implementation'. Faction Standing is tracked and reacts to starting campaigns, contracts, prisoner executions, and refusing Batchalls. However, there is no effect to a high or low standing. There are also no GUI components. The aim of this PR is to get Faction Standing into the hands of reviewers when it's small, rather than expecting people to review it only when its feature complete.
Future PRs will include...
This system supports both StratCon and non-StratCon play.