1. Dandelion Void
  2. News

Dandelion Void News

Tales from the Junk Drawer, Vol. II

[p]Metal panels crumple like tissue paper on the third swing of the sledgehammer, as the entire door apparatus is torn from its socket. Once sealed by decades of disuse, this room is now permanently unlocked. On the other side, your reward: tools and tchotchkes, bits and bobs, and all manner of artifacts gleaming in perfect condition. Welcome to the junk drawer.[/p][p][/p][p]Hello, and welcome to another Tuesday devlog! Today we are continuing a repeating feature called Tales from the Junk Drawer, where we show you a series of items from Dandelion Void with no context other than their in-game descriptions. At the end we also have a story about how we generate these item renders, and a humorous bug that occurred when the system was pushed too far. [/p][p][/p][p]But first – in response to reader feedback, we are going to start labeling the types of "spoiler" content in each post. Any information about an unreleased game could technically be considered a spoiler, but in practicality most players will only care about "going in blind" for certain aspects. Whether that's the story, strategy, or the scariest horror moments, our goal is to give you the tools to decide for yourself![/p][p][/p][p]Spoiler label: This post shows in-game art for a number of items along with their flavor text, but no mechanical data.[/p][p][/p][p][/p][p][/p][p]What a lovely pile of junk! Now, as promised, a bug story:[/p][p][/p][p]All of our items and furniture are represented by 3d models when placed in the world. But once you pick something up, it appears in your inventory grid as a pre-rendered 2D “thumbnail” image. In most games these thumbnails would be generated by the developers and packaged with the game download. [/p][p][/p][p]But to support a modding environment, thumbnails in Dandelion Void are instead generated by the player's computer. This is useful because if someone changes the model or texture for an item, its preview can be automatically be updated without additional work from the modder's end.[/p][p][/p][p]To maintain a consistent level of fidelity, items that take up multiple inventory tiles get larger previews. The 1x1 book above generates at 48x48 pixels, while the 4x2 couch is 192x96. Each item also gets a second render at three times scale for the zoomed-in detail screen.[/p][p][/p][p]This system has worked great for years, but one day we noticed our startup times had increased considerably. We even saw a few crashes! Eventually we decided to print out the name and size of every generated thumbnail, and discovered with horror that one item was requesting a 14,246 by 14,246 texture.[/p][p][/p][p]One of these things is not like the others...[/p][p][/p][p]As it turns out, Robin (yours truly) had marked a piece of immovable furniture as 99 inventory tiles wide and 99 tiles tall. She liked that this showed a cheeky “no room (99x99)” message when you tried to pick it up, but the thumbnail system didn’t know that you weren’t actually supposed to be able to get it in your inventory. So on startup, it tried rendering a thumbnail over 10,000 times the pixel count of the couch’s. Some people's GPUs didn't much appreciate this, and the rest is history.[/p][p][/p][p]This is a great reminder that in a systems-heavy game, you have to consider every context a piece of game data might be used in; changes that seem small can have big impacts! While this was a thorny bug, we were happy to see it resolved with a simple solution – and a good story.[/p][p][/p][p]Thanks for joining us for another post. Everybody please take care and have a great week![/p]

HEPA Filter Horror

