March’s Progress: Hot Stuff

Jon: Hi, everyone! Time for March’s update.


This past month I’ve spent most of my TAR time on AI, and have a few things to mention:

  • We are now using  a different AI system than GOAP. GOAP planning was taking up too much CPU, and was getting too difficult to debug… I have been reading Mat Buckland’s book, Programming Game AI by Example, & have found his Goal-Driven system to be quite insightful. I have the new system up and running and it’s using a lot less CPU than the previous system!
  • Continuing in the book, I decided to work on a weapon selection system for NPCs utilizing the chapter on fuzzy numbers. The basic idea is that they’ll choose the most desired weapon they have based upon various inputs, such as distance (Swapping from a bow to sword, for example). It’s coming along.

Swing-Throughs

I have started the possibility of hitting multiple targets with one swing. We have wanted to have Strength, along with larger weapons, to allow for sweeping through multiple opponents, or at least smaller ones like bats, with one swing for a while. This is a step towards that. In the process, I may have fixed the bug where weapons could remain active if an attack animation was interrupted as well.


Potions

I’ve also dabbled in potions, continuing work to make them more modular. Previously, I would have to make 3 new prefabs for each potion type we would want to add. This was taking too long… Now, I only need to make one prefab per type. I have added some new potion types including a Sleep Potion. 😀

I have also been experimenting with coloring the potions programmatically based on their elemental compositions.


Now, Andrew has been working on things that might be a bit more exciting, putting aside the Castle temporarily to work on the old Water Cave…

~

April Fools! 🤡 It’s a Lava cave! There’s a method to the madness I assure you. Here’s a peek:

“Can’t get enough!”

This is a new area, and will not be replacing the Water Cave.


A couple more things before farewell. I wanted to share some useful Unity discoveries we’ve made this past month that have helped out quite a bit, for other devs out there:


Happy Easter!

Advertisements

February’s Progress: Castle Beginnings

Andrew: Hello everyone, here’s our development progress for the month of February:


Castle Preview

(WIP. Battlements still needed atop round stair towers)

Preliminary view of the Great Hall

The Town Castle is coming along, but is quite sparse at the moment. The layout of rooms, although not quite historical (not that we were going for that), is basically complete.


Shaders
  • Water: Jon has added fading alpha to the water shader with the fog distance.

  • Glass: I’ve been delving into shader coding, creating a “simple” glass shader with distortions similarly to the water shader, so there’s only one glass object per pane. Previously, there was one for glass & one for refraction.
  • Grass: Jon has also been experimenting with parting/interactive foliage shader. Currently, grass/ferns/etc will bulge & bend when player one moves into/nearby.

Programming update: Jon continues to work on programming himself into corners. 🙂 He’s been working on AI, and an improved encounter system.


And we’ll leave you with this:

Marvel at what this entails…

Also, we may or may not be working on a small side project…

Until next month. 🙂

January’s Progress: Eye Candy

Jon: Long time no see! Despite our silence, we have been working away. Now that we’ve released v0.1, we begin our journey to the next version.

Here’s what we’ve been working on so far:


Shaders

I’ve been dabbling in shaders this month and managed to get some things working, though all still WIP. Have a look:

  • Eye: The iris is now drawn right on the same object as the eyeball! This allows the specular shines to seamlessly blend from eyeball to iris, unlike before. Previously, the iris was overlaid as a separate object on top of the eyeball.

  • Splatmap: Using Unity’s terrain painting is essentially what this is, but we wanted to customize it so we made our own.

Notice the floor, walls, and ceiling are blending! (This image has been brightened.)

  • Interior Blend (Triplanar?): The idea behind this shader is that it interpolates between 3 textures based upon the vertex normals! This works well for cave or dungeon corridors.

Notice the improved edges where the water meets land.

  • Water: Previously, we overlaid several planes (2 planes scrolling in different directions, and a refractive plane) to achieve the look of the old water. Now with the new shader, it’s all done in with a single plane.
  • Crest: Started a shader for displaying crests/images onto shields and surcoats. I’m not showing you this yet. 🙂

Scene Transitions

Another thing I’ve been working on is improving scene transitions and fancying up the loading screen. I have managed to improve some things:

  • Loading messages will change if loading takes a long time
  • Loading messages will be less likely to repeat in a play session now
  • Fade in/outs are smoother
  • Added a ‘quickload’ option for scene transitions that are quite short such as initial splash to title screen, just fades in and back out, once loaded.

For other Unity users out there, I found that even when using additive asynchronous scene loading there’d be a hitch. This is due to many Awake/Start calls executing at once, which are on the main thread, after the scene load has finished…

For scenes such as the Town, this really increases loading time and I have been working on some solutions. Nothing concrete yet…


Fatigue

Started the basic Fatigue system that we’ve been thinking about for a while. Maybe you noticed the thin yellow bar under stamina that never did anything? Well, now as you consume stamina, you will slowly fatigue, which will temporarily limit your maximum stamina, until it’s recovered by eating or sleeping. Once fully fatigued, you will pass out temporarily.

We don’t want to turn the game into another survival game, but wanted to increase incentive to bringing food on journeys and making sleeping more beneficial.


Misc.
  • Book UI now only displays one page at a time… It was taking me too long to edit books. At this point, time is of the essence. :/
  • Reworked NPC GOAP Planning, spreads logic out over multiple frames to reduce hitches. WIP.
  • Console can now be opened in any scene, even in the title screen.

Along with updating the current scenes to use the new shaders, Andrew has begun building a castle!

Just a quick reminder, this is progress towards the next version, probably v0.2, so this is not in the active release, yet.

Have a good one!