Day 2: Fields of View


How was Day 2?

Here's the state of the game at the end of day 2:

  • There's a field-of-view system now, so you can only see activity in bits of the level within line of sight. I did this using Bob Nystrom's implementation of Shadow Casting, although I'm not 100% happy with the way it performs around corners, and I'm not sure it is symmetric.
  • Greatly enhanced the enemy AI. There's now the basic foundations of a state machine for handling when the player is visible to the guards, and when the player is not, and we change the behaviour from patrolling to chasing accordingly. If you hide long enough, they give up and resume. But, this behaviour can be easily expanded in future.
  • Added some UI elements: A HP guage, and interactive button for opening the log window. The windowing systems need some work still. I'd like them to behave like true GUI windows, drag-and drop positioned, and placed somewhere sensible to begin with.

It's not much, but at this point, this game is actually quite playable, and sort of challenging. Getting to the objective and back is possible, but requires some careful tactics. There's not enough tools to avoid detection entirely yet, but I am satisfied with the game design so far.

We're approaching the point of minimal viable fun, where a jam project stops being an idea and starts becoming a game. We're still a little way from the initial vision I had for the game, but almost all the systems we need for it now exist, so from that perspective, I'm really happy with how day 2 went.

What's next?

I'd like to focus on a couple of things for day 3:

  • Implementing the "personal drone" that is an integral part of the game's design vision. It will let you do a lot of things the player character can do, but remotely. I need to devise a way to swap "active" control between the player and the drone, since you can't move both during a single "turn". 
    • This will touch a few systems. The FoV system assumes a single player character, so I'll need to modify that accordingly.
    • Guards searching for the player need to respond to the drone a little differently, and handle decision making when presented with both options.
  • Work on the UI. I want the UI to have this tabbed/windowed thing, but there's no way to position the windows right now. It would be nice if they were draggable, and looked more window-like. A few keyboard shortcuts and sensible defaults need to be added to.

If I manage to get these things done, I have some extension options:

  • The guard detection AI is currently omni-directional. I'd like to make it more focused, based on a concept of "last-move-facing". The guard should be most aware of what is happening in the direction they last moved to, and less aware outside of that cone. This will allow for slightly better stealth gameplay.
  • Items for manipulating the state of the world and influencing guard behavior safely:
    • Smoke grenades, etc.

I'll be streaming some of my development for Day 3 on my Twitch, so please follow me there to get notified if it interests you.

Files

Windows x64 1 MB
Version 0.0.2 Mar 06, 2022
Windows x32 1 MB
Version 0.0.2 Mar 06, 2022
Mac OS x86_64 684 kB
Version 0.0.2 Mar 06, 2022
Mac OS ARM x64 1 MB
Version 0.0.2 Mar 06, 2022
Linux x64 4 MB
Version 0.0.2 Mar 06, 2022

Get Ghost: DroneSync

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.