Wednesday, 29 June 2011

Allowing Players To Play - Free Prefabs Anyone?

I'm currently mapping for Half Life 2: Episode 2 and in my tinkering I've produced a number of fun prefabs that can be added to maps for the player to muck about with.

See it's more than just a good layout and engaging combat and puzzles.
The Half-Life 2 world gave the player a million things to tinker with through the physics engine and the grav gun.

I think levels are all the better when the player has numerous objects to interact with.

So here we go...

1: The Fire Axe Cabinet

Pretty straight forward. A cabinet with breakable glass and a prop_physics fire axe. Great for that quick zombie kill if required!


2: The Gas Bottle and Fire Lamp

This one gives the player a choice.. do you want light? or an explosive barrel to throw at the enemy. Pull the gas barrel and the flame goes out.


3: Explosive Gas Tank On A Rope

So much fun to be had with an explosive gas tank hanging on a rope. For extra fun the rope is breakable so you can spin it like crazy then cut it and watch it fly.
Might want to warn the player that if they're close when they fling it it might come back round on them... ouch!


4: Explosive Oil Drum Dispenser

Yes it's Aazell's patented oil drum dispenser. When you need those oil drums thick and fast... accept no substitute!
Pull the bottom plank with the grav gun and you're ready for some oil drum flinging fun!

Just be careful where you leave your grenades, this baby goes off like a rocket!


Tuesday, 28 June 2011

What does the player want?

It's not hard... they want financial security and a warm dry place to live, with enough food to eat and the love and support from their families and partners...

In terms of gaming experiences however that's a whole different ball game.

With certain caveats, the following sentance is true.


I honestly believe the above sentence is true..


This applies to new types of gameplay. It is not true about environment design.

If I am mapping for a specific game, the player comes to my map with a specific set of expectations. These expectations were set when they played the official game.

They expect a reasonable level of mapping capability so that the map I create looks reasonably like that which I am purporting it to be.
If I tell the player that my map is set in some docks, my map should look pretty much like a docking area, with boats, jettys etc.. and plenty of the details filled in.

If I just throw a blockmap together with a few water brushes and some boat models it's very hard for the player to suspend their disbelief and get into the zone.

The Visual Dictionary

In games such as Portal and Half Life 2, a visual dictionary has been built by the player as they interacted with the game.

For example... in Half-Life 2 a red metal barrel is explosive.

This is understood by anyone who's played Half-Life 2. Through playing the game they have built up a set of expectations about how the game world works.

If I decide I'm going to make the red metal barrels er... unexplosive (?) then I first need to let the player know that in my map the visual dictionary has been altered.

So how do I do that...?

Player Training

Training the player in a new form of gameplay is a slightly laborious process, but it can also be very fun for the player and you can work it seemlessly into your map.

