AI

Gel Behavior, Vision, and Traps

Our basic Gel enemy behavior is now complete! Gels will pursue an enemy player then retreat and split when their health gets low.

The goal is to have each enemy type that we add to the game present a unique gameplay challenge for the player. We don’t want any of our enemies to just be balls of hit points that trade attacks with the player characters until one of the dies. In this case, a party without enough combat power to defeat all of the Gels present in a single turn may quickly become overrun by duplicates.

Player units now uncover map tiles as they explore and vision is only granted based on the map position of each player unit. This adds an exploration component to moving around the map. It also means that its easier to wander into a surprise ambush.

<img class="alignnone wp-image-852 size-full" src="http://www.Neo-Blue see this website.com/CoreWP/wp-content/uploads/2015/07/Unit-Vision.png” alt=”Unit Vision” width=”826″ height=”536″ srcset=”http://www.Neo-Blue.com/CoreWP/wp-content/uploads/2015/07/Unit-Vision-300×195.png 300w, http://www.Neo-Blue.com/CoreWP/wp-content/uploads/2015/07/Unit-Vision.png 826w” sizes=”(max-width: 826px) 100vw, 826px” />

Eventually, a GuildKnight with the right skills will be able to reconnoiter the areas ahead and help the party to avoid running into trouble.

Traps? We’ve got those!

GuildKnight Trap Gel Trap

Traps aren’t currently being placed as a part of map generation proper, but we’ll be building that system along with enemy spawning once we move forward.

The next target is to create a wider variety of enemies for the player to interact with and give player characters actual class and weapon skills to work with. This will help us to get a good measure of what the overall feel of gameplay is at this point before we decide where next to focus our efforts.

The next time I get a break I’ll do a write-up on what our GuildKnight skill progression plans are. Until then, it’s back to work~!

2017-02-13T05:08:27-07:00July 24th, 2015|GuildKnights|

Gel Smash

We’ve finally got our enemy attacks functioning properly.  Whenever a Gel is adjacent to a player character, they’ll hit them with a Smash attack visit this page.  Once we get the retreat and split behavior in place, our initial Gel AI will be complete!

2017-02-13T05:08:25-07:00November 4th, 2014|GuildKnights|

Enemy AI: Gel Behaviors

In GuildKnights, we want each enemy type to have distinct behavior patterns that will challenge the player in different ways with each new encounter.  Our next project goal is creating behavior for our first enemy, the Gel.  Its AI is based around overwhelming a single player unit with numbers.

Here’s a rundown if our desired behavior for Gels:

  • A group of Gels will idle in the room where they’re spawned until discovered team task management.
  • When an enemy player character enters a Gel’s line-of-sight, all of the other units in the Gel’s AI group also become aware of it.
  • Gels will attempt to move within melee range of their current target to attack.
  • A group of Gels will pursue a single target until it’s dead, then randomly select a new target from any in range.
  • A Gel whose HP falls below half will run from any nearby enemies on its next turn.
  • On the turn immediately following its retreat, a surviving Gel will split into two Gels with full HP, but each with half the maximum HP of the original.

The goal is for the Gel to be a fun nuisance enemy that has to be dealt with quickly before numbers get out of control. There should be room for GuildKnights with different attack types to have varying degrees of success when dealing with them. Strong single target attacks can quickly eliminate gels before they split, while AoE attacks will be more effective in cleaning up the lower HP Gels that have already multiplied.

Development on this should be interesting because it will get us started on creating our base set of enemy behaviors and prototype GuildKnight Techniques. When the smoke clears, we should have our first set of core player / enemy interactions and our first big steps towards real gameplay!

Time to go to work!

2017-02-13T05:08:25-07:00March 26th, 2014|GuildKnights|

First Successful Pathfinding Test

This screenshot shows the generated path from each of the enemies on the map to one of the player characters.  We still need to add updates to the path with respect to each unit’s movement capabilities (e.g. not crossing enemy units), but the better part of the work on this is done now.

2016-12-19T03:58:35-07:00March 2nd, 2014|GuildKnights|

Enemy AI: Phase I

We’ve finished up all of our basic menu systems for the dungeon game state and it’s currently possible to progress from the top floor of a generated dungeon all the way to the bottom!

We can now recognize when a unit is next to a stairway tile and present the Exit action.

A basic placeholder stage clear menu tracks turn count and surviving party members.

Now we’re ready to start building the foundations for interactions between the player GuildKnights and the monsters that roam the dungeons.

GuildKnights is a turn-based game where each distinct “group” in the current dungeon is allowed to execute all of the actions for its members before the turn shifts over to the next available group.  Under normal circumstances, group turns flow in the following order:

  1. Player Party
  2. Dungeon Enemy Groups
  3. Player Ally Groups

AI Units on the dungeon map all belong to special AIGroups.  Each AIGroup has a behavior tree that governs turn order and, potentially, specific unit actions for the group’s members.  While Enemy AIGroups with active units remain, the Dungeon Manager will randomly select one of the groups to be the acting group during the Dungeon Enemy Groups phase.

An AIGroup behavior serves as the core for cooperative interactions between enemies within the same group.  In its simplest form, it will randomly select one of a group’s units and allow it to act on its own.  At the highest level, it can facilitate coordinated attacks where units with debilitating techniques can weaken opponents before the high-damage units attack.

Initially, we’ll be focusing on getting the basic AIGroup structure and random action order set up.  After that, we’ll be working on a simple AI behavior that will allow an enemy to path-find its way to a nearby player character.  Once that’s finished, I’ll be back to go into more detail on individual enemy AI as we dive into work on Idling, Tracking, and Fighting behavior trees.

Here’s wishing everyone a prosperous and productive new year!

2017-12-05T04:38:36-07:00December 29th, 2013|GuildKnights|