When I started the Half-Life 2: Short Stories team, the idea wasn't really to focus on creating stories, but rather on creating new NPCs. I wanted to program, animate, and model new NPCs, and the purpose of HLSS was to create short maps that would introduce players to them. Other people could then use them in their own modifications. It was only after Ross "Samon" Gardner joined (working on his own modification, now cancelled Paradigm Decay) that I started to think about making the story a little bit more than just that.
Still, the love for creating new NPCs hasn't ever really faded away. One of the things I have enjoyed perhaps the most is creating the Interaction System between the player and the aliens. You can read a little bit about how the Interactive NPCs work in this article. Since the writing, I have already updated the system a little bit. The current system allows the Level Designer to add three different choices to make. For example, if you go to a store clerk you can either ask to buy an item, or ask its name or price. The different actions are triggered with the +attack, +attack2, and +attack3 keys (left mouse, right mouse, and middle mouse button by default respectively). This means you can also have sorts of dialogue choices now. The only difference is that you are not really locked into the dialogue menu.
It should be mentioned the aliens will speak their own language in the final version. This will make the buy system a little bit better, and easier to understand. The video also shows some glitches, but we have fixed those since the recording over two months ago.
With the addition of the multiple action choices, I also started thinking about having the option of getting through some areas violently. Currently the player can't attack non-hostile NPCs. Even if the player has a weapon, swinging them at a non-hostile NPC won't do them any damage. However, the player might be able to intimidate them. In some cases, as a second choice the player would be able to grab the horns of the alien and force them to push a button, for example. These options will always be marked as "Violent" or will have some kind of icon to identify them as such.
However, as we haven't finished writing the story yet (we are interested in finding an experienced writer) we are not sure how exactly the choices to use the Violent options will affect the game later on. When you intimidate NPCs in any way or another they will become submissive and will give any item for free from the Item Store, for example. All of this is already fully implemented and in-game, but some elements of it might not work out and might be removed from the game at some point.
Player Reaction behavior
This poorly named behavior determines how the NPCs should react to the player. Most NPCs will be, upon first sighting, afraid of the player. The Level Designer can choose from a list of behaviors how the alien will react to the player. The choices include but are not limited to "Afraid", "Curious", "Friendly", "Ally" and "Hostile". Most aliens that are afraid of the player will eventually realise that she's nothing to be afraid of and will update to being curious. Curious NPCs will try to follow the player a little bit, and are interested on what she's doing. The player can usually ask questions about items from such NPCs. If the player acts violently around the Aliens, they will go back to being afraid. NPCs can also be set to be always afraid of the player, no matter what.
Some NPCs can be set to be player allies, or can become player allies with Level Designer input functions. I have considered about a sort of a karma system where NPCs would gradually become player allies after the player has done enough good deeds for them, but this would be too difficult for the scope of the project. The ally NPC will follow the player and attack any hostile NPC that would attack the player.
While the Player Reaction behavior was simple to create using the existing AI in Source engine, a trickier part was to make it work with all the other AI behaviors such as the Actbusy, Lead, and Follow behavior, as well as the new Worker behavior.
The Worker behavior
The Worker behavior is what allows the NPCs to use Interactive Machines dynamically without the need of a lot of scripted sequences. For example, the level designer can set up an NPC to use a door. If the door doesn't have a Battery, the NPC will try to find one. If the NPC is carrying an item that is not a Battery, it will drop it, and will then try to find a Battery. The level designer can also choose if the NPC should try to use the worker behavior even if the NPC is currently afraid of the player close to them, or not. While the Worker behavior can be used for NPCs to press alarm buttons and the like, it's mostly there for the same reason as the Actbusy behavior; to make the NPCs look good, have them appear to interact with the world, instead of just standing around.
The Actbusy is a Valve programmed AI behavior that is used to run specific animation sequences in specific positions of the map. For example, the NPCs can be set up to walk around the map, to occasionally sit on a bench or to look at a poster. Likewise the Actbusy behavior will stop if the alien is afraid of the player.
Even some Items can be used by NPCs to run schedules that are there solely to make them look like they are working. These Items have the instructions on how to run these schedules completely built into them. For example, the broom can be used by NPCs to sweep the floors. After doing the sweep animation a few times, the NPC will pick another location, walk to it, and start sweeping the floor there. These Non-Violent NPC actions can also be interrupted by things like being afraid of the player and so on.
Response Rules System
The Response Rules System has been one of my favourite features in Source Engine since Half-Life 2. It has been used since in almost all Valve games. While it can be used for many things, the most common use is delivering dialogue dynamically. Both the aliens and the player will pick lines to speak depending on the situation, what the player is doing, what item she's holding, if the NPC is angry or afraid, and so on. Idling NPCs can also have random conversations with each other.
All this is to bring the aliens to life, make them feel like real people. It's an ongoing progress, we are still working on a lot of the animations, trying to make them more lifelike. We are still tweaking the interaction between the different behaviors, trying to make the transitions more fluid.
From Earth on Greenlight
Getting From Earth to Steam is important since it will offer the game easy installation, publicity, as well as Steamworks integration. However, since we are still relatively early in the development, for now we will be on the Concept section. Check out our page for some Greenlight exclusive screenshots.
Looking for help
We are looking for a dedicated an experienced writer to help us finish the story and the script for From Earth. While we have a good idea for the basic plot, there's still a lot to figure out. We need someone who has a lot of time and interest for the project.
We are looking for two different types of Level Designers. Firstly, we need people that can bring existing levels an aesthetic quality, and are experienced with lighting, texturing, and the general make up in Hammer. Screenshots and/or example maps are required.
We are also looking for puzzle designers, such as anyone who has a lot of experience designing different types of puzzles for games like Portal 2. Source engine or Hammer experience is not necessary.
Most of the concept work will revolve around the industrial era Alien technology and architecture. Samples of previous work required. We already have a strong set of existing concept art for you to draw on.
Voice actors and actresses
Although the script is nowhere near ready, we are looking for people to play the parts of Zenaida, Anthony, as well as the generic voices of aliens, both male and female actors. All voice actors applying should provide some kind of samples. You should be able to do big range of emotions. Some lines might be delivered at a later date.
The aliens will be speaking an alien language specifically designed for this mod. Their dialogue is partly already written and ready for recording. Examples will be provided if you are interested.
We are interested on getting any help we can get, especially world texture creators and prop modellers.