Tuesday, 17 October 2017

CoffeMonster day 4

Another day, another evening, with each next tick of clock, less and less time left for work on Tech Demo 2 and there is so much to do...  Last weekend  - fighting with some physics bugs and adding additional unit tests which resulted in another bunch of code fixes... Yesterday evening -  improvement to editor controls ... Today ...

Improved axis selection visual feedback.
Grab with alignment
Improved rotation gizmo.
At this moment I feel a little bit disappointed that I won't be able to push everything into TD2. Well as one person team I cannot help too much with this... I taking another slip of mead ... it is so good.

... hmm this is good question what I will be working Today. Input system ? Gui ? Maybe both. There are three closely related problems I would need to tackle:
  1. Blocking of input propagation outside current state.
    Test case: You are in inventory and when pressing escape to quit it you end in game menu.
    Expected behaviour: You should press escape button twice so this happen
     
  2. Detecting which device is currently use.
    Expected behaviour:
    When you use Gamepad it is active but then when you start using mouse&keyboard it switch as active.
  3. Action buttons display in GUI
    Test case: Use mouse or keyboard - icons should display different icon.
    Expected behaviour: Icons should change depending on currently active device.
Not the most exciting tasks but I know they are needed so time to start working on it ... TD2 coming this weekend - there is no time to waste.

This time really short and I probably should apologies for that but I won't :D  With TD2 coming I'm really busy and limited with time but still wanted to give you some update. You hanging around project even when it is not always easiest thing to do so you deserved it.

Greg
Straight from TD2 battlefield.

Sunday, 8 October 2017

CoffeMonster day 3 -TD2 release date

There was plenty of time I thought, no worries but here I standing in front of dilemma: announce release date for TD2 in week or two. This sounds like not a lot but I gaining extra weekend to do stuff... I will play safe. Next post will announce 

TD2 will be release at 22 October 2017.

Even knowing that this is right thing to do I regret somewhere inside that I didn't wrap everything for 15 October. But now it's to late to think about this.


Now only thing that left is to polish what I have. First on my list is slightly annoying problem with small glitch when stepping on obstacles. I right away jumping into investigating what happening there. Issue look simple: disabling some collision when do step up animation not working exactly how I want time to experiment with different approaches. At first nothing come to my mind by then maybe I should try to scale character capsule? Hmm ..Worth trying.. 2 min later I have hacked my way in code to achieve this. Time to see how it will work .

Game starting on my screen... moment later I'm already testing stuff. Running around and trying to reproduce issue but something is still wrong. I need to check physics debug view.


Pressing button to open console and f... I forgot. Console no longer works :/ I broke it long time ago when I remove Lua from core of engine :/ then I broke it even more when I introduced new input system. I could hack debug view in code this would be really simple but console is really useful in testing different features. Second dilemma this day: hack my way or do it properly ? Ehh .. lets do it properly how long it could take to fix it?

Now that I look in past I knew answer from start and I'm not even surprised with answer.

Few hours later after:
  • adding code that parse commands, 
  • unify it between different parsers, 
  • writing around 50 unit tests, 
  • fixing few bugs that shown in unit tests,
  • going for dinner and shopping,
  • cleaning up some of code,
  • writing more unit tests,
  • fixing few more bugs,  
and it finally works.

It's past midnight... I'm little bit tired but still happy with results. In the end I think it was worth it to put all this effort into this feature.



In the end I never got to fix game play issue but I also know that tomorrow is also day and all this stuff that I done today will help me make more progress then. I turned off my computer went to bed.

See you next time.
Greg

Tuesday, 26 September 2017

CoffeMonster day 2

Another week... another day... sadly even with shadow of Tech Demo 2 (TD2) release I cannot stop myself from another deep dive into technology changes. Sometimes I think that I'm addicted to this feeling when you finish changes and you know that you will never want to go back to old ways.  But hey who cares .... TD2 is secured... kind of.

***

Little bit tired of work and my Danish lessons I finally sit down in front of my monitors trying to figure out where I left stuff yesterday:
  • main loop - finished, 
  • multi-threaded upload of textures to GPU - looks that it working
  • improve asset browser widget - finished.
  • define content workflow - ....
Yeah .... there is this and terrain improvements... I'm tired.

This one thought an sight on my screen was enough to convince me that I need nap. I quickly grab phone laying close by and set alarm for 20 min later. I fall tired on my bed and next thing I remember is sound of alarm that I just set.

Compute shaders... I don't know why but this two words coming to my mind when I think about doing anything terrain related. Now all stuff are done on CPU and GPU computation would be great for terrain texture generation. Maybe it's time to finally implement this feature. 

