Skip to content

Changed cell specialisation calculation#6800

Draft
Accidental-Explorer wants to merge 13 commits intomasterfrom
changed-specialisation-calculation
Draft

Changed cell specialisation calculation#6800
Accidental-Explorer wants to merge 13 commits intomasterfrom
changed-specialisation-calculation

Conversation

@Accidental-Explorer
Copy link
Copy Markdown
Contributor

@Accidental-Explorer Accidental-Explorer commented Mar 13, 2026

Brief Description of What This PR Does

Makes some lighter changes to the cell specialisation calculation:

  • Take into account hex size so that a cell using advanced organelles isn't likely to have a lower bonus automatically.
  • Exclude the nucleus from the calculation because its large size would have too large an influence due to above change. And realistically, having a nucleus does not really make any cell "less specialised".
  • Remove the minimum size required to trigger the specialisation effect. This prevents the sudden jump going from 5 to 6 organelles and makes design of sub-6 hex cells a bit more interesting. I also don't think this has a dangerously big effect, since the bonus rises gradually from 0 anyway.

Tooltip not adjusted yet.

More extensive overhauls:
#6805 B
#6806 C
#6822 D

Related Issues

  • Switching to eukaryotic organelles lowers specialisation bonus
  • There's an unexpected sudden jump in process speeds when you reach 6 organelles and trigger the specialisation system.

Progress Checklist

Note: before starting this checklist the PR should be marked as non-draft.

  • PR author has checked that this PR works as intended and doesn't
    break existing features:
    https://wiki.revolutionarygamesstudio.com/wiki/Testing_Checklist
    (this is important as to not waste the time of Thrive team
    members reviewing this PR)
  • Initial code review passed (this and further items should not be checked by the PR author)
  • Functionality is confirmed working by another person (see above checklist link)
  • Final code review is passed and code conforms to the
    styleguide.

Before merging all CI jobs should finish on this PR without errors, if
there are automatically detected style issues they should be fixed by
the PR author. Merging must follow our
styleguide.

Copy link
Copy Markdown
Member

@hhyyrylainen hhyyrylainen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code change looks good to me now, but I won't comment on the gameplay / design side just yet.

@hhyyrylainen
Copy link
Copy Markdown
Member

I suppose this is compatible with #6825 (after fixing the merge conflict). But how necessary is this now?

@Accidental-Explorer
Copy link
Copy Markdown
Contributor Author

Accidental-Explorer commented Mar 18, 2026

I suppose this is compatible with #6825 (after fixing the merge conflict). But how necessary is this now?

Still quite useful in my opinion. I don't think it's good that switching to eukaryotic organelles will provide a lower specialisation bonus. The equivalence change helps with the transition, but not the end point. Combined, the two changes completely fix the problem.

Of course, in this PR I also remove the minimum size, but that's separate.


tempWorkMemory.TryGetValue(definition, out var existingCount);
tempWorkMemory[definition] = existingCount + 1;
tempWorkMemory[definition] = existingCount + hexCount;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updating this count like this will break the tooltip (just commenting to remember about this as you said you didn't touch the tooltip side yet for this PR) as the tooltip will claim the player has way more organelles than they actually do.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very true! I was planning to either count the organelles themselves separately for the tooltip, or actually referring to organelle hexes (or size in some way) in the tooltip, since that would also inform the player of what is going on.

That makes me realise that in Master, the tooltip is now already a little bit off because it counts for example thylakoids in the number of chloroplasts. When I work on the tooltip, that's probably worth an "(or simpler equivalent)", or something like that.

Copy link
Copy Markdown
Member

@hhyyrylainen hhyyrylainen Mar 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not counting the organelle / part tooltips, this is already one of the longest tooltips in the game... so I think we are quickly reaching the point where any player seeing the tooltip will mentally give up before managing to read it.

Edit: just wanted to say why I didn't change it. The advice is still right that you should be adding more of the most common organelle even when it is said to be the eukaryotic equivalent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In progress

Development

Successfully merging this pull request may close these issues.

3 participants