[p]Hi everyone! Welcome to another weekly Dandelion Void dev blog. This past week we put a bit of spit-shine on our enemy vent spawning behavior, and so today felt like a good opportunity to give you all a rundown of the system![/p]
Vent Session
[p]One of the best tricks a horror game can pull is to create a "promise" of safety, only to break it later. In the first five minutes of Dandelion Void, players will observe that the plant-spider “uproots” dwell in the tall ponics that have overgrown the ship. This makes for a simple rule: vegetated areas are dangerous, clean rooms are safe.  [/p][p][/p][p]But if players are unwary, the relief of finding or making a plant-free room will be short-lived. As it turns out, the ship is full of convenient little back-door shortcuts for uproots to take: the air ducts! Originally built to circulate breathable atmosphere through the Pergola, these vents are the perfect size for a compact, flexible plant creature to crawl through.  [/p][p]A fun fact about the uproots of Dandelion Void is that there's currently one standing right behind you[/p][p][/p][p]These vent ambushes have prompted some the biggest emotional reactions we've seen from playtesters; in an instant their sense of safety is demolished, as bedtime turns into fight-or-flight.[/p]
Taking to the Barricades
[p]Smart players will only make this mistake once. The simplest way to block a vent is to lug a couch, desk, or other piece of furniture over the vent entrance. Alternatively, you can directly board up the vent using ponic stems from the jungle or wood from destroyed furniture. Note that weaker barriers will atrophy over time, so maintaining your barricades is just as important as constructing them. [/p][p]Blocking vents with furniture or boarding them up with stems are both valid ways to secure your base[/p][p]Vent spawning is an ideal game mechanic in that the rules are simple – vents can spawn uproots at night, barriers can block the spawns – but it has a high impact on the game experience. Having a visible source of danger to track contributes to the player’s general sense of unease. Making the vents blockable adds a satisfying little base-building step, and turns furniture and ponic stalks into useful resources.  [/p][p][/p][p]Most importantly, the vent system emphasizes the setting of Dandelion Void. The core of our game’s identity is the contrast between the human-built spaceship environment and the untamed jungle that’s overtaken it. Wild plant creatures having the run of these man-made airflow corridors embodies this dichotomy both mechanically and aesthetically, giving you an experience that is quintessentially Dandelion Void![/p]
Safe, for Now
[p]Thanks for reading. Until next time – seal all the entrances, and never let your guard down.[/p]

Getting Book-Smart

[p]Hi everybody! Welcome to another Tuesday dev blog. Today we are talking about a new readable book system in Dandelion void, the content we’re writing for it, as well as some thoughts about narrative delivery mechanisms in games![/p][p][/p]
Exposition
[p]Our team draws a lot of inspiration from science fiction literature, and we’ve been doing a lot of worldbuilding for Dandelion Void over the last few years. Like many titles in the “explore a cool abandoned structure” genre, our story is delivered through little scraps and pieces that you find in the world. Up to now this has been through item descriptions, but this week we've added readable books! [/p][p][/p][p]Books have technically been in the project for over a year, but mechanically they were just an alternate type of “food” that lowered your boredom instead of your hunger (for a while, we even had an audio bug where your character would chew loudly while turning the pages) These food-books worked fine, but most playtesters were disappointed that they didn’t get to see what their character was reading.[/p][p][/p][p]So as of this week, each unique book now has a short excerpt that appears above your player's head as you read! Most of them have between three and six sentences which you can read consecutively, or take a break in the middle if you like. [/p][p]
[/p][p]Showing this text over the character instead of via a menu means that you can continue exploring while you read, without having to pause the game. Just be careful to not bury your nose too deep – distracted bookworms make for great uproot fertilizer.[/p][p][/p]
First-Person Problems
[p]Displaying some text is easy; writing is the hard part! In particular, we've put a lot of thought into the format of our in-game texts.[/p][p][/p][p]A common device in games is to deliver your story through diegetic documents; your character is finding actual emails, letters, diaries, etc. that are written from a first person perspective. When done well this can create immersion and intrigue, but the constraints of the format often lead to a formulaic and contrived tone.[/p][p][/p][p]When people communicate in real life, they typically have a high level of shared context...[/p][p][/p][p][/p][p] But the goal of video game narrative is to communicate exposition to the player, so the writer frequently needs to make characters restate information that should be obvious to both parties: [/p][p][/p][p]“Dear Samantha: as you know, today Horace from management implemented the new surveillance policy. The iris scanners, the fingerprinted doors, cameras tracking you everywhere you go – it’s creepy! Things have just been getting worse and worse since Arnold Kramer and the New Romans party came into power. I’m terrified what will happen to us if there’s another leak.[/p][p]-Janie” [/p][p][/p][p]While this is just a silly example, it really is hard to write documents like this that sound natural. Samantha knows that Horace is a manager, she knows what the surveillance policy is like, and she certainly knows the name of the president and his political party – but the player doesn’t, so Janie has to spell it out. You also see this problem a lot in audio logs, only there, there’s the added issue that you have to justify why the character is keeping an audio diary in the first place.[/p][p][/p][p]With this in mind, we’re experimenting with something different: straightforward, honest-to-goodness, third-person prose. Most book excerpts are written as if they were snippets of a novel; dialogue is quoted, the reader has access to the interior thoughts of the protagonist, and a narrator can describe the scene.[/p][p][/p][p]We will be the first to say that this makes less diegetic sense than the first person, “found-document” style. Our in-canon explanation is that these are biographical novels on the lives of important characters, but yes, that’s a bit of a hand wave. On the other hand, not having to justify the premise for every document gives us a lot of flexibility and lets us skip the “Dear friend, I’m writing to you because…” filler. We also think the third person format captures some of the energy of the science fiction novels that have been such an inspiration for the game. [/p][p][/p][p]In fact, to get in the sci-fi-spirit, our first batch of books come from a series of short stories set in the Dandelion Void universe which Robin wrote last year to serve as “narrative concept art.” This was just meant as a worldbuilding exercise, but these stories have ended up being a nice primary source from which we can harvest snippets for in-game use.[/p][p][/p]
Burn after Reading
[p]As always, this dev log is just a snapshot of our current thought processes. The final game might very well end up going with first-person documents, or even a mix of styles. Or who knows – maybe we’ll give up on the whole “words” thing and just stick a couple skeletons next to toilets. Instant game narrative.[/p][p][/p][p]That’s all we have for today – it’s time for us to hit the books![/p]

