2020-02-23

Scale in 2D games

While playing a bit of World of Warcraft, I found myself in the vast areas of the southern barrens, striving through the endless planes of the savanna. The sparse vegetation allows for views in great distances without notable obstruction, revealing the dwarven fortress Bael’dun Keep at the horizon. Well, since I did not know what will await me there I set out to travel there, just for the sake of curiosity.


Riding through the savanna, I wondered: How can we convey scale in 2D games?

You can’t pan the camera to see the horizon in a top-down game. So how can we let the player feel that the map is largem or rather, that two places are far apart from each other? Since I did not find a satisfying answer, I went to ask it at the gamedev stackexchange: Link to the question. This post will aggregate and flesh out some of the ideas provided by the answers of the community.

Analyze what to achieve

Let’s first analyze what part of the ‘scale’ we want to create: Cosider the following screenshot from WoW with the camera set in an angle, that allows for targeting the enemy but also keeping an eye on your surroundings:

The camera is panned into an angle that allows for capturing the immediate surroundings.

The camera is panned into an angle that allows for capturing the immediate surroundings.

Now, if the camera is panned further down, allowing us to see in the distance: We can identify Bael’dun Keep.

Bael’dun Keep in the distance

Bael’dun Keep in the distance

Before we have a look at 2D graphics, let’s analyze this scene to se what one can experience and how the developers achieve it.

Visuals

On the visual side, there are a few things to point out:

  • There seems to be some mist in the air, increasingin density, the further we see. In the provided image I would consider it something between mist or fog and rayleigh scattering. Since these phenomenons are commonly observed when we look into the distance they effect serves two purposes: It limits the rendering distance needed and conveys a sense of distance, since these effects mostly occur in real lige at great distances.
  • The LoD decreases with increasing distance. Not only does this increase the rendering performance but for me this also leads to the illusion of things being further away than they actualy are.
  • The end of the map is covered by a mountain range, not just a straight cut with the possibility to see into the infinite voids.
  • Emptieness. Since there are no trees or bushes in the way, we can actually see pretty far. However, the distance from where the player is positioned to the montainrange is less than the diameter of the Capital City of this continent but it feels larger.

Level Design

Not only do the visuals contribute to a feeling of size, the level design itself is also supporting this feeling: Before continuing, look at the screenshot below and see what features you can identify itself (the previous screenshot was taken when standing below the bushes on the far left bottom corner of the image).

An aerial overview

An aerial overview

Before I present you the annotated version (and to prevent spoilers if you crolled too far), let’s start by going over some more detailed features of the map, not nececarily visible on the images:

  • Concealed entrance. From the point of the player standign, you cannot directly see the entrance to the fort, since there is a conveniently placed tree at that exact location. This lures you into walking to a place from where you can see around the bush. Due to the shape of the valley we are standing in, this means walking towards the fortress, to find out if you even are able to enter it. This might even lead to a bit of sunken cost fallacy, since you have spent 20 seconds walking towards it anyways.
  • A quest sends you to slaughter some of the ‘Razormane’ thingys on the left. So on your way back to the right, you are more likely to see the fortress. This is important, since your primary goal is to do the quest and when you return to the quest giver to fetch your reward, you are nearly done and are “free to explore”. Further, the quest giver is on the way to the fortress.

A quick note however: Due to the theme-park-mmo nature of Wow, there is of-course a quest (actually a whole quest line) to guide the player into the fortress. Being one of the mayor factors to hinder the explorability of the game in my optinion, we are ignoring the existence of the quest here.

Now, finally let’s have a look at the annotated screenshot:

Bael’dun Keep in the distance

Bael’dun Keep in the distance

