Friday, 23 March 2012

Unconventional Design Tips

The general advice for upstarting developers seem to be to focus on mechanics, building fast a prototype, getting the core game fun and and so. For instance CliffyB did so at GDC 2012. This is not bad per se, but it is really not the only way to make games and usually, and this is the issue, result in the same kind of experiences. So to create a counterweight to this, I decided to make my own list of design advice. Here goes:

Build top-down
Find some core mechanic of controlling and interacting with the game, be that sidescrolling shooter, point and click or whatnot and then focus on the big picture. What feelings should game create, what is the theme, what kind of message should the game get across? This means creating an overarching structure for the game first, and then when you start designing the mechanics, levels, etc you make sure that it goes along with this. By doing so you can design games that try and convey things not possible over shorter time spans. It lets you control build-up and emotional journey to a much greater degree.

Design and create chronologically
Try and see the development process as a very extended playthrough of the game. By designing and producing the initial level/area/etc first you get a better feel for the player's journey through the game. This make it easier to understand the how the holistic experience will play out, and it allows you to always base later levels/areas/etc upon what the player's frame of find (as it is formed by the previous experiences) is at that point.
Of course you can still go back and change things as needed, and this is often required later. But you want to stick with the chronological structure until as much as possible of the game is completed.

Do not care about fun
First of, despite what some might say, fun is a very specific word and leaves out many type of experiences. For instance very few people would call "Schindler's List" fun. Hence you should not use fun, unless you are specifically after creating a "fun time". A better word to use is "engaging" which can be used to describe the quality of anything depressing dramas and lighthearted comedies.
Second, what you want to care about are your high-level goals. The most vital part is that anything you add to the videogame serve these. If making them fun help this purpose, then by all means make them fun. But if you want the player to be part of a dark and disturbing journey, then fun is most likely not what you want to aim for.

Proper assets early
Art assets such as a graphics, music and sound effects are far more important than what some might argue. Not all videogame ideas can be properly evaluated by using simple blocks and beeps. What the player sees and hears has a great impact on how they can relate to the game. Sometimes mechanics that at first seem really crappy, can start to shine once higher quality assets are used. If you want the player to experience a story by moving through an environment, then you need to have the audio-visual feedback that immerse them in that.
This does not have to mean that full production quality assets are needed and it is not always easy to know when your prototype looks and sounds good enough. But if make sure to keep in mind that the underlying system is not everything, then that is one step in the right direction.

Diversity in the world, not game core

Do not think that everything you want to represent in the game needs to be inside the core mechanics. Instead, keep the mechanics simple and then let the world do the work in delivering a wider experience. For instance in Limbo, there are only a few core actions available for the player, yet the game keeps the activities varied and unique through out the game.
This is the hard way of designing games as you cannot simply extrapolate from a prototype, but the end result is a deep experience that is easy to get into.

Do it as short as possible

Do not make a game that is the best value possible. Let the videogames say what you want it to and then STOP. Do not try and drag sections out for no real reason. In the end what you want to create is a product that delivers your high level purposes in the best way possible.
This is also a legit business choice as you do not compete with other time consuming videogames. If your game does not take up huge amounts of time and yet gives the player a coherent and fulfilling experience, there is a bigger chance they will have time and motivation to give it a go. I would also rather see a world with many smaller interesting experiences than long ones whose only motive is to eat as much time as they possibly can.


There you go! Now of course these tips are not some ancient wisdom that lead you to the path of glory. One must always try and figure out the best process for the type of game you want to make. But what I hope this does is to show any aspiring developer that there is more ways to create videogames than the conventional ones. At Frictional Games we pretty much follow the above and have managed stay in business for over five years and are currently financially stable. So what I just said are tips that have been tried in practice.


If you know any other tips that goes against the "fun mechanics are everything" line of thinking, do share!


Monday, 19 March 2012

We are hiring: Script Programmer wanted!

Yet again we find ourselves in the need for adding a new member to our company. We are looking for a script programer with C++ syntax styled script language experience. We specifically use Angel Script, but experience with for example C#, UnrealScript, Javascript or other similar high level languages will do fine. The initial employment will be for a 6-8 months project, but can possibly be extended to an ongoing employment.

Your work with us will consist of writing the base implementation of the designed gameplay for each "level" in a game. This includes going over the design documentation, plan the basic needs and implement it, while keeping in mind that the script must be able to be easily improved, tweaked and added to. In addition you need to be creative and realize things missing/improvements that can be made to the script implementation. This can include going as far as having a completely new idea. It is also crucial to be able to imagine how the player might tackle each situation and add in the support needed to let the player continue the game in any manner that makes sense.

Experience with level editing, sound, music and effects implementation is a bonus attribute as you realize and understand the importance of timing and multi-step events needed to make the player interaction interesting and engaging.

Either you live in Sweden or you live in a time-zone nearby. Swedes are welcome as employees or contractors, if you are living abroad you need to be a contractor capable of invoicing. You'll be working from home, at a distance to the rest of the team (whom also works from home).

If interested in the position, please take the time to consider the following situation and respond to it by discussing problems and how to design it for an Amnesia styled type of game.

"To open a door, the player must tie a rope between it and a heavy create, and then push the crate into a hole."

Send CV, response to the situation and any additional links to previous work (as in videos, games or demos that clearly demonstrate your part in it): jobs [at] frictionalgames [dot] com.

We are mainly interested in script programing that deals with the player's interaction in the game world, the events that are triggered and the overall game experience that the script conveys to the player. This position is as much, or even more, creative as it is a need to be logical and structured. Please do not send any large attachments to our email address, instead upload and give links for downloading.