Friday, January 27, 2017

dev blog #27 - what a mess ....




so what happened with the release of techDemo 0.6?
only the 20$+ Patrons know it but I did some really bad quality checking before I released the early access version for them....

in short, there were several game breaking bugs in this release which forced me to release a bunch of short term hotfixes until I could re-compile everything into a new techDemo 0.6.1 version.

There is no excuse for that but I feel the need to give at least some explanation on how that happened and what I'm going to do about it in the future to minimize the chances of this kind of fuckup happening again.

To be clear: bugs can happen in every game development stage and release.

that said I'm going to give a little insight of my development process and what lead to the current situation.
If you don't care about details and just want the redemption gift scroll to the end of the page ;)

so, what happened?


what you are looking at here is my "relationship-diagram" for my events. Events are handling certain things in the game. they add or remove dialog options, place or move NPCs, modify the open/close status of doors etc etc.
in short, events are what make the game interactive.
each event has its unique ID and events can also call other events.

and here is where it gets tricky:
until now I only had a simple excel sheet where I kept a list of event IDs with a short description of what that event does. nowhere was noted the exact actions that event would start or which things it would modify.

this lack of detail resulted in a big messy bunch of numbers the bigger the game got. and to be honest the game is not very big at all so it also came a bit surprising for myself that my ID system already hit its limits at this stage of development.

so I sat down today and started to bring some clearance into the ID system. I made this diagram to have a visual aid on which event causes what. right now I only listed the events that get called either by the "new game event" E0 or the character related events E1 (Mike) and E2 (Lena).

those events are also embedded in the "timeKeeper" which controls the day and time related events so things like scenes and other time related things "happen"
.... or don't as it was the case now with 0.6!

because one of the events embedded as an "evening" event also triggered a "time increase by 1" it caused the game to skip "night" time and thus preventing the player from starting the brand new scene at "night"

due to the lack of detail on my ID excel sheet I simply overlooked it and unfortunately as it already was, the last minute changes I made to the game directly involved that said event...
and I did not test everything again that had worked previously because I was already two days behind schedule for other coding problem reasons....

so in order to minimize the chance of such fuckups I started to keep track of all the events in a much more detailed way.
a similar ID system is in place for all the dialogs in the game and dialogs can call events and the other way round. and it is a big messy pile of numbers already and not only once I had the feeling of getting lost in my own IDs....

BUT with the now visual diagram overview I'm going to maintain from now on I'm positive that I can keep those kind of problems under control.
it does also mean that I have to put even more time into "project management" as I already had to but that's how it is with such projects anyway.

so now for the gift:
all 20$+ Patrons will get access to a special archive that I will upload soon. this archive contains all the CGI that I rendered for the Mom/Dad scene. I rendered a total of  119 images in 1920x1080 and only 64 of these made it into the final scene reduced to 1280x720.

Tuesday, January 24, 2017

dev blog #26 - new techDemo 0.6




the wait is over! techDemo 0.6 is available now to all T4 and T5 Patrons

so what is new in this release?

  • new Scene at home

    there is a new scene available for both characters at night when they walk down the stairs from the upper floor at home (100% chance for now)
    includes 2 new characters, Mom (Susan) and Dad (Steve) with 64 CGI rendered images with hardcore elements.
     
  • new area: The Rear End
    the stripclub "The Rear End" is the first of many locations where you can earn money by working different jobs (mini-games)
    the first available job is a waitress styled game where you have to collect orders from customers and then serve them the drink in time to get extra money. The mini-game is skipable but then you will only get the regular wage and no extra money.
     
  • 4 new characters!
    1) Tamara

    she is the same age as Lena and Mike and a classmate of them. you can find her in the classroom

    2) Candice

    she is the resident stripper at "The Rear End" and can perform for you if you can afford her.

    3) Konstantin

    this mountain of muscles is the bouncer at "The Rear End" and will kick you out face first if you anger him or Candice.

    4) Mercedes

    she is the manager of "The Rear End" and gives you the job if you ask her.
      
  • new Scene at The Rear End
    you can pay Candice to perform a sexy show for you at "The Rear End".
    includes the new character Candice and 42 CGI rendered images (just a sexy show for now, will get expanded by more options later)
     
  • "Money Maker" system
    as the name implies: you can now earn and spend money on items/activities
    the list of possibilities will expand in the future so for now the only way to earn money is the job at "The Rear End" and the only thing you can spend it on is the performance of Candice
    for now!
     
  • "Friendship" system

    with this update you can already increase your friendship level with some of the characters by complimenting them. this will also get expanded with new content in the future
     
  • Skill Books

    a second way to increase your skill points outside of class are skill books in various levels.
    for now there is only one skill book for Engineering in Ms. Adams desk in the classroom.
     
  • Town Map

    the new way of traveling to various locations is the townmap that you can enter by going out the front door of your home. right now only two locations exist in the game (School, The Rear End) but I already placed the markers for many of the other locations that will get added to the game.
     
  • many more tweaks and fixes
     

