Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

I have returned to ask: Is punish.expect a static setting that never goes away once you've berated a slave, or am I just not finding the right part of the code that cancels it?

I'm working on my dialogue options again and there's the "Scared" option somewhere in the code that's like "if slave is over 34 stress and expects punishment then they're Scared" and I borrowed that concept for part of my dialogue tree but if this is a "you berated him once, he's always gonna hold that against you" thing then I might change how I navigate that dialogue tree.  That, or add a bit somewhere that gets rid of punishment expectation if the slave gets to a certain level of loyalty/obedience and hasn't been unfairly punished.  I don't recall many of my slaves getting to a positive relationship without a little discipline somewhere along the way, and berating them is the lightest thing you can do, so it feels weird to have that be a static setting instead of a dynamic one.

Don't suppose there's a "days since last punishment" variable somewhere, like with "days since last sex"?

The code you are referring to has been inactive for a long time and appears to be incomplete in the current release. The Person class doesn't have many of the member variables referenced in that code, such as "punish", "praise", or "pussy"; and the "sexuals" variable is currently inactive. "slavedialogues.gd" and "statstab.gd" are the only files still relevant to "person.punish" and neither ever sets it to false, though there is a section under the 'beat' action that appears to be where it should be present.

There is no requirement explicit nor implicit in the active code of the game for a slave to be punished to become obedient or loyal. Having pleasant meet and sex interactions is sufficient to achieve both, though it is often not the fastest approach. Currently the only records of punishments is in the sex experience counts in "person.sexexp", which counts how many times a person has watched, participated in, or orgasmed from an action.

Ah!  That explains my confusion.

Glad I asked, or I'd still be barking up the wrong tree.

Is there any record of how many dates a given slave has had?  Like, if this is the first date interaction?

If not, do you have a suggestion for the best place to add such a variable?  I'd hope with like variables such as might be used for the statistics rundown, where I could also list number of dates we've had, or maybe track separately which dates ended positively vs. negatively.

".../files/scripts/person/person.gd" is the person class, which has the "metrics" variable to track how many times various things have happened to the slave, but there is nothing about dates in there. The person class uses "lastinteractionday" to track when and how many times the player has used interactions on a slave, but it doesn't differentiate between meet/date and sex.

"metrics" is the best place to add a variable to count how many dates a slave has had. Note that changing the contents of the variable in the file will not automatically update the contents of the variable for save files created prior to the changes to the file. You will need to add code to add the necessary entries to the variable if you want it to be compatible with existing saves.

Also is "dom" just obsolete code?  In SlaveDialogues' CheckSpeechPatterns:

if (person.conf < 35 && person.dom < 40 && person.traits.has('Dominant') != true) ||
(person.traits.has('Submissive') && person.conf < 60):
shy = true
if (person.conf > 55 && person.dom > 60 && person.traits.has('Submissive') != true) ||
(person.traits.has('Dominant') && person.conf > 35):
bold = true

I don't see it elsewhere but Scrivener doesn't seem to appreciate that one might want to search for a short term without getting the longer ones (e.g. "random") so I've gotten too many results to really sift through.

"dom" is no longer used, but it appears to be very similar to "asser", which is "Role Preference" or whether the slave prefers to be the giver(higher) or taker(lower) of sexual actions.

I use Notepad++ to search multiple files, but it will probably have the same issues. I recommend searching for ".dom", ".dom ", or "var dom" rather than "dom" as the additional context will remove a lot of irrelevant entries.