Once again sitting in fronts of my monitors. This time checking OpenGL documentation related to Compute Shaders. API is not really complicated, core 4.3 so I won't need to increase hardware requirements. Whole thing is simple: add support to it and use for generation of terrain data.

Only part that is not easy is to decide if I will be able to finish this changes before TD2. Terrain is big part of technology I creating and if I will start digging into it I will change few things that right now are not right. Amount of work will start grow with each change. 


There is also this started task "define content workflow" which require from me replacing all textures masks (they defining visual properties of materials). When I will deal with this I will be finally able to start do some proper content and rendering improvement. 

This forever existing feeling of hesitation and powerlessness toward amount of work... So much to do and so little time... I'm tired.

This time I didn't gave up and started doing some preparation for compute shaders in engine. I will worry about all other stuff when we will be closer to TD2 release. For now I will focus on having some fun.

Greg

Sunday, 17 September 2017

CoffeMonster day

Around month left to release of TD2 (Tech Demo 2) ... sound of typing and laud sigh spread around the room. Once again I siting in front of the open new blogger post and thinking what to write to all this people who wait for news about project. This task almost never coming lightly but well it's was long time from last post so this is best time to do it.

Compilation on second screen just finished with error this interrupting my thoughts. Quickly found small mistake in my recent changes. Pressing F7 on keyboard to compile project and once again returning to writing post. 


Where I stop ... ah yeah what to write. This week was rather intense but mostly because I done another jump into dark depths of engine and iterated over main loop. The way how I do stuff now is a lot cleaner than before but from outside game look almost the same.

On other screen I see "Build: 4 succeeded, 0 failed, 18 up-to-date, 0 skipped" this mean project finally compiled. Once again my thoughts  drift to coding. Pressing F5 to start editor. This simple action result in anticipation for results and then disappointment when application crashed...  I ... didn't expected that. Well time to dive into debugger to see what I doing wrong. 

Turned out part of my code was optimized by compiler and I needed to enforce that it stay in build. Whole editor functionality depends on this behavior so I need to fix it. I could of course reverse some of my actual changes but then I will need to deal with manual register events to communicate between editor GUI and editor back-end. There is no way I will return to this. There need to be way to fix it... 

Before I notice passed few hours. Everything now works how it should.  Yeah I was writing post ... Yes I should really finish it.

"Maybe I should focus more on game and it's cool features?" this simple thought flash in my head but quickly was replaced by another one "If only I done some cool features recently". 

This reminded me that my recent work is mostly playing around with changes I wanted to do for some time. Now was occasion to do it because I have some spare time before TD2 which is almost ready. I really believe in long run whole this improvement will pay back and allow me to do great game it also opened me road to some cool improvement of rendering and whole game structure. 

I thinking too much about future and to little about writing post. But what I can do I'm just geeky programmer who is really excited about stuff he working on. Time to dig into rendering code. Post with announcement of cool stuff will need to wait a little bit longer.

(another day of my programmer life)
Greg

   

Tuesday, 22 August 2017

What is the plan ?

Inspired by comment under youtube video:
When will the final version be released?

Past 


TD1 (Tech Demo 1 - which you can download here) was spontaneous release without bigger plan. Like I mentioned in "Tech Demo 1 + Postmortem" whole release was successful even with its issues and relatively small amount of people downloading it (at this day 68 people). The most cool think about whole TD1 is that I finally could share my work and hear what you think about it. The most complain was about : Mouse & Keyboard support.

And here good news folks : I finally took care of it and implemented new input system. I also started testing game with gamepad and Mouse & Keyboard to verify that both controls delivering the best experience they could.

Present




Currently I work on TD2 (Tech demo 2) which is a lot different than TD1 because it have theme: "Movement".

Plan is to tackle as much issues related to player control as possible. Bellow list of things that in 99.9% will land in this build:
  • Improved movements 
    • Better control over character.
    • Additional interactions (climbing small obstacles).
    • Climbing ladders.
    • Elevators and platforms.
    • Better Mouse & Keyboard support
  • Interaction with environment - levers
  • Item placements - Fixed issue where coins sometimes move around when they shouldn't
  • Improved animation system - I rebuild way how I handle animations
  • Bigger and nicer  level
  • And like always a lot of bug fixes and internal tool improvements.
This may look like small amount of improvement but it isn't. Also this is not final list and will probably grown with time.

Another thing that I need to take care of is how to protect myself from breaking any of engine/tools functionality. I'm one guy and it would be wast of time for me to iterate over all of functionality each time I do any update. This is why I will follow example of Unity Technologies and start making more test for my code. This may not sound like a big work but it will consume time from my development. Good thing about this is that when I will have good test coverage it should save me a lot of time.

ETA for TD2 : Middle of October 2017

Future 

Hard to say for sure what will bring future but this is my current plan.

Theme for TD3 will be "Story telling" and it will contain:
  • NPC characters
  • Story system - records progress of story and make player choices matter
  • Dialogues system - you can talk with other characters 
  • Quest system - there are quests which may influence story 
  • Saving/Loading - game progress
ETA for TD2 : End of December 2017 or Begin of January 2018

Theme for TD4 will be "World in War" and it will contain:
  • Enemy NPC with AI
  • Melee combat
  • Magic ball
  • Firearm combat
  • Traps
  • Breakable objects
ETA for TD2 : April 2018

Ok but this is not everything I will be working on. My plan is to work in background on:

Developing:
  • PBR rendering 
  • Animation system
  • Terrain system
  • Movie system
  • Sound system
  • Music system
  • Clouds system
  • Particle system
  • Decal system
  • Gui system
  • Unit Tests
  • Build system 
  • Mac build 
  • Converting all resources to new compile system
From more artistic things:
  • Modeling characters
  • Modeling environment
  • Creating both islands
  • Improving animations
  • Create new postrocesses
There probably few more things but I don't remember them right now. 

So if you ask me when game will be release sadly I still don't know :( But I can say for sure that not this year.
Greg

Sunday, 13 August 2017

Update 13 August 2017

Not even month passed from my last post. For me it feel like it was ages ago. Bellow you will find really short summary why :)

Art
Done some work on concept art and sculpting. Generally still a lot of work to do to achieve quality I want to have. But well... life.


Game story 
Around 80-90% of work is done. Finished "syncing" with Little Big Adventure 2. This allow me to noticed few issues with my version of story. I fixed already some of them and what left should be solved soon. Next step will be polishing and we should be ready to move to initial dialogues. 

P.S. I got already to level where I'm able to even logically explain why there are lamps on planet.

Mouse & Keyboard support 
Let's move to next point. Here there is not too much to tell (still considering how to do it).

Animation system improvements
Going slowly but steady :) Right now I'm at a point where I can reproduce almost all stuff from old system and even do a little bit more. Next step: change this prototype in something more polished.


And this is all for this post :) see you next time.
Greg




Sunday, 23 July 2017

Break ...

First half of the year is already behind use and I need to say that this was really intense time. Unplanned release of "playable(*)" tech demo, a lot changes in technology driving the game and finally seriously approaching to the story. From things not related to project I started work in Unity Technologies and generally there is a lot happening in my life.

All of this combined put some stress on my body and mind so I finally decided that it is the best time to slow down a little bit and recharge my batteries. Probably in the end this will not help with my head which never was really ok (I working on this project for 7 years nobody normal would do this) but at least body will rest.

What this "slow down" mean? This mean I will stop coding in home for some time.  

What it don't mean? It don't mean that project is dropped. It still developing just in a little bit different way. I'm more writer and designer now.

So far this going pretty well. Thanks to youtubers who published play thru of game I could easily write down whole story from first game and based on that recreate it in the way that new version tackle the problems I seen in original story. This step is almost done for this remake scope but ... (why there always need to be "but" :/) 

We have two games that build whole Twinsun Universum and I want people to see consistency between them even if I work just on remaking of first one. That is why now I checking Little Big Adventure 2 story and make some adjustments to my story based on Little Big Adventure 1. This is not simplest thing but we will get there. 

Now you know what I do for project: a lot of story telling, watching games walk thru and doodling around L.B.A related stuff. I'm getting more and more excited and terrified about project. All of this in the same time :)    

Greg

(*) A lot of people found game hard to control so it's kind of playable and not in the same time. 

Tuesday, 4 July 2017


Another weeks behind us. You probably once again wonder what happening in the project. Truth is a lot and a little in the same time :)


I don't really remember stuff I was working on for this last few weeks. There were some fixes a lot of improvements. There were some gameplay changes and breaking changes in animation system. Generally all this blending together in my memory right now.


Good news is I still know on what I working right now : Animation system improvements and organizing game. First one is like always: coding coding, coding. This is why I will skip details this time :)

"Organizing game" sound a lot more interesting and it is. I finally decide to "dump" content of my head and create some kind of design document. This should save me when I will be lost.

This document wil contain all kind of stuf. There will  be whole story, history, myths and some game related notes. There will be everything what I will need to make game (maybe except dialogues). So far everything start making sense and I think that when it will be finished it will be really nice expansion to already existing world of L.B.A. 

Of course I won't share this document with you but I can share this map that I done to organize in my head how whole planet look like.

Greg

Sunday, 11 June 2017

Tech Demo 1 + Postmortem

So came this day when I release something :) Here you got link to tech demo:




Now that this is behind I think it the best to right away summarize what went right and what not so much :)   

Postmortem 

When last weekend was starting I didn't even thought about releasing anything soon. It was just another weekend like every other. But well ... one thing to another and I ended with announcement : I will release small tech demo.
Whole idea behind Tech Demo 1 is: you get what you seen. In this small demo there is no hiding of issues that game right now have, there is also almost no hacking stuff. This past week I was mostly improving UI and preparing whole build. This of course may dissatisfy you especially after MonsieurKakis released his fully playable game but well I cannot do too much about this.
In a 1-3 month I will release Tech Demo 2. This should show you how game improving and what direction I want to take it.


Tuesday, 6 June 2017

Tech demo - update


Tech demo start to look kind of interesting but in the same time I see so much problems with movement system. I really want to fix all this issues that is why I trying to wrap this whole release as quick as possible. You may expect probably daily updates.

Whole idea or releasing tech demo may of course look like easy task but from my perspective this is first release to bigger audience. I need to prepare package which take into account that not everybody have technical knowledge. This will test my whole release pipeline. I need to verify all my debug functionalities to have way to diagnose issues when somebody will have crash or problems with starting game.

There is also option menu which I always delayed because I never really need it. Now I need to make it to give you some control over game. And like always there is a lot of this small stuff that I need to do. But well in the end I giving you game the way it is right now with all good and bad stuff that are there. And I think that this should be good start. 

Greg

Monday, 5 June 2017

Movement - the beginning

This time something different but first I will point out culprit behind idea you will read in this post:

In this forum thread Polaris wrote message containing:
"eh another cool-sounding project that will never see the light of day"
Now lets move to point. I will probably really regret this later but well maybe it won't be so bad. As you know 7 years passed. Game looking a lot better, technology improved a lot, we slowly moving in right direction but non of you had occasion to even try of stuff I working on.

Some people would say I could just share what I have but I don't think this is so easy as it sound. I don't want to give you game right now because of few reason:
  1. When I records Video Preview I try not to show everything I have done in levels so when you will finally play game you had fun of exploring.
  2. This is work in progress which change sometimes from day to day. This results sometimes in stability issues.
  3. I test game on one machine which is convenient because I don't need to switch between multiple ones. But may results in some problems on different configurations.
You may agree with this or not. Of course I still want to share somehow work I doing. I had this idea of some kind of "Tech demo" which you could download and see some game mechanics. And I think we getting really close to it. I will try to wrap this:

Into playable version :) Thanks to that you will be able to see how game work and I will be able to check how engine behave on different machines. But this is not the end of story. 

Because this is my starting point and I will be improving movement system I would release from time to time newer version so you could see all changes that I done :) 

What do you think about this ? I really would like to hear your opinion :)

Sunday, 14 May 2017

L.B.A. Preview 19

When I writing this it's late afternoon but sun still shines nicely, lighting up clay figures standing on my windows. In background there is sound of yet another random song that is played from YouTube and smell of coffee from Montreal.

One of my friend Joël send it to me recently and its taste as good as I remember ... this brings back a lot of memories. But memories are not only thing that it's bringing. There is also reflection how long making of Little Big Adventure Remake takes. Three years ago I thought that I getting closer to finish line. But well from change to change, improvements after improvement and whole idea of finishing went somewhere faraway... this fill my heart with hesitation mixed with grief.

This thoughts cross my mind only for second. Compilation finishes, time to test another improvement that I done. Taking slip of coffee in meantime of waiting for load and ... crash. Why? Nervously looking into debugger trying figure out what happen. 

One of features done yesterday crashed. Didn't expect to crash there but well with code base growing so much in recent years its getting harder and harder to manage and predict everything. Quick cleanup around this part of code, fixing crash, adding additional validations so it never occur again, quick compilation and another slip of coffee.

It's works ... Smile showing on my face when I see game on my screen.


After while of testing time to check in new code and move to another task from my long list.

To be continued ...

Greg

Sunday, 26 February 2017

Update 27 February 2017 - Hesitation ..

I approached this post like 5 times already. Discarding it or heavily modifying then leaving it beyond drafts. Few days later returning back an doing the same thing over again. My biggest source of hesitation to finally press this orange "publish" button was fact that I don't have anything new to show.