There are a few things to note:

  • The whole area marked with orange is roughly at the same height, forming a large, even plane. This would be pretty boring if that mountain in the middle would not be there, breaking up the empty space.
  • The distance from the red starting point to the yellow goal is large but not as large as it feels. Surprisingly this is even less than the diameter of Ogrimmar.
  • There is an obstacle placed in the direct path from the standing point to the fortress: The green line marks a trench in the plain, hindering passage (but not making it impossible) by its geography but also by being filled with enemies. The green circle is filled with lots of enemies, possibly luring you into getting side-tracked into that pit (you can’t directly walk to the fortres from within the pit).

Main aspects to recreate

Ok, so what aspects do we seek to recreate in 2D:

  • Distance: We want the player to feel that there is a certain distance between points of interest.
  • Exploration We want the player to not only notice an interesting location but also evoke the desire to explore it.
  • Achievement Once the player has arrived at a location, we want them feel a bit of achievement.
  • Vastness We wan’t to convey that the world of our game is vast, stretching over countries, possibly even continents (and not just disneyland).
  • Athmosphere If our game world feels like disneyland, the immersion of a real world breaks, if some NPC talks about their exhausting yourney that led them to the point in life where they are now.
  • Relation If we can express vast distances, we also can express short ones. An enemy force, camping at the city gates, is much more menacing, if we can relate with its size and the few hundret meters left to the city walls.

The last point is the reason why I prefer the term scale instead of distance for what we are really try to convey. As we will later see, the relation between distances might play an importnat factor for scale.

Limitations in 2D

Until now, we have looked at a 3D game. But is 2D so much different? This section highlights some of the limitations that emerge when we drop one dimenstion. I assume the game is using top-down graphics.

  • Camera pitch Since the camera angle is fixed, we cannot simply let the player control the camera as if they were using a 3D gimbal. Although some games allow for this (e.g. Secret of Mana, thanks Philipp), it creates weird perspective artifacts.
  • Spoilers In a 3D game, we can have a mountain-range separate two valleys and, if you are in one valley, you need to walk around it to see what is on the other side. If you can simply zoom out of your 2D game in an unrestricted way, you can see there directly and the moment of surprise is gone. This can be prevented by using a fog system concealing unexplored or far-away areas but this might not always be an option.
  • LoD in most cases you cannot display the contents of a sign the player is standing at and the far-away mountains at the same time, making transitions in story-telling and guidance for the player harder.

It is all about the feeling

By breaking up the feeling of scale into the following parts, I try to summarize some techniques:

  • Distance
  • Reference
  • Accessibility
  • Hints/Guidance for Exploration
  • Immersion
  • Contrasts
  • Faking it

I want to give credit to the authors of the original answers to the Gamedev question by referring to them in inline code style.

Distance

One way of conveying scale is to actually build your world ‘to scale’. This brings (at least) three problems: You need to fill that vast space with content. If you do not do this, the player will get bored passing through the area. But if you do, there comes the next problem: It takes a long time to travel through the area (wasn’t this the point of it?). So if your players use some sort of fast-travel to go from one place to another, your lovingly crafted environment might not be enjoyed. The third problem is specific to 2D games: Large, mostly empty areas in top-down games need clues for the player to orient themselves. So a long walk throgh the savanna might be boring, diorienting or immersion-breaking if you provide a path. How can the player be sure to not having missed anything important without walking across the whole area (not only the point-to-point distance), when they can’t look around.

As Philipp points out, more secluded areas, hidden behind rather narrow valleys or tunnels with the edge of the accessible map visible might be a better and - more important - more interesing apporach. Of couse this does not mean all levels should be a single pipe: Shortcuts, hidden rooms and alternative paths can still be modeled this way. If the player is walking along the shores of a lake, orientation might be easier than when they stand in the middle of a desert.

Reference

A common tool to provide an overview is a map ( also in real life ). As Philipp mentiones disconnected but highly detailed areas can be fused to together to a consistent world, by placing them on a minimap. This also works, if the vast, potentially boring space between them is not acessible (and therefore does not need to be modeled). A cool feature that I didn’t know about are the walkable minimaps, that let you control the travel behaviour of your character. I think that’s pretty cool.

