Skip to content
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

New features for pregnant plugin #22

Merged
merged 8 commits into from
Jun 23, 2023
Merged

Conversation

XspeedPL
Copy link
Collaborator

@XspeedPL XspeedPL commented Jun 1, 2023

New features:

  • pregnancy roll bonus on repeated internal shots
  • switch to pregnant sprites after repeated internal shots
  • dripping in non-penetrative states

Also changed default fertility to 30% to facilitate the use of the new bonus.

@XspeedPL
Copy link
Collaborator Author

XspeedPL commented Jun 1, 2023

FYI, VS Code applied lots of automatic whitespace changes to JSON files, to avoid looking through them on GitHub you can use the w=1 URL switch

https://github.com/ErinaSugino/Starbound-SBR-Mod/pull/22/files?w=1

@ErinaSugino
Copy link
Owner

ErinaSugino commented Jun 1, 2023

On another note:

The mechanic consists of two independent parts - the added fertility bonus on successful sub-sequent climaxes, as well as the cumflation logic of displaying the pregnant belly sprite after enough overall climaxes. So far, however, both these mechanics are triggered simultaneously resulting in a logical error.

That the fertility bonus is triggered after all pregnancy validation checks ran makes sense. That, however, the general "you're getting full" part of the logic too is bound by (except for the actual fertility roll) all requirements for a pregnancy being fulfilled is not.

Here is a good example: SBR only sends a pregnancy attempt request from the climax plugin to the pregnancy plugin when the climaxing actor has the necessary conditions to impregnate anyone in the first place. However, different conditions are applied to generally climaxing. This results in, e.g., an infertile or sterilized actor still logically climaxing, still logically "filling the other actor up", but never sending a request to the pregnancy plugin, hence never increasing the statistic.

You should probably outsource this part of the logic elsewhere, or at least make sure the actual tracking of current stored shots is triggered independently from impregnation requests, by making the climax plugin send another different event message you hook into.

EDIT:
Oh yeah, also forgot: Config options. Ignoring the discussion about the drip timer, features have to be able to be turned off. Disabling the fertility bonus can be done by just setting the multiplier to 1 (the additional calculations shouldn't cause any notable workload), however, the use of inflated belly sprites should be seperately togglable.

@ErinaSugino ErinaSugino added Request Request for new feature or changes ToDo Stuff designated as current ToDo Testing Required Feature is new and requires testing Pending Waiting for some dependency labels Jun 1, 2023
@XspeedPL
Copy link
Collaborator Author

XspeedPL commented Jun 1, 2023

Alright, this should cover everything you mentioned

Proper way of initializing in internally managing new variables.
Copy link
Owner

@ErinaSugino ErinaSugino left a comment

Choose a reason for hiding this comment

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

Good enough. The fertility bonus vs. inflation split still needs more solid separation, though this isn't critical for now. I'll look into this later.

@XspeedPL
Copy link
Collaborator Author

XspeedPL commented Jun 2, 2023

Climax counter could be moved to climax plugin, since pregnant plugin depends on it anyway, then new bonus would remain in pregnant and inflation made its own new plugin?

@ErinaSugino
Copy link
Owner

No need to make it its own plugin. But like I already mentioned in my previous notes, the climax plugin will have be involved in some way.

@ErinaSugino ErinaSugino merged commit 4d63f17 into ErinaSugino:main Jun 23, 2023
ErinaSugino added a commit that referenced this pull request Jun 24, 2023
Sync latest changes of main branch from #22 (4d63f17 & 4792327)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Pending Waiting for some dependency Request Request for new feature or changes Testing Required Feature is new and requires testing ToDo Stuff designated as current ToDo
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants