Saturday, March 18, 2017

dev blog #30 - bring some order into that chaos



this is just a small update on the progression of 0.7.
Today I had a big breakthrough regarding how to prevent fuck-ups like the mess currently in 0.6.x

as I wrote in a previous blog post, the way I handled dialogs and events was kind of chaotic



this resulted in problems like NPC not responding to you anymore (Mercedes stops giving you job offers after the first round) or responding to you despite they should not (Tamara not rejecting Mike's "learn together" invitation)

initially I thought the system I came up with was future proof but after adding only a handful of interactions with the NPCs and objects it turned out to be more of a "wild west" situation than a clean and structured handling of tasks.
major problem here is that everything could interact and manipulate everything



(simplyfied diagram of the chaos :P )
dialogs could start events or manipulate NPCs directly and events on the other side could do the same which resulted in me loosing track of "who poked whom"
this is a problem especially in "content related" dialogs that should only trigger on certain occasions or with certain NPC so to fight this chaos I came up with a more "centralized" manner of handling dialogs:
events now no longer activate or manipulate dialogs directly. instead they change the state of the "dialog giving" object (NPC, container, door, etc) and based on that the dialog to be displayed is selected which will lead to a more manageable way of interaction because now there is only one place where a dialog trigger can be manipulated

also, instead of letting the timekeeper handle content related dialogs (daily recurring stuff like jobs, school, etc) now each NPC and other objects handle that themselves because that also was another source of problem
keeping the trigger control in one place (on the object that gets interacted with) should eliminate the current state of lost overview, just like the saying "too many cooks spoil the broth"

Tuesday, March 14, 2017

dev blog #29 - techDemo 0.6.2 - public release and some info on 0.7



the small techDemo 0.6.2 update is now available for the public!
get it from the download section or any of the various mirros on Patreon



you can trigger the new scene only as Lena (for now) when you talk to Tamara after class and invite her over to "learn together"

"that's all after one month of waiting?" you might think now but to be honest I almost decided to not spend time on rendering this month because programming takes up so much time right now.

as I already said in the previous blog entry, I am hard at work getting the game up to the new software version so spending over a week for rendering the scene was a lot of time I did not spend on code.

I will do the same for this month too so don't expect any changes on release schedule or content yet.

The next update will be techDemo 0.6.3 and it will include another new scene that will most likely show Lena and Tamara together (the poll on that is still on for some more days if you want to have a vote on that)

so let me repeat what I already wrote on Patreon:

Progress on 0.7:




so I was rather quiet here and on my blog over the past month (compared to previous months) and I feel like I need to give at least a little bit of update on the progress of techDemo 0.7

in the recent update 0.6.2 there was only a new scene added and nothing new in terms of functions or gameplay features.

also some of the major bugs are still not fixed (mainly problems at the stripclub) and there is only one reason to that:

there will be no more code changes in the 0.6.x versions of the game because all the time I currently spend on coding goes into 0.7.

for those who did not read the previous long post on my dev-blog  on that matter, here is a quick summary:
the game engine is completely self-built from scratch and some code turned out to be not as practical as anticipated in the long run.

and the software I use to make the game (GameMaker:Studio) got a new enhanced and improved version with new features that can help me in development (GameMaker:Studio2).

initially I did not want to change to the new software version because these switches always come hand in hand with a major re-work of the code because many parts of it will not work the same way as in the previous version.

but since I already needed to re-work parts of my code to fix the problems in 0.6 I finally decided to make the transition to the new GameMaker:Studio2

and that's what is currently going on: I re-work some 5 months worth of code to run at the new software version and at the same time improving my own code to a more stable and less complex way.

but since this is almost entirely game engine and framework related work it is hard to "show" the progress because the game looks almost the same anyway with only some minor visual changes like the new quick menu I showcased in the video


so bear with me a little longer until I finish the transition to GM:S2 for the new techDemo 0.7.
once 0.7 is done there will be regular gameplay mechanics updates and bug fixes again because the current state of the game is by far not what it is intended to be ;)