It's hard to say: hey great news I spend another month doing something but I don't have anything to show. Well maybe not month because I was sick for almost week. But still ... (sadness).

From funnier facts about this break:
  • Finally done task that triggered all changes in technology that last 3-4 months.    
  • I fixed over 30 issues (starting from really simple one to really nasty one which were on my TO-DO list for months ). 
  • I slowly started work on some new game play features :)
  • I'm officially turned 30 ( I'm old now :) ) 
Lack of things to show is once again my fault because I jumped to depths of technology forgetting for moment about everything else (I love this feeling). Of course I don't regretting this because now I finally work on game and thanks to all changes I done this is really pleasant experience.

What waiting us next ?

I'm still thinking about this :) I have 3 big topics: GUI / AI / Graphics. But so far I think that this will be GUI which should improve gameplay experience and is in the worst state from this three.

So yeah this is all for today. Next post should be already with some proper video.

Greg

Monday, 30 January 2017

Update - 30 January 2017 - Visible progress ..

This was pretty long week from last post. There was really a lot of issues that were fixed in code. There is still a lot to go but well at least I have some results of my work that I can show you. Prepare:


Yeeee.... I know. It looks almost exactly like any other screen I done so far for editor. But guest what it's not because I replaced some of the icon with new one just for break from debugging...

Yeeee .... still even with that it almost the same thing but running on Linux. So welcome in my reality where I spends hours which resulting with the same stuff on my screen over and over again.



Good news is its slowly coming together and work. This bring some hope for future. Maybe soon I will do some new stuff. But first things I need to do so more fixes because there are still few issues to fix.

Greg

Tuesday, 24 January 2017

Update - 24 January 2017 - Mystery revealed ...

Sorry for no update but I was a little bit busy recently. But well I think this is a good occasion to reveal some of mystery about missing preview, updates and why the hell I cannot work on my normal PC for longer time :)

As you know I started once again bringing back to life Linux build. This have a some advantages like finding of few nasty bugs, better validation of code in clang (Linux compiler I using) and require from me more abstract thinking. It have also some cons like: time it require to validate each change I doing. This was biggest reason I stopped working on it but well right now I don't have a lot of choice because my stuff will be transported to different location and wait for me to settle down in new place.

This month I finished my story in D&D session (I were DM in it). I played last session in D&D game where I'm player and told farewell to really awesome people working for Sumo Digital. Tomorrow I have flight and soon starting new story in my life surrounded by other awesome people working for Unity Technologies.

How this will affect this project ? It will result in some delay in work. Reason behind this is I'm still not feel fully comfortable with coding and debugging in Linux but well I slowly getting there. So yeah other then that things still going forward. I will try to post some new screen-shots form game (this laptop is not strong enough to do movie recording and running game in the same time). And yeah see you soon.

Greg

Thursday, 5 January 2017

Update - 06 January 2017

First post in year 2017 ... year of changes. Like year before soon my age status will be updated with +1. Two more years and I will have round 32 :) 

From other news soon I will be moving to Denmark and I'm in middle of organizing everything related to that. So far preparation going smoothly and it looks that I may have access to my normal PC quicker than I initially thought. 

I also started learning how to play keyboard. Nothing serious but I have a lot of fun doing that so probably try to continue doing it in my free time.

Generally I know all the boring stuff and you probably expected some game related updates.

So let's start.

I more or less recovered icons generation. This thing was bothered me for so long time. It was working than because of all my changes it broke. Then I fix it just to broke it again and it was in this state till now. But now its works ... kind of. There ares some issues with background rendering which shown me also that similar issues may happens when I have multiple rendering windows in editor. This is not easiest thing to fix because it require some changes how I handling rendering and few other things in this code area. I already started some works to fix issue but this is just tip of iceberg and whole problem will be probably on radar for some time.

From other things is that I started preparing test scene containing free megascans models. My plan is to use it as reference to improve rendering in game. In the end it ended like always with some side task which will took me few evenings. 

Terrain materials were working in editor for some time but edition of them not so much. I don't count of course text editor that I used to modify it manually earlier. So yeah now there is proper edition window which utilize icons generation system which I mentioned earlier. 


Now I need to add rest missing functionalities in this area because f.ex. deleting of materials from UI may be useful functionality :) After that I will be able to move back to improving rendering. Good thing is that looking on screens from game even now there is no tragedy (at least not really really big one).


There is a lot more improvement in low level system here and there but they are hard to visualize. So you will need to wait a little bit longer for result of them. And with this I will end this post and finally go sleep.

Greg