First I introduce the player to the idea, normally through an NPC telling the player about that idea (you could use screen text if you're feeling lazy) or through a demonstration that the player can watch and learn (think, NPC walks into trap before you get to it).

Then I ask the player to solve a puzzle using the new form of gameplay in a safe environment where they can take their time and learn at their own pace.
I may want them to repeat the action several times just to be sure they understand it.

Then finally I am ready to introduce the player to the idea under pressure, i.e. during a firefight.

I have learned that it is really infuriating for players if you try to introduce an idea in a moment of action. The player doesn't have time to absorb the information or learn anything at such times. They are simply concentrating on the cross hairs under their noses.

Progress is reward

The thing the player wants the most is to progress forward through you're map. The goal don't forget is to complete the experience, so to move forward is to get closer to that goal. The challenge is to throw enough barriers in the way of them moving forward for it to be enjoyable but not too many that it becomes annoying.

I remember playing Final Fantasy 7 on the Playstation and yelling at the screen every time I was trying to travel across the world and got sucked into a fight. There's a lesson to be learned here in my opinion. Barriers to progress should be varied and interesting.

What are the chances of me getting to the cave without a sodding fight?

The constant interruptions to my progress in FF7, in the same format, and the same stupid sound effect (anyone who knows the FF games will know that dreaded sound) just grew too annoying.

I never finished it by the way.

Thursday, 23 June 2011

Gating player progress

Player gating is a term that is used to describe the various methods of halting a players progress through a map.
Without them players could charge through every encounter like an 8 year old in a particularly boring museum.

Player gating can be a seriously frustrating business. How do I make sure the player kills all the bad guys before the move on?

Its a simple enough problem however trying to make the reasons for player gating plausible to the game world can be a real problem. Heres some of the various methods Ive seen used.

The Puzzle Gate

The simplest form of gate. Solve the puzzle to access the exit.
Think about the breezeblock seesaw puzzle near the beginning of HL2.

The Weapon Gate

The player must obtain a new weapon in order to break through a barrier.
This is a great way to ensure the player doesnt skip a new weapon that they will need later in the map.

HL2:EP1 Pistol Weapon Gate

The NPC Break In Gate

Once the action has finished in the area, a previously blocked route is unblocked by a new enemy NPC being introduced, normally by smashing or blasting through the door.
The slightly overused combine door lock blasts in HL2:EP1 are ax good example of this. The nice tuing about this method is that it keeps the action going.

HL2:EP1 Break In Gate

The Slow Mover Gate

The player activates the gate opening mechanism but it take a very long time for the gate to open. While waiting the player normally has to deal with a slew of enemies and survive long enough to escape.

This is seen over and over again in the Left 4 Dead games and suits the play style well. The other typical scanario is activativing THE SLOWEST LIFT IN THE WORLD!

The crane scene in the Left 4 Dead: Dead Air campaign is a great example of a slow mover gate...

The only downside for SP is that its a timed event, which means that the player can escape without clearing out all the enemies.. thats probably mostly OK though.

The Death Throw Gate

As an enemy dies it's last actions are scripted and open up a new route for the player.
This one is tough to pull off because the NPC once defeated has to perform a number of scripted actions before they finally shuffle off the mortal coil. It stretches the imagination a little but can be more plausible for flying enemies or really big boss npcs that can fall in a certain direction to smash through a wall or something.

Mate Opens Gate

A friendly NPC appears and opens the route forward for you. This will require NPC scripting and can be fun if its done well but its not my preference. The less help the player gets from NPCs the better in my opinion.

Examples of this are prolific in HL2 with Alex hacking combine terminals over and over again.

The Eye Candy Gate

A jaw dropping moment for the player to watch and enjoy that open up a new route for the player. Think the plane crash in the L4D Dead Air campaign. Will take you ages to build but may be well worth it as you know the player will be fully focussed on all your hard work.

The Astounding Dead Air Plane Crash

Let me know if I have missed any methods... or if youve seen any other really cool ways to gate the player.

Falling Into Player Gating Traps

Heres a good example of how a mapper can fall into a player gating trap.

In my map Ep2_aquaduct_4-5 the whole sequence of events begins with the player turning a valve to make water rise in order for them to reach the first level of the chamber.

In order to add some necessary action to the early part of the map I had a nice firefight going on with combine on the higher levels of the chamber shooting down onto the player.

I dont want to lose that but how can I prevent the player from turning the valve and making the water rise before the attacking combine are dead.

I tried having the water rise anyway but the combination of the player having to swim whilst being fired upon was too annoying for playtesters and just wasnt any fun.

In the end I had to settle for a rather unrealistic approach. The combine dont attack until the player turns the valve (at which point the sound of rushing water can be heard) but the water level doesnt rise until the combine are all dead.
You could explain this away as it simply took that long for the water to rise but playtesters also commented that it seemed to take forever for the water level to begin rising...

I can think of no other way that the death of the combine could realistically provide access to the valve..

Heres a link to the map if you want to see for yourself how this works...

Here's the link:

Wednesday, 22 June 2011

Creating test maps

Test maps are so essential to the overall process of mapping its almost laughable to think that I used to just start building my full map from scratch and wondered why i never got anywhere.
These days, for every map I produce, I create around 20-30 test maps.

If youve ever seen the process that film CGI goes through, test mapping is a lot like the pre-vis process. Basic shapes, functioning ideas and entities but none of the gorious source engine visual flare.

Here how i tend to put my test maps together and I can normally get everything up and running in less than 10 mins...

So you've got an idea for a new map area or style of gameplay and want to try it out.

My method for this tends to run along the following steps.

1: add an info player start and turn the cordon tool on.

2: build basic blocks to represent the required surfaces (do not spend any time on detail at all, do not bother sealing your map)

3: add in entities and start playing with them.

4: If combat area, review NPC behavior, rebuild blockmap until the NPCs are alive as long as possible. Whilst in combat, Npc behavior is at its best when they have multiple routes to choose from so add in walls, columns to make NPCs think more.

5: Once combat is good and lasts a while and youre happy with layout think about how the NPCs are introduced to the area... where does the player first lay eyes on them? Can you make that more interesting?

6. Lastly, try adding some additional elements to your map and see how it effects play.

Explosive barrels or tripmines etc are always fun for adding some randomness to a firefight.

A Feeling must be earned...

I base my maps on how I want the player to feel. I have ideas of huge revelations to the player, moment of intense emotions like fear, elation, power, revulsion, relief etc...

While I may never manage to actually get a player to feel these intense emotions I think if you aim for them youre on the right track.

What I've learned is that these feelings cant be achieved through quick scenarios, they must be earned through the map sections prior to that moment.

A stressed out player (who is having fun being stressed, hopefully) is much more likely to succumb to these feelings.

If your map is too easy, the player never feels in danger and therefore never emotionally invests in the game experience.

Bottom line... Im learning why all those twists and turns along the way are so necessary... its all about building up to these big moments.

Thursday, 16 June 2011

How I map for SP games

I use the following process for SP mapping but it probably applies somewhat to MP too.

When planning an SP map I think of it as a series of events you want the player to experience.
Make a list of your event ideas. These could be puzzles, fights, NPC story scenes etc...

Getting your events working

I pick the ideas that will suit the type of map I want to build best (keep the other ideas written down somewhere for another map at another time) and build small, working block test maps for each idea. Get all the entities working correctly.

This bit is soo much fun cos you can really experiment see what the entities are capable of.

This took about 10 mins to build in Hammer...

As you play with each test map, it should become clear how much space that idea needs and what sort of area shape gets the best results for that event. Dont even think about how it will look in the final map, just focus in the raw nuts and bolts of gameplay. Keep playing with the small test block maps until theyre working great. Send them to a playtester if you can to see if it makes sense and is fun.

Here's how it looks in game...

The order of events

Once I've got these test maps working, I apply my brain as to which order the player should encounter the events in. Theres a flow to SP maps, too much action or too many puzzles can make maps dull. I mix them up into a decent varied order. The order might also depend on the story I'm trying to tell.

Translating your events to a game environment

Once I've got them in order, I apply my theme, city streets, sewers, etc...
I look at the testmaps and see how I can translate the shape of the blockmap to the theme.
Industrial spaces are easiest because theyre the most configurable (warehouses, crates etc.. ).

Now I either import my test maps into one main map or rebuild the space needed for each one and link them together (with corridors etc..). Now import the entities and move them into place. I apply basic textures and replace whatever blocks I can with prop_statics. I add basic lighting at this point too.
I try to save time on lighting by building a test map filled with prebuilt lights (grouped entities, models, sprites etc...) and dropping them into my map.

I find that new ideas will come to me as I link areas together. The links dont have to be just boring corridors either, add jumps, traps, minor npcs to them to keep the player on their toes.

Also I think about adding some safe areas too where the player can get their breath back.

Playtesting round 1

When I'm finished with this process I should have a playable map. At this point I get people to playtest it.

I get feedback and make changes to gameplay where necessary. I'm not afraid to pull my map apart at this point and rebuild. I've still got my test maps as a basic template for each area. I may or may not act on the playtester feedback, playtesters can have some weird ideas sometimes.

Detail pass 1

Once I've finished tweaking it, I start doing a 1st pass on detailing. I pull out walls, break up the blockiness with supports, curves, arches etc... anything to avoid having big flat walls and floors. I add in fake doors and dead end curves to make my map feel part of a larger world.

Also sort I sort my lighting out properly at this point. If my light templates were any good I shouldnt need to do much. I look at the lightmaps and if I see any groovy shadows that I want to make stronger I adjust the surfaces accordingly.

Detail pass 2

2nd pass at detailing I tend to sounds... its a really important step thats often missed but it gives a map depth and adds soo much to the player experience.

I then repeat these passes at detail improvement down to what ever level of detail I require.

At this point I would normally release it... I can always go back and do more work on it later and release again...

I try and avoid being a perfectionist or becoming obsessed with "finishing" a map. As the folks at Pixar say, "we don't finish our movies, just release them!".

Hope this is helpful...

First ya get the gameplay, then ya get the looks, then ya get the women...

SP Level Design: The Player Experience

Here 10 thoughts to consider when designing your SP map.

I find that a lot of people focus on asthetics a little too much instead of how a map plays.

Here's some points from my experience so far while focussing on gameplay first and asthetics second...

1. Plan your map based on NPC behavior!
Pretty much every official map for every SP game is designed to get the best out of the NPC's in the game. This is often the reason SP games end up set in industrial areas or warehouses. These areas can absorb all manner of NPC encounters because crates can be stacked any way you like.

2. Test, Test, Test NPC behavior

In order to build good NPC encounters you need to know what they're capable of. By testing out NPCs in simple block maps you can really find some surprising and cool behaviors you didnt even know they were capable of.
Combine Soldiers are pretty smart, and its a shame to waste all that brilliant AI on a flat, boring firefight. They can move, flank, flush you out with grenades, they'll pop an explosive barrel if its near you and set up in the right way.
By understanding the limits of NPC behavior you can make your encounters really stand out.

3. Know the players expectations (then mess with them a little)

Players come to a custom SP with a set of expectations from the original game. They know how the Half-Life, Portal, world works, the puzzles, the items, the sounds, the look. Either stick with this or completely change it.
If you do stick to the game world try to mess with these expectations a little. For example, the player expect an item crate to contain... well items... they don't expect it to contain a live grenade ready to pop in 5 seconds.. or a headcrab!

If you're going to introduce new gameplay concepts to your map, make sure you introduce them to the player in a safe environment where they can play with the new element and learn how it works.

4. Take a break
Players need a rest every now and again. Make sure you add a safe area every now and again where they can get their breath back.

5. Instant death is evil
Give the player some warning before they encounter something deadly. Hints should be subtle and in the map (dont warn them via screen text or anything lol). The players lack of skill or intelligence should always be their downfall, not your lack of direction.

6. Give the player direction at all times.
The player always needs a goal. Even if that goal is as basic as "there's the door but how do I get to it?"

7. Its all about the How!
Puzzle areas should always be about how the player solves the problem, not what the damned problem is in the first place.
Show the player the problem,mo then show them the objective, then let them figure out the middle bit.
If when play testing, your testers dont understand what they were supposed to do, go back and think your area over.

8. Backtracking is evil
A players main reward is the discovery of the next area. Never make the player go back the way they came, unless its drastically changed. Always have a way for the player to progress forward.

9. You vil do what I say!
Never force the player into an action even if you think it would be so cool! Always make it their choice. Equally, never show the player something in a cutscene that they could do themselves. In fact, unless your cutscene is at the beginning (setting the scene) or end (showing what the player has achieved) of your map, avoid cutscenes altogether. Taking control away from the player is very annoying and pulls them out of your game world.

10. Playtesters are weird

Play testing will reveal a whole bunch of issues you never even considered. If the tester does something you never expected that spoils the experience you were trying to create, dont ignore it! Fix it! Others will fall into the same trap. Some other feedback you can take or leave as its often player preference as to the style of play they prefer.
If anyone complains its too challenging be careful. Custom maps should be tough in my opinion as players will mostly have completed the official game and should be pretty good at it.

Hope that was a good start, Id really like others to comment with theyre own lessons learned and with theyre opinions on these...