Thrive
Thrive copied to clipboard
Basic cilia attraction mechanism
Brief Description of What This PR Does
Partially based on Thim's prototype. Each cilia now have their own "force field" that can pull things towards it, this field is made not too big to make it not too OP.
Related parameters are freely accessible in Constants for easier balancing.
Progress Checklist
Note: before starting this checklist the PR should be marked as non-draft.
- [x] 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.
This is a fun feature, and I'm glad that you have adapted Thim's prototype so well.
I haven't noticed any issues when testing, and had a bit of fun hoovering up little prokaryotes as I went on my merry way. It's also rather entertaining to drag allied cells around.
Is there a way to turn off the feature? My worry is that this hidden feature will confuse players and we get a bunch of questions asking why that happens... I know it's pretty late to be asking for changes, if this is to make it into 0.5.9, but I think this would be a pretty good candidate for the first thing to use a upgrade where you can pick an option with a button in the organelle upgrade screen for it. So that would finally warrant doing https://github.com/Revolutionary-Games/Thrive/issues/3041
As I said before, the upgrade aspect is to be done in later time. I'm hoping the cilia animation speeding up can indicate to the player that it's doing something.
If that's very concerning, perhaps I could make a tentative cilia modify screen that only allows toggling between two functionalities: motile and ingestive (not sure if it's the right word)?
At least the cilia tooltip would need to explain this new surprise mechanic. Which we'll need to edit out then afterwards when this is properly done, which means we waste translators time.
At least the cilia tooltip would need to explain this new surprise mechanic. Which we'll need to edit out then afterwards when this is properly done, which means we waste translators time.
I can update the tooltip, don't worry about that. Personally, I'm in favor of this feature.
My concern:
- When cilia grabs a cell with a lot of pilus, will I die quickly of pilus damage?
- When cilia crabs a cell bigger than you, will you eventually get engulfed quickly?
- If this bioprocess consumes atp, can I disable it somehow in the stage?
When cilia grabs a cell with a lot of pilus, will I die quickly of pilus damage?
Yes.
When cilia crabs a cell bigger than you, will you eventually get engulfed quickly?
Probably, if the cilia can manage to pull it.
If this bioprocess consumes atp, can I disable it somehow in the stage?
Does not cost ATP.
I'm of the opinion that this should wait until after 0.5.9. It's a cool feature, but cilia on their own are a cool feature for everyone who hasn't had access to them for months (i.e. not us). Adding this now probably adds too many layers of confusion for new players.
I think I can dedicate time to making the general part of the upgrade system, so merging this can be considered once the basic feature has no bugs. It shouldn't be hard for me to make this depend on an upgrade in the organelle being present later.
Is this still planned for 0.5.10? Seems a silly thing to miss considering how close it was for 0.5.9.
Well I no longer have time to dedicate to making the part upgrade GUI part for this... so someone else will need to work on that if this is to be done. This might get pushed back to the release after 0.5.10... I'll switch this to that milestone once I create it.
We are currently in feature freeze until the next release. If your PR is not just a simple fix, then it may take until the release to get reviewed and merged.
When cilia crabs a cell bigger than you, will you eventually get engulfed quickly?
Probably, if the cilia can manage to pull it.
Out of curiosity, does this respect Newton's third law? ie, do you get pulled towards it as well, with the more massive cell acquiring less velocity (due to the second law).
@MayeulC I actually just saw your comment now so sorry for the delay... The answer is no, player's microbe is completely ignored in the process currently (for gameplay reasons). Even if it's the case, technically you should only be able to pull objects equal or less than your mass I guess? I don't know, the physics would need some balancing.
I do think that would allow cilia being made as some sort of propulsion mechanism for little cells though, not saying it shouldn't be possible, the upcoming complementary organelle upgrades feature would allow specialized cilia anyway so the cilia's role would not just for sucking things in.
I'll actually probably have time next week to start on the general organelle selectable upgrades system, so this PR might finally get merged then.
The answer is no, player's microbe is completely ignored in the process currently (for gameplay reasons).
Aww, that's a bit of a bummer, I like double-edged swords.
Even if it's the case, technically you should only be able to pull objects equal or less than your mass I guess? I don't know, the physics would need some balancing.
Not really, if you exert a force, technically they exert the same force on you (question of perspective). The less massive object is going to be pulled more, but that's just because it is faster to accelerate. That means: it's OK for you to make something sticky, but don't complain if you get stuck to something bigger than you. Later, a release mechanism could be unlocked.
@Kasterisk what's with the collision layer changes in this PR? I tried to read the code but I didn't manage to understand why that is changed. Obviously a new weapon the player can use, should also be usable by the AI and for that reason I find it highly suspicious that a collision layer specifically for the player was added.
player's microbe is completely ignored in the process currently (for gameplay reasons).
That was the reason if I recall my own changes correctly.
I'm planning on starting working on the organelle upgrades now, and as the AI cannot upgrade their organelles they won't spontaneously evolve it (so it can only appear after the player has added it). So I think it'd be better to remove that limitation from this to make this a lot smaller change.
Can you make those changes, or do you mind if I go pretty heavy handed on this now and then merge?
Yes, just a moment.
Okay done.
I ended up refactored the attraction logic a bit which also fixed a problem where the cilia pulling no longer works after being re-enabled from deactivation.