Skip to content

Specialisation calculation overhaul D#6822

Draft
Accidental-Explorer wants to merge 32 commits intomasterfrom
specialisation-calculation-overhaul-D
Draft

Specialisation calculation overhaul D#6822
Accidental-Explorer wants to merge 32 commits intomasterfrom
specialisation-calculation-overhaul-D

Conversation

@Accidental-Explorer
Copy link
Copy Markdown
Contributor

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

Brief Description of What This PR Does

  • 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.
  • Took a different calculation: Simpson's Diversity Index, commonly used for things like species diversity in an ecosystem or market monopolisation. Still favours focusing on one organelle over others, but 8-2 is judged as better than 8-1-1.
  • Still include the specialisation bonus growing with the size of the cell, though at N-1, so a 1 hex cell is at 0 specialisation. (Unless doubling up on any organelles, it also stays at 0.)
  • Reduced strength scaling max by 50%.
  • Reduced size for max scaling to 10. (Automatically met by the nucleus, so hyper-specialisation is optimal in Multicellular)
  • Made the nucleus double the specialisation bonus effect.

Tooltip not adjusted yet.

Of course, this version starts you off with the maximum bonus, reducing whenever you add a different new organelle, which might not feel great.

Alternative overhaul:
#6801
#6806

Less extreme changes:
#6800

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.
  • Currently, removing non-relevant organelles is not necessary for "specialisation" until very large cells sizes.
  • Currently, there is no incentive against having many different organelle types in a cell.

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.

@github-project-automation github-project-automation bot moved this from In progress to Done in Thrive Planning Mar 26, 2026
@github-project-automation github-project-automation bot moved this from Done to In progress in Thrive Planning Mar 26, 2026
…. (its size would always meet the size for max strength by itself)
@Deus-Codes
Copy link
Copy Markdown
Contributor

Playtested this - not long enough to really see the entirety of progression, but long enough to see some solid prokaryotic gameplay. I will continue playtesting to the point of eukaryotic gameplay in a bit, but so far, I'm really liking what I see. The on-ramping balance definitely seems reasonable.

This applies to auto-evo and it knows how to use it, correct? Not sure if this is as a result of this particular work, but auto-evo was really nice in my playthrough. Other species were more specialized, and that gave them much more individual character than before, where everything seemed to be a hodge-podge. As a result, I could consistently identify another species that was particularly aggressive, and could track their rise and fall alongside my own organism. In other words: this has a great effect on the storytelling of a particular playthrough as well.

@Accidental-Explorer
Copy link
Copy Markdown
Contributor Author

This applies to auto-evo and it knows how to use it, correct?

The way the specialization system was implemented, it directly affects the numbers auto-evo gets. So these calculation changes automatically affect it as well. It's not necessarily "trying" to specialize, but it does delete parts and can then see if that's an improvement.

Technically purely "increased process speed" can often be a neutral instead of positive the score though I believe. (The other specialization PR will remedy that I think)

Not sure if this is as a result of this particular work, but auto-evo was really nice in my playthrough. Other species were more specialized, and that gave them much more individual character than before, where everything seemed to be a hodge-podge. As a result, I could consistently identify another species that was particularly aggressive, and could track their rise and fall alongside my own organism. In other words: this has a great effect on the storytelling of a particular playthrough as well.

New auto-evo does this in general because I put the "try to delete things" step closer to the end. So it is more likely for a photosynthetic-miche species to say "we don't need that rusticyanin" and delete it to save on osmoregulation costs.

But I do think the changes in this PR can only strengthen that.

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