Tuesday, July 6, 2010

The marginal advantage versus defender's advantage

In my recent forays into Starcraft 2 tactics I've come across Sean "Day9" Plott, who has a web stream (Day9 daily) several times a week where he discusses strategies and tactics. While he doesn't cast a ton of games like other commentators, I watch most of his shows because since he pauses mid-game the strategic discussion has a lot more depth than other casters. He also does hilarious intros, which you might or might not like.

Apart from his dailies he's written an article, "The marginal advantage" that discusses expert play across several different games. While I recommend that you read the post in full, the focus of it (my interpretation) is that higher level players have a smaller edge on their opponents. A smaller edge takes longer to turn into a big enough difference to defeat your opponent (like a poker player has to play thousands of hands to realize their edge). As players learn to handle all the standard strategies you will have to invent new things to try and keep them off balance and try to force them to make the mistakes.

Instead of discussing it from a player's perspective like he does, I will try to approach the subject of marginal advantages from a designer's perspective. While his article discusses several genres of games, I will mostly write from a RTS standpoint and with Starcraft and Starcraft 2 as my major examples.

If balanced games make for interesting matches, where does the balance come from and how do we allow the marginal advantage without turning it into a slippery slope?

I will try to make the argument that defender's advantage is a feature built into the Starcraft games and intentional or not, it makes for exciting matches. Most high-level players grasp intuitively that attacking someone too early is bad but I'm not sure they define why.

One of the things from the first Starcraft game that has been discussed to the second one is high ground advantage. Instead of having a flat percentage miss chance they've removed the ability to attack things you can't see. If you have vision there will be no reduction. I think this has a reason and a good one at that: defender's advantage. If two players had exactly equal economy and production, the one who killed a unit or two early on would eventually win because of higher damage. Defender's advantage works like a kind of equalizer, forcing players to get a bigger edge than the defender's advantage blocks.

Let's say two armies worth 100 points clash in the middle of a map. After the battle one guy has 55 while the other has 50, making one player have a 5 point edge. If you make the defender's advantage be worth 20 army points, if the player with the edge attacks he will lose more points attacking, making the action in the game be back and forth. Not until one player has a big enough edge to overcome both the opponent's army and their advantages will the game end.

A defender has more types of advantages available to them than high ground and the importance of all of them change as the game progresses. High ground is good for blocking off armies during the entire game but blocking vision becomes harder late-game since most armies usually include some flying unit. The races in Starcraft are designed to have different types of defender advantages. The zerg relies mostly on mobility and vision, terran are slow and can turtle up and and the protoss are somewhere in-between.

One advantage that becomes less important later on is the shorter reinforcement path. Having your opponent near your base means the units you build to counter his army show up earlier. In the beginning of the game every single unit is a bigger percent of your army and will make more difference as they pop out of your structures. Being closer to your own base allows you to pull workers away from the resources to work like temporary army units. Another slight effect is that it's easier to keep macro up in your own base, something that matters more at lower levels.

Scouting and intelligence is another factor that heavily influences your troop movements. It becomes more important later on as players get more bases and instead of just having one or two ways of attack you have several different choices. One of the features of the zerg is the creep which gives you vision. Spreading it out between your bases allow you to predict your opponent and make traps with flanking and/or burrowed units. Having your tanks pre-sieged in a good position as terran will make a significant difference.

As the game progresses, troop movement becomes an issue. This part of defender's advantage has different designs for the separate races. The zerg have creep for mobility and almost perfect vision. Protoss have invisible observers for vision and warp gates to teleport in units. Terran suffers a bit from having slow units but the medivacs are pretty easy to get and stimpacks let your infantry move quickly while sacrificing some health.

It is not a coincidence that most early advantages result in some kind of contain by the victor of the early battles and then a focus on economy. Since the defender's advantage is a big factor early on, instead of trying to overcome it taking a safer route is a way of maximizing your expected value. The edge itself is something that works like an economy in itself. You can sacrifice your army edge now to try and get an economical advantage, giving you a bigger army edge later or you can use your edge to attack. The attack might give you a bigger edge or hand it over to your opponent but either way it's usually riskier. If you think you have a skill edge, you want the game to take longer but if you think your opponent is better you want to push early edges hard and finish it off quickly.

Am I reading too much into things that are features in most of the games of the genre? I could be but if it hasn't been changed, there usually is a reason for it. Even if it was unintentional to begin with, the reasons why it's still there are solid. The easier it is to defend, the longer your games will last but don't make it big enough that games are lost long before they actually end. Defender's advantage should be a small thing but it really makes a difference.
Click for full post

Sunday, July 4, 2010

Metagame integration: YABOT

As you might have noticed by my earlier post, I'm all for anything that helps players get better at a game. The YABOT (Yet another build order tester) is one of the best tools I've seen in a game yet. And it's a fan-made custom map.

Since the Starcraft 2 beta is currently closed and I've had a big interest in both Starcraft games at a high level, I wanted to be able to practice while I can't play on Battle.net. What YABOT does is allow you to choose a build order (or make one yourself) and practice it against an AI opponent that does a specific build order (or a random one). Essentially, it allows you to test a strategy to find it's weaknesses as well as try to get better at building timing to make your resources match better.

What it doesn't do is react to what happens in the game. It will still spawn the exact same army even if you killed all his workers or didn't even scout. It is probably the only bad side but it should be mentioned.



Since it is a small fan-made project it doesn't need all the bells and whistles of a release product but what it does is show potential. If one (or a few) custom mappers can create this in just a couple of weeks, there shouldn't really be anything stopping the game developers themselves. If you want to create a game for competitive play, making good practice tools should probably be high on your list of priorities. Good spectator tools like those in SC2 are a huge improvement but they don't matter that much if the players don't get good enough for anyone to want to watch them.

Even though I've never been top level in the SC2 beta and I don't expect to play enough to ever get there, I still like to be good at a game. Unlike a lot of designers I know, instead of playing a lot of games for a couple of hours I'm more interested in metagaming and strategy development over time. There's a good feeling that comes from just having perfect timing when you have the exact amount of minerals and gas for the building you want to build. Practice makes perfect and when you can practice enough playing single-player to not get killed within a few minutes in a multiplayer game it's a good thing. This is where I'd like to see more development instead of having more bloom on your shoulderpads.

The YABOT site with downloads can be found here, the TeamLiquid.net thread here.
Click for full post

Sunday, June 27, 2010

Map improvement: 3 steps

I've started to think the reason why I stop working on my maps when they're ready for first release is that I run out of clear goals. Since lack of improvement is a bad thing, the past couple of weeks I've been trying to find a work flow that lets me state a problem in a way that makes it easier to find a solution.

Stating the problem in the first place is a good thing because then you've actually got a more specific way of determining whether you're improving the area you're working on or not. My problem has been that I've just said to myself "this is bad, it should be better" instead of trying to say exactly what is bad and how it should be made better.

The last couple of weeks I've been trying to clearly state what is a problem and why, noting down things that need to be there and working from that. The latest area I've been trying to improve have been the second story area between the first and second capture point.



Since the second floor balcony was overlooking the first spawn point for Red, it was a bit too powerful to begin with, if Blu managed to get a Heavy+Medic team upstairs the defender reinforcements couldn't really get out of their spawn door. Rebuilding the spawn points gave Red three separate paths out of the spawn, allowing the second floor more freedom since it only blocked one of the exits.

Another issue with the first layout was that the stairs being inside the houses blocked nearly all the space, making the houses feel really cramped. Having the two houses with a bridge between them also made it look a bit too much like the buildings at Capture point 1 as well as taking up even more space.

Step 1:
make sure you have a clear goal. Writing down the problem it came out to: make the second story area bigger while keeping the sniper paths run along the sides.


Right side showing balcony overlooking Red spawn #1

Step 2: after setting the goal, make sure you pay attention to all the limiting factors. There might actually not be a lot of them, some of them are just lazyness, continuing to build on your old houses because you already built them.

After clearing out the houses that were there to begin with and just raising the platform there was a lot of space to work with. The only necessary walls were the one blocking the stairs to the second spawn as well as a big wall mostly to block visibility for snipers.



Working from this small number of limitations there were several ways of doing the layout. The solution I finally chose has the added benefit of being able to also extend the skybox inwards to optimize visibility and keep players from seeing too much of the second area while attacking the first stage of the map. It also keeps players from standing on the right side (top in the screenshot) and sniping any of the exits from the Red spawn.

The bottom area that's been blocked off from seeing the sky feels a bit cramped instead now so I'm not sure if I need to put non-skybox lighting there or not. I think it looks pretty cool either way, with a couple of props it'll be pretty nice as well as offer more variation from stage one. If it doesn't work I'll just block it off and make the first floor of the houses have a way through since it's currently entirely empty.

Step 3: test it to see if you've lived up to your goal. I thought of putting this first but there'd be nothing to test if you didn't build it first so having it last applies to the first case as well as the last.



I haven't really decided if this is the way to work in every case but right now it feels good. I haven't been doing too much mapping on occasion of the holiday keeping me busy with work (that I get paid for) but hopefully it'll pick up over the summer. Here's to hoping and writing down clearer goals.
Click for full post

Wednesday, June 16, 2010

Mini-review: The Whispered World

A couple of weeks back, I bought The Whispered World (WW) mostly based on its graphic style. I like the hand-drawn look, in fact the game I'm currently playing is Valkyria Chronicles on the PS3.

The game is presented as being "In classic point and click tradition" which is actually an understatement. It's exactly like an old point and click game like King's Quest and not at all like an old game like The Dig. The difference between those games are in my own opinion mostly that in one of them the puzzles mostly make sense and in the other they require you to spend hours in your inventory using item X with item Y and seeing if it will work.

There is a difference between doing something in the style of old games, ie. hand-drawn backgrounds and doing something just like old games and unfortunately WW falls into the wrong category.

While I'm talking about a lot of weak points there are some positives as well. The best one is Spot, your weird worm companion. He follows you around and as the game progresses you'll be able to transform him into different forms, using him to solve puzzles. While this acts as another thing to try to rub against everything, he's also really cute and it's an interesting mechanic that shows it's learned something from the 20+ years of adventure games.

Another thing is the space bar button that highlights all the items on the screen that you can interact with. The reason why this is not entirely a good thing is that you can't actually find out that there is such a button because there is no "controls" tab in the and there is no game manual. I only found it out by accidentally hitting it. Turning the controls into a mini-game of "press every key hoping it does something" is not quite good game design.

I want to like the game, I really do. It's just a bit too much pretty graphics and annoying voice acting. Having a couple of guys working in the design department that actually wants to do something about usability would probably help the game a lot. I can't believe some of the puzzles actually got through the testing phase unchanged. I ran into a couple of spots where using one item on another made Sadwick say "That's a great idea" (or something like it) and still not doing anything because it was missing some component. If it's a great idea, I want you to do it, otherwise I want feedback telling me why it doesn't work.

While WW is a nice game that will take a few hours and has some nice puzzles, I'd still recommend you getting a Sam & Max pack instead. It's around the same price and you'll get 24 episodes with 2-3 hours of play time with puzzles that make more sense. If you want an old game that is excellent and cheap, get The Dig.
Click for full post

Tuesday, June 15, 2010

If at first you don't succeed

So I made a first release of my map for last week. Unfortunately it didn't do so well, in my own opinion mostly based on the spawn points. Not so much that they didn't do their job but more because the spawns and the paths leading away from them weren't really as intuitive as they should be.

I was hoping that avoiding signs would force me to make it better and better until everyone understood where to go, then when I add the signs it should be perfectly clear. It seems to work so far, since I've changed three out of four spawnpoints for the second release of the map.

Spawn #1
The first spawn had a problem that was really easy to fix since it mostly relied on moving it back to where respawning players had vision to the first capture point. This shouldn't really have made it into even the first alpha release since I was aware of the problem already. Guess I was just so happy that I finally got all the entities working that I wanted to playtest immediately. Moving it back a couple of hundred units as well as up the stairs.

I'm still considering moving it back a bit more into the house upstairs but I'm also a bit concerned with the sniper vision, currently fixed by a couple of crates being in the way. I want to test this location properly then if it doesn't work I'll just rework the entire corner to remove vision from the first capture point.

Spawn #2
While the first spawn was easy, the second one was trickier. It is used for RED to defend stage 2 and for BLU to attack the final stage and since it's used for both teams it needs to be easily accessible for both. I just didn't manage to do it with any of my solutions using the same spawn points for both players so I went with a single spawn room with separate spawn locations instead.

Before- and afterimage.


Spawn #3
The last spawnroom is only used for RED defending the last 2 capture points and it's working great for the very last point, not so much for the third one. My first solution just had a rather narrow walkway doing a ninety degree turn which most players ignored and just jumped down instead.

I've tried both making the area more open to be inviting as well as making it a straighter route from the spawnroom to the point so we'll see how it works out.

The map is not done yet but it's improving. I actually woke up yesterday having dreamed about mapping so I think I'll be taking a couple of days off.
Click for full post

Sunday, June 6, 2010

pl_shaft alpha 1 released

I think that my map is fully functional and playable and have done tests with low numbers of players. The spawn rooms and captures are working, there are no development textures and a bit of optimization.

It's not pretty but it's playable. Finding 15 good testers is another thing entirely. If my own server is up and running, you can find it at 83.176.206.248 and come join us. You can also add me as a steam friend "Huckle" (with the question mark heart) and ask when it's coming up.

Map can be downloaded here, via rapidshare. Click for full post

A life-changing moment?

First of all, this will only be indirectly about game design. I watched a speech for the second time and this time it actually made me better at doing what I do. Not in the way that I understand something better but that I constantly have a demon in my head saying "is this really what you should be doing?". As soon as I open up a firefox window, answer private messages or make playlists in spotify it comes back and that's a good thing.

While I don't have the minor gift of talent, I do have the love for what I do and I'm constantly thinking about how to make my work better. With the added bonus of actually putting in the hours of work, I can't help but think that eventually I'll be an awesome mapper. It might not show yet but wait a couple of months and keep your eyes on this page. I'm going to be one of the people who ship.

The speech: Seth Godin: Quieting the Lizard Brain, try it out for yourselves.

For the last week I've gotten so much done and it feels great. If this lasts until my 30th birthday I'll get a hold of this guy. Not so much because of what he's done for me but because of what he made me do to myself. Click for full post

Thursday, June 3, 2010

Current mapping project: pl_shaft

Here it is, my current mapping project. It's a single stage payload map (like badwater basin). I've made some good progress the last couple of weeks after my trip to LA and I might be able to get a functional alpha out for game testing this weekend. It's currently fully functional even though I have some issues with the spawn doors.

It looks like crap though and doesn't have any displacements. It's not supposed to, it's an alpha test, I expect to change everything quite a bit. The only part of the map that's actually been tested is step one, it's also the only part that has any kind of details and houses that have roofs. Detailing is meditative, it's where I go when I'm too tired to think of how to continue.

Pictures after the jump.


Capture point #1, facing forward

Capture point #1, facing back

Capture point #2

Capture point #3, facing back

Capture point #4, facing back

Capture point #4, facing forward

Click for full post

Sunday, May 30, 2010

Critical hits and short-term variance

One of the things that poker and Team Fortress 2 have in common are that encounters are often decided by short-term variance while the game goes to whoever is better on average. In poker you're trying to merge your own range as well as playing against your opponents range and you'll run into the top of your opponents range every once in a while. In TF2 critical hits (especially crockets) will decide the outcome of a fight, even if it's not as extreme as in poker.

I've noticed that as I've become better, I like natural criticals (as opposed to kritzkrieg etc.) less and less. The reason for this is the same reason why criticals are also a good idea: it allows a worse player to beat a better player through randomness. As I wrote in my post on transparency, this is one of the things that make it harder to improve but also keep players in the game. So if new players want criticals and better players don't, you need to implement a system that reduces variance as skill level increases. Something like the resilience stat in World of Warcraft.

There has been a lot of talk about resilience gear in WoW and while I haven't been an active PvPer I think it's a great way to reduce variance to acceptable levels. Playing 3vs3 in arena when you could get killed instantly by two damage dealers on the other team wouldn't be much of a skill-based PvP system. Instead as you move up in the ladder and gain gear you will have a larger health pool as well as resilience to reduce critical hits, letting you live long enough for skill to be a bigger factor.

The only issue is that it becomes really hard for new players to get into the PvP game from PvE since you start with no resilience. This has been fixed with later patches as you can now get PvP gear from badges awarded by killing bosses. It is a MMO after all and Blizzard wants you to keep paying.

If poker players had the opportunity to reduce variance I think they'd like to, losing actual money and not just in-game points can wrench your heart out. In the end, the random factor is also what lets new people into the game. Instead of reducing short-term variance, poker players live on playing more hands and not looking at their account balance too often.

When designing games, considering if and how the game will change between low- and high-level play should be considered, whether it be critical hits, damage spread, spawn locations or some other random factor. What you decide on is not as important as making sure you make informed decisions.
Click for full post

Friday, May 28, 2010

Dynamic scaling of multiplayer maps

Playing multiplayer games off peak hours can be a frustrating thing. My current games of choice are Starcraft 2 and Team Fortress 2, both having issues when at lower player numbers (but SC2 is still in beta).

Joining a server in TF2 with a small number (<10) of players removes most of not all of the teamwork. Since one or two of the players on either team are also respawning at any given time, the game degenerates into something close to a team deathmatch game. If the offensive team ever has 2 more players than the other team they can also capture the point/intelligence/cart to move on to the next stage.

Instead of being forced to play on the big sized maps even with 6 players, why not create a system that lets you open and close off parts of the map depending on the number of players? TF2 might not be the best game as an example for map scaling, I'll use it here just because I'm intimately familiar with the maps and game mechanics. A better suited game might be Unreal 3 deathmatch but the concept still applies here.

The technology for creating this kind of maps is possible and almost but not quite possible to create in the current version of Hammer. Using models to block off entrances and using trigger_hurt to kill everyone in the enclosed areas works and is used for a single area on cp_egypt. Being able to tie terrain and geometry to a func_door to be able to lower and raise them is not possible, probably because the compiler can't sort out how to bake the lights. The biggest issue is of course that the map doesn't react to players on the server and the map doesn't respond to settings (choosing to play on full-size maps should be available).

Just closing off existing maps isn't the best solution either, maps will have to be designed from the ground up to support this. I still think it's a good solution instead of making separate maps for few and many players. That way you'll be able to switch between all maps no matter the number of players instead of only playing the small number that is catered for your preferred playing style. It might be worth looking into. Click for full post