Epsylon - The Guardians of Xendron takes the player on a journey to a futuristic world investigating a very special Science-Fiction setup. With a team of rather different characters the player investigates, and if required fights, his way through a large case. How you solve the case is though up to you. Combine the strength of your team members is important as no team member alone can crack the case alone.

Report article RSS Feed Interaction News Post

Various updates for interaction, conversation and various other stuff.

Posted by Dragonlord on Jun 12th, 2011

Quite some time since the last news post. This has been mainly due to story writing work. More than 3 weeks went down the drain to building up a document to hold the important corner stones of the story. If this would be a boring FPS or an MP game then story would be a no-brainer. Since this is though a game where investigation is part of the job the requirements on the story in terms of logic and coherence are quite high. This is especially time consuming if you write such a story for the first time. Another problem is to allow the player a certain degree of freedom in how he pulls off his investigation. All this together ate up a lot of time leaving less for working on the game. Nevertheless I'd like to take the opportunity to talk about the new stuff concerning the actual game itself.

   Most of the work went into improving the conversation system. For this Target and Look-At have been added. Targets simplify the process of defining targets for cameras or other kinds of actions in a conversation. In addition to the existing parameters for actor speaking 3 new Look-Ats have been added: Body, Head and Eyes. Targets can be anything from actors in the conversation to world objects nearby. The system is thus quite variable. The major improvement though is adding the conversation system to the game (as it worked so far only in the editor). Besides that new interactions have been added. But it's easier to see it in action. Read the text below the video to learn what each sequence shows.


   First part shows the memo pad handling to work with the new player character (especially it's now right-handed as it should be). Shown is picking one pad up. I know it's strange as he grabs it with the right hand but holds it with the left but I had only the right hand animation already from the previous model. Will be changed later on. Pads are now used using animations (your finger there). Also dropping shown. Next is picking up a story memo pad. You have to pick this up to get a conversation going later on.

   Next shown is the entire conversation system. Added support for conversation introduction thus saying hello and stuff like that to make it more natural. Then selecting the appropriate topic to talk about. That topic only exists if the memo pad has been picked up beforehand. Then comes lots of new stuff. Added more camera shots for variety. Added face and eye look-at targets. Also included eye-blinking now. More things I added is one actor giving stuff to the other. This is a matched animation so if you look at it from the outside they properly hand over an item no matter the distance between them (IK stuff). This works using player actions which means it can be used for anything including the player and NPCs. Added a command interface for that. A rather simple system sending a text command to the an actor.

   Every actor in the game has a PlayerActions object assigned. This one defines how the actor behaves right now. The action can be changed by assigning a new PlayerActions object (typically a sub-class). The trick is now that for everything these actions are used. The only thing that changes between a player actor, an NPC actor as well as conversation is how commands are given. For player actors commands come from keyboard/mouse. For NPCs the commands come from an AI object. And during conversation commands are send to these actor actions. So I have to implement an interaction only once, as a PlayerActions sub-class and can then use it for everything just by giving the right input. Here a bunch of actions are involved, HAGrabProp, HAGiveProp and HATakeProp. A simple system to use but powerful.

   There's also support for player choices not shown in the video. Simply shows a list of options on screen the player can select one from. Each option has a list of conversation actions assigned so you can alter the course of conversation if required.

   Last but not least the same as with starting the conversation. Shows some goodbye stuff when the player leaves. Same idea as with saying their hellos. All of these are conversation topics so you create them the same way as any other conversation.

   Out of conversation the next thing shown is some interactions. The first one is taking a seat, here on an infirmary bed. Introduced here the actor align action. That's a glue action which aligns an actor before running the next action. Used to position the actor in the right place for the next action to work properly. Showing this in the second time he sits down where the player is standing far away. So sitting down is 3 chained actions (HAAlignActor, HASitDown, HASitting).Simply but versatile. This sitting down might not look useful yet but it will be used for NPCs (talk to them while they sit behind there desk) and using computers (player sits down on the chair in front of it).

    Last thing shown is an idea I had to make investigation a bit more interesting. Here an action to look under the bed. The idea is to be able to look for clues in less ordinary locations. For this one I filmed myself and used this as reference making the animation.

   Besides this a bunch of under-the-hood stuff has been added to. This includes a bunch of conversation actions and conditions including working with local variables (integer, valid during a conversation session) and working with actor parameters (integers). Actor parameters are interesting as they store information like the mood of the actor and other information. Asking irrelevant stuff or otherwise annoying an NPC with questions drops their "like you" parameter. If this one is too low they won't talk with you anymore. So think first what you ask. Careless pressing makes your life just harder. The mood system is though still work in progress so I'll talk about that later on.

Outlook

I wanted to get this conversation system out of the way as quickly as possible so I can do more engine work. There are a few things on my list to do including AI, Path-Finding and Global-AO. Stay tuned.

Post comment Comments
Tottel
Tottel Jun 13 2011, 3:35am says:

I love the amount of detail in it: The animations of the memopad, putting it in the pocket, sitting, looking under the bed, the conversation system with all the options,..

It's really impressive!

+4 votes     reply to comment
Piuneer
Piuneer Jun 15 2011, 10:47pm says:

This is starting to get really awesome really fast :D I'll never stop watching.

+1 vote     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Icon
Epsylon
Platforms
Windows, Linux
Developer
Team Epsylon
Engine
Drag[en]gine
Contact
Send Message
Official Page
Epsylon.rptd.ch
Release Date
TBD
Game Watch
Track this game
News
Browse
News
Report Abuse
Report article
Related Games
Epsylon
Epsylon Indie Single Player Adventure
Related Engines
Drag[en]gine
Drag[en]gine L-GPL TBD
Related Groups
Indie Devs
Indie Devs Hobbies & Interests group with 1,081 members
Linux Gamers
Linux Gamers Fans & Clans group with 2,899 members
Team Epsylon
Team Epsylon Developer & Publisher with 2 members