Accessibility

Rather than conveying the scale of a map by creating large distances, one can try to convey this via the exertions bound to traveling. One way to do this is by limiting accessibility, e.g. by placing the entrance to an area in a hard-to find location, reqiring a complicated jum-sequence in a plattformer or by placing some nasty enemies on the players path (looking at you, High Hrotgar troll).

A frost troll you are likely to encounter when walking to High Hrothgar.

A frost troll you are likely to encounter when walking to High Hrothgar. Photo found in the wiki

The geography of the map itself can also have this effect, maybe it is hard to find a way through the enemies of the gorge found in front of Bael’dun Keep. Perhaps it makes sense to deliberately place distractions on the way to a ‘distant’ location to slow down the player, like chests with tiny rewards or optional quests.

As Alexander Gruber noted, travel could consume time. Depending on the genre of your game, this can actually work. However, pay attention to not build this around a dark pattern of selling shortcuts.

To further create a feeling of exertious travel, think of de-buffs, fatigue or hunger the player character will endure. There might be means of transport on the way, that need to be paid or the player needs to find the NPC that sells them one of the scarce tickets to the ferry. Although I personally don’t like them, random encounters when fast traveling are also part of this group.

Contrasts

As mentioned before, scale could also incorporate to be able to relate to distances and compare them. In their answer, Logan Pickup proposed to use a small starting area for the player to explore. As the player character grows, they might be able to access larger and larger areas, that initially seem impossible to traerse. But as the player progresses, they might find other means of transport (e.g. Mounts, Trains, Gryphons, teleportation) to cope with larger and larger distances. Logan Pickup accurately describes this as ‘novel barriers and forms of movement to overcome them’. I really like that idea, since it also plays nice with a controlled progression system.

Contrasts can also be used on a smaller scale: If you were wandering through a dense forrest on a narrow path, suddenly opening up to a mostly empty, deserted plane, that contrast might make the plane look even larger than it actually is.

Faking it

Remember that we want to create the illusion of scale, not actual scale. For this, we can make use of man tiny details that contribute to the illusion. For a extensive list if ideas, see the answer of Philipp Lenssen, but to highlight a few: A signpost stating a large distance, NPCs talking about far-away places, weather slowly building up or actual travellers in the world that pass by you. But the one of their ideas, that I think I would enjoy most is the player character to pull out a binocular from time to time, when idle, to gaze in the vast, invisible distance, making gestures and sounds of awe.

Immersion

A different approach was mentioned by Natalo77, improving the immersion of the player by making the character a part of the world. This allows the player to empathize with the character and not get distracted by a minimap, that the character cannot see. To fuse the character with the world, things like shadows, depth-sorting and parallax scrolling can be used. This creates a feeling of depth within the 2D scene.

Hints/Guidance for Exploration

To guide the desire of the player to experience the world in the correct places, IndigoFenix proposes to use a ‘trail of breadcrups’ to lure the player into walking into the right direction. This can range from actual breadcrups on the floor to leaves that have bloodmarks on them, caused by a feeing, wounded character. Another aspect, not directly stated but touched on, is giving the player some sort of confirmation that they do the right thing (not nececarily in a moral sense). An example could be a sign post that states your destination that you will find, after you decided to walk into the dark and dangerously looking forrest or an increasing amount and strength of guard patrols the closer you get to the castle.

Another important aspect for exploration, not nececarily for scale, mentioned by IndigoFenix are transitions between screens. If there is a desert and a forrest biome, south and north of a junction, visual clues like trees or shrubberey shuld be visible from standing at the junction to inform the player on what they can expect from that direction.

Summary

All in all I think conveying scale in 2D video games is tricky but can be rewarding for the player. Possibly, like more often than not in game dev, it is more about the faking than the making: It might be worth more to have a NPC talk about how far the next city is, than actually model all the space in between, just to have the player skip that content by fast-travel.


Associated Tags: