Entries by Sirlin (333)

Saturday
Mar072009

UC Berkeley StarCraft Class, Week 6

I think I'll skip the math this time because I can explain things just as well without it for this week in particular. Last week we talked about macro (building lots of units), and this week we looked at macro from another angle. The idea is to look at the entire process of manufacturing units to look at the bottlenecks.

Professor Feng emphasized that the entire point of good macro is to create units you can USE. Units that sit around not attacking, don't help. Piles and piles of minerals in your bank don't help. These things are only potential, but we have to cash in the potential to create an actual effect. Here's the six-step process of macroing up some useful units:

 

  1. Get income (minerals and gas)
  2. Make buildings that can produce units
  3. Make sure food/supply is high enough (supply depot / pylon / overlords)
  4. Produce units
  5. Get units out of your base
  6. Actually USE the units in battle

Think of this like an assembly line where a bottleneck at any point will shut down the line. Also note that dropping the ball at a certain point does NOT negate the steps before it, but does shut down the steps after it. If you forget to build pylons at step 3, for example, everything after that is stalled but any work you did on building your income is still valid. It's just that that work stockpiles in the form of "potential" that you'll have to cash in at some later time once you fix your assembly line (build the pylons).

Rolling Dice

Professor Feng also asked us to think about how at each step, we can imagine some theoretical "perfect" execution on our part, but we can also imagine making a lot of mistakes. For example, you can imagine building every single probe at the first possible moment, never putting any in a build queue, never missing a probe. But you can also imagine forgetting to build a probe for a few seconds here and there, or wasting some minerals queuing them, etc. So there's some range of possible executions here when you take human error into account. Remember that EVERY step has this range.

Click to read more ...

Wednesday
Mar042009

Don't Look Back

Even though games have a potential to SAY things, uncomfortably few make a genuine attempt. This simple Flash game on Kongregate surprised me by having such a simple design (and no text) yet I felt it said something. Bravo.

Tuesday
Mar032009

Edge's Top 100 Game Developers of 2009

I'm on Edge Magazine's top 100 game developers list for 2009. Thanks Edge.

Saturday
Feb282009

UC Berkeley StarCraft Class, Week 5

We started out this week briefly talking about a problem from the homework about marines and medics. If H is the hit points of a marine, t is time, and B is the rate the marines take damage over time, then

H - Bt is the hit points of the marine. Set that = 0 for when the marines die and we can solve for t = H/B.

Meanwhile, let A be the rate at which medics heal marines. H - Bt + At is the equation for marine hit points in this case. Again set to 0 and solve for t to get t = H /(B-A).

The ratio of these two cases (marines only vs marines + medics) is proportional to B /(B-A). Looking at the limits, you can see that as A approaches B, the limit goes to infinity, meaning that marines never die. If A = 0.8B, a value reasonable to achieve in actual gameplay, then the limit shows that marines live five times longer. I think the non-math way of saying this is, "against Zerg, use marines + medics." Zerg units (because they have low hit points) can get rocked really bad by marines that live longer, and in some cases, can't even keep up with medic healing.

Economy

First consider an idealized form of the in-game economy, and the exponential growth it has. Imagine you build probes as fast as you can, and then build a new nexus at every earliest opportunity. You do this because building new nexuses (nexi?) is the only way to increase the rate you can produce probes.

If P(t) is the number of probes you have over time, then the rate of change, d/dt of P(t), is proportional to N*B, where N is the number of nexi and B is your rate of building probes. Also, d/dt of P(t) is proportional to P, the number of probes you have. Or at least I think that's what Professor Feng meant here. Solving these differential equations yields P(t) = A0eN*B*t, an exponential graph.

We then saw an example of of this in action on a ridiculous map called "fastest" which starts with your nexus so close to the mineral patch, that the probes have no travel time. By building only probes, then nexus, then probes, then more nexus, etc as fast as possible, you could see the explosive growth of the income. Of course, there are limits here. You can have only 200/200 supply, each mineral patch has limited number of minerals, lots of probes cannot simultaneously mine a mineral patch, etc. Also, you can't have fractions of a probe mine, and you can't spend 25 minerals to build only half a probe, so the idealized exponential graph is not exactly right, but we can start with it to approximate the real state of affairs.

Click to read more ...

Saturday
Feb282009

Short Story: Exhalation

I really like Ted Chiang's science fiction short story Exhalation. You can listen to a reading of it here, it's about 45 minutes. Don't be scared by the accent of the guy you hear at the start. The guy who actually reads the story has a wonderful voice for the part.

Science fiction (well, any fiction, but especially science fiction) can make us reexamine something by making us look at it from a different perspective. When you're trapped inside a culture or way of thinking, sometimes it helps to escape by asking what an outsider would think of it all. Science fiction has lots outsiders to ask those questions!

I probably shouldn't say much about the story, other than that it's somewhat related to the concept of consciousness, and that it asks about existence itself. Your mileage may vary, but I enjoyed it a lot.