Hello 2017! You? Here?
Hi all!
I have to apologize for the long silence. The first half of 2016 (ironically directly after my post) was a very busy time (full time job). I wasn’t able to move forward as fast as I would have liked. Gladly the 2nd half of the year turned out to be more productive.
- I changed the theme of the page and added some overall freshness to it where the old one was lacking.
- I improved the aiming system. As you can play in third person the center of the screen is not necessarily the point where the gun is pointing. This has to be addressed by moving the camera or the crosshair.
- I spend some time to enhance the procedural quest system: I build an editor tool to test and optimize the system, implemented network functionality, connected it with all required managers to turn quests physical (e.g. spawn stuff) and plugged it into the new dialog system.
- Next I replaced the old debug inventory GUI with Unity’s new UI system. As the whole GUI is split into ‘logic’ and ‘design’ classes it’s (theoretically) simple to just change the visual implementation. This was the very first test case. Over the years I have learned one thing – never underestimate the troubles a GUI can get you in! This time I tried to keep it clean and structured right from the beginning. I’m really glad it worked out so well (for now)!
- I switched to various new Unity versions (currently 5.5.2), implemented the new post processing stack, added screen space shadows and a shadow filtering solution.
- Then I reached a very important milestone: the implementation of the first AI agent. It’s currently just a strange arrow-head statue but there’s a lot of technology hidden behind it. This includes:
- A* Pathfinding (for more information you might want to try this wonderful online example or read some theory on Wikipedia)
- Path smoothing (if you’re interested check out this Gamasutra article for example)
- Path gridding (this is how I call the method of constructing all possible path nodes from which the pathfinder can chooses from)
- Collision avoidance (based on the ORCA logic – read more about it on this page from the University of North Carolina)
- AI behaviors (I’m using Behavior Designer. The system is based on the way Halo2 did part of it’s AI. Again, you can read more about it on Gamasutra)
Last but not least there’s an important change: since January I’m working full time on the game. Not only does it speed up the development process but also allows me to focus more on whatever I’m working on.
That’s it for the moment. I’ll go into more detail regarding some of the above topics in future posts.
Until then, thx for reading, do well and cu soon! (and this time a lot sooner)