Sunday, August 16, 2020

Sunday, August 2, 2020

Unholy Arts - Development Build version 0.1.1 changelog

What do you mean I forgot to publish a post here announcing the public version v0.1??? Anyway, remember you can download public versions at itch.io.

As for today's build changelog,

General
- Added a settings menu at the start of the game. Current options are:
  - Enable/Disable futa content (Enabled by default)  - Enable/Disable anal content (Enabled by default)
There are other options in the settings screen, but they refer to content that is not implemented yet.
Note: Enable/Disable futa content works for in-game content. Test links from the development build's initial shortcuts screen do not take this configuration into account.
Another link leading to the settings menu has been added to the Personal Room, but choices that may lead to inconsistent results aren't available there. You can only disable futa content at the start.
- Candidate characters no longer learn a lot of scene moves at the end of the Prologue. Instead, the majority of moves are now learned in the library.
- Padmiri and Valtan now learn a few moves before a certain story event, in case they haven't learned them in the library earlier.
Library
- Added scrolls system. Characters may now look for scrolls and study them in the Main Library. Scrolls are short stories or information about the world that develop the worldbuilding. You may search for new scrolls as much as you want to, but you may only study one scroll each day.
Studying scrolls gives different benefits, such as learning new moves or gaining experience.
Studied scrolls may be read again at your personal room, for no cost and no benefits.
Scrolls fall under any of three categories at the moment:
 - Lore: The author explains their understanding of the known world. These are usually edited design documents that I originally wrote to keep the world-building consistent. They grant experience on the first reading.
 - Short stories: Small erotic stories set on the Confined Valley. They may contain material that was disabled on the game's settings, but they include a list of tags at the start. They teach new scene actions on the first reading - but some of these actions may require specific settings to be usable. For instance, you may get access to a short story with anal content and learn anal-related moves, but these moves won't actually be usable if anal content is not enabled.
 - Gameplay tips: Small stories providing extra details on how some game mechanics work. Reading these is useful if you don't read the devlog posts and you don't want to figure out some advanced mechanics on your own. They grant experience on the first reading. (No gameplay tips scrolls at the moment)
New scrolls for the library:
- [ Lore / Experience ] On Aether - [ Lore / Experience ] On family - [ Lore / Experience ] The Wilds - [ Short story / New moves ] Basics of sex - [ Short story / New moves ] The taste of pleasure - [ Short story / New moves ] Surprised in the rear - [ Short story / New moves ] Payback for the thief - [ Short story / New moves ] Pillow feet fight
AI
NPC Candidates will now sometimes study scrolls at the Main Library during Socialization Period.
New scene actions
- Stroke ass - Penetrate ass - Anal thrust - Hold arms - Vines hold arms (Leirien exclusive move) - Pussy footrub - Dick footrub - Lick leg
Note that the AI has not yet been tuned to take them into account in the medium-term and will only use them if their flavor tags score high enough.
QoL improvements
- Several new buttons have been added for training and rest map actions, allowing the player to select different amounts of training time. You may now train up to 30, 60, 120, 180, 240 or 300 minutes with one action.
- Moved "Rest and initiate a new day" button to the top of the Personal Room Menu.
Cheat Menu
Added a Menu to edit a character's name, sex and gender.
Bug fixes
- Located a bug that causes some scenes where the player is leading not allow the player to use continued and positional actions during the first turn. Some of these instances have been fixed, but a few may be missing. If you find any of these, please send a bug report
- Fixed a bug that allowed bars other than lust to fall below zero in scenes
Note: The game currently starts at a shortcuts screen. I usually leave these available in development builds just in case someone wants to poke with them for fun, but do not expect them to be stable. If you want to properly play the game, just click on "Start the game".

Wednesday, July 15, 2020

Changelog for development build v0.0.9

