2 March, 2014

First Successful Pathfinding Test

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

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.

29 December, 2013

Enemy AI: Phase I

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

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!

18 September, 2013

Action Menu Design Update

2016-12-19T03:58:35-07:00September 18th, 2013|GuildKnights|

Finally got back working on GuildKnights and finished implementing the new Action Menu design.  Hit the jump to check out the animations.

Next, I’ll be working on adding the ability to have context-sensitive map actions based on where a unit is standing.  The GuildKnights should finally be able to exit the dungeon soon!

12 September, 2013

Unseen: Post-Mortem

2017-02-13T05:08:25-07:00September 12th, 2013|Ludum Dare 27|

Work on our game has been finished for a couple of weeks now, but I wanted to go back and take a little bit of time to review the ups and downs of the project.

(http://www.ludumdare.com/compo/ludum-dare-27/?action=preview&uid=24994)

What Went Right

We went through a a ton of different ideas before arriving at the concept for Unseen. This was the final list we had before making our choice.

We went through a a ton of different ideas before arriving at the concept for Unseen.
This was the final list we had before making our choice.

 

  • Brainstorming Session  I think our brainstorming session on the first night of Ludum Dare really helped us to get off to a great start. Once we knew what the theme was going to be we set one rule: “no ideas can be rejected during brainstorming.” This led to some really fun discussions about ideas we might have initially dismissed. This was key to our success with the project because our ultimate idea “counting to 10 perfectly using your internal clock” was one that we were about to pass on were it not for the brainstorming rule!
  • Project Scope Management  When we were in the process of narrowing down our concept list we made it a point to factor in the estimated work required to reach the core vision for each idea up for review. This helped us to eliminate a few ideas that the team was really excited about, but didn’t feel we could fully execute in the game jam’s time span. This actually caused us to pass over one of our top game concepts involving a Street Fighter parody where the player needed to avoid an opponent that they had a life lead over for the last 10 seconds of a match. (Maybe we’ll revisit this one later!)
  • Visual & Sound Design  We knew that our basic gameplay concept was really simple and we’d have to work hard to sell the game’s atmosphere with our visual and audio design. I feel that we were ultimately able to succeed at this. In a game where the player character spends most of the game’s duration with their eyes closed, a lot of the experience has to be carried by the audio. Holly did a fantastic job on this with an ultra-creepy sound design accentuated with 3D audio positioning. This, combined with the creepy introduction laid out by our artist Mieko’s artwork created the nice “ghost story” atmosphere that helped to sell our really simplistic gameplay mechanic.

What Went Wrong

<a href="http://www check this.Neo-Blue.com/CoreWP/wp-content/uploads/2013/09/Unseen-Broken-Intro.gif”>Language set to anything other than Japanese or English? NO INSTRUCTIONS FOR YOU!

Language set to anything other than Japanese or English?
NO INSTRUCTIONS FOR YOU!

  • No Time for QA!  In our final push to wrap the project up before the deadline, we did essentially no QA on the game. As a result, the very first build that we uploaded still had a bunch of debug features turned on and included a pretty nasty bug that prevented the game’s text from showing up properly for anyone whose system language was set to anything other than English or Japanese. Not only that, but anyone that was savvy enough to mess with the WSAD keys in our first build would’ve found that they could simply turn around around run out of the haunted house!
  • No Time For Cool Stuff!  Running short on time led to us having to cut some of the ideas that we had from the original concept. While we were able to get a core set of six endings in, we had to dump several other planned outcomes for the game. Since the core gameplay is so simple and success likely requires several re-attempts, we were planning to have a large number of different endings to keep the player entertained while they retried the game. Some of these even included fun joke endings for when you hit very specific finish times. Ultimately, all of these variants were dropped from the project and failing to get these in was probably the biggest letdown for the team.

This was the first ever game jam for our entire team and the whole experience was pretty amazing. We’re all really proud of what we were able to create together. There’s nothing quite like taking a crazy pile of ideas and actually bringing something to life. Thanks again to everyone who stopped by to check out our game and congratulations to everyone who participated in Ludum Dare 27!

26 August, 2013

Ludum Dare 27 – Game Complete!

2017-02-13T05:08:25-07:00August 26th, 2013|Ludum Dare 27|

Hey hey,

It’s been a crazy weekend, but we finally made it!  Our Ludum Dare 27 Game Jam project “Unseen” is now finished!  You can check it out over on the Ludum Dare website online project management tools.  We have OSX, Windows and Web versions available for play:

(http://www.ludumdare.com/compo/ludum-dare-27/?action=preview&q=Unseen)

It’s a super-simple idea that we tried to build a lot of atmosphere around.  We tried to use 3D sound positioning and audio cues to create a constant, ominous feeling.  This really shines if the game is played while wearing headphones.

It was a long road and I’m sure a bug or two probably slipped by, but overall I’m really proud of what we were able to put together in just three days.  Everyone here is going to retire for some well-deserved rest, but I’ll try to throw a full post-mortem on the project on the site by the end of the week.

Thanks a ton to anyone who took the time to follow our progress and please feel free to leave comments on what you think about the game!

26 August, 2013

Ludum Dare 27 – Day 3

2017-12-05T04:46:22-07:00August 26th, 2013|Ludum Dare 27|

Short post today.  We’re pushing towards the big deadline tomorrow at 6p.m. PST.  I do have something to share, though; we’ve finally come up with a title for our game project.  Have a listen to the theme music for our Ludum Dare 27 game, “Unseen”.

25 August, 2013

Ludum Dare 27 – Day 2

2016-12-19T03:58:35-07:00August 25th, 2013|Ludum Dare 27|

It’s been a long, busy day, but we’ve made lots of progress!  The fact that I’m just now getting around to writing our Day 2 summary well into Day 3 speaks volumes about our efforts.

Our main goal for today (yesterday) was to get a basic Alpha build up and running; all of the core gameplay elements without any of the bells and whistles.  I’m happy to report that we were able to get that and then some.

Most of the gameplay takes place at the entrance to a creepy house in the middle of the night.  In order to create a more immersive experience, the game takes place in first person.  We wanted to use depth and perspective to help establish a sense of place in the scene, but none of us are actually 3D artists.  We came up with the idea to just use a set of 2D assets, a bit of parallax, and a couple of simple textured cube mesh doors to achieve a somewhat pseudo 3D effect.  I think what we came up with looks pretty nice!

The house's interior is just a flat quad behind the front of the door, but the difference in depth creates a nice parallax effect and makes the room feel bigger than it actually is.

The house’s interior is just a flat quad behind the front of the door, but the difference in depth creates a nice parallax effect and makes the room feel bigger than it actually is.

In addition to the art assets, we have a nice suite of really creepy ambient and effect sounds ready to go.  Our plan is to play around with 3D positioning of the sounds that play so that you feel like you’re really in the middle of a tense situation.  We may have to add a splash screen after the title card that recommends using headphones!

After knocking out our core gameplay, we finally got to work on fleshing out the storyboards for our ending sequences.  If we’re able to do all of the work we have planned, there will be six different endings.  The ending the player gets is determined by their performance and we’re hoping to have some really interesting sequences play out.  Currently, this is our top pick for points to expand on.  If we have some extra time at the end of the project (yeah, right) we’ll probably put some time into a few extra endings.

Storyboard sketch for one of our game's endings... Hopefully we have the time to actually get these in.

Storyboard sketch for one of our game’s endings…
Hopefully we have the time to actually get these in.

Sunday will be mostly about trying to wrap things up.  Our biggest tasks will be getting the ambient sound placement working, and implementing our ending sequences.  If all goes well, we may even have the game posted to the site at the end of the night for everyone to play!  For now, I’m gonna crash so I can get up in a couple of hours and do this all over again…  Almost there!

24 August, 2013

Ludum Dare 27 – Day 1

2016-12-19T03:58:35-07:00August 24th, 2013|Ludum Dare 27|

Hey hey,

After a busy evening of brainstorming and idea crafting, our first day of the Ludum Dare game jam has drawn to a close!  Before I go into what the process was like, I think some introductions are in order.  In addition to the regulars here at Neo-Blue, we have two special guests participating in the game jam with us:

Satoko “Holly” Young, Music Composer / Sound Designer (@SkittlegrlSound)

Skittlegirl-Pic

Holly has found the time in between her work at SkittlegirlSound.com to join us for Ludum Dare!  She’ll be creating the music and sound effects for our game.

 

Mieko Haire, Artist / Graphic Designer (@Sadomin)

Mieko

Mieko has taken time out of her busy schedule to lend her artistic talents to our Ludum Dare project!  She’s going to be taking care of all of our environment and character assets.

 

At 6:00p.m. PST, the Ludum Dare 27 theme of “10 Seconds” was announced.  We immediately started work on coming up with ideas for fun game concepts that would match the theme.  After creating an initial set of about 18 different concepts, we set to work trying to trim the list down.  Most of the weaker ideas fell off naturally as we removed concepts that didn’t adhere closely enough to the theme or didn’t inspire a lot of interesting discussion on ways to expand on the idea.

After a fair amount of time, we were able to get our concept list narrowed down to a collection of our top eight ideas.  From there, we set to work trying to plan out the design specifics and work requirements  for each of the remaining concepts.  This was really helpful as it allowed us to identify the ideas that were hard to lay out gameplay specifics for  or were a bit too ambitious for the 72-hour game jam.

In the end (around 1:00a.m. PST), we finally narrowed things down to the game concept that we’ll be working on for the game jam.  We actually ended up choosing an idea that was initially unpopular, but sparked an interesting design conversation late in the process.  I don’t want to give away too much yet, but I can say that the idea we came up with is much… creepier than anything I’d thought we’d work on.

Check back with us tomorrow (later today?) when we’ll hopefully have some of the first screenshots of the actual work in progress to share!

22 August, 2013

Ludum Dare 27

2016-12-19T03:58:35-07:00August 22nd, 2013|Ludum Dare 27, Site News|

Hi! We’re excited to announce that Neo-Blue is going to be participating in the Ludum Dare game jam this weekend! It’s an online game development event where we’ll be creating a brand new game from scratch over the course of 72 hours. The game will have to match a specific theme that will be announced Friday afternoon.

We’re planning to keep a devlog of our progress on the project here on the site, and once the game is finished we’ll be adding it to our Games page for everyone to try out! Check back with us throughout the weekend to see what’s certain to be either a smashing success or a slow-motion train wreck. Either way, you’re sure to be entertained!

24 July, 2013

Map Generation and Navigation: Complete!

2017-02-13T05:08:25-07:00July 24th, 2013|GuildKnights|

Work on basic map generation and navigation is complete so I wanted to make a quick post to highlight what progress was made and where we’ll be focusing next.

I did some testing on moving around the generated dungeons using our current input system browse around these guys.  Move actions are taken by clicking on one of your GuildKnights then dragging a path.  Units were originally limited to taking one move action at a time, but this proved to make moving around a party of four a bit of a chore.  I changed the system for managing move actions to dynamically allow a unit to use all of their remaining actions in a single move.  This doubles the distance that a unit can be moved with a single click-and-drag action and makes things move along a lot faster.

In these placeholder assets the arrows represent points along the move path where a unit will use an action point.

In these placeholder assets the arrows represent points along the move path where a unit will use an action point.

Now that a lot of the basic navigation functionality is working, I’d like to take some time to spruce things up a bit.  Right now, all of the art assets in the game are placeholders and I’d like to start working towards the final desired style for the game.  For the next big task, I’m planning to implement updated UI assets.  Here’s what the basic map UI looks like now:

In the final version of the UI, the character info cards that are in the corners here will be moved to the bottom center of the screen so you don't have to look all over your screen for stat info.

In the final version of the UI, the character info cards that are in the corners here will be moved to the bottom center of the screen so you don’t have to look all over the place for stat info.

Now, here are a couple of mock-ups for the updated player character card and the action window styles:

The updated player data card makes it easy to check a unit's stats with a glance. The updated action menu will display action category headers and energy costs.

The updated player data card makes it easy to check a unit’s stats with a glance.
The updated action menu will display action category headers and energy costs.

The initial release of GuildKnights will include a Japanese localization in addition to English, so I’ll probably go ahead and set up a system for managing the language swap as well since a handful of new menu strings will be getting added with these updates.  Once all of this interface work is done, it’ll be on to monster AI!