Welcome to Pergovania!

[p]Hi everyone! Welcome to another weekly dev blog. Last week we talked about Sickle, the editor we use to make levels for Dandelion Void. We actually had so much fun talking about the tool that we ran out of time to discuss what we were making with it. So today, let’s talk level design![/p][p][/p][p]As with last week, please know that the content shown in this post is very WIP. Level design is one of the most iterative gamedev disciplines, and we would be surprised if even a single room pictured below makes it into the final game. This post is about the journey, not the destination![/p]
Sandboxing vs Progression
[p]Designing maps for survival-crafting games is a balancing act. The sandbox aspect of the genre means that your levels can't be fully linear; players want a sense of exploration! They want to pick a direction, walk until they find something cool, and feel the satisfaction of discovering the world themselves. Do anything, go anywhere![/p][p][/p][p]But at the same time, the survival-crafting genre is also very progression based! Part of the fantasy is starting off with just the shirt on your back, then clawing your way up to more and more powerful gear from more and more dangerous environments. This implies at least some amount of linearity; from low to high tool tiers, or from early-game to late-game areas.[/p][p][/p][p]Different games exist at different locations on the spectrum: some lean sandbox (Minecraft, Project Zomboid, etc.) while others lean more on the progression (Subnautica, Valheim, etc.) gameplay. But whether your maps are made by hand or generated procedurally, It is up to the developer to find a harmony between both of these aspects.[/p][p][/p][p]This brings us to Dandelion Void! We recently conducted an internal playtest with some game industry colleagues. What we found was that our friends had a great time early on as they struggled to survive their first few nights. But once they built a safe room and built up a supply of food and water, they felt a sense of not knowing what was next. Part of the issue was that the test level they played was extremely circuitous and open-ended. There were different regions to discover, but players didn’t know how to find the paths between regions, or how to understand what was an “early game” versus a “late game” area.[/p][p][/p][p]Some of this can be fixed simply with game balance and more content. We can tweak the survival mechanics to make it harder to stabilize, and harder still to keep that stability. And as we add new furniture, tilesets, and hazards, we can increase the average differentiation between any two given areas. With that said, we wanted to experiment with what a level design based solution could look like![/p]
Doubles and Halves
[p]Sid Meier of the Civilization series has a famous motto on game balance: “double it, or cut it in half.” Rather than tweaking something 5% here and 5% there, you get the most information as a designer when you make large, sweeping changes, even if they end up being an overcorrection. If your combat is feeling too easy, bumping enemy damage from 5 to 6 won’t feel very different. Try it at 10, and go down from there![/p][p][/p][p]When we found that our test level lacked a sense of progression, we made a new one which represents the other extreme. “Pergovania” is a hub-and-spoke map divided into small, discrete areas that can only be accessed by obtaining a tool from the previous area. Four areas – the safe closets, the administrative offices, the plumbing corridors, and the pollen farm, are connected by a central reactor pool. In order to get into the admin offices, you’ll need a bludgeon from the reactor pool to break down a broken door. Meanwhile, the hallway to the plumbing corridors has lost power and requires a backup battery which you can find and charge in the admin offices. As you’ve probably guessed, this test map is inspired by the lock and key mechanics characteristic of the Metroidvania genre.[/p][p][/p][p]We start with an extremely rough sketch[/p][p][/p][p]And throw it into Sickle[/p][p][/p][p]From a design perspective, we expect Pergovania to be an overcorrection. Our current vision for Dandelion Void is more on the open-ended side of the spectrum, whereas Pergovania is highly linear. But we have a lot of questions for which we expect this level to provide insight:[/p][p][/p][p]How compelling are the different tools to use? How can we artistically distinguish a dangerous late game area from a safer early game one? Will players chafe at the enforced progression, or will they enjoy the momentum it gives their gameplay? What are the areas that they would have wanted to explore in more depth?[/p][p][/p][p]The rough sketch realized...[/p][p][/p][p]We can’t tell you the answers to these yet, because we still need to put our colleagues through another test! But we are very optimistic that by using an extreme test case, we will get the data we need to create a final map which satisfies all types of players.[/p][p][/p]
Commence the Endgame
[p]We hope this dive into our level design iteration philosophy has been interesting! We would love to hear from you all about your favorite survival game levels, and/or the aspects that you most value out of a game map. Until next time, give doubling a try for yourself – it’s twice the fun![/p]

On Mapping And Dog Food

[p]Before our game director Brian began Dandelion Void – and even before he made the Project Zomboid mod Save Our Station – he made maps. Specifically, maps for a free Half-Life 2 mod called Gary’s Mod, before it became a full-fledged game! If you’ve wandered the sands of rp_wuste or RP’d in Hometown 2000 (shamelessly derivative of Hometown 1999 by F.Kalkman, but hey, he was a teenager!), you may already be familiar with Brian’s work.[/p][p][/p][p]This creativity was enabled by the Hammer World Editor, a high-quality tool for creating BSP levels. Nearly three decades later, we are now coming full circle by making our own mapping tool. Enter the Sickle World Editor.[/p][p][/p][p]Before we begin, we would like to note that this is a highly work in progress feature, even more so than the other content you've seen on this blog. While we are proud of the progress we have made, this post is more about our process and philosophy around tools than It is a demonstration of a final product.[/p][p][/p][previewyoutube][/previewyoutube][p]The Sickle World Editor in action[/p][p][/p]
Make Space
[p]The Sickle Editor is a tool that we’ve built using Unity as our “front-end.” Dandelion Void is a Unity-based game so it’s helpful to have the mapping tool integrated into our game engine editor suite. With that said, the actual data structure you are authoring is not a Unity scene file, but our own custom map data type. You can see a preview of your map in the Unity Scene viewport, but you won’t be interacting with the hierarchy in the way that Unity devs will be familiar with. [/p][p][/p][p]The Sickle Editor is a “subtractive” tool, meaning that an empty map file can be thought of as a solid cube of material into which you then carve cavities and corridors. Dandelion Void uses a grid system, so you carve these rooms simply by clicking and dragging your cursor across different grid cells. With this interface you can create rooms, hallways, and open spaces quickly and intuitively![/p][p][/p][p]To differentiate the environment, groups of cells belong to “room definitions,” which affect their appearance and gameplay properties. Room definitions are assigned a wall material, a floor material, and a set of tags which determine things like plant growth, loot distribution, and more. Below you can see the green highlight around this room, which has been tagged as a dusty reactor closet.[/p][p][/p][p]Of course, there’s only so far you can go with a bunch of empty rooms – let’s decorate! In the “entities” tab you can find a searchable list of all of the furniture items and other gameplay objects that developers or modders have defined. Similar entities belong to “tab groups” which can be cycled through using Tab or Shift+Tab. This reduces the need for unnecessary clicks when decorating, and is useful for things like these lockers which have both wall and corner pieces. Doors between rooms are also placed using the Entity tool.[/p][p][/p][p]As a game set aboard a multi-level spaceship, verticality is even more important than it would be with an outdoor environment. To cycle between different floor levels, you can simply press the \[ and ] keys. This creates a pleasing “cross section” effect that you can see below![/p][p]Note: this is just for an internal test level, so don’t read too much into the layout or room names![/p][p][/p][p]Now, is it just me, or does the level we’ve made look just a bit too clean? In fact, these sparkling rooms make the Pergola look more like a luxury liner than an abandoned derelict. But not to worry, because this next step happens automatically – when you enter the game, you’ll see that the entire world is automatically covered in ponic stalks, algae, and dust! [/p][p][/p][p]While most people immediately think of procedural generation when they think of survival games, many of the most successful titles in the genre actually use “authored” maps – Subnautica, The Long Dark, Grounded, and Project Zomboid all come to mind. A human-created map allows us to ensure a high quality level throughout, and creates more opportunities to tell the story of The Pergola as a society. [/p][p][/p][p]With that said, variety is the spice of life, so our vegetation system adds a procedural layer to Dandelion Void!  This adds a bit of differentiation between multiple playthroughs, saves us time, and creates an organic-looking result. Authorship is still paramount, of course, and so developers and modders can influence the vegetation and grime systems using the room tags we mentioned earlier. If you want a room to have dust but not algae, grow extra plants, or be totally clean, this can all be accomplished just by adding or subtracting a few keywords![/p][p][/p]
The Dogvelopment Cycle
[p]“Dog-fooding” is short for the idiom “eating your own dog food.” This originates from a pet food executive who was said to eat an entire can of dog food at annual meetings to demonstrate his confidence in the product quality to the shareholders. Gross, but interesting! [/p][p][/p][p]In the context of software development, dogfooding refers to the practice where developers making a tool also use the tool themselves in daily life, creating an extra level of investment in quality. If you work on a messaging client and there’s a major bug, you’ll want to fix it ASAP because it affects your own ability to connect with your coworkers and friends.[/p][p][/p][p]Across our time in the games industry, we’ve frequently encountered internal game development tools which are powerful, but also janky, unintuitive, and prone to bugs. Improving tools is a great investment if you have the time and team capacity, but in many cases it’s hard to make time for it. As deadlines approach, it’s hard to dedicate a week of developer time to improving tools when that week could be spent on features that customers actually get to see.[/p][p][/p][p]But on a modding-first game like Dandelion Void we are shipping our internal tools along with the main build of the game. Ideally hundreds or even thousands of modders will be using this level editing tool, and we want them to have a good experience. With this in mind, we are putting extra love and attention into the developer experience of this tool![/p][p][/p][p]We know you’ll have fun using the Sickle Editor, because we have fun using it. When the tool finally launches alongside the game, it will reflect the polish, bugfixes, and UX improvements forged out of thousands of hours of our own mapping journeys. Good enough for us, good enough for you, and good enough for Fido.[/p][p][/p]
Out the Doggy Door
[p]That’s all for this week’s development log. Join us next time for Part 2, where we’ll discuss our current level design philosophy. In the meantime, what features would you like to see in a map editor for our game?[/p]