Getting pretty close to the v0.1 release. The majority of work left is mostly QoL features and polishing some edges.
New things in this version are mostly related to AI: in bed, in social interactions, and in the map in general. I hope they surprise you!
AI
- Updated NPCs' Sex Scene AI. Instead of just randomly choosing actions weighted towards their preferences, NPCs may now take specific routes of actions, such as "Make Kneel" -> "Get blowjob". This should make their behavior feel more coherent overall. This currently works in a fixed, non-modular way, so I'll rewrite this code when Sex Scenes receive more content. NPCs will now masturbate in non-scripted scenes.
- NPCs are now able to reject conversations. They may do this depending on their mood, their relationship with the offering character, and the current time of the day.
- NPCs now have a global AI, which sets mid-term goals and evaluates whether these goals should be immediately pursued or not, and communicates this information to its own map AI.
- Global AI now evaluates training missions and whether it should rest or not.
- NPCs now have a social AI, which determines the attitude "strategy" they will follow in relation to other characters. This is re-evaluated daily. This system is still in diapers and will see further work after v0.1.
- NPC Candidates will choose a romance target each day, based on their own opinions of each Candidate and the Candidate's stats. NPC Candidates will be more likely to pursue socializing and sex with their romance target. They may also choose enemy targets, which they will be more likely to avoid.
-NPCs' map AIs are now able to pursue a character that is moving across multiple rooms. This allows NPCs to pursue goals relative to non-static NPCs, which was a requirement for the AIs to interact with each other under realistic circumstances. NPCs will give up chasing characters when the total amount of traversed rooms doubles the initially expected amount of rooms required to reach the target.
- NPCs will now choose specific social interactions depending on their goals with their current target.
- NPCs may now choose to leave a conversation if their social drive gets too low.
- NPCs now invite other characters to have sex. Val took Padmiri to her room while I was fondling her during tests :(
SYSTEM
- Added extra functionality to interrupt system events and make them act in different ways. This should smooth the development of character interactions on map.
- Added functionality for NPCs to initiate social interactions with each other.
- Added functionality for the player to join already stablished social interactions between NPCs.
- Added functionality for NPCs to ask the player to join them in social interactions.
- Added functionality for NPCs to invite to have sex with each other.
- Added functionality for NPCs to invite the player to have sex.
UI
- Some texts through the game now have received a different formatting.
- Set a background image. This is a test and opinions are most welcome.
FIXES
- Fixed issue that would cause simulation periods not to finish at their exact time.
- Fixed issue that caused events not get sorted correctly when they were added to ongoingEvents in the middle of advanceTime()
- A long bug-hunting session. Would could have imagined that when you create several systems that interact with each other in unexpected ways you would find bugs in long sessions that you wouldn't in small tests?

Wednesday, July 8, 2020

What makes PRIESTESSES want to have SEX???

Now that I got you clickbaited, here's the function that makes a NPC accept sex when offered.


Also, I forgot to post it here, but check out the last devlog post on itch.io.

It shouldn't be too many more weeks until the next public release is ready!

Monday, June 22, 2020

Relationships, more on Social Interactions, and v0.0.7

To expand some more on the Social Interactions System, there might be many intricacies that aren't too obvious at first. For instance, characters that are currently angry will not only get pushed towards more hostile interactions, it will also be harder for them to grow friendly, flirty, or into any other positive states until they calm down.
There are also many interactions that have special effects. The different greets have strong effects for a low social drive cost, but they will only be offered to you at the start of the conversation: they're best used as a way to set the tone. The "Talk about" interactions have a specific topic - if it's a topic the character you're talking to enjoys especially, it will have a bigger effect. If the image below you can see the effects of a round where I used "Talk about training" with Nash, while she used "Flirtatious greet" on me D:

The Prologue scenes have received some extra work. The changes to different stats that you could see on the scenes with the dream's mysterious woman have been added to anywhere it was appropiate, even if it had barely no gameplay effects.
The Prologue scenes will also set different relationship stats with the other Candidates, which should help you set some things on track right from the start. These choices have particularly strong effects for the early in-game days.
Some of your choices may also give you extra experience in a particular stat, but they usually come at a cost.
You can see detailed info about your relationship with other characters on your personal room, at the end of each day. Relationship stats are divided into 3 values: short-term value, long-term value, and level. Level is calculated by passing the result of summing STV and LTV through a function.
Short-term value is what is influenced by the vast majority of your interactions with a given character. Each day, a fraction of each current STV is lost, and a smaller fraction of that fraction is added into LTV. Given infinite time, 20% of the STV will be converted into LTV and the rest will be lost. This means that you can get a given character to like you or hate you in a relatively short time, but if you want that relationship to endure time, you'll have to nurture it.
On the next entry I'll talk about Story Events. The vast majority of the content for version v0.1 (the next one that will get a free release) is finished, but I also have to polish some things and update the AIs for them to have more coherent behavior in all areas.
​I'm also posting the changelog for the development build 0.0.7, which is available to Patrons:
Changelog from 0.0.6 to 0.0.7
- Short scenes after the Ritual of Avatars, introducing a few side-characters and (truly) finishing the Prologue.
- The Simulation Cycle will now start at the end of the Prologue. The cycle is as follows: Training Period -> Work Period -> Socialization Period -> Rest Period -> New Day -> Training Period. Story Events may take place at the start of a New Day.
- Added a Story Event system. Sometimes, at the start of the day, a traditional Choose Your Own Adventure story will take place. The events currently available are fixed to happen during days 3, 4 and 5, but some events in the future may depend on your choices or the state of the world. There are 3 events right now, and 2 additional ones are expected to appear in v0.1.
- Added a Quickstart Menu for supporters, which will allow you to start the game at different bookmarks. Right now, the only available bookmark is right before the Ritual of Avatars. Using the Quickstart Menu will ask you about your previous choices, so it may spoil sections of the story.
- Added a Cheat Menu for supporters. You may access it from your Personal Room right before the end of the day. It allows you to change some character stats as well as some relationship variables.
- Protagonists' avatars now appear on the relevant story passages during the Prologue. - Different scenes during the Prologue will now affect to the Player's lust, willpower, energy and social drive. - Different scenes during the Prologue will now define the Player's initial relationships with other characters. - Padmiri, Nashillbyir, Valtan and Claw now have different starting relationships with each other.
- Some minor bugs were fixed.

Wednesday, June 10, 2020

Introducing the Social Interactions System

I've finished the foundations for the Social Interactions System, an important feature for the simulation side of the game. During the sections of the game in which you're able to roam the map, you'll find characters pursuing their own goals. If you approach them, they may accept to chat with you. In these sections, each character will be offered a number of interactions each turn, like chatting about different topics or engaging in more physical activities. These interactions will change the participants' moods and the relations they have.



Mood is feeble and short-lived, while relations may last for a long time if they're properly nurtured. In future version of the game, the mood of a character at a given time and their relationship with you will help you to achieve different goals, like taking them to bed, taunting them into combat or establishing alliances.



Be careful! Your current mood will influence what interactions are avaiable for you. Get flirty and will have many opportunities for physical touch, but become angry and things may get out of hand! You can check the new features at the development version available for Patrons.

Friday, June 5, 2020

Demo and status of the blog

Hello, everyone! I assume everyone reading this already knows, but the Unholy Arts demo was already released on Itch.io, and you can support the game's development on Patreon. I didn't mention it here because the blog apparently had almost no following and I was considering moving the blog altogether to the Itch.io's devlog space, but ultimately I'm going to keep both, because cross-posting the appropiate announcements to both sites isn't much more work than just making new posts.

On a side note, here's a sneak peek of what I'm currently working on:


You can read more about the current goals for the next version here, and remember that Patreon supporters of the appropiate tier get access to development builds some time before public releases.

Monday, May 4, 2020

AI now and later

Note: this may be a fairly technical entry.

Given that the most important goal of this game is creating rich character interactions, it's fundamental for the game to have rich AI systems capable of making their behaviors interesting.

This supposes some challenges for me. For starters, there are many different instances in which "interesting behavior" means fairly different things: Is a given character fleeing from another? Are they aware of any possible danger? Do they want anything other than pleasure in this specific scene? And so on. As if that wasn't enough, this is a game that will see new mechanics be introduced, mechanics that the AI has to take into account, and I will have to deliver playable builds periodically.

Block of code showing the definition for some tagged tastes. Each move has a number of tags, and non-playable characters use their own tastes and the dynamics of the current scene to decide which move they will use next. This will be seen in action in some scenes of the Demo build.

Creating the perfect AI for any of these builds, that will have a specific set of mechanics at the moment of release would imply a lot of work that would become obsolete when the AI for that specific task needs to get updated. An acceptable compromise, in my view, is delivering functional yet not polished AIs in the early builds: I'll be mostly creating auxiliary functions and systems that are generally useful to gather and sort data and priorities, which will then be assembled into small algorythms.

One of these auxiliary systems is the pathfinder. Above, you can see the logged results showing the paths to each room in the Training Grounds from the West Library. The first maps will be playable in the version 0.1.

This methodology will allow me to keep creating code that will remain useful in the future, instead of recrafting many sharp tools that go rust in a couple of months. When the main mechanics of the game are fully designed and everything that's left to serve is content, I'll have a lot of resources available to create refined and polished AI systems.


One off-topic note: the vast majority of the content for the Demo is finished, and it'll be playable at some point during May. Stay updated!

Sunday, April 19, 2020

Planned Features

Today I'll be listing some general milestones for the game's development, explaining the design behind their features and providing some information about the order in which they'll be developed.

Game sections: Given that Unholy Arts intertwines different genres, it is divided into different systems. They may be categorized as it follows:

Scenes - Most similar to turn-based RPG battle systems.
- Sex Scenes (Playable in the demo): Congifured to allow many different dynamics. NPCs may look for their own pleasure, for the pleasure of others or for everyone's, or they may instead be trying to seduce someone or erode someone's willpower. The scene may be led by one character or control may be shared.
- Battles: Characters solve their discrepancies with fireballs and kicks (preferably not in the groins).
- Sex battles: Characters solve their discrepancies in far more fun ways.

Dating Sim - Daily life of the protagonists in the Temple, similar to a life management game.
- Training (To be introduced in v0.1): The Candidates develop their skills through different activities in the Temple Grounds. They may cooperate, hinder the progress of others, build rapport or show the rest who's the best (by force).
- Work (To be introduced in v0.1): The Candidates may engage in daily activies required to keep the Temple afloat.
- Socialization (To be introduced in v0.1): Get to know the other characters better, understand their motivations, bring them closer to your side, and be taken to their beds.

Story - Similar to Choose Your Own Adventure stories or roleplaying games.
- Introduction (Playable in the demo): A short story telling the arrival of the Player Character to the Temple and introducing the other protagonists.
- Story Events: Very short stories further developing the main characters and their dynamics.
- Adventures: The protagonists travel to different parts of the Confined Valley, usually facing different conflicts that will test their skills as Candidates. These will require a lot of work, and making many of them will require financial support.

The scenes may be inititated in the middle of the other six sections. The "training", "socialization" and "adventures" sections take place in maps, with each character deciding to engage in different activities for different periods of time.

Transversal Features - Elements of the game not linked to any specific section.
- Character sheets (Introduced in the demo): Characters participating in scenes have roleplaying character sheets, with different stats, experience, skills, sexual tastes and others. These will be expanded.
- Conflicts between Candidates: Dynamic events that should often take place to force some drama.
- Relationships between Candidates: Beyond the parameters indicating the relationships between the protagonists, the Candidates may engage in specific relationship dynamics, such as love, protection or servitude.
- Sustained effects: If the Leirien girl gets nervous and releases spores that get everyone horny this feature makes the simulation take it into account. For instance.
- Equipment: Be they swords, staffs, plugs or handcuffs.
- Expanding the moveset (in constant evolution): Everyone gets bored of missionary. Also, the general mechanics of Battles and Sex Battles are shared with Sex, but the two other scene types lack moves. This solves that.
- Characters' Scene AI (Introduced in the demo): Different parameters and algorythms making a character decide their moves during scenes, such as their own fetishes or the role they're playing in the scene.
- Characters' Map AI (To be introduced in v0.1): Functions to make characters learn how to move between nodes. They can't walk without them.
- Candidates' long term AI: Algorythms that make the protagonists balance their different interests (sex, love, relationships, ambition) to decide their goals.

Graphics - I've made an initial investment to make the game have looks, but otherwise I'm no artist and I don't have that much money, so these will mostly depend on the support I receive.
- Main character portraits (To be found in the demo).
- Game logo (To be found in the demo).
- UI redesign (or actually making an UI).
- Dynamic character portraits (Patreon Goal): Instead of maintaining frozen, eternal expressions, the characters switch to anger and happiness and horniness.
- Map images (Patreon Goal): Small images helping the player to conceptualize the map beyond words.
- Scene Sprites (Patreon Goal): The jump from a text game with images to a text-based partially animated game! This one requires a lot of work. Accordingly, it requires a lot of money, and it will only see the light if the game makes enough money to make me pay the bills first.

I hope this gives you a better idea about what you can expect from the game. Please look forward to watch it bloom!

Friday, April 10, 2020

Introducing Unholy Arts

Unholy Arts is an upcoming erotic game putting back the Sim in Dating Simulator. Designed around emergent gameplay, the game develops each character's personality, goals, ambitions and sexual tastes during the game's progression, through their interaction with the player, other characters, and the story. These dimensions will determine their behaviors - before and during sexy times.


The High Priestess, symbol of the Goddess herself in the Confined Valley, has died, and the tribes must find her successor. Each of them must send a Candidate, a pure woman who just became of age, who will have to show talent for the arts of magic, combat, and love... And manages to get the others to accept her leadership.

The game advances in three dimensions: the Story, closest element to a Choose Your Own Adventure novel; the Daily Life, in which the protagonists manage their time to develop themselves and their relationships with others, and Scenes, which are configured to represent sexual encounters and classical RPG battles depending on the circumstances.



"Different philosophies have coexisted in the Valley for centuries. They guide their followers in how to traverse their road through life... In how they relate to others, to their tribe, and to their loved ones. In respect to the late High Priestess, I shall follow the Way of Nurtured Harmony to tutor you during your training, but conflict and evolution are natural parts of the Valley, and I shall respect your adherence to other Ways, and you will have increasing freedom to adopt them all: the Way of Celebrated Union, the Way of Exclusive Love... And yes, Claw, that includes that Way of Imposed Domination that you are so adamant to follow."

Among the elements that determine how characters decide to interact (and are able to), there's the type of relationships they stablish -temporary at first and potentially permanent as the game advances-, including love, domination, protection and rivalry; as well as their available bodyparts, determined by their race, gender, equipped bondage and bodyparts already in use.



The harmonic combination of different aspects and elements, pushing each other forward in the same simulation, will lead to rich and unique scenes and stories.

"I'm certain that, at the bottom of your heart, all of you desire the same thing: the well-being of the Valley's inhabitants. We will offer you all of our knowledge, all of our resources, our wisdom and our chambers. But as Priestesses to be, it is up to you to find out the answers - to find out how to express your love."