Dwarf Fortress
Download Features Screenshots Development Forums Bug Tracker
Threetoe's Stories DF Talk Contact Links Champions Other Games
Dwarf Fortress Development Log

DOWNLOAD DWARF FORTRESS 0.40.04 (July 20, 2014)

SDL: Windows | Windows (No Music) | Linux | Mac (Intel)
Legacy: Windows | Windows (No Music)
Older Versions

This version is not fully tested.
If you want a more stable experience, please use version 0.34.11.

Current Development: RSS Feed, Release Feed, @Bay12Games

  • 07/25/2014 Toady One The bug processing continued today. Using an observation from ag, I think I've put an end to those construction suspensions that came from the builder standing on the construction spot -- any that were ongoing in old saves will still be there, but it shouldn't make new ones. Saplings (and other trees) were growing way too fast, and that is fixed now. Dwarves shouldn't raid caravans for hospital supplies anymore. The bug where placing your crutch in your bag caused you to have a phantom crutch should be fixed (and there were circumstances that caused that to happen in fort mode as well, and it happened with casts, splints and bandages as well). Sparring events shouldn't be reported as combat events now, although that's a more difficult problem now that combat moves are smeared out over time, so we'll keep an eye on it. Sadly, ghosts will no longer be able to realize dreams after they are dead. Theoretically, it would be fine if certain kinds of ghosts did it, but the overall code was problematic, so we'll have to revisit that later. Tools made from adamantine wafers use the proper number now (Quietust). I used proper yield etc. values for obsidian (UristDaVinci). Fixed up some density mistakes... proper agreement viewing button... lots of typos...
  • 07/24/2014 Toady One Charlie Hall over at Polygon wrote an article on Dwarf Fortress focusing on world generation for which I was interviewed.

    The population cap should work for next time. Hospital zones should be less greedy and snatch up only the proper amount of objects (ag). I also cleaned up some problems with the projectile code to move them over to a slightly more acceptable place, though there are doubtless some issues. Fixing a rounding error screwed up a lot of the other analysis, so I still had to wing it for now. Thanks to Zivilin, Pirate Bob, UristDaVinci, Joben, Bertinator and many others that performed various experiments and so on.
  • 07/23/2014 Toady One I started today thinking I'd do some of the binary patch bugs (that is, bugs that were already fixed in older versions by other people making small changes to the executable), and I ended up doing some other smaller issues as well as I wandered around the bug tracker. Here is a list of most of today's haul. The bug tracker has more names -- I generally just credit people that produced patches or other key code observations here.
    • handled a few problems causing extra/erroneous long patrol thoughts (Quietust)
    • made master soldiers stop reverting back to corresponding regular soldier type
    • stopped clearing professions upon achieving master soldier type
    • fixed problem stopping underground fishing (UristDaVinci/Quietust)
    • fixed problem dividing out item milligrams in weapon velocities (UristDaVinci)
    • made children get full list of default labors upon growing up and respected any existing skills
    • stopped migrant historical children from receiving labors
    • made it possible to detect plantings too late in the season again (Quietust)
    • vermin can escape from non-artifact containers properly (Quietust)
    • caravans check weapon type properly for material selection (Quietust)
    • diplomats that wanted bodyguards should get them now (Quietust)
    • stopped aquarium check from turning off other vermin code (Quietust)
    • creature art value considered properly by civs now (Quietust)
    • can now melt metal chests (Quietust)
    • re-enabled elven diplomat
    • stopped hyper-obese digesting dwarves from constantly recalculating insulation/mass data (ag)
    • fixed some problems causing certain jobs to check too many items (angavrilov/Quietust)
    • allowed egg-laying critters without baby/child state to have viable eggs
    • fixed some personality/description typos, and other typos (many collected by Gorobay)
    • fixed problem with squid skin coloration
    • gave crabs, horseshoe crabs, oysters and mussels blue blood
    • fixed various broken eyelash color/descriptions
    • added LARGE_ROAMING to desert tortoise and giant tortoise
    • fixed strawberry/proboscis/topaz plurals
    • perseverence->ance in entity values, elsewhere
    • removed lots of HOMEOTHERM tags
    • removed pet/petvalue from tigerpeople
    • used correct legless variation for king cobra people
    • added a missing CONNECTOR to generated lower spines, and PREVENTS_PARENT_COLLAPSE to generated upper spines
    • fixed duck/goose root around part category
    • fixed antlers for reindeer/moose/elk/deer, added them to elk bird
    • fixed ruler arrival announcement
    • fixed reversed stoat caste names
    • fixed reversed giant armadillo caste names
    • fixed typo in tapir description
    • fixed typo in dragon description
  • 07/22/2014 Toady One Those hostile migrants that occasionally come should be taken care of, at least the forms of it I looked at. Ambushing critters should be a little more concerned about doing ambushy things. Those knife fights shouldn't happen so much in the markets anymore. Night creatures that actually managed to get hostile could still get sensory overload and fail to attack, and that's handled now. I gave a bit of climbing skill to invaders and more to thieves that got practice during world gen. Trees should be a bit more respectful of floors.
  • 07/21/2014 Toady One Took a first stab at the calendar lag today. Starting with a 200-year medium world running a 23 second dwarf mode two-week calendar and a 2 minute adventure mode two-week calendar (adv mode runs some extra information since the initial army/etc. positioning is important), I managed to get it down to 10 seconds and 11 seconds respectively by doing some normal optimizations and cleaning up some path-finding mistakes. There are many more things that can be done, and hopefully all of it can be done without weakening the simulation. The faster calendar affects regular fort mode speed to some degree, and also things like sleep being slow in adventure mode. The faster calendar is also good because it starts to open the door for optionally longer wait periods and other stuff like that. More bug fixes tomorrow, probably.
  • 07/20/2014 Toady One This is mainly another crash-fix release, though I was able to handle some other problems as well. I'm still hoping to get to optimizations (for the third time in these release notes!), but as usual that depends on stability. As you'll note below, a few of the older bugs are gone -- as we continue in this process, I'll work fixes for old bugs into the mix.

    Major bug fixes
    • Fixed a crash with pathing for jumps
    • Fixed a crash related to invading squads attempting to train
    • Fixed an overpopulation bug for civilized critters and a related one for site animals
    • Fixed problem with retired fort uniform settings crashing later visits to the fort
    • Stopped a crash associated to misplaced books/slabs (root cause remains, added some logs)
    • Fixed position appointment issue that caused some instability
    • Tried to make idle code somewhat better about climbing while still getting dwarves out from being stuck
    • People with a weapon should use it with the proper frequency now

    Other bug fixes/tweaks
    • Fixed problem with animal training/taming vs. lingering combat data (caused job cancel spam and inability to complete jobs)
    • Stopped nearby objects from being teleported by construction removal and a related problem with the item loop (ag/Quietust)
    • Made site finder properly indicate flux layers (Quietust)
    • Made game better respect existing directory structure in data/save when creating new directories
    • Made tops of walls appear properly when trees above walls are removed
    • Made strangulation take less time
    • Enhanced sapling survivability
    • Fixed a problem that caused vermin to occasionally be generated out of the loaded area
    • Fixed a problem that corrupted the information about items on the ground with temperature changes
    • Fixed some brokenness with climbing AI vs. ledge tops
    • Fixed a broken instance of chasing opponent AI vs unwalkable spaces
    • Made climbing have a higher path cost
    • Made people less likely to climb after a failure
    • Babies don't start strapped with a knife
  • 07/20/2014 Released Dwarf Fortress 0.40.04
  • 07/18/2014 Toady One Weapon use was very broken, so I fixed up the frequencies there. People will still occasionally do non-weapon attacks based on opportunity, but they won't prefer non-weapon attacks like they did when it was broken. I also made strangulation work more quickly. Animal training should work now -- residual combat data was screwing that up. I fixed an error causing too many saplings to die -- saplings are supposed to die when they try to grow up and are shaded by other trees or otherwise blocked, but they were also dying most of the time in general. I fixed up a few of the bugs that were patched in 34.11 -- the side finder should find flux layers properly now (Quietust) and construction removal jobs should no longer teleport nearby items (ag/Quietust). I probably won't get a chance for a log tomorrow, but the next release shouldn't be too far off either.
  • 07/17/2014 Toady One Some work with climbing today -- I tried to stop idle dwarves from climbing too readily up into trees or down volcanic features, though there are some tricky cases to handle there that might take more time. I made the AI consider ledge tops appropriately, made failed climbers more reluctant to climb for a bit (those didn't splatter anyway), made climbing have a higher path cost (so people wouldn't jump up the walls at each other during combat so readily, for example) and fixed a broken instance of chasing opponents vs. unwalkable spaces. I also made the tops of walls placed under trees appear properly when the trees are removed.
  • 07/16/2014 Toady One More crashes fixed since I last checked in -- the main one was a problem with jump pathing that occasionally caused some unhealth to the game. There were also issues with items on the ground. Mostly inconsequential, but rarely they could cause crashes. Another issue could cause vermin to appear off the map, again causing trouble. There still appear to be some crashes to check out, but hopefully we can transition over to other kinds of problems before too long!
  • 07/15/2014 Toady One I fixed four more crashes today (though it's more like three since I still need to nail down the root cause of one of them). There was some general instability associated to filling empty positions, invading squads could crash the game sometimes when they erroneously tried to do individual training, dwarves in retired sites being dressed up for adv mode tried to make sense of your old fort's military uniforms (crash), and artifact books/slab placements are still acting up (stopped some associated crashing and added more diagnostics for that).
  • 07/14/2014 Toady One I handled two population errors that caused numbers to shoot into the millions in sites. I also made the game a little smarter about checking for existing region directories in the save directory, so that copying the game over an old copy won't always be so catastrophic (that doesn't mean you should do it now!). I took a look at brewing issues, and that will probably end up with me looping back to an old burrow bug soon.
  • 07/13/2014 Toady One Here's the next one! Many more crash issues fixed. Mystery babies and large city walls had a corrupting effect that was not possible to manage, so saves are not compatible yet again. I'll try to keep saves together as we move forward, but there aren't any guarantees, especially this early on. If things have settled down on the stability front, I can finally move on to the optimizations and other issues. We'll see what happens!

    Major bug fixes
    • Fixed relationship screen crash from certain historial/old-player-fort migrants and adventurer migrants
    • Fixed adv retirement cloning
    • Fixed crash when game tries to realize certain low population sites
    • Fixed crash/corruption problem from large city walls
    • Fixed crash when asking about site trade partners
    • Fixed problem causing travelers originating from realized forts/sewers/dungeons to go out of map bounds (caused crashes)
    • Stopped the babies of the world from appearing in the unit list (and associated minimap crash)

    Other bug fixes/tweaks
    • Made farm plant list refresh properly with season selection
  • 07/13/2014 Released Dwarf Fortress 0.40.03
  • 07/12/2014 Toady One The mystery babies in the fort should be gone -- aside from being mysterious, they were causing at least one crash (the one where you press tab), so that's good. Large city walls were also causing a crash in adventure mode. I'm working on another crash related to that now.
  • 07/11/2014 Toady One Cleaned up some crashes and things today. There shouldn't be any more retired adventurer clones. Crashes as you approach low population places like certain necromancer towers should be fixed. The farm plot list should work correctly. A calendar crash caused by travelers leaving from realized forts is handled. Asking about trade partners shouldn't crash the game.
  • 07/10/2014 Toady One It's not DF without save corruption! This release should fix an issue with autosaves corrupting and causing various crash issues down the line. For this reason 0.40.01 saves are not compatible with this version -- I'm going to try to avoid compatibility breaks as we go, but sometimes they happen. I've also fixed the talk-to-deity crash (closely related to the shout-when-nobody-is-around crash, also fixed), the blocking crash, and some other bad issues. Due to the save corruption, I didn't get a chance to work on the calendar speed, but assuming this release works as planned, I should be able to jump into that now.

    Major bug fixes
    • Stopped autosave features from corrupting worlds (thanks to everybody that helped sort that out so quickly!)
    • Made the game not crash when talking to a deity or shouting out in the wilderness
    • Fixed a crash from trying to actively block in the adventure attack menu
    • Fixed the size bug where 9 of 10 young critters did not grow up beyond baby size (thanks Urist Da Vinci and so many others for all the work on that! I'd thank you all properly if I could do the archaeology to figure out how it was sorted out...)
    • Fixed a crash that came sometimes when asking about the position of site forces
    • Stopped a freeze that happened when swimming in deep water (that is, it locked up, not the part where you get encased in ice...)

    Other bug fixes/tweaks
    • Fixed the tracking key in the SDL version so you should be able to do that with capital K now
    • Added the short wait button to the adventurer manual -- you can use , instead of . to wait for one instant
    • Made quarry bushes process to an edible leaf properly
    • Typo when impersonating divine being
  • 07/10/2014 Released Dwarf Fortress 0.40.02
  • 07/09/2014 Toady One The blocking and deity crashes are squished, and I'm working on fort mode crashes now. It'll depend on the tracker, but I'll probably move on to the calendar after that until the times are down significantly.
  • 07/08/2014 Toady One Hopefully people have been able to glean some enjoyment from this version! It seems you shouldn't try to talk to your deity (crash) or block an attack (crash), and there are other crashes associated to having a fort that are under investigation. Having a larger world causes the calendar to lag a great deal (which also affects fort FPS) -- I have several angles on that, and until then trying a smaller world with a shorter history can make it go faster. There are other issues, like flying animals falling out of the sky, mystery babies appearing all over the place, no dwarf-sized equipment in places where it should be, cordial night creatures... I'll try to nab as many of these as possible as we go. It shouldn't be very long before the first fix release is up, depending on how long it takes to squash the worst offenders. I'm starting in the morning (today was mega email day) and I'll go until I have a decent enough haul. Until then, keep playing and reporting your problems! I'll keep you updated on the cleaning effort here, and it should also be possible to monitor the status of bugs on the tracker once I get back in the swing of things.
  • 07/07/2014 Toady One Here is the world activation release! Lots of processes from world generation -- birth, invasions, succession, site foundation, and so on -- now operate in the world after play has begun. Getting all of that to work led to a meandering route through various pieces of the game, some of which are described below. Aside from any bugginess, a lot of it will still feel rough and unfinished as things bump around.

    New stuff
    • World activation! There are a few things that aren't active, like megabeast invasions, but lots of world gen actions made it into the game. Birth, death (to the extent it wasn't handled before), marriages, site foundation as well as reclaims, basic succession and appointments/etc., invasions, as well as some more detail beyond world gen, like patrols, banditry and animal population handling. We still don't have army battles -- the invasions are all successful right now, unless they are locally interfered with by you.
    • The game advances two weeks before each play -- the calendar there still moves slowly when there's a lot of action, as there is in larger worlds, but there are quite a few things I can do soon to speed that up. Due to the speed of the calendar, new forts in particular also get just two weeks. This'll probably cause some shenanigans with the caravan (or you'll just have to wait a year in an autumn fort for your first one) until we sort it out.
    • Fortresses can be retired and unretired. Losing is still fun but if it doesn't happen when you want, you can put it off for a while. Retired forts can be conquered (much more easily than they would be if you still controlled them), so don't be surprised if you have to reclaim instead of being able to unretire sometimes. You can reclaim forts that didn't make it through world generation.
    • Site maps for dwarves, elves and goblins. These are very basic, but they are there, anyway.
    • Multi-tile trees and lots of new plants. Fruit and flowers. Leaves that fall in little clouds. I had to put off dwarf mode tree harvesting, but we should get to that before long.
    • Megabeasts/forgotten beasts can attack, destroy and then reside within world gen sites like dwarf fortresses.
    • Various movement changes. Climbing/jumping/sprinting in both modes, though invaders still require a line of site to use them. Adventure mode has a stealth rewrite, and some elements of that are present in dwarf mode (it is generally easier to spot thieves and ambushers, and I'll probably need to make them smarter about finding cover). Movement and combat are separate now. Startled people climb up the walls of their homes a little too often.
    • Tracking information in adventure mode. You can pull up a little window and see tracks (capital K), and you can also have it describe the freshest track that isn't yours to more easily stay on a trail (alt K). Tracks are also part of the regular look command.
    • Different levels of conflict -- your opponents in adventure mode will be listed with the current status (non-lethal, lethal, no quarter, etc.).
    • Combat moves take place over a period of time now, and you can do things like catching an opponent's attack -- you have to do that by targeting a grab at the offending part now (reactions used to have a menu, but that was before combat got more smeared out). You can get information about what attacks your opponent is doing in the attack menu -- the quality of the information depends on your situational awareness skill. You can add adjective modifiers to your attacks (quick/heavy/etc.) and you can perform more than one attack at a time for a significant penalty to its force. It might make sense with two adamantine swords or something, twirling them about.
    • Rumors of incidents can be spread, and the rumors need to be spread before you gain reputation (good or bad). Killing all of the witnesses to an event will effectively remove it from play if you don't let them get off the screen. People are a little psychic as it regards ongoing conflicts, so that they can make decisions non-stupidly. Your liaison can share rumors with your fort, but I still need to set up the screen for reviewing them after you've seen them the first time... not that you can do much with the information.
    • You can travel through tunnels.
    • You can get a guide to travel with you to a faraway place -- it still ended up being too cumbersome, so locals continue to be able to tell you the location of sites, but only within a certain distance of their home town.
    • In general, conversations have been redone. They no longer have their own screen, but run along with other actions, and there are many more options.
    • The mind has been rewritten quite a bit -- people now experience emotions according to different circumstances (lots of awkward monologues there), and they consider actions differently. The main outstanding issue is that I didn't get around to converting existing dwarf mode thoughts, so they sort of exist concurrently with the new emotions and that needs to be changed. I'll get to that before job priorities (which was one of the main shorter-term reasons for the rewrite). Some dwarves have life-long dreams and it is possible for them to recognize that they've accomplished the ones relating to skills and family. They cannot yet realize their dreams of taking over the world.
    • The paragraph at the beginning of adventure mode was marginally more useful, but that slipped a bit at the end as things were tweaked. I think it'll still describe certain invasions and abductions, but it needs to be redone.
    • Lots of new arena options -- not just the conflict state, but you can set the temperature etc. to all sorts of extremes.
    • Some experiments with procedural items, though the new demon-type sites are still quite un-fun now. The knowledge on the slab at the bottom can be used, but it is probably not worth the trouble.
    • The stuff I forgot


    Bug fixes
    • I'm sure several old bugs were "fixed" as large portions of the code was rewritten/removed, but I haven't tried to track exactly which ones. Bug fixes will commence in earnest now, and everything will be handled over at the bug tracker.
  • 07/07/2014 Released Dwarf Fortress 0.40.01
  • 07/05/2014 Toady One Change one line and the world erupts in no-quarter knife fights apparently... hopefully we've emerged from that.
  • 07/01/2014 Toady One The July 2014 report is up.
  • 06/28/2014 Toady One It was an army truck for the last while, and a food truck today. Just about everything that could go wrong with invasions in dwarf mode did, but I think it is sorted out now. Even the grizzly bears the elves ride come from actual populations now, so make every axe-chop and drowning count and you won't have to deal with that particular site's denizens for a good long while. I put in hopefully-good-enough init file caps for the burgeoning number of seeds, with some periodic handling, and I think I sorted out all of the mess that was happening with brewing jobs (which weren't working, or were producing non-specific seeds, or whatever else). I'm going to do some overdue optimizations tomorrow, and then we'll be titrating in some final bug fixes until the release suddenly appears.

    There is apparently a less coherent and perhaps more morally bankrupt (I don't remember) recording of after-interview sound from the Red Pages Podcast (Extrasode 2).
  • 06/24/2014 Toady One Truck truck truck. Having some exposition issues... got back from an assignment to find my leader had been beheaded, only I wasn't able to figure that out by talking to people (had to go to legends afterward). Was surprised to find kobolds occupying a set of dwarven hillocks... thought it was a bug, but it was actually a legit bandit takeover from 20 years prior that nobody told me about. Walked into another hill dwarf site and everybody was running out of the civic mound yelling about an insurrection. I walked in there and the mayor was by himself. I thought I'd help them out, so I stabbed him in the head. One of the fleeing dwarves turned around and beat me to death. That'll teach me to meddle in internal affairs. In another game, I walked out into a market and all the humans and goblins there were in a giant brawl. I think that flare-up was caused by something in their cultural pasts but I didn't figure it out. Sometimes you just want to grab somebody and scream "what's going on?!" but you can only ask about certain things... a list which needs to be expanded even as they continue to volunteer more information.

    Zach went out to hunt some night creatures and found a bunch of monsters of twilight up in a tree... turns out their blood-sensing ability allowed them to detect all the scary beasts deep underground and they wanted nothing to do with it, so they fled from their lair (which was not attached in any way to the beasts underground) and treed themselves.

    In any case, fixed a couple crashes Zach found today, and things are going well, though I expect quite a bit of the roughness above will survive in various forms to be experienced by you all as we continue working on this, since we still have some larger problems to fry first.
  • 06/19/2014 Toady One I appeared as the guest on the Red Pages Podcast (Episode 19).

    The truck? It trucks. I think we have 35 issues/checks left, starting from 122 or something this month.
  • 06/17/2014 Toady One The truck is still trucking... I should keep doing this dev log thing though. So yeah, what did I play with... pets vs. fort retirement, alarmed bystander tests, all sorts of brokenness with how guards are allocated and shuffled around during site (un)realization, more date checking and am-I-outmoded checking for rumors (though some of them still seem to linger), and a whole ton of data entry for gait stuff. We continue to be on track.
  • 06/11/2014 Toady One Got to the halfway point yesterday compared to where we started this month, so we're trucking along reasonably well. It has been mostly prosaic... arena human with an axe and a sword alternated them on me properly in the arena. Lots of blood-drinking tests.
  • 06/07/2014 Toady One Here's a video interview I did with Matt Mirrorfish for his NewbQuest project: page with audio and video. Everything continues to proceed apace. Various dwarfy map fixes and dwarfy position fixes and so on, concerning magma smelters and not needing a bookkeeper in every hill settlement, that sort of thing.

    In a fit of ambition, I had my character declare lordship over a village to a farmer in a cottage. I then graciously offered up my position as leader of the new entity to him, an honor which he accepted. Now unemployed, I asked to become one of his guards. He said I wasn't worthy enough yet, which I thought was sort of ungrateful. Unfortunately, I think he might try to stage an actual site takeover at some point, or move his new entity into a ruin. I wonder if the game has become odd. Eventually people will have to develop more sense about their life goals.
  • 06/04/2014 Toady One DF 0.34.11 has become a two year old today. The list of remaining issues has been cut by 25% so far this month, which is good. When I was testing a werewolf bug, I found I had to restructure all of the generated raw object processing, which was a little unsettling, but it's happier now, and all of the various indexes and so on can survive new object types being generated even after play begins now. Not that we generate any objects that late yet. We do have a few generated in the early years of world gen now (rather than at the beginning).
  • 06/01/2014 Threetoe It's almost here! After over two years in the making, we plan to release the next version of Dwarf Fortress in the beginning of July. We are very grateful to those that made it possible by supporting us financially all this time. Dwarf Fortress has become more than a game in the twelve years since we started. It is now a crazy art project that everyone can engage in! Whether it's creating the awesome mods, or helping newbies learn to play, everybody helps out. There are going to be a lot of bugs in the beginning so one major way to help out would be to contribute to the bug tracker. Dwarf Fortress would never have made it this far without such a strong community. Thanks to everyone on the Bay 12 forums and beyond for spreading the word. It's going to be a busy few months coming up so thank you again in advance for your patience and generosity!

    Toady One The June 2014 report is up.
  • 05/30/2014 Toady One Here is a Future of the Fortress reply.
  • 05/24/2014 Toady One The highlight of the last few bug-fixer sessions was definitely yesterday, when the king of my dwarves appointed a visiting merchant's yak as the general of the army while I was trading. I was working at the time on liaison issues -- the long-standing bug that fired the liaison when they left the map is handled, so you should get the same one every time now if something tragic doesn't happen to them, and I reconfirmed that if something bad does happen, you do get a new one. I guess I just need to make sure the new liaison doesn't end up being a work animal sometimes, which appears to be considered an option.
  • 05/21/2014 Toady One It's a continuing process as usual... more climbing tweaks, culminating with the new debug button to place all of the dwarves in the fortress up in the tree tops and see if they can make their way down. That all seemed to work, so hopefully there won't be too much stranding upon the release. Finished a portion of the XML that was missing... cleaned up some busted banter... I ended up needing a preliminary conflict state "encounter" to handle some wilderness animal interruption issues. It doesn't do much at the moment aside from manage job cancellation issues, but I imagine it'll be the foundation for things like threat displays etc. later.
  • 05/19/2014 Toady One We've returned from the event. There might even be audio of it in podcast form at some point, but that's not entirely decided. In any case, back to the dwarves! The main thing I worked on today was more cultural identity tracking during world gen, since the final communities at the end of world gen were having too much of their information washed out. Things are generally moving forward at a wholesome speed as the two year release anniversary creeps closer.
  • 05/14/2014 Toady One I was reminded that I haven't been coloring the dev page. I'd been keeping up my internal notes (for the version number), but I forgot that I had a "done-for-next-time color" online. So I've colored some in. Keep in mind that many of the upcoming features for this release aren't on that page, since it doesn't have all of the v1 features.

    Off to TWO5SIX!
  • 05/12/2014 Toady One More fixing of things. I'm in the middle of cleaning up further problems that cropped up with sparring, and perhaps an older bug there with how the unassigned lists of students are maintained. Lots of other stuff... buggy climbing announcements, a problem that arose climbing while losing your hold heading downward, some tweaking of the new wg megabeast attacks, other broken combat training, some more information as you travel in tunnels, fixed up evaporation of sweat/tears/etc. so dwarves wouldn't be so clean-happy, changed contaminant drinking, and so on. Reaction modding alert: globs have an amount more like liquids/powders/bars now (came up during the contaminant stuff since it needed to be homogenized).
  • 05/09/2014 Toady One Continuing along with issues. I went to go buy some fruit from an elven market, but there was nobody there, and when I fixed that, it started crashing, but eventually it all worked. I had what I thought was a small problem with world gen forts occasionally being placed too deeply in the mountains, but it ended up being a more subtle mess with how the mid-level mountain maps are generated, so I had to add an extra check to read ahead how those maps would turn out... the mountain forts seem to all be placed in accessible places now. Fixed a problem where an adventurer would just start out in a random field instead of the castle in town. Fixed another one of those climb/jump pathing problems, this time with getting them to understand how to leap properly in certain situations while clinging to walls. There are still a few of those left potentially. Also cleaned up an issue causing residents to wander far away from their houses or into rooms they didn't intend to be in.
  • 05/06/2014 Toady One Real-world health is all back to normal, which is good. Stopped a problem whereby starting a dwarf adventurer in a deep site sometimes landed you on a mountain top. Broadened adv depot item choice a bit. Fixed some new dwarf mode skill-gain issues (e.g. skills based on spotting sneakers were all out of whack). Fixed a subset of migrants that had broken dreams and values. Patched up markets that had developed some new problems. Along with the bug fixes, there are various checks we're getting through relatively unscathed. For instance, I made myself super-fast and ran just far enough that my companions were offloaded and they were still able to catch up eventually (spending a moment in army form). They also found their way home when I fired them without issues.
  • 05/04/2014 Toady One I managed to fix a bug whereby hydras would sever the same body part multiple times if they got a bunch of near-simultaneous strikes, handled broken mushroom cap ramps, another problem with god conversations... and then went back to aching and inability to think. Zach and I both got Norwalk'd or something eating at the same fine establishment and were completely out of it on Saturday. We can keep food down today but still have to recover our energy and general sense of well-being. Pretty sure I'll be almost 100% tomorrow, so that's good anyway.
  • 05/02/2014 Toady One The bug-fixing mission continued today. Fewer logs hanging in the air, though they can still get stuck in trees which is a little odd but maybe not a deal-breaker. Fixed a problem with the wait order for companions... fixed a problem with the "sensing" ability vs. stealth. Handled some mangled announcements for crushed joints. Got rid of residual grass that provided stealth bonuses after being trampled. Added some more control over where twig tiles appear on trees. Broken guide directions. Stopped prisoners from constantly agreeing to rescue each other. Also some crashes fixed, and so on.
  • 05/01/2014 Toady One The May 2014 report is up.
  • 04/30/2014 Toady One Here is a Future of the Fortress reply. Various issues have also been completed... book reading crash, arena crash after you play a fort game, broken guide selection, broken creature occupancy flags after emotional breakdown, messed up tree lighting flags, dwarf mode conversations breaking all their jobs over time, etc.

    Here's an article by David Shimomura I was interviewed for in preparation for our upcoming appearance at TWO5SIX in Brooklyn next month.
  • 04/28/2014 Toady One I've been through 20 or so issues so far -- much fewer than I anticipated, due to the various filming and audio recordings going on the last several days. It may be a while before we see something arise out of it, but it was fun, and there should be Scamps footage. In any case, animals talk to me less, talking to gods doesn't crash the game, there are fewer battle announcements from the underworld, you can't skip out of the load progress bars, vampire accusations work again, and that sort of thing.
  • 04/24/2014 Toady One I finished the options I needed to handle on the information screens today. That leaves me with my "issues" text file to work through. That's the next and final step for this release -- getting it up to a state where it isn't an utter and fundamental degradation of the currently released version. There are crashes, optimizations that need doing, dwarves that seem to potter off without thinking in between certain jobs, and all manner of other trouble.
  • 04/20/2014 Toady One Fixed up all the crashes and other discovered vampy brokenness and did what I wanted to do with vampire rulers and pretend gods. That leaves a few of the options on the info screen to complete before we get to the bug pile. Thanks to all the birthday well-wishers... that was reasonably intense.
  • 04/15/2014 Toady One I did the things I wanted to do with intruder detection. Moving on to the vampire/god tweak I mentioned on the 19th, I ran into a new world gen crash, but it reproduces so hopefully that'll be cleaned up soon.
  • 04/12/2014 Toady One Ah, sorry about that, I was... delayed. Relatives and such. Messing around with info screens, the sort of agreement data I was displaying involved my returning a daughter to her father after a kidnap rescue. He was a scout hanging out at a hill dwarf tavern mound. The reunion might have been touching, but instead of the father running over and embracing the daughter, an unrelated drunk at the other side of the room shouted the daughter's name and then ran over and hugged me while the father and daughter stood in place crying tears of joy. It's fixed now.
  • 04/06/2014 Toady One I'm still missing a few variables, and everything continues to be subject to change, but these trees seem mostly done. I also updated the other files.
  • 04/05/2014 Toady One RL taxes are handled, and the tree raws are about ready to post. I just need to finish pomace/oil stuff and some shaping.
  • 04/02/2014 Toady One Aaaand here is the followup Future of the Fortress reply I said I'd post about plants and smell.
  • 04/01/2014 Toady One And the April 2014 report is up.
  • 03/31/2014 Toady One Here is a Future of the Fortress reply.
  • 03/30/2014 Toady One The list of new plants has more or less settled. We don't have certain things implied by the lists, like coffee or tea drinks, or tapioca, and so on, but there'll be some stuff anyway as everything slowly gets more interesting.
  • 03/26/2014 Toady One The liaison and other diplomats provide information about what's going on in the world. It just happens in one of those conversational pop-ups as the meeting is going on, using more or less the same stuff as adventure mode to provide the information, so they'll sometimes refer to their own relatives by relationship and so on. I also continued along with the information screen and did more work on the plant list, though I haven't checked those off yet.
  • 03/23/2014 Toady One I decided to try to haul a backpack of black zircons from the fortress of Whirllancers to Paddletaker on the other side of the mountains, six world map tiles away. The broker was at the depot (they aren't nearly as tardy as your own brokers), and I made the first deal... I think I traded my socks and trousers, maybe more. The tunnel opened out into the first cavern layer, which was watery at this point, so it was actually a large bridge over a pool. Guards were milling around, but before long I was all alone with only the various funguses to keep me company. The tunnel has a smooth and civilized floor, but it is often open to the underground wilderness. In fact, I was accosted by a wild troll at the first corner. Managing to skewer it, I carried on. There was another bridge... and a cave crocodile decided to attack, providing more food for the journey.

    I hit the first stairway down to the deep dwarven settlement of Fissurerampart around that time, but I didn't have any business there so I just wandered around a bit and moved on. The tunnel was much more enclosed in this area, probably because there was a lot of water, but I'm not sure, since it was enclosed. I know in one of the open bits I heard a gremlin shouting for help, but I didn't see him, and wasn't too inclined to help a gremlin anyway, since they never did us any favors. The only intersection in the journey was around there -- a westward passage to Rosetower. Their depot was closer, but I couldn't offload my black zircons there -- 30 years before it had been taken over by a mint-green noseless porcupine, and it still lived there. After the stairway to Machinewalk, I got thirsty for the only time, but I had some water so that was fine. Then came the stairways to Magicvessels. The tunnels opened up again, and I met a gorlak. We exchanged some words, but he didn't have a lot to talk about so I continued on. Finally, I knew I was nearing the end, since there wasn't a dead-end and I had just spent two hours debugging a dead-end around there. I got the jump on another cave crococile and stabbed it from behind... then a short walk and up to Paddletaker.

    Now, I've been remodeling a bit and it is sort of empty up at the entrance, and there's still some weird dirt and so on, so don't mind the map, but all the same, this is what I found up there. All of the dead dwarves are not part of the remodeling... and I wouldn't include elven soldiers either, though they seem to have done some remodeling of their own. They didn't mind that I was there. Apparently this was the second army that was sent after the massacre to occupy the site (very non-elfy...) for the Parched Wasp, so they weren't overtly hostile. I'm not sure when the initial invasion happened, since I didn't listen to the rumors before I left from Whirllancers. It could have happened any time during the previous two weeks before my adventure. The elves told me that there had been a "dispute over the treatment of plants".
  • 03/22/2014 Toady One Tunnel trade runs haven't been going smoothly, but I found an old buried error in the 3D map code that was causing all the cave dragons and water to sneak into the central fortress up-down column, and various other problems besides, so that's good, anyway. I also had to play with world gen a bit to get brokers to show up at all since it wasn't doing unimportant positions for sites (as it makes too many functionary historical figures throughout history that way). Map bugs are always time-consuming (more-so because there are giant mushrooms now that seem to work their way into everything), but we should be getting away from them as we move past this item, since none of the other issues involve maps. I have to have a successful depot run first though. Back to it!
  • 03/19/2014 Toady One Site riling now includes little groups that try to track you down after the rumor has gotten around that you've done something bad. As part of finishing that up, I also handled some older promises I had written down regarding smell and low-light vision. The wind is involved, and creatures with a keen sense of smell, including elven adventurers, can detect creatures nearby in the proper windy direction. There's no blood-houndy types of scent trails yet (though there are the other kinds of trails). Animated corpses can be smelled even by humans if the wind is right, though there's a whole set of ambient smells that are not in the game yet and won't be this time.

    In terms of these finalizations I've been doing, there are six left. Doing a test run with a dwarven adventurer from depot to depot through a tunnel, the liaison commenting on the world situation in dwarf mode, that information screen I mentioned in the FotF thread not too long ago, the plant list, some checks with guards/intruder and some sort of nod to vampires/gods ruling civilizations (since it gets stranger and stranger for them to be there without any comment at all). Then we'll have a steaming pile of game that needs to be debugged and otherwise made playable.
  • 03/17/2014 Toady One I handled the things I wanted to do with refugee to bandit conversions, and included things like having bandits work out of ruins and caves. I also worked with conflict resolution a bit more and got some more stranded armies to find their ways home.
  • 03/15/2014 Toady One I went ahead and loosened up the artificial restrictions I had in place in terms of which types of civilizations could attack which sites, in that they are gone. It is all based on ethics now, so that humans and goblins are much more likely to fight their own same-culture sites, whereas the dwarves don't march off and attack anybody without cause (but they'll proactively defend themselves once they are at war). We'll see if that explodes in some way. I also finalized abstract tribute/homage agreements, which don't do much of anything but stop certain fights from happening at this point, but that's okay.
  • 03/13/2014 Toady One Looks like succession is done. As a final test, instead of just writing about it, I went ahead added a debug button that makes absolutely everybody interesting or otherwise individually tracked keel over. Only abstracted populations remained alive. The world was very quiet for a while, with no patrols or creatures moving around, because they were either dead or the person that would give the orders was dead, but by mid-morning they had reestablished leadership structures and I got to watch several people journey from site to site to place themselves in their new seats of power. We can add some extra confusion later, but I'm happy for this time that it works at all. There are some more conversation responses there as well, and so on.
  • 03/10/2014 Toady One I'm now finalizing succession and position claims -- the main outstanding thing was to fix up the process by which entities (bandits in particular, but everybody else too) properly repair themselves over time if absolutely everybody interesting is dead. There were some annoyances with it since the last possible candidate populations for a position could be wandering in an army one moment and realized in the play area the next, but it seems like it is working out. I also added an extra periodic patch up on the new year to catch positions that have stayed empty for whatever reason. Yesterday I messed around with site obliteration survivors and some broken pathing.
  • 03/08/2014 Toady One I was robbed properly today. The miscreants approached me south of the well in front of several onlookers. Their leader made small talk as two others surrounded me. Once everybody was in place, the tone changed and they demanded that I yield, which I, being unskilled and alone, did promptly. They had me drop my spear, which was pulled over and collected, and then they had me drop my pack, which they emptied out on to the ground. Not finding anything valuable, they left me to clean up, wandering back to the well. I decided not to take things in stride and snatched up the dagger that used to be in my pack. Attacking, I was killed immediately. Most of the civilians screamed out in horror, as did two of the bandits. As they recovered, people started gossipping about my death.

    Incidentally, failure to comply with orders results in a fist fight or a beating, depending on if you're defiantly not yielding or if you are yielded and just not following commands. If you start to comply, it continues on with the steps of the robbery. There are doubtless many ways to make them slip up. I've only handled a few of the obvious ones so far, and I'll probably just leave it at that for this time.

    Yesterday I messed around with camp alarms and made armies suffer more if their leaders are lost (by whatever means). Plenty of loading up camp sites and pressing the dismemberment button to test it out.
  • 03/06/2014 Toady One Apparently rodents of some kind nested in and then ate the insides of my brother's car and it started billowing fumes as we were driving down the road yesterday, which was interesting. The rodent theory was given to us by the tow truck guy, anyway. There are competing theories. In any case, that has been sorted out. A troublesome crash bug that has been around since the first invasions has also been squished. I was mostly tinkering around with camp and guard issues -- I made them camp under more circumstances, in particular, since camps were sort of hard to find (this increased the frequency of the crash bug up to the fixable levels, since it had to do with the deployment of camp guards). Camp infiltrations and robberies will continue to be the themes for a bit, until they are done. It seems we've looped all the way around to where we began back in June of 2012, except this time there aren't any development chain reactions waiting to go off to interrupt the work.
  • 03/04/2014 Toady One Insurrections seem to be done. I spent time skulking around a mead hall, beheading the hated occupation soldiers that walked out the door and around the corner, and then I shared the good news with the locals. I didn't try to organize anything myself but instead just camped out in a nearby desert for a few days staring at my debugging tools. The rumors were widespread after a day, and a day after that an insurrection began. The revolt failed miserably and the civilians regained their respect of the occupiers' strength. The rebellion was actually badly outnumbered -- perhaps my character should feel some guilt at choosing such a poor place to instigate something, but that feeling isn't in the game, and the player feels less than other people anyway.

    Most of yesterday I spent trying to be robbed by bandits, but they kept looking away from me and forgetting I was there cowering (yielding after they demanded it). Hopefully that'll be sorted out soon as well.
  • 03/02/2014 Toady One I finished almost all of the loose ends from insurrections. I just need to test out spontaneous insurrections that come up after you cause enough trouble but don't seal the deal yourself.
  • 03/01/2014 Toady One The March 2014 report is up. Lots of forum woes today, but it seems to be running more smoothly now that I've tinkered with some things. Hopefully others are having a similar experience.
  • 02/27/2014 Toady One Here's a Future of the Fortress reply.
  • 02/24/2014 Toady One People can lie about their opinion of an entity and their initial reactions are moderated based on how afraid they are of the rulers, if it fits their personality. The particular concern was that civilians were being too negative with the guards and getting into trouble too often. They can lie to you if you are associated with a hated government and you ask them what they think of the ruler, or if you are a stranger and they don't trust you (trust can be built by reputation vs. their "trusting" personality facet). I wandered around testing their responses as a village warrior, asking how they much appreciate the ruler like a jerk more or less. Everybody was very friendly since I didn't run into any of the statistical outliers. Longest function of the day is moderate_private_opinion_of_entity_through_cultural_identity(), which filters an opinion through cultural rumors/reputation and personality to change an overt hate reaction into fear, for example, and then the public opinion function continues to morph that based on the audience, so they can swap from hate to fear to "all for it" before you hear them speak. I haven't incorporated the old dwarf-mode lying/etc. skills, though I imagine that'll come into play at some point when there's more time to play around with it. Also worked on insurrection agreements and some of the missing stuff I mentioned from last time.
  • 02/22/2014 Toady One Army occupations now monitor their status and can be compelled by attrition to withdraw from a site (without having to take the keep/mead hall by force and create a leadership structure of your own, which you could do already). I need to finish some options, summaries and historical information, but the basic mechanic is in the game. It has been bumpy, since there were crashes to work through, and the first time the enemy army fled, it took everybody in the town with it, leaving a ruin, but it seems to function at this point. You can use the insurrection mechanic to help, but anything goes -- you don't have to utilize local citizens as long as the occupiers detect sufficient losses.
  • 02/19/2014 Toady One Today's success was to have a crying mother spit on me and call me a murderer, so that's where we're at. Of course, people familiar with modding or magma crabs might guess that the first time she spit at me, the glob came out frozen and my murderous character, being handy with a sword, batted the saliva ice cube out of the park. After I fixed that, and some other stuff, it splattered on my toga. There are tears and sweat now as well, coming out of the right tissues at the right times. As with blood, it remembers who provided them up to a point, which should be fun for brewing witches' potions and so on in some distant future. Fixed some other crashes and mess as well. Hopefully we can move on to cheerier territory.
  • 02/17/2014 Toady One The experiments have continued as I've improved moods and reputations in general. People now process seeing bodies not just as entity-level rumors, or evidence of crimes, but versus their own personal understanding of the person, so they can have their emotional breakdowns and so on. I led one party member into a room where rested a dead relative, and they fell to the ground crying... which is depressing. I'm not able to spend time updating how that body parts store information, so body discovery operates with the same mechanics as usual -- they recognize body parts, no matter how small, as evidence of death, and only after death. So you could throw a head into a room to freak people out, which is cool, but you can also throw a single tooth, and it would work too, if the person is dead. And if you drop a tooth from a bar fight in a different room with some relatives, nobody will care, but if you later go and kill the former owner of the tooth, then you'll hear people cry out in the distance as long as they are still on the map, since they'll suddenly recognize the tooth as belonging to somebody deceased. That's okay, as far as we need it to work for now.
  • 02/15/2014 Toady One So I did the conflict summaries, and then I continued working a bit with the emotional reactions of people that receive the summarized information (which is roughly the same as the emotions they get when they witness the events themselves). There have been a series of macabre experiments that'll be continuing into tomorrow, as I break various bad news items to people, sometimes having been the cause of them... I think if somebody has a relative killed in front of them, they can have six emotions that hit them simultaneously (horror/violent-death-witnessed, terror/in-combat, fear/death-injuries-witnessed, shock/unexpected-death-of-loved-one, grief/death-of-loved-one and rage/killer-of-loved-one-witnessed-during-act, as the game understands them, maybe more coming), which are then filtered through the personality/atts to see how they are amplified/suppressed/dealt with, and whether the person can react rationally or is impelled along for a bit. There'll be a running series of emotional outbursts verbalized so you can see it in action, hopefully moderated so that it isn't too overwhelming at the worst of times. Getting the conflict summaries connected to entity/culture/personal reputations is the big bridge to gap in terms of getting insurrections finished, and I'm still wrapping my head around it, since there's a ton of information for the game to process and it'll need to take a lot of non-harmful shortcuts to keep the processor safe.
  • 02/13/2014 Toady One The goal today was to finish how you relay information about conflicts to people, working toward finally getting insurrections finalized, but the overall bulk of the conversation choice system slowed that down -- the conversation options were getting more and more chunky, sometimes multi-line, sometimes up in the hundreds when you are asking after particular people or places, and it's only going to get worse, so I worked with that a bit so that you can search the options more easily. We even have some quaint keyword typing now if you want to search that way.
  • 02/12/2014 Toady One It was one of those drear days where I spent four hours on one annoying intermittent crash bug that didn't have a clear cause but which happened just enough that it could be worked on. I fixed it, which was nice, since that doesn't always happen. I also handled multiple problems with their jump-into-conflict decision making. Hopefully we'll get some forward-feeling progress tomorrow.
  • 02/11/2014 Toady One Finally got around to people getting fed up and cancelling agreements. They give you a few warnings so you know what their issues are, but they can eventually leave your group, for example, if you ask somebody to guide you to a location and then sleep for a few days. Something went terribly wrong during testing... I was checking out local agreement cancellations, so I was walking through a jungle in tile view, along with a monster-slaying crossbowman from a nearby town who knew where a cave was. We happened upon some animals that ran away, and I found myself shot five times bleeding to death. I think my guide decided to jump into the conflict on their side, and it was a "no quarter" fight since animals take wilderness encounters seriously. I'm not quite sure why the guide did that. I was a warrior with a nearby village, so it could be that he took a neutral view of the animals and had a bone to pick with the village, and so chose them over me when they ran for their lives. That's fixable, but I'm not sure if it was the issue. I'll have to put in some more diagnostics, I guess, he he he.
  • 02/10/2014 Toady One I've been working with people deciding to jump into fights they aren't involved in today, using all their opinions and reputations and personality facets and so on that are now knocking around in their heads -- even if it's just to run to a safer place. I walked around for a bit to get a few village warriors in the same room as a simple case. To get things started, I stabbed one of them with my spear... and the second test subject didn't jump in since he wasn't actually attached to the village but was a traveling adventurer who didn't care at all. I forgot to check. Then one of the guard's master's kids stabbed me in the back with a knife, so I guess it sort of worked all around.
  • 02/08/2014 Toady One Scamps is five today! I saved about fifteen of the plastic rings from around the water jugs to give him all at once, and he's going appropriately nuts.

    I wasn't happy with the amount of non-violent foot traffic throughout the world, so the adventurer-types from world gen run around between towns now on fake tavern runs and are able to talk about why they are traveling. My first attempt at testing it out didn't go so well, since my character started just as dozens of goblins were marching in. I made it five moves before I got clubbed over the head and the goblin ran off bragging about having killed me as the rampage continued. That shouldn't be too common, but I guess it can happen.
  • 02/07/2014 Toady One I chased around scrambled rumor/incident id numbers for a while, and finished up some stuff with the new entity's squad formation during site claims.
  • 02/05/2014 Toady One Updating executions/beatings vs. new combat code, sparring too... some more with injury morale. Fixed the sleep teleporting I mentioned on the 31st, made ambition matter more for decision-making for civs to make some more stuff happen... messed around with values in the raw files. Another healthy chunk.
  • 02/04/2014 Toady One Moving along through bits and pieces -- fixed a problem with the code that groups armies together when people walk off the map, homogenized some data between local and more abstracted site takeovers/reclaims, worked some with armies coming in from the edges and where they are placed, and fixed some more of that start-on-the-roof stuff. The list of feature items that is left is about half as long as it was ten days ago. There's the serious bug list after that, and then people can mess around with the rough cut (veterans of releases should recall and share with others that there is no polish phase... that is some decades away).
  • 02/03/2014 Toady One Debugged site foundation and reclaims for a bit (couple of crashes handled), and added some generalized death information for rampages that happen way off the map that then gets realized later... fixed a bug with named building destruction. Did some more rumor conversations...
  • 02/02/2014 Toady One Did some final work on ambush positioning and random things like travel restrictions and timers vs. harassment activities. I guess the high point was when the line of sight and ambush placement code got scrambled and all of the bandits after the first got placed in the air on a line between the player and the hillside where the bandit commander was standing. Lots of subsequent thudding and bruises.
  • 02/01/2014 Toady One The February 2014 report is up. I did another pass on the rumor data format and wrote up a bunch of text. Also stopped companions from spreading rumors when they leave the map with you. Let's see how it goes this month!
  • 01/31/2014 Toady One Here's a Future of the Fortress reply. I finalized most of underground travel yesterday. I still need to handle sleeping, which is probably rife with teleporting.
  • 01/29/2014 Toady One Yesterday was crayon day, but there was still time to align some of the old bandit code with the new village stuff, mess with the sound display, clarify the text for values, set up an army controller for refugees that were placed right after world generation and so on. Today I started merging all of the old dwarf mode acquaintance stuff with the new personal reputation system, so that they can grow together with any future alterations.
  • 01/27/2014 Toady One Today I went through and updated lair code to make it work with the new stuff, and I made sure that night creature captives could be rescued and that townspeople talk about that properly. It was pretty rare to have that kind of captive situation come out of world gen, and since we don't have night creatures abducting people in play yet, I extended the period of conversion some time back -- now the rescues and placement of lair prisoners all seem to work.
  • 01/26/2014 Toady One Messed around with how it cleans up stale conflict activities and worked more with wrestling vs. the lethality state of combat. Spent some time watching hunters and fixing issues with them (in particular, when a hunter got multiple conflicts over time, it rarely had the animal end up on the hunter's side as well as not on the hunter's side... which was a sort of civil war bug that brain-locked everybody). Merged the in-play morale calculations with the world gen combat info so that they can assist each other and be encouraged to continue to simultaneously make more sense over time.
  • 01/25/2014 Toady One I continued on to clean up various dwarf mode issues today. Updated how animals think of their encounters (there will be animal-animal interactions now in dwarf mode, however that'll work out), updated meandering, updated sleeping/resting, updated some of the dig/channel/construct ai (just to get it back where it was, such as that is), fixed up vehicle collisions, and a projectile issue. I also updated the quarry leaf jobs to support growths -- a side effect of this was that the "material reaction product" stuff you might be familiar with from modding now also has a similar tag to send over an item type with the material, so a single reaction can produce different item types depending on the incoming reagent's material. I'm not sure how useful that is overall, but it could cut down on some clutter.
  • 01/24/2014 Toady One The Power of Play talk went over well enough -- we should have a link once they post it. I guess I'll stay on a day schedule until I drift. Today I cleaned up some dwarf mode problems with their generally broken minds. A soldier failed to move when confronted with a kill-ordered adder through a series of bug fixes, and when I finally got some movement, he ran away and climbed up a tree. He has "great difficulty mastering his fear when confronted with danger", so I guess that wasn't a bug, although he didn't seem to be afraid of heights at all. His friends on the squad managed to take care of the snake.
  • 01/18/2014 Toady One I mentioned in the last FotF reply that non-player climbing and jumping were still open questions and that I'd have to try them out before I knew how much we'd have this time around. That was today's project, and it looks we'll be having them both. This includes dwarf mode, so you might have to rethink certain defensive decisions you've been making. I haven't done anything with the strategic thinking of critters, but if they get within about 20 tiles of a target, they can formulate paths that include climbs and horizontal jumps through one air tile to a walkable tile, and they'll also use these forms of movement in limited non-combat situations. Longer jumps aren't yet possible for them, since it is harder to code running starts into the pathing routine, and they don't understand how to jump and then hang onto surface. It's a weakness you can exploit, but they still hop around and cause trouble enough to delight and entertain.
  • 01/17/2014 Toady One I have a late morning thing next week and in the switch-around off graveyard developed jet lag braindeath, but today was better. Even though it is winter, I've seen so much sun lately it has been like visiting an alien world. In any case, I put a bow on demon sites, which ended up with me finally using the last random raw frameworks that have been sitting around forever (entities, items). They have turned into a testbed for the gray goo of full randomization, but hopefully we won't be hearing any more from them before the release as stuff continues to become done.
  • 01/14/2014 Toady One Today I allowed certain sites to move away from their strict preset building types a bit, with goblins currently being able to alter sites that they are occupying. Trenches and small towers can now pop up in human villages, elf sites and dwarf hill sites that have been taken after some time passes. This can happen after a site is taken in play or from a site taken during world generation. They don't build up the sites while their maps are loaded, so it'll happen between games or when you are a few world map tiles away, until I figure that part out (not for this release). Overall, it is baby steps toward what we'll get to over time, and ideally we'd get around to having sites grown up in stages over time and remove the concept of sites having static overall types altogether, but for now I'm still toying around with ways of storing these changes that are compatible with building destruction and other site changes. I wanted to make sure to at least try something with construction so that site destruction didn't take over the framework.
  • 01/13/2014 Toady One Over another large bump today, as both non-player reclaims and new site foundations are in the game in the basic form I wanted to get finished. They don't create new markets, you can't yet create sites in adventure mode, and nobody builds roads, but they can send out groups to form new villages. So you can start a map now at, say, year 2 or year 10 and get some solid growth over time, though not in all the ways a world gen map can evolve. The game respects the site caps from world gen (which are often set up for speed/mem reasons), so you shouldn't have to worry about it getting out of control. This means that a world with a long history still won't place new sites either in the later years of world gen or after play begins, but they'll do reclaims. Non-player reclaims don't challenge any sites with monsters at this point, since I haven't done that kind of fighting, and until monsters can act freely and capture additional sites in play, I want to preserve those sites for player reclaims.
  • 01/09/2014 Toady One I went ahead and made the reclaims more interesting by allowing forgotten beasts to be active in world generation and I also let the other large beasts sometimes have very successful attacks ending in a lasting change of residency. A 100 year medium world I tried out had 32 healthy forts occupied by dwarves that were not reclaimable, and 7 troubled forts that could be reclaimed on start.

    The first reclaimable fortress in this world is Amostiklist, and it is the home of a dragon, Ibmat Gemglowing the Bejeweled Furnaces. In just the second year, he killed the king and various other notable dwarves, and this wasn't even their first trouble. Before the first winter had passed, a demon named Mete Deepterror and a couple dozen goblins and trolls killed almost everybody, but the king managed to hold out with the help of the baron he placed over the fortress, who single-handledly killed more than half of the attackers. The demon killed the mayor but fled in the end. Then everybody met the dragon not many months after. Over the last 100 years, the dragon has defeated seven heroes and is looking forward to seven dwarves or another naive adventurer.

    The second fort to fall into ruin was Oshuratis of the Reputed Crypt. That dwarven civilization was also involved in squabbles with a demon, but those wouldn't come to a terrible end for 30 years. In the year 14, death came from below in the form of a squirming eight-legged sauropod Ukoz Reignhobbles the Flag of Soils (a name which doesn't bode well for kingdoms), and nobody escaped. The queen, Tekkud, the local nobility and their families, and the general all fell. Queen Tekkud was followed by King Cog, who will come up in the final fort.

    Ten years passed, and we come to Sherikrakust and the great scaly leech Dosheb Slunkmined. The local baron and mayor were slain, and the beast moved in. Fortunately, many of the family members were absent with responsiblities in other forts and hill sites. The mayor's father was a tragic character, obsessed with his own mortality, but unable to secure the secrets of life and death before becoming a skink monster, attacking communities until he died of old age in 93. The secrets became widely available just a few years after he contracted the curse, and they play a large role on the periphery in some of the other stories. In any case, Dosheb fought off an elf hero and is waiting for further challenges.

    Just a year later, in the summer of 25, another dragon arrived, this time in Azuzthob. As usual, the mayor was killed. Her husband, also a mayor but later a necromancer, wrote a book about his marriage 45 years later while playing with dead bodies in his tower. He revisited the topic in an essay the next decade called My Thoughts On The Book.

    25 was a bad year. In the winter, Toseddom was destroyed by an enormous shelled gecko from the depths, Jozi Oozeghost the Fated Boil. The king of the Urns of Wire was slain, but the queen consort was also a mayor and not living at the fortress. She later learned necromancy from a human possessed of that knowledge. Her teacher was an apprentice of the very first necromancer, Tura. Using her knowledge and an army of corpses, the dwarf went on to raise one of the seven towers of necromancy in the west, the only ones in the world, abandoning all mundane responsibilities.

    Torasstinthad is the sixth ruin, and Dungsfur the Tufted Certainty was a hydra. Maybe it was routine by now, but many dwarves died and the hydra came to stay in 38. The baroness's father was not present, as he was a mayor elsewhere, but he met his own beast in 41 when a dragon destroyed Pickconfines. Unlike other fortresses and their beasts, that dragon wasn't the kind to stick around. Pickconfines was reclaimed in 45 and still stands.

    The last fortress was different, since nobody lives there now, friend or foe. In the year 43, the demon war of the Reputed Crypts was raging, and many sites were emptied to contest the evil army that was attacking Doorriddles. King Cog and almost everybody else died in the battle there, and the demon force destroyed dwarven settlements in the coming months from the hills to the mountains. The last fortress to fall was the last fortress of the Reputed Crypts, Machinenations. That dwarven civilization was left with one distant hill settlement, far to the east of all the action, called Minelocks. The new queen was unrelated to King Cog, as the line was broken in the war. Queen Olin survived with a few dozen dwarves in the hillocks, appointing a baron and general (her husband) among them, but living in the civic mound like hill nobility. They were far away from the old goblins, but they were surrounded by the new goblins, and over the next few years, the queen's growing family was devastated by abductions in 48, 55, again in 55, 56 and 61, and by a child killed in 49 by a cyclops, which also maimed her husband. By 56, in the middle of it all, she became obssessed with her own mortality, like so many dwarves before her. The difference was that the necromantic explosion was less than a decade away.

    Tura was the ruler of the human hamlet Growthbrain. As she became older, something changed, and she sought to extend her life by any means. Every other civilization in the world was without a death deity, but Tura's people could pray to the rotten goddess. She did, and in the year 65 she received a slab engraved with the secrets of life and death. Before she even managed to raise her first corpse, seekers of knowledge flocked to Growthbrain and settled there, taking up odd jobs and receiving training. By the winter, Tura was able to get away to look for bodies of her own, but some of her apprentices stayed behind long enough to greet more seekers as they arrived. The process lasted for six years, all the way until the winter of 71. At least 30 necromancers learned the dark arts, and no fewer than seven towers sprang up in the wilderness surrounding Growthbrain. Tura herself only managed to find enough good bodies to raise a score of zombies, not enough to construct a tower, and to this day she has a camp out on the plains, clutching the death slab by the fire. Queen Olin arrived with the second wave of seekers and also has a camp and ten zombies out in the wilds near the hamlet. All of her abducted children were murdered in their adult years while working for their demon master, leaving no heirs.

    In the year 100, the fortress ruins lie waiting and the necromancers of the seven towers should be a menace to any dwarven expedition that tries to settle nearby. Minelocks is home to the two surviving dwarves of the Reputed Crypt, the self-styled baron Sigun, and the former Queen Olin's husband Medtob, the general. Neither of them wanted to be the ruler -- the Reputed Crypts hasn't had a king or queen for 30 years after Olin left. I'm not really sure why, which is one of many reasons why there's still work to be done, but the new reclaims should be more entertaining now, anyway!
  • 01/08/2014 Toady One Today seemed like a good day to finish reclaiming forts that happened to become ruined in world generation, so that's working in the game now. The fortress designs probably blow out all the metrics experienced players have figured out in terms of efficient placement of workshops and living areas and all that, but I guess you can consider yourself a bringer of a golden age to their stagnant civilization as you remodel. I'm also not trying to do anything fancy with mechanisms or anything like that for this time. I'll be happy if they don't flood the lower levels with their poor decision making. All of the world gen fortresses have access to the open cavern layers, and most of them also have built up underground tunnels off to the deeper sites, though those sites won't interact with your fort in play until around the time we get to fortress hill dwarf interactions.
  • 01/06/2014 Toady One Quite a while ago, we put in a few short random snippets to enable some other things we wanted, so in the little world gen it cooked up tonight, Dumur the dwarven goddess of torture decided to release a skinless lizard demon upon the world "that it might bathe in misery forever." The fiend raised a goblin army and attacked the dwarven forces in the Swamp of Fountains, killing their general and the mayor and leaving their bodies in the muck a few months after recorded history began.

    This appears not to have been lost on the necromancer Thomod. Twenty years later, she raised both of their bodies using the powers given to her by the bumble bee queen goddess of murder, Ume. Using their strength and that of her other zombies, Thomod erected a tower where she went on to train four apprentices and author essays about dying, such as More Doom and the Nuanced Death. Before she became obsessed with her own mortality, Thomod had been a great hunter of the giant dingo and the leader of a small village. The bumble bee called, however, and she abandoned her home and family.

    Nearby, another family was also experiencing tragedy. Or dozens of families, since the vampire Olum had killed quite a few people over the years before anybody got suspicious. Now the vampire's own family was sundered -- she had to escape the watchful eyes of the neighbors and take up a simple life in one of the villages surrounding her former home of Masterweavers. Not long after, her husband Pictham became the lord of the town, and disputes over livestock and other matters flared up. It came to blows, and in the ensuing violence Pictham struck down his wife during an attack on the village. The recent blood-drinking murder spree in her village stopped, but people were probably too wrapped up in killing each other over cows to notice.

    That was all world gen, so then I started playing.

    The necromancer's great-grand-daughter Nikom was a fishery worker in a small hamlet, and Sothro was the vampire's great-grand-son, laboring as a farmer outside Masterweavers until the day they decided to get married. After a short journey, Sothro stepped into Nikom's cottage and said "This is my new home," making the move was official.

    Since I've been doing camera tests, I thought I might as well fix up and check out the marriage travel code. The pairings are just picked locally or according to trade links, but I'd like to think they bonded over their sinister ancestors (or the strange childhood coincidence of having younger siblings gobbled up by different werebuffalo in the same year).
  • 01/05/2014 Toady One Well, I've observed a working change of entity rulership under the conditions I set for myself (moving the camera around, etc.), but it wasn't exactly clean. There were a couple dozen people charging one of the mead halls, and a goblin patrol (of one goblin) that had been tracking them tangled with the human invaders right after I put the camera on them. It didn't end well for the goblin, but at the same time, they also decided to kill a pig in a nearby plot... maybe because it was loosely affiliated with the people they were attacking in war time and it wasn't able to engage in non-lethal fighting, or perhaps because they were amped up over the goblin. I'm not sure, since I didn't have the conflict escalations logged. I think the way conflicts grow more easily when an actual army in a war recognized by the game is involved somehow. Should be a straightforward fix once I look at it. In any case, either the goblin or the pig seemed to have sparked a bit of a blood bath, and any house that the attackers could see into (because of somebody standing in an opened doorway) was cleared of inhabitants.

    They eventually made their way to the mead hall itself, their bold commander following well behind, and killed everybody they found there with minimal losses. Apparently their commander hadn't trained with any weapons in world gen, because he was listed as a "recruit". Since he was just the follower of another lord, he didn't have a position of his own with a name (he had a squad membership, which is named, but doesn't override the weapon-based name). The commander didn't develop much skill getting the last blows in on a few unconscious people, so he was still a recruit when he arrived at the central chamber and declared his claim over the site, promptly becoming a purple "lord". I'm sure it'll be an enduring and noble line.

    Incidentally, the whole time it was telling me that stray peasants were rooting around in the dirt. I wasn't sure for a while if I had managed to domesticate a segment of the population somehow, but then I remembered that the game chooses a perspective race for the announcements, and without any adventurer in my debug mode, it had set the perspective to the first unit available, which was a turkey. So I guess that was a rare glimpse into how all of the unowned turkeys see each other. In any case, there are definitely lots of rough spots with the site takeovers, but the main part worked, which was good.
  • 01/03/2014 Toady One I've still been sorting through the details of how the abstraction level switches are going to work for AI site claims (which I was starting before the holidays intervened), but I think I have a plan through it all now. We finished about half of the notes in December, so theoretically we can complete them this time around, though nuggets like this current barrier are the sort of things that mess up my estimates consistently. Tonight I'll be watching people yell at each other and then rudely interrupt them by moving the camera, and then go back again, and so on, until they end their situation properly regardless of how I mess with the zooming or camera location.
  • 01/02/2014 Toady One I expanded on conversations with leaders of your squad as they relate to the various conflicts going on, so that you can ask for specific orders if you want them, although any gains you make of your own initiative will count territory and reputation-wise. It'll still be a good idea to ask around a bit first even if you don't want orders, in case there are reasons not to bother a specific neighbor (tightly-aligned religion, family relationships, numeric strength, etc.). It was more of a note ordering day, though, and a day to solve the problem of love-bot forum spam, which came on all of a sudden.
  • 01/01/2014 Toady One The January 2014 report is up, with all the information for the year.

2013 Log
2012 Log
2011 Log
2010 Log
2009 Log
2008 Log
2007 Log
2006 Log
2005 Log
2004 Log

Dwarf Fortress started October 2002, this log was started around the same time as the "back to the dwarf game" thread.