Tuesday, November 13, 2007

Dwarf Fortress owns me.

I've been a little light on the updates lately. Here's why.

I heard about a game called Dwarf Fortress. It caught my attention only because it was a roguelike, which means it was rendered in beautiful 16 color ASCII.

The game was written and designed by two brothers as a side project, and is provided for free to whomever will play it. While the game is in alpha, it is apparently very playable. Dwarf Fortress seemed to have a small following and a base of players that expanded primarily due to the amazing depth of the game.

After I looked into it, I decided the game warranted further review. Dwarf Fortress is a hands-off real-time strategy game. You are something like a manager who issues orders, but has no direct control over your dwarves. Complicating this is that your dwarves have their own personality and experiences. You have to keep your dwarves happy to keep them working.
The learning curve is rather steep, and you begin your first fortress with full knowledge that all your dwarves are likely to die as the result of some silly mistake you make. Whether you dig up into a river and flood your fortress, mismanage resources and condemn your dwarves to starvation, fail to provide beer to your alcohol-dependent dwarves resulting in depression and eventual fortress collapse, forget to rotate your soldiers resulting in 100-mile-stare soldiers ready to snap and go on murderous rampages, or you could just pull doomsday lever by accident.

I read as much as I could find and found mostly partial answers with allusions to more interesting possibilities. I figured the best way to figure it out was to dive right in, and kill some dwarves. After all, the motto of the game is, Losing is fun!

The following is the long history and learning of my first fortress, it's rather long.
You have been warned.


Getting situated
I started the game and began the world creation process. This process is supposed to create an entire world based on an algorithm which creates a geologically accurate world. This system boasts real-time weather fronts that interact with eachother, accurate creation of rivers, lakes, and oceans, erosion, and neighboring outposts of friends and foes. It also generates 1000 years of history for the region, a history that you can explore in adventure mode. The process can take up to 20 minutes on a 2Ghz box (!!), and is interesting to watch, but you only have to do this once every 50 or so fortress games, because once the world is created there are many suitable places to start your fortress, resulting in a persistent world that is changed by you.

Once the world creation was complete I struggled with the location selection menu. It showed a world map, a regional map, and a local map. Once you find a suitable location for your fortress, you select how large you want your local area to be. Apparently with so much going on in the game, choosing an overly large local area will result in game slowness. I picked a small temperate area siding a mountain with plenty of flora, fauna, and water. With plenty of resources and mild temperatures, this seemed like a nice easy location to start out on.

I chose to customize my loadout and dwarves and basically copied the recommendations here. I visited this article many times during my play period. It involved bypassing the purchase of an anvil in favor of buying extra food, alcohol, and skills. Since the anvil costs 1000 points, it seemed like a good deal to me!

Where the fuck am I?
I paused the game as soon I appeared at my starting point, and took a look around. I had an expanse of blue to my right, and a strip of grass against the side of the mountain. No trees? No plants? Where the fuck am I? I remember the game is "3d" (in quotes because it's 2d with multiple levels that interact with eachother) and begin flipping through the levels above and below the one I started on. As I flip down I see the mountain area on the map get larger and the blue expanse shrink until I hit the ground covered in trees, plants and lakes. I'm on a small flat area on the side of the mountain. I specified an area to start in, apparently where I start within that area isn't specified. Well, I've got plenty of wood and food stockpiled, there might not be a lot of food, but I'll just focus my efforts on farming. At least my awkward position protects me from most of the nasties that might pay my fortress a visit, one less thing to worry about!

Getting established
I follow the "Your first fortress" article and build workshops for a carpenter, a mason, and a machinist, set up stockpiles so the dwarves start unloading the wagon, and order the wagon dismantled for wood. I designate an area to be cut out of the mountain to begin my fortress. I designate a long hallway, and two large rooms, one for sleeping and one for a stockpile, and I order beds, mechanisms (???), and doors made.

Despecialization
I notice my skilled dwarves are working diligently at their tasks, leaving only two dwarves to unload the wagon, and get the items organized. I'm sure mechanisms are important, but I don't think I need them right now. I check the labor orders for my dwarves and begin adding extra jobs for them. I don't have that much manpower dwarfpower, so everyone will have to pitch in. (except the miners, of course, because shelter is too important)

Irrigation and cave-ins
Everything seemed to be going well, and I had my mason and carpenter turning out lots of interesting things (that I had no idea what they did) when I remembered reading about farmland irrigation. The water in the game is subject o gravity and fluid dynamics, which meant you could dig up into a lake, and set a series of channels to divert the water to wherever you want, and control it with floodgates. Eager to try this out, I dug out a large room and set about making it suitable for farming (which required wet ground). I flipped up a few levels and saw the lake I planned to drain, I double checked my dig designations, made sure a floodgate was available, and sent my miners to task. I returned to the workshop area and ordered some new objects, adjusted some stockpiles, and did some micromanaging while I waited for the miners to finish up. Minutes later digging is still not complete, and the miners are nowhere to be found. I check the unit status screen and see the miners are under the impression they have no job to do at the moment. I remove and recreate the dig orders, but they still insist they have no job. By now the dwarves require sleep (almost all at the same time) and are snoozing in the barracks. I stare at the sleeping dwarves, wondering when they'll wake up when I notice something. I'm missing 2! I take a closer look at the farming area and the proposed irrigation channel and realize there are a number of spaces empty on this floor. I flip down a level and find my miners, cold and thirsty, trapped by a collapse. I quickly order a up staircase carved on their level, and the required down staircase to be carved on the level above. They quickly complete their task and escape to slake their thirst. After they've rested up, they mine some of the wall away, and I order a floodgate and a lever placed. The items are quickly placed, and mechanisms are used to link the two. I order the lever thrown, and a few moments later see the floodgate raise. Perfect. I continue the digging order and my miner digs up into the lake which drains into my passage at a relatively slow pace allowing my miner to escape easily and throw the switch to drop the floodgate, and stop the flow. My farming area was nice and damp, and suitable for farming. Awesome.

Trading blind
Some traders showed on the corner of the map (how they got that wagon up this high, I have no idea) and I was warned that if I wanted to trade, I needed a trade depot. I quickly built one, and when prompted to put some goods into it, I wasn't sure exactly what to offer, so I just sent a few different items of different materials in. By the time the actual trading started I noticed that the items had no values, only weights. I assumed I lacked some kind of trading skill required to properly appraise the value of the items we were attempting to trade. The traders had a wagon and could only carry a certain amount of weight. They didn't have anything I thought I needed at the time, so I just tried to trade anything to them. And failed. I suppose there isn't much value in a giant granite floodgate, although the weight prevented me from attempting to trade further. At the time it seemed odd, but thinking about it now, I guess it makes sense... "What's that? You won't trade a large, heavy, crudely carved hunk of rock for a barrel of beer?" After the traders left I noticed only one of my miners was working. I looked at the lazy miner and found he was no longer carrying his copper pick. I check the area where the channel had collapsed (which was now full of deep water) for the lost pick, but couldn't find it. I checked the inventory of every dwarf in my charge, and found nothing. I didn't think items could be destroyed unintentionally. I didn't think he could have dropped it off the side of the mountain cliff, but checked anyway. The pick was nowhere to be found! Bloody hell. My mining crew just cut in half. I guess I'll just have to try to make one myself. (when I figure out how to do that)

Saving water, wasting water
Having read about lakes freezing in the winter I made plans to divert a few lakes into a multi-level pit, and build a well above it for water protected from the cold weather. I wanted to do it once, so I planned to drain three lakes into my pit and have enough safe water to last for years. I picked a spot equidistant from the three lakes I intended to drain (though there still was a bit of distance between them and the pit), and set my digging plans and the order I'd have to go in. Digging the pit proved more difficult than I thought, simply managing the multiple levels, and digging them out without trapping my miner was difficult. He did fall a few times but he was OK. The pit was three levels deep and 5x5, and should be more than enough. I dug into the first lake and watched the water flow down the passage. I quickly sent my miner to dig through the last bit of the middle level lake bed, and somehow he got caught up and fell into the water of the pit below. Crapcrapcrap! If my miner drowns at the bottom of that pit not only will I lose a good miner, I'll lose my last pick! I paused the game and looked for a "swimming" setting that I could have sworn I'd seen somewhere else. Unable to find it, I reluctantly unpaused the game. My miner just kind of sat there so I checked his wounds and found no mention of drowning or any other imminent death. I checked the tile again and confirmed there was water in the same place he was. Unsure of what was happening, I ordered him to dig an upward staircase on his level and a downward staircase on the level above him. He happily completed this order, and went on to dig through to the last lake. wtf? I did a quick look at the water and found it had a depth indicator 1-7. The depth of the water was 2 and 3 in some places, but the hall that the lake drained through had water at 1 depth the whole way through. I checked the second lake I'd drained, which had the longest path cut to it, and noticed that the water had not even made it to the pit. I checked the depth and found it was 1 depth the whole way. I checked the last lake I had yet to cut into and saw that the lake wasn't two levels of water, it was just one level, of 17 spaces with varying depths of 2 and 3. I added the depths of each space together and looked at how many spaces the water would be able to settle onto until it made it to the pit, and fell into my small dwarf-made lake. I figured there would be 12 depths of water that would actually pour into my lake. Since I didn't understand how the water settled when I dug the first lake drain, I realized that any water I added to it would be spread out over the 5x5 bottom of the lake and the 10 spaces I dug on the same level to get to the first lake. If I'd dug it one level up, the water would stack in the 5x5 area on the first floor before spreading out over the waterway I dug. Oh well. A lesson in fluid dynamics I already knew but didn't think would apply to this game. I looked at the miner who narrowly escaped drowning and saw that he acquired a new skill, "dabbling swimmer." HA! I decided he deserved a name and gave him the name Fibonacci which was the first that popped into my head.

Migrants and regrets
Around now (I think) some much needed migrants arrived. I hoped one would be a miner and carry a pick, but none had anything but the clothes they wore. Oh well, I guess I wouldn't want to walk to a new settlement lugging a pick when they should have one anyways. (grumble grumble) With the extra dwarfpower, I started building some more workshops and assigning some specializations to the new peasants. I began work on making coal to be burned in the smelter (what ever that is) with the expectation that I'd be able to get a pick out of all this. The charcoal creation was slow going, and burned a lot of wood I couldn't replace at the moment, but I had stockpiles, so I wasn't too worried. After some charcoal was made the smelter smelter only had the option of melting down a metal object. Since I was already limited in my objects, I figured I just need to find some metal to mine.

Ore not...
After suffering through the slow-going of a single miner, I finally found some ore! I watched as it was gathered and hurried to the smelter and found I was able to process the ore. Beautiful! I kept mining the ore with the expectation that I'd be swimming in picks soon enough. I checked the smelter frequently until I saw it finish. The result? Iron bars, ready to be turned into lovely tools. I check all the workshops and see no added options, so I check the build list and find the blacksmith's workshop is likely what I need... Except I can't build one without an anvil. Wait, the guide said I had to trade for one with the traders I couldn't figure out how to trade with earlier! Crap. I was supposed to make small crafts for trade.

Last call, and the race to the bottom
I'm out of booze. I know the dwarves can go a bit without alcohol, but I can imagine it gets really bad really quickly after that. My brewer is complaining that there are no distillable items. A quick check reveals that plants are meant to be distilled, so I check the nearby mountainsides that are accessible on foot, but I can't find any plants. In the mean time, all the dwarves are blinking thirsty. There's a small lake just outside the main level of my fortress, but none seem to want to drink the water! I double check that I've designated it a drinking zone, but none of the dwarves seem interested in the water! Will they drink the water? Will they die of thirst without booze? No time to find out, I need Fibonacci to dig through the eighteen levels of mountain, and out to the forest below. As I designate the digging area, I realize that since the mountain is conical, and I'm in the middle of it, digging down to the ground level means I'll have a lot of digging on the base to do before we make it "outside." As Fibonacci digs his heart out, I'm tense as the dwarves continue to blink thirsty. Since Fibby is my only miner, I'm forced to wait while he sleeps between long digging sessions, and dwarves continue to blink angrily. I keep checking the unit status screen for signs of discontent and see the first of what I will see often in the future, "on break." The dwarves never took breaks before, but I notice they're drinking from the lake outside. Though reluctantly, it seems. Ok, they're not going to die. By the time Fibby breaks through, the breaks are wearing on my patience. There is a definite work slowdown, which is particularly difficult when I watch my brewer make the liquid of the slowdown's resolution, only to pause for a break.

Weapons of war
I get a message that says the litter of puppies the two dogs I brought had have grown into dogs. I remember I have an animal trainer among the many folks hauling plants from ground level all the way up to my food stocks, and build a kennel. He makes a bee-line to the kennel, eager to do something other than haul plants, or logs up 18 flights of stairs. I check the kennel tasks and see options for training hunting dogs or war dogs. Having had a few encounters with kobold thieves (who usually ran off after being spotted), I order a few war dogs trained, and one hunting dog. I realize I haven't been building new workshops, and place a craft workshop (for making crafts for buying anvils!), and assign a craftsdwarf. I check the craft workshop and see that I can make crossbow bolts out of wood or bone. Didn't I have a bowyer somewhere? Yep, there he was, toiling away in the fields. He actually waited to finish his task before completing the bowyer workshop. I ordered crossbows made, and tons of bolts to be made. Now that I'm accessible from the ground, I guess I need to have some protection. Just for an added layer, I ordered several stone fall traps constructed in the long hall that lead out to the world.

Goat wrestling
I checked the status screen and saw that my food stocks were getting a little low, so I ordered more farming done. When I looked at the farm, I was surprised to see no planting going on. I checked the far settings and ordered more planted, but nothing happened. What happened to my plump helmets? Weren't they supposed to generate seeds? While I tried to figure out what was going on, I looked through the unit status screen, and saw there were some mountain goats wandering around in an unreachable section of the mountain. Goats is good eatin'! I ordered a new hall dug out to the side of the mountain the goats were on, and ordered a door and lever placed so I could close off that opening if I had to. No sooner had the tunnel been completed than my ranger changed his status to hunt. Cool! I watched my Ranger head to the mountain goats, flanked by a hunting dog and a war dog, and waited for him to get close enough to use his crossbow. As he got closer, the goats scattered, but he got two of them heading toward a dead-end. I watched as he got closer, and closer, and closer... and closer? When was he going to shoot it? He cornered one goat, and got right next to it, and killed it. ??? Why would they offer crossbows if you had to be right next to them to use them? I checked the ranger's inventory, and saw he wasn't carrying a crossbow. In the general screen I noticed an option I hadn't paid attention to before, "soldiering and hunting." I opened the menu, and it offered options for how he should be armed. I selected crossbow, and noted that I didn't have any armor made yet. So how'd he kill it? I check his skills and see he is a dabbling wrestler. HA! I begin looking around the mountain and find some more goats for the ranger and ore for Fibby. As the ranger walked between hunts (dogs in tow), I noticed him stop and go to sleep on the grass. This wasn't the first time I'd seen him do this, so I checked his room to make sure his bed was assigned to him, it was. I guess he just prefers to sleep outside. Well, he IS an outdoorsman. I nickname him Campson because he camps on the grass.

Muddy water
I check on the ground level and see the walls spattered with blood, and a bolder lying on the ground. Wow. I guess some kobold thief skulked into my hall, fell victim to one of the traps, and was cleaned up by my dwarves. Maybe I should look at getting a moat in case I run into more than one foe. There's a few lakes at ground level outside my entrance, and two more one level above. This shouldn't be too complicated. I order Fibby to dig channels between the two lakes, and incomplete channels back to the mountain so they are still passable until I get the bridge completed. I order a bridge and a lever to control it made, and plan out draining the two lakes one level up, and Fibby goes to work. I note the moat is filling in more slowly than I thought, and then I remember the lessons I learned from my water pit about water depth. Oh well, I'm sure these two additional lakes will be able to support the moat. The bridge completes just as I begin draining the second lake and I get the announcement, "The dry season has begun!" Uh-oh. Well, I should have a lot of water here, and last dry season didn't even dry out the lake by my fortress. It should be fine. As the water slowly drew nearer the moat I watched the moat begin to dry out. Oh crap. I forgot how shallow my moat was. As the days pass I watch the lakes near my fortress dry up, and watch my brewer take break after break, and my drink stockpile dwindle. I'm a little scared this season will be too dry, so I specify some more lakes as drinking sites, but the thirsty dwarves are avoiding them. The dwarves on ground level are thirsty but don't seem to be drinking from the lake. The lake outside my fortress high up on the mountain is still blue, but they're not drinking out of it. I check the zone to redesignate it a drinking zone, but when I highlight the whole lake, it only lists two water sources over the whole area. I check lake on the ground level and find it only shows one water source over the whole lake! I check my water pit, and it shows 4 drinking areas! What's with this? Can the dwarves not get to the water? I get Fibby working on some down and up stairs so they can get lower into the lake because the water level is so low, but they still won't drink from it! I get desperate and get Fibby working on a straight tunnel deeper into the mountain in he hopes of finding an underground river. I check the unit status screen and pick a dwarf to see if she's thinking bad thoughts due to lack of water. When select her, I see her standing by a 1x1 pool of water along with 8 other dwarves! What's different about this pool? I check, and see the depth is 2. I guess that makes sense. Considering the lake draining left one depth of water one all the tiles it flowed over, I'm guessing that 1 depth water is basically mud. I sure wouldn't want to drink that. I remember my problems setting up the farm, and confirm what I thought, the area that collapsed when digging the farm had filled with water 6 deep since it functioned as a drain for the flooded farm area. I checked the zone information, and found plenty of water sources, so I designated it a water zone, and the dwarves quickly ran to drink. Whew.

Gold rush
Running pretty low on food and drink, the traders arrive, and I hope for food or drink. I order the trade depot filled with various crafts, and the metal bars I've been smelting. When they arrive, I find I still can't see prices, and that there is no anvil and only some plants, wood, and leather. I get back into the blind trading mode, of selecting one item of mine, and lots of theirs and attempting to trade, and decreasing the amount of items I'm trading for until I get a successful trade. Problem was, the new crafts I had didn't seem to be that valuable, and the new bars of metal I'd forged were too heavy for the wagon to take more than one of. Eventually I got frustrated and traded some copper bars for some logs and it was accepted! Well now I have SOME idea of value, and clearly, I have none. Shortly after the traders left Fibonacci discovered a chasm in the mountain. Slightly less useful than an underground river... The chasm stretches the entirety of the mountain, and I spot some monsters handing out on outcroppings on different levels, but I don't think they can fly up to my level. Just to be sure, I build a wall blocking off the opening to the chasm I'd just cut, and get Fibby working on digging around the chasm (which stretched to the north, and not the south) to look for a river. I look at the walls of the chasm on different levels and see various kinds of ore and some gems. I check the stone screen and see what the different ores can be smelted into and find one that is 20% silver! Finally, trade with some items of value! I look further down and spot a vein of gold! I immediately order Fibonacci to start digging stairways straight down to get to the gold as soon as possible, and micromanage him in finding the gold in the vein, and digging it out. I decide to dig across the chasm, and open my passage to it with the hopes that there aren't any really nasty monsters who can fly hanging out in the chasm. Just in case I double check the door is properly connected to the lever. I micromanage Fibby through digging out the entirety of the vein and notice another vein further down and set Fibby to dig it up. My smelter is going full blast (aside from the occasional break) and I decide to look up the uses for some of the ore I've found but not yet dug up, and find some ore that's 50% silver! I get Fibby working on that ore and check the smelter to find I have lots of new options. I guess there's different metals you can make by combining ores, and order some "rose gold" bars made.

Herbivores
Finding the gold was fun, but I'm still very low on food. I notice that plants are currently the only form of food I have at the moment, and all of it has to be hauled all the way up the mountain before it gets passed around. Unfortunately most of it's not making it there. To cut down on the eating time, I order some tables placed on the ground level so when the plant gatherers have to eat, they don't have to go all the way up the mountain. I still can't farm and I don't know why! Further confusing things is the fact that the status screen shows my food stores in alright shape! I look up more info on farming and answer some of my questions. The plump helmets I grew last year only produce seeds when they're processed in the brewery, and I had the dwarves just eating them! Also, seeds count as food (which explains my high food numbers) even though they can't be eaten unless prepared by a cook. I designate many seeds in my stockpile OK to be cooked, and get the cook to task, but his breaks are frequent, and his output is far to little far too late. I get the brewer working on processing the seeds into drink, which increases the seed stockpile, but the dwarves are already hungry and restless. I realized that all the plants and seeds I'd gathered were all from outside, and I was trying to plant them inside. There wasn't enough water around to irrigate some new farmland outside, so all those seeds and plants were of minimal use. Meanwhile the plants on the ground are slowly, but surely being used up. We may not make this winter. I spot some Gorillas on the unit map, and see the hunters are already on their way. I designate a few other crossbow carriers to hunting duty because we really need the meat. I'm trying to keep the food production up, and everyone keeps going on break. Doesn't look good.

Certain doom
My first dwarf dies of hunger, and I designate a graveyard, and check my food levels. Shortly afterward my blacksmith is taken by a stange mood and mopes off to his room and stands in his doorway, likely unsettling the dwarves that have to walk past him in the hall to get to their rooms. I check my supply line of plant gathering and realize they're having to gather too far out, and are getting hungry, and eating the food down there instead of bringing it up resulting in about half the production reaching the fortress level. The cook and brewer are working at full capacity, but those plants are the only thing I have for food right now, and they're getting farther and farther away. I lose another dwarf by the stairway dug into the pool by my farming plot (when I didn't know if a stairway was needed to get them to drink from it) because when Fibonacci got around to digging it, there was some poor dwarf stuck on the far side of the staircase who couldn't swim when the stairway filled with the deep water. I guess he already knew he could drink there. I caused that death by not paying attention. I send Fibonacci to cut open a path to get to the body before it starts decomposing and freaking the dwarves out with the stench of death. Unfortunately Fibonacci is sleeping from all that digging I've been having him do, and he doesn't make it before the corpse starts decomposing. My dwarves are hungry, alcohol-deprived, and freaked out. Except Fibonacci who all this digging has elevated his mining skill to near legendary, and made him a tough son of a bitch. I get a warning that the reclusive blanksmith has gone insane, fortunately he was standing IN his room instead of in the doorway at the time, so I order the door sealed, and he'll just have to starve to death, like everyone else :(...

Abandonment
We barely make it to spring, but the plants aren't replenishing, and the lakes are still dry despite the announcement of the beginning of the wet season. Constant breaks have brought work to a near standstill, and the only food being gathered is being eaten. Not a goat or gorilla to be seen. Half the dwarves blink "unhappy" along with hungry, and this fortress will not last the season. I wonder if abandoning the fortress will result in the dwarves being released into the world. Maybe I'll run into Fibonacci again. I select the abandon option from the menu to save my dwarves from starvation, and the angry, insane brawl that it will surely cause.

Losing is fun
I guess it was fun. I look forward to starting a new fortress, and actually was surprised I lasted to the third year (if only barely). I'm sure my next fortress will have much more success.

No comments: