Esoteric Update #124 - A 1k Word Post About Social Skills


Got a lot done this week and I'd like to discuss it or present what I've done for feedback. Sadly, I've not had time to prepare any lore, so there won't be anything new for this Monday. I'll get something out next time.

Now then, let's start with the smallest thing - I made it so that dysphoric transwomen now change their junk when falling asleep and waking back up, something that's been hanging in the TODO list for a while. Similarly, for all characters, I'll be implementing inventory and equip overrides for dreams. After all, you can't just bring items in and out of the dream.

Furthermore, I've implemented a system for automatically assessing and inserting insight icons for choices that involve NPC interactions. There are several interaction archetypes (6 at the moment, this includes compliments, innuendos, jokes, etc.) that can occur when the PC speaks with an NPC. Now, as long as the game is informed what interactions occur after a choice, it can automate inferring insights from the data that individually describes a character's preferences. Basically, you might remember this:


Now on the other side, we have this too:


However, this brought us to a different problem - since there can now be so many factors in determining the insight icons for a given interaction, what about cases where they conflict? Essentially the game needed insight icon disambiguation and that's exactly what I implemented. In the process, I've also included the possibility for active stipulations to affect the disambiguation process. For example, if the PC feels optimistic in a given moment, she might interpret mixed signals as overall positive. I'm still working out the kinks in this system, so I won't say much more. The coding for it is done, I'm just still figuring out what conclusions should take precedence and when.

Ok, and this isn't even the end of it... Actually, I'm only now getting to the meat of what I've been working on.

I've spoken about wanting to have dense social skill usage in the game for some time now. So, having worked on the above, I've decided to implement a few more features towards that end.

The first of these is familiarity, This is a value tracked individually (though optionally) for NPCs and represents the degree to which the PC has figured out this specific person. Familiarity maxes its effects at 1.0 and applies its value as a bonus to the PCs social skills when checking against that character. It's actually a malus to the NPCs defence, but this is functionally a symmetrical situation, it doesn't matter on which side the modifier is applied. Now, you might be confused at what I mean by something maxing out at 1.0. That has to do with the skills in the game actually having continuous values, even if in the interface you only see it as an approximation between 1 and 5 stars. This is an extrapolation of a very early idea the game already used to provide tips for flirt actions (I'll be re-writing that to be homogenous with everything eventually). I think it makes a lot of sense for this to be included in the game. There's something I find appealing about the PC slowly breaking through the masks (in the psychological sense, rather than arcane) of the people around her... given that she has the social skills to back this up.

And that brings us to the next part of this. As neat of an idea as I might find familiarity, it does not actually increase the density of skill checks, it only works with the ones already there. But in finding a way to hook up gaining familiarity, I ended up doing a bit more.

Let's go back to the interactions. When a character has one of these archetypical interactions with her NPC conversation partner, the game reads their preferences towards this interaction given the current conversation mood (you might remember me making some machines that control that recently) and then applies the values to the NPCs intimate, romantic and erotic investment in the PC. Three distinct values that can go up and down individually based on the NPC's personality (or preferences). Each interaction is linked with a social skill class (there are three classes, Desire, Emotion and Reason) and two additional operations are made when an interaction occurs. On one side, the interaction values are adjusted according to the relevant skill's Affect component. On a positive change, you can gain a bonus of up to 50% (up to 150% of the original value) and on a negative on, a similar mitigation (down to 50% of the original value). This scales linearly with the Affect skill.

Then, familiarity is gained. Much like you gain experience in relevant skills with each insight prediction, each interaction progresses familiarity with the given character. But much as the experience gain is based on an exponent of the difference between your skill and the NPC's skill, a similar calculation is used here. Still using the relevant skill class, the PC's Sense is pitted against the NPC's Control. The ability to understand people vs the ability to control yourself. As such, some characters you can play as will be better at this than other and other characters might be easier to figure out because they are not as guarded.

So yeah...


A few changes and suddenly giving someone a compliment becomes a pretty extensive interplay of different skills. And the best part is that all of it runs under the hood, requiring only a description of the situation, rather than any explicit calls to the code.

Get Esoteric ♥ Esoterica

Leave a comment

Log in with itch.io to leave a comment.