as always the T3 Patrons will get access to this release in one week from on 01/31/17
and the public release is on 02/07/17 !

Saturday, January 7, 2017

dev blog #25 - new GTX1070




the latest render problems forced me to find a short term solution.
As already explained my GTX970s 3.5GB VRAM was not enough anymore to support the high-quality renders for the game.

To sort out this problem I just installed a brand new GTX1070 from ASUS that has 8GB of VRAM.



That sounded easier than it actually was...

due to the bulky flexible tubing layout of my already installed watercooled GTX970s it was nearly impossible to fit in the 3rd GPU...

since my motherboard (ASUS Maximus VI Hero) has 3 PCI-E slots it should be possible to run all 3 cards...
BUT: only the top slot is PCI-E 3.0 x16 and the other two are 2.0 with x8 and x4
so the plan was to put the better card (GTX1070) in that x16 slot...



well... that plan didn't work out that well because the watercooling parts were in the way of the bulky shroud of the 1070 :/



so I tried to place it in the middle slot...same problem and the backplate of the lower 970 would obstruct the fans of the 1070...damn



the bottom slot was no option either for the same reasons....

so...how to mount a card if it fits nowhere? ZIP-TIES!
I KNOW! that's not the proper way to mount a GTX1070 but what should I do?
it's not stupid if it works...right?!




next problem after mounting it was that my PC somehow wouldn't start anymore with all 3 cards installed... so... I had to take one of the 970s out :(

not the easiest when it's hooked to a full watercooling circuit... what a mess!

so...did it pay off at all? YES!
until now every render that required more than 3.4GB of VRAM was handled by my poor little CPU alone without the support of any of the two GTX970.
So all my combined 3k+ CUDA cores where no use to me as the cards refused to work....



But with the larger 8GB VRAM of the GTX1070 now even my GTX970 joins in with its CUDA cores even tho it technically has not enough VRAM ... the two sided medal of GPU VRAM.... they don't add up if you have two cards with 3.5GB (nope, not 7GB) but they start to share their bigger VRAM with lesser equipped cards in the render process :)

so the same render that took my CPU alone 7 minutes to get 12% done took my GPUs and CPU combined extremely less time for the same progress (as it should be!)

well...after struggling with the new card for the last 3h I can finally continue work on the scenes for the next update... yay!

Thursday, January 5, 2017

dev blog #24 - the bottleneck is real!




with the public release of techDemo 0.5 right around the corner I'm already working hard on the next update.

Aside from the bigger coding parts I scheduled for the next release there will also be many new CGI and two new scenes to go along with the new NPCs that get added too. You can check out the new "Characters" page I just created where you can find all the NPCs.

So the biggest new features for techDemo 0.6 will be:


  • "Moneymaker" update
    first part of the economy system is the "Moneymaker" update that allows you to earn money in various ways to spend later on other things
     
  • new area "The Rear End" (Stripclub)
    as part of the "Moneymaker" update this area will allow you to earn money by doing different jobs after school or on weekends
     
  • "Friendship" system
    in order to form any sort of relationship with others you need to increase your friendship status with them. this update handles the gain and loss of friendship status points for NPCs you already unlocked in your "Journal" (e.g. angering Ms. Adams by "improving" your art skills on the class's chalkboard has an effect now)

     
  • 2 new scenes
    yes you heard right, there will be TWO new scenes in this update!
    one scene is related to the stripclub and the other one to Mom & Dad
     
  • Navigation 2.0
    improvements/changes to the keyboard/mouse navigation and interaction with things.
    interactable objects/NPC are now only accessible from designated sides (e.g. you can't open the fridge from the side anymore, only from the front). This allows "obstructable" containers like the teachers desk where you only get access to if Ms. Adams is not "blocking" it. The "activation" of things not directly in front of you is also possible now

     

this list only covers the big main features and there are many more small and minor tweaks and changes to come.

and while working on parts of the new scenes I hit the GPU bottleneck once again :/

what you can see in this screenshot:
my CPU (4 cores @ 4GHz) is at 100% load while both GTX970 sit idle with their combined 3220 CUDA cores that are made for rendering jobs. this is due to the large size of the high-res textures used for the rendering process and the "small" 3.5GB VRAM of the GTX970... it simply doesn't fit into their VRAM so they won't help out with rendering at all.

this really starts to slow down my workflow so I had to do something about it. The original plan was to save up enough money (via Patreon) to be able to buy a new Nvidia Titan X that has a whopping 12GB of VRAM which should be enough for a long time until I would hit that bottleneck again.

BUT! since I can't even render that 2 character scene in a reasonable quality and time already I had to improvise with a short term solution. This short term solution is a new GTX1070 with 8GB of VRAM to keep me on track for a little longer so I don't have to sacrifice quality in order to push out new CGI! It should arrive in the next few days (according to tracking) so I can keep working on the new scenes :)