Friday, October 5, 2018

Mirror Mirror


Hello everyone, it's time for another update!

I'm glad that the release this time around went a lot more smoothly, without any major bugs. Even without bugfix releases, however, there's no rest for the wicked. :D

We're already hard at work on version 16, which is a pretty big release. Possibly a little ambitious to get the complete package done in one month, but I'll at least get the major work done. Version 16 is all about putting NPCs into the world, and making it possible to interact with them. The interaction part is something I'll be talking about below, but the scheduling of NPC locations and handling their movement will also be a big portion of the month's work for me.

Thaum's To-Do List:
  • Create an interaction framework that can be run externally to standard map navigation.
  • Create a scenario/quest display framework.
  • Build NPC schedule interpreter.
  • Build system to assign NPCs to world locations based on time and schedule.
  • Create basic interaction connection to connect world NPCs to interact system.
  • [Review sex system and improve performance.]
  • Write some more content :D


Besty is working on some areas that are in need of attention, helping to free me up for working on the above. Some notable areas are like job data and things like fixing up achievements and the end of week summary.

Interact System:

The first item on the to-do list is pretty-much done. It helps to solve a problem that comes about as a result of having different avenues of interaction. A more traditional approach to this issue--at least in games with similar structure--is to simply forbid the player from accessing more than one avenue at once. So you can move around the world OR interact with characters, but not both at the same time. Most importantly is that interactions with NPCs are scripted events separate from the main game, that have to be manually added for each location and situation.

AW will have situations like this, that's what the scenario display is for. It'll add flexibility, but essentially separate the player from the map view. This is intended primarily for major story elements, however, and allows them to occur independent of the player's world location. (it can even be started from within other interfaces that may trigger part of a story chain or a scenario, such as within the job menu)

One thing I want for AW, however, is to have a much more flexible system to handle a sort of "real-world" interaction that will help bring the game world to life. Rather than simply seeing NPCs, or having some minor NPC events described in game's location text. The basic idea is to allow you to interact more freely with the game world, so that if you see an NPC, or notice some NPCs fooling around on a park bench or something, you can go up and talk to them or otherwise interact with them. There are still limits to what's realistically possible, of course, but it should really expand the possibilities.

To meet that goal, one thing we have is the interact system. It's a system that allows content and logic to progress outside of twine passage navigation. So if you start a conversation with someone in Bullseye, it won't be interrupted by moving to the next department over. It also allows persistence of an interaction through other things that happen, such as a sex scene, as well.

Let's take a look at some preview images:


This is what the interact window looks like. It's quite basic because it's not doing anything yet. At it's base, it's a sort of a window into a separate passage. It has it's own macros and functions, to navigate between passages inside the window. Basically, you could play a whole separate twine game in there with a little modification to use the new macros, though it wouldn't have some of the extra things we don't need for AW, like a miniature UI bar, as that would just be silly. The position of these windows is changeable, you can drag them around with the mouse:


The image window can be used to show an image related to the interact window, be ommitted entirely, or contain the NPC portrait of an NPC associated with the interaction (in that case it's sized differently).


The window can also be minimized like so. This way you can move it out of the way of the main page's content. Even though you can move it around, there will probably still be situations where it'll be in the way without some ability to hide it like this.


This is just a quick look at the included "blocking" functionality. There may be the occasional situation where you need the player to make a choice or do something specific here before moving around or doing something else, and this allows that to be ensured.


We also provide some ability to run JS automatically when an interact window is initialized or when it's closed. Cause reasons.

That's it for tonight, stay kinky folks!

o/






No comments:

Post a Comment

The Springtime Release v1.26

This summary is not available. Please click here to view the post.