After The Collapse 0.8.2: Digging Deeper

Hi there,

Long time not seen! My apologies for the lack of news on the official website and, more generally, the lack of store-page posts outside of game releases. The first two months of 2021 have sadly been cannibalized by family and personal reasons which I’m not going bother you with. I’m not looking for an excuse, just know it was unavoidable and let’s leave it at that. When forced to make a choice between the two, I always favor writing the game itself over community interactions . As such, those interactions were more limited than I would want them to, but that’s life. It might continue for a while. The best way to catch me is through the discord channel if need be. Don’t worry, I do still get, read, and fix anything related to crash/bug reports as long as they go through the established methods.

With that out of the way, let’s talk about the game proper, that’s why we’re all here after all.

The major 0.8.2 update has just been released. Contrary to 0.8.1 which was mostly putting the finishing touches on 0.8.0, it’s a big chunky one hinting at what I envision the game to be when we reach 1.0. Without further delay, let’s dive in the new features.

Dig Deeper

This is the big new feature in this update. Definitely setting us aside from Rimworld & cie. At least when coupled with other features I will explain further down.

As you might have noticed, ATC does include an underground layer. With this update, ATC is finally able to handle any amount of underground layers, within technical limitations, of course. Each layer  basically runs on a specific thread. Ideally, you still want to keep at least one core free for pathfinding, the sound manager, etc. But, beside that, it means that ideal performances vs layer count will very much be tied to what kind of CPU you’re using. An entry level Ryzen with 6 cores should work ok with 4 layers total (including the surface). a 8 core CPU will happily deal with 6-7 layers. And well, if you’re a lucky bastard with a ThreadRipper, have fun playing one of the very few games specifically optimized for high core count CPU :). It goes without saying that the time it takes to generate a map or save/load a game will be impacted by the number layers.

I do want to stress out something because it might not be obvious to most of you:  moving from a dual layer system to “anything goes” was way more complicated than just tweaking a few numbers left and right. The way I was generating maps, saving and handling map data has been completely overhauled. I’m probably not even done with such modifications, but it seems to work well enough for now. It was a lot of work and I do fully expect that new and fun bugs will appear as a result. We’ll have a hell of a day getting rid of them, I’m sure.

Of course, just adding more of the same would be pretty pointless. If all underground layers looked the same or had no real content beside more caverns, it would have no gameplay impact and it would all be very freaking boring. This leads to the next 2 major new features!

Procedural Map Generation

If you’ve been there from the beginning, you might have noticed that the procedural map generation hasn’t evolved much in the last year, if at all. I mean, it’s serviceable enough, but maps do get very similar to each other after only a couple games. While the code itself isn’t that bad, the way it was structured was very unwieldy and difficult to work with. And with the addition of more layers, it wasn’t an option anymore.

In practice, with only structural changes and no new “algorithm”, I have a lot more options to generate underground layers. You’ll find underground forests, rivers and lakes. Even completely alien mushroom biomes. I can spawn buildings underground (which, outside of the vault, wasn’t a thing). Mobs can spawn according to a biome: the arid biome will have a lot more scorpions than other mob, sewers have more zombies, and so on and so forth. Likewise, building infestations (mob ambushes in buildings) can be defined at the building level. If you remember the occasional house with the spider nest, well, now the random mobs in said building will always be spiders variants.

Additionally, buildings can have multiple layers: houses can have basements, and, while it’s not there yet, I can easily generate a whole “dungeon” with 3 or more layers. Note that the above screenshot, showcasing said basements, is just from a test map, basements will not all be the same and might contain mobs in the released version. There are still a few caveats I will fix soon enough. For instance, the surface map generator within the city itself (the outside is in a decent state tbh) is still very repetitive. It’s definitely something I will work on during this 0.8x cycle. But, right now, the main change, on the surface map proper, is that some buildings can spawn basements (with goodies, and baddies).

Goal Driven Scenarios

Coupled with all the above, scenario files got a lot more options to play with. As such, the 0.8.2 update will introduce 2 specific scenarios highlighting the new features. It’s hard to talk about it without spoiling the features, but I guess it’s fine to share the 2 first thing you’ll see when actually launching one of said scenarios:

This is the new intro text coming with some scenarios. It quickly explains what’s special or unique about them. In this case, you have to establish a base, tech up, dig down, find a path toward a military bunker while fighting off a bunch of giant spiders. It comes with a reward (a high-end tech unlocking new stuff) unique to this specific scenario. Note that, as specified, one of the layer cannot be dug into, you’ll have to find, clear and use a specific building to access that layer. It’s a new feature of the map generator, making so that some layers cannot be pierced into and have to be accessed by existing means instead. As you can guess, it’s made so you can’t just place 3 stairs on top of each other to access the loot, skipping all the mobs in the process.

And here’s a mostly spoiler-free (and slightly outdated) screenshot of the bottom layer. It’s highlighting the new map generation pretty well. A whole biome with giant mushrooms, underground rivers, and spider themed mobs and clutter. Sure, it’s still a cavern map, but it does still look very different from the good old cavern you’re used to.

The second scenario will spawn you one layer below ground. The surface is a monster infested hell-hole where your survivors will get a massive debuff causing them to get thirsty, sick and get constant health damage. Basically, you can only access the surface for looting purpose, but can’t live on it, at all. That being said, 2 layers below you, there’s a scientific bunker. It might contain some gizmo which might help you to overcome this problem. Well… Granted you don’t get killed by the mobs. Yes, it is meant to be very difficult compared to what the game normally throws at you.

Those two scenarios in particular are highlighting features I’m planning for the 1.0 “story mode”. This will be the subject of a future devlog.

Biomes and Layouts

With the new layer system and the many new settings, the “custom game” mode is getting more options to play with, some, not all. Writing a menu able to tweak all procgen parameters for any amount of underground layers would take me ages, and at some point, it’s just easier to rely on the city map, until I get some free time to update a menu barely anyone uses. In the same spirit, the city map allows you to pick the number of underground layers you want, warns about deadly surface biomes and can highlight “unique” underground biomes.

There’s also 2 new technologies and a bunch of items associated with them. One technology is unique to the “Scorched Earth” scenario, the other one can both be found in the “Arachnophobia” scenario and in the unique biomes mentioned above.

The game includes the new following biomes:

  • Swamps (surface): grassy with patches of water everywhere. Nice location all in all.
  • Scorched (2 variants, surface): Dead, toxic, scorching heat and full of monsters
  • Several new cavern variants with or without lakes and rivers
  • A slightly more open sewer layout
  • Two unique underground mushroom biomes: one infested by spiders, the other overrun by shamblers

It also includes a variant to the “Nature & Buildings” layout, called “Forest village”. It’s not fleshed out yet, so in practice it’s a bunch of randomly placed buildings in an open area, and if the biome works with forests, then it should generally feature a lot of trees. There are a couple modifications made to existing buildings to account for their optional basement. And of course, a lot of new clutter, walls and tile types to give some identity to those new structures and biomes.

Misc Changes and Bugfixes

As you can see, this update is mostly about making the maps and scenarios more attractive, as such, there are very few changes to the core gameplay. Still, it should be noted that the randomized loot table (those boxes in the underground) has been tweaked. It’s no longer possible to find high-end gear in those. It was breaking the early game balance/economy to get free spec-ops armors due to lucky dice rolls. On the plus side, you’ll find some on the surface, and there’s a bit more. Some high-end (intact) weapons have been marked as rare, like the rocket launcher and most assault rifles, to prevent them from appearing too often, especially early game. You’ll also be happy to know that if you start underground, your bunker’s door will automatically be locked from the start, so you don’t have to look for it for 5 minutes before unpausing the game.

And, as usual, there’s a few bug fixes, minor UI tweaks, and general improvements. Refer to the full changelog for details.

Savegame & Mod Compatibility

This version is definitely not compatible with previous save-games. I tried to put most of my save-game breaking changes in it so it doesn’t happen again too soon. Yet, I can’t make any promise in that regard due to the many large features/changes planned in the 0.8x branch. In any case, if you want to finish your game, you can roll back to the previous version as usual (right click on ATC in steam, properties / beta tab).

As far as I am aware, all available mods should be compatible with this update unless they feature extra scenarios or tweak map generation in specific ways. I don’t think such mods exist at the moment.

Closing Words

While restructuring the code and writing the ability to dig further down was a bit of pain, I am very glad of the results. It will very probably cause some uncommon bugs, especially in very busy bases. While I don’t put a hard cap on the number of settlers and layers you can run at the same time, you can easily understand why the more you’re trying to push the game to its limits, the more likely are things to go wrong. It’s a good thing as it will help catch very rare/situational bugs which would have otherwise stayed (mostly) dormant. I didn’t get the time to play with all the new options, so there’s still a lot I could add regarding special buildings or tweaking settings by just adding/editing data files.

Anyway, now that I can add procedural multi-layered bunkers and goal oriented maps, it’ll soon be time to venture outside of our base (and comfort zone) to tackle the second “big goal” of the 0.8 branch. Oh, and also make the basic “general city” surface map generation less dull.

I hope you’ll enjoy this update and the new scenarios 🙂

Cheers!

Full Changelog

  • AI: Settlers can recognize “technologies” as special items and will mark that tech as discovered when looting one (triggering the ‘tech found’ panel)
  • Balance: Player bunker’s external door is locked by default to prevent edge cases where a settler would go outside on accident
  • Balance: The random loot drops can no longer spawn (very) rare late game items (unless specified otherwise by a scenario)
  • Balance: Some of the high tier weapons (sniper rifle, rocket launcher..) have been marked as Rare
  • Change: The generic ‘stairs’ construction has been replaced by ‘stairs up’ and ‘stairs down’
  • Content: Multilayered maps where you can dig several layers below ground
  • Content: The starting location in “The Plague” scenario is now 2 layers below ground
  • Content: Biome specific (both below & above ground) mobs can spawn (instead of picking from a generic list)
  • Content: When starting a new game, you can specific how deep you want to be able to dig
  • Content: Added new “Arachnophobia” scenario, breach an underground military bunker to retrieve a powerful tech
  • Content: Added new “Scorched Earth” scenario, breach a scientific bunker so you can find a way to survive above ground
  • Content: A new rare underground biome: Giant spider nest (a cavern with an mutated biome, full of spiders)
  • Content: A new rare underground biome: Breached research bunker (zombies and toxic goo everywhere!)
  • Content: Recipes and items to exploit the resources from those biomes (this is very much a spoiler, so no details)
  • Content: Added 3 new surface biomes “Scorched earth” surface biome: makes the surface a hellscape where nothing can grow or survive long, beside (some) mobs
  • Content: Added “Forest Village” (basically lots of random buildings and trees, need fleshing out) surface map setting
  • Engine: The engine can support any amount of layers, each running in its own thread / cpu core
  • Engine: Scenarios can set the terrain’s depth and add additional mobs and loot
  • Modding: Scenario files have a LOT more options (mob density, underground forests, tweak mountains, unique mobs, loot tables, all of it entirely undocumented :D)
  • Modding: Initial mob spawn no longer hardcoded: located in terrains’ data files (mapgen/terrains/*) and are allowed to spawn stuff on the surface.
  • Modding: Ambushes (mob in buildings) can be set at the building’s level (mapgen/buildings/*, takes priority) or at the terrain level (mapgen/terrains/*).
  • Modding: Terrain definition files can apply traits (see terrain/scorched.json), it works like a weather traits in practice (goes with the new trait category “Terrain”)
  • Modding: Added “IntroText” field to scenarios, displayed when the game starts (useful if the scenario feature specific goals. see scenarios/arachnophobia.json)
  • Modding: Modded biomes (mapgen/terrain/*) will automatically be integrated in any new game alongside official ones (on the surface & and in caverns).
  • ProcGen: Generally speaking the map generation is more powerful and a lot more option are available both for me and the modders
  • ProcGen: Several new cavern layouts (underground rivers, lakes, alternate walls, underground forests, variants of existing biomes)
  • ProcGen: Alternate, more “open” sewer layout will occasionally pop up
  • ProcGen: More decorative items (bones, bone piles, mushrooms, computers, electronic gizmos, cables, barrels, dirt walls…)
  • ProcGen: Handles any amount of underground layers (in reality it should not go above the number of cores on your CPU, but you do you)
  • ProcGen: More water, building, forest and mountain generation settings, working on all layers
  • ProcGen: Buildings with a vertical component are a thing now (buildings going several stories deep into the earth)
  • ProcGen: The city map generator got tweaked to take all new settings into account
  • ProcGen: Optional craters and “ruined” buildings on the surface
  • ProcGen: Tweaks to many existing buildings to use some of the new options
  • Sound: Ambiant sound layer (wind, rain and such) volume decreased when you’re below ground
  • UI: Replaced the button to toggle map up/down by a more appropriate widget
  • UI: Scenarios with special rules (new ones, last stand, the plague) will display an introduction panel after launching the game
  • UI: Added button to the city map selection: choose how many underground layers you want for your map
  • UI: Slightly tweaked scenario screen menu
  • UI: Added ability to highlight special underground biomes on the city map when selecting spawn location
  • UI: New settings in the custom game’s map generation tabs
  • Fixed: Several pathing and item placement issues related to map layers, unsurprisingly
  • Fixed: FaunaAI staying all riled up forever by a settler who moved back to a different layer ages ago
  • Fixed: Building a stair would immediately mark a settlement as “above ground” (independently of depth, which wasn’t a problem until now).
  • Fixed: More typos (like, but not limited to “benomous” -> “venomous”)
  • Fixed: Potential issue with the amount of mob spawned in the military base
  • Fixed: NPC were not respecting render layering properly (making big things like spider queens awkwardly appear below smaller spiders)
  • Fixed: Buildings standing on top of a water planes (a ground layer is now placed under such buildings)
  • Fixed: In the encyclopedia, some items could be tagged as being part of a location’s loot table even if said item is marked as “NeverLootDrop”
  • Fixed: Missing tooltip in depot menu (clicking on the gauge to open the inventory)
  • Fixed: After generating a city, the selected location wouldn’t get updated until it’s clicked again
  • Fixed: It was possible to move stairs around, which was a Very Bad Thing ™
  • Fixed: Random events pop up in the tutorial (before it ends)