Esoteric Update #184 - Some Kind Of Programming Frenzy


Sorry for the late update, but yesterday, I managed to mantle the spirit of Augusta Ada King née Byron, Countess of Lovelace, and entered some kind of programming frenzy as a series of realisations clicked with me, prompting a bunch of developments. We'll get over them in a moment. But first, have a lore:

Lore: The Gender of the Soul

Also have an article:

Mechanics: Artificial Agents

I will mention right away, that I tried to implement the above but got caught in a swamp of parameters that weren't conducive to using it in practice. So I'll try to get back to it again and cut down on variables so it can run more or less independently.

Now, what happened this week apart from that? We wrote some narration and fixed some bugs, but primarily the focus was on the tool system, inventory changes, and how some items work... I guess the easiest way to explain all of this will be to run over all the features of the tool system to present it somewhat coherently.

1) Tools are items that are used to solve problems in the environment of the game.

2) What a tool can do is defined by a set of actions it can perform.

3) A problem, on the other hand, defines what actions can be used to solve it.

4) Tools can be held in hand, which removes their weight from your encumbrance and makes them available in situations when you cannot dig in your inventory.

5) Tools can break when used. This is a complicated system in its own right, but I decided to implement it in a user-friendly way, thus:

  • tools never break when applied to a problem they cannot solve;
  • a tool only breaks after it is used;
  • as there might be situations where a tool can solve a problem in several ways, and they might lead to a different probability of a tool breaking, the player character will always use the tool in the "most reasonable way", thus the way that makes it least likely to break.

6) When a tool breaks, it might transform into a different item with a more limited use.

7) When a tool acts on a container, it might cause damage to items inside as well; once more, the player character will default to reasonable usage of the tool to minimise this risk.

8) Tools can be parametric.

9) Tools of the same type can have different internal parameters that affect weight, the chance they will break, and what will happen if they do break; these hidden parameters are reflected in the narrative description of the tool.

But, this is not all. I've also constructed the first magical item in the game, a talisman that can be imprinted with specific magical properties and... well... used as a magical tool. Many of the changes described above were directly used to implement this item. In particular, the robust tool usage and tool breakage scripts allow a tool to override its properties on use, based purely on the definition of the item.

We still have a bit to go to finish this system, and a large portion of that is writing. We estimate that with the tools we've designed so far, we'll need approximately 10k words of item descriptions, and so far, we're only at about 3k. That's a lot of work, but I think it will make this system feel like something special.

Finally, I went ahead and implemented the concept of Karma affecting the causality around the player character. Karma now has a small, nearly negligible effect on all skills. Like with many of these minor effects, it's not a focal point of checks, but it can counteract or exasperate other conditions. Secondly, while not a skill check, this luck effect also influences the chance of breaking a tool. However, this has limits. Just because you're unlucky, it doesn't mean a wrench will spontaneously combust in your hand.

I programmed all of the above because I felt inspired to do so; if this inspiration persists, it might be the case that you'll see more of this next week.

Get Esoteric ♥ Esoterica

Leave a comment

Log in with itch.io to leave a comment.