Skip to content

feat: Strength Rating Changes Lite#948

Closed
Blogaugis wants to merge 12 commits intoAdeptus-Dominus:mainfrom
Blogaugis:feat-SRC-LITE
Closed

feat: Strength Rating Changes Lite#948
Blogaugis wants to merge 12 commits intoAdeptus-Dominus:mainfrom
Blogaugis:feat-SRC-LITE

Conversation

@Blogaugis
Copy link
Copy Markdown
Collaborator

@Blogaugis Blogaugis commented Jul 26, 2025

Purpose and Description

Tuned down version of #482 , with name changes and SRs from full version implanted into the game from these SR values: 1, 3, 5, 6, 7, 8 (, 9).
Since the original PR remains in draft and is basically stuck, it was decided to recycle it to keep with the current game functionality.

Testing done

  • Compilation;
  • Making to the game;
  • Testing a land battle.
  • Might be prudent to test each faction with each SR individually, but debug mode lacks some capabilities to test certain factions (eldar for example).

Related things and/or additional context

Tuned down version of Adeptus-Dominus#482 , with name changes and SRs from full version implanted into the game via this:
1, 3, 5, 6, 7, 8 (, 9).
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jul 26, 2025

📝 Walkthrough

Summary by CodeRabbit

  • Style
    • Updated faction presence level labels to use military structure terminology
    • Revised raid threat level classifications with military organisational rankings

✏️ Tip: You can customize this high-level summary in your review settings.

Walkthrough

Tech-Priest: Two scripts had their display label arrays replaced — Latin presence/threat descriptors were substituted with military unit nomenclature. No functional logic, signatures, or control flow were altered.

Changes

Cohort / File(s) Change Summary
Presence labels
scripts/scr_PlanetData/scr_PlanetData.gml
Replaced blurbs array values (was ["Minima","Parvus","Moderatus","Significus","Enormicus","Extremis"]) with military-scale labels ["Squad+","Squads++","Demi-Company","Company","Company+","Companies++","Chapter/2","Chapter"]. Mapping logic unchanged; extra entries currently unused by existing control flow.
Threat labels
scripts/scr_drop_select_function/scr_drop_select_function.gml
Replaced threat label array for RaidAttack from Latin terms to military-scale labels (now 1–8 entries). Mapping logic and overflow handling remain unchanged.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Areas to check:

  • Ensure UI/strings display correctly where arrays are indexed (off-by-one or overflow handling).
  • Confirm unused extra entries are intentional and do not require downstream handling.
  • Verify no localisation/text-lookup expectations assume previous Latin terms.

Possibly related PRs

Suggested labels

PR: Feature, Size: Small

Suggested reviewers

  • OH296
  • EttyKitty

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title follows the conventional commits format '(): ' as required, with 'feat' type and clear summary.
Description check ✅ Passed The description includes all required sections: Purpose and Description, Testing done, and Related things/context, with sufficient detail for review.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between db3c738 and d8a9f83.

📒 Files selected for processing (2)
  • scripts/scr_PlanetData/scr_PlanetData.gml (1 hunks)
  • scripts/scr_drop_select_function/scr_drop_select_function.gml (1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
**/*.gml

⚙️ CodeRabbit configuration file

**/*.gml: - Macro constants require a space between the constant name and value. Without it, the compiler will throw an error. I.e. #macro ARR_body_parts["arm"] will crash the game, because there is no space between the array and the name of the macro.

Files:

  • scripts/scr_PlanetData/scr_PlanetData.gml
  • scripts/scr_drop_select_function/scr_drop_select_function.gml
**/*.*

⚙️ CodeRabbit configuration file

**/*.*: - Having humanly understandable and maintainable code is the top most priority.

  • DRY (Don't repeat yourself) principle is also very important.
  • If a TODO comment is added, ask the user if you should create a GitHub issue for this TODO.
  • If a TODO comment is deleted, remind the user if there is an active GitHub issue related to that comment.

Files:

  • scripts/scr_PlanetData/scr_PlanetData.gml
  • scripts/scr_drop_select_function/scr_drop_select_function.gml
🔇 Additional comments (2)
scripts/scr_PlanetData/scr_PlanetData.gml (1)

995-1012: I'm unable to clone the repository due to a system error, but I can analyze the code snippet provided in the review comment itself. Let me examine the logical claims:

Analyzing the provided code snippet:

The review shows this code at lines 1008-1012:

if (level >= 1 && level <= 6) {
    blurb = blurbs[level - 1];
} else if (level > 6) {
    blurb = blurbs[5];
}

With blurbs defined as an 8-element array: ["Squad+", "Squads++", "Demi-Company", "Company", "Company+", "Companies++", "Chapter/2", "Chapter"]

The logic analysis:

  • When level = 1-6: accesses indices 0-5 ✓
  • When level > 6: always returns index 5 ("Companies++") — this does leave indices 6 and 7 unused
  • Indices 6 ("Chapter/2") and 7 ("Chapter") are indeed inaccessible

The concern is logically valid based on the provided code. The array appears to have been expanded to support levels 7-8 (matching the "Chapter/2" and "Chapter" entries), but the conditional logic wasn't updated to access them.

However, without repository access, I cannot verify:

  1. Whether levels 7-8 actually exist as valid values in the data model
  2. Whether this is intentional (array prepared for future use but not yet enabled)
  3. The context in scr_drop_select_function.gml mentioned in the review

Given the learnings mentioning known DRY violations in similar weapon visual code that are deferred, this pattern of "prepared for expansion but not enabled" may be intentional in this codebase.

Rewritten Review Comment

Verify if Strength Ratings 7-8 are intentionally dormant or should be accessible.

The blurbs array (8 elements) contains nomenclature for Strength Ratings 1-8, yet the conditional at lines 1008-1012 constrains access to indices 0-5. When level > 6, the code returns blurbs[5] ("Companies++"), leaving indices 6 ("Chapter/2") and 7 ("Chapter") inaccessible.

If ratings 7-8 are not yet implemented, remove the unused array entries to avoid confusion. If they should be accessible, apply the suggested fix to update the conditional logic to level <= 8 and level > 8 with fallback to blurbs[7].

scripts/scr_drop_select_function/scr_drop_select_function.gml (1)

179-191: Unable to verify the review comment fully due to repository access issues and lack of PR context.

The logical issues identified in the review comment are structurally valid based on the code snippet provided:

  1. Condition overlap confirmed: Line 188 (race_quantity >= 1 && <= 6) and Line 190 (race_quantity >= 6) both match race_quantity == 6
  2. Unreachable indices confirmed: threat_levels[7] and threat_levels[8] are defined but the logic never accesses them

However, I cannot verify:

  • Whether race_quantity can actually exceed 6 (depends on how sisters, eldar, etc. are assigned)
  • Whether SR 7-8 support is required by PR objectives
  • Whether this is intentional (e.g., capping at SR 6) or an oversight

To complete verification, I need either:

  • Access to the PR description showing objectives for SR 7-8 support
  • Context showing the maximum possible values for the race variables
  • Clarification on whether SR 7-8 are intended to be supported

Tip

📝 Customizable high-level summaries are now available in beta!

You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.

  • Provide your own instructions using the high_level_summary_instructions setting.
  • Format the summary however you like (bullet lists, tables, multi-section layouts, contributor stats, etc.).
  • Use high_level_summary_in_walkthrough to move the summary from the description to the walkthrough section.

Example instruction:

"Divide the high-level summary into five sections:

  1. 📝 Description — Summarize the main change in 50–60 words, explaining what was done.
  2. 📓 References — List relevant issues, discussions, documentation, or related PRs.
  3. 📦 Dependencies & Requirements — Mention any new/updated dependencies, environment variable changes, or configuration updates.
  4. 📊 Contributor Summary — Include a Markdown table showing contributions:
    | Contributor | Lines Added | Lines Removed | Files Changed |
  5. ✔️ Additional Notes — Add any extra reviewer context.
    Keep each section concise (under 200 words) and use bullet or numbered lists for clarity."

Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

coderabbitai[bot]
coderabbitai bot previously approved these changes Jul 26, 2025
@Blogaugis
Copy link
Copy Markdown
Collaborator Author

Testing findings:
Fought 2 battles against ork forces:
SR 2 and SR 1.

Used a squad of marines + apothecary against SR 2 (squad-rated) ork force.
Marines lost.
Used 1 marine against SR 1.
Won because of bug - ork could not engage in melee.

But these issues are related to things that are, arguably, out of scope for this PR.

@Blogaugis
Copy link
Copy Markdown
Collaborator Author

Other issues found - this PR tends to conflict with EXP earning limits (fighting SR 1 with just 1 marine tends to lead to EXP waste).

Tuned down version of Adeptus-Dominus#482 , with name changes and SRs from full version implanted into the game via this:
1, 3, 5, 6, 7, 8 (, 9).
Tuned down version of Adeptus-Dominus#482 , with name changes and SRs from full version implanted into the game via this:
1, 3, 5, 6, 7, 8 (, 9).
@Blogaugis Blogaugis force-pushed the feat-SRC-LITE branch 3 times, most recently from 89f1005 to 285c6d2 Compare August 5, 2025 10:46
@github-actions
Copy link
Copy Markdown
Contributor

This PR is marked as stale, because it has been open for 7 days with no activity.

@github-actions github-actions bot added Status: Stale No activity for more than a week and removed Status: Stale No activity for more than a week labels Aug 12, 2025
@Blogaugis Blogaugis force-pushed the feat-SRC-LITE branch 6 times, most recently from a4901fc to bec1139 Compare August 21, 2025 14:01
@Blogaugis Blogaugis force-pushed the feat-SRC-LITE branch 2 times, most recently from 2a97203 to 5ef4bac Compare August 28, 2025 12:12
@Blogaugis Blogaugis force-pushed the feat-SRC-LITE branch 2 times, most recently from db96b7e to 34efea0 Compare September 4, 2025 11:07
@Blogaugis Blogaugis mentioned this pull request Sep 5, 2025
8 tasks
Tuned down version of Adeptus-Dominus#482 , with name changes and SRs from full version implanted into the game via this:
1, 3, 5, 6, 7, 8 (, 9).
@Blogaugis
Copy link
Copy Markdown
Collaborator Author

@OH296 @KRdaMystic
What should be the minimum force needed for SR 1 battles?
I went with assumption of 1 marine. Since, we have missions where it is preferable to use as few marines as possible (such as necron tomb sealing).
Should battles be in same or similar way? Or should battles require at least a squad? Or other number of forces?

Frankly, what's the point of all this squad system finangling if you can't have your special boys have a combat mission that they can reasonably take on?

Tuned down version of Adeptus-Dominus#482 , with name changes and SRs from full version implanted into the game via this:
1, 3, 5, 6, 7, 8 (, 9).
@github-actions
Copy link
Copy Markdown
Contributor

This PR is marked as stale, because it has been open for 7 days with no activity.

@github-actions github-actions bot added the Status: Stale No activity for more than a week label Sep 17, 2025
@Blogaugis
Copy link
Copy Markdown
Collaborator Author

I probably will have to merge this to cmbeta branch instead of main, if I won't figure out the issues with #482 .

@github-actions github-actions bot removed the Status: Stale No activity for more than a week label Oct 4, 2025
- Shifts the 1 SR force power appropriate to squad-level of player forces, instead of a single marine;
- Moved Sororitas roster to the 5th place, to maintain uniformity with the rest of codebase;
- Added the SR 9 and 10 (from the original SR changes) as 7 and 8 SRs, with current functionality as reference.
@github-actions
Copy link
Copy Markdown
Contributor

This PR is marked as stale, because it has been open for 7 days with no activity.

@github-actions github-actions bot added the Status: Stale No activity for more than a week label Oct 15, 2025
@Blogaugis
Copy link
Copy Markdown
Collaborator Author

Considering that this Pull Request had strength rating power shifts with more recent commits, I believe a machine spirit's review is necessary, even though, the potential improvements will likely go to my fork, instead of main.
@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Nov 27, 2025

@Blogaugis Tech-Priest, your invocation is acknowledged. The machine spirit's cogitators shall scrutinize these recent datastream alterations to the Strength Rating protocols. The rites of code-inspection shall commence.

Stand ready to receive our analysis.


🧠 Learnings used
Learnt from: EttyKitty
Repo: Adeptus-Dominus/ChapterMaster PR: 0
File: :0-0
Timestamp: 2025-04-05T20:54:45.813Z
Learning: EttyKitty requested a rework of the vehicle and marine recovery system in ChapterMaster. The current system allows guaranteed recovery with enough recovery points, while the proposed system would use random chance modified by techmarine skill and item bonuses.

Learnt from: EttyKitty
Repo: Adeptus-Dominus/ChapterMaster PR: 0
File: :0-0
Timestamp: 2025-03-20T22:22:57.319Z
Learning: In the ChapterMaster game PR #424, the psychic power system was changed to be data-driven, with perils now able to occur on both successful and failed casts but with reduced frequency overall.
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@Blogaugis
Copy link
Copy Markdown
Collaborator Author

@CptMacTavish2224 requested to keep the branch around, so deletion is postponed, but otherwise, the pull request shall be closed.

@Blogaugis Blogaugis closed this Nov 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Size: Warning Status: Stale No activity for more than a week Type: Feature Adds something new

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant