1. Colony Survival
  2. News

Colony Survival News

Friday Blog 233 - Constructing the Missing Link


I’ve been thinking about adding “proper” roofs since…. perhaps before the Steam release. It wasn’t possible to add in a practical manner before Zun developed the automatic-adaptation-system. When he started working on it this year, I made the first mockup, just to see what it would look like, roughly.


It was very simple: just one “side roof”. The screenshot already shows more complicated blocks: side roofs with a “front”. But on simple houses, you can get quite far with just side roofs!

But what if the width of your house is not an even number? Then this happens:


So we needed an extra shape: the “middle roof”. And of course, the middle roof also needs a variant with a “front”, one with a “back”, and one with both the front and the back in one block. Problem solved:


Which is nice when you’re building simple square houses. But with this “decorative update”, we want to encourage people to move away from those efficient but boring shapes. What if your house has a more complicated shape?


You lack certain roof shapes: “inside corners”. And at the top, the “middle roof” needs a 3-way corner. Well, we can make these too of course.


But the reverse problem quickly announces itself as well.


The solution: “outside corners”!


And of course, there’s another missing piece: 4-way corners for middle roofs! Here they are:


Are you starting to notice the pattern? Again, the reverse problem exists too. A 4-way corner is basically 4 inside corners. There’s also four outside corners occurring in one middle roof: a pyramid shape. We’ve added that one as well!


That’s not all the options. All of these shapes are available in blue too!


The largest concern still left for the roofs is the bottom side. They lack something like roof gutters. Perhaps we can expand the quarter block system to include corner variants and upside-down variants as if they're gutters.

Building and implementing all these shapes took quite some work. Making sure the right piece is automatically selected in all circumstances is complicated. When working on the automatic adaptation, Zun found a lot of edge cases. We even found some new ones while working on this blog. But we’ve been making a lot of progress and the new roof system is 98% functional now!

Last week, all these items were “cheat-items”, they had to be spawned with commands to be tested. This week, I’ve been working to integrate them into the “real” game. Figuring out where to place them in the tech tree, how to unlock them, to what (new?) jobs the recipes ought to belong, what the ingredients should be. That’s nearly finished as well.

We’ve still got to do some last implementation things, some fixing, some adding. The controller support also needs some more work. But the 0.9.1 release is coming into view! We haven’t yet had a Summer holiday, and we won’t be taking ours before the update is out. And I’d love to have some free weeks before the leaves fall off the trees :)

Bedankt voor het lezen!

Reddit // Twitter // YouTube // Website // Discord

Friday Blog 232 - Sale! Also: Colors / Lanterns / Roofs / Steam Networking


We’re participating in the Summer Sale, and that means that Colony Survival is currently 25% off!

We’ve continued our work on the new decorative items. Most significantly, we’ve added the framework for the new “paint-feature”. Instead of cluttering your inventory with many colored variants of all “paintable items”, the stockpile will only contain the “basic” variant. You’ve got to grab and use colored paint items to paint those items in the color of your choice. Of course, there’s also a paint stripper item, for when you want to return to the unpainted variant.

This is now working in our unreleased dev-build. Windows and doors can be placed and then painted red, blue or green. It helps a lot to make buildings look more lively and unique!


Apart from that, we’ve added new lanterns which can be mounted on walls, ceilings and the ground. Roofs have been enhanced by adding a “middle roof” variant, solving a problem that happened when your roof had an uneven amount of blocks in its width.

Zun found a complex technical issue in the Steam networking part of Colony Survival. It was a rather persistent issue but he has managed to significantly improve it!

We’ve also had a little Summer holiday. I traveled to Berlin, trying to get some insight on how we can build large colonies/cities that are simultaneously beautiful, enjoyable and functional. I’ve discovered that I like subways/trains more than I thought! We've returned to work this week and are once again making good progress.


Bedankt voor het lezen :D

Reddit // Twitter // YouTube // Website // Discord

Friday Blog 231 - Doors / Windows / Stairs / Flowerboxes / Pillar-Fences / Roofs


In the past month, we’ve continued work on controller support and more decorative blocks. We’ve noticed that large collections of decorative blocks are common in many frequently used mods. We think it would be good to make the unmodded game a bit more like that.

One problematic thing in these mods is the abundance of… “variants”. Firstly, things come in multiple colors. Secondly, there are quite some mods that offer “combined shapes” - like fences that actually link up. Which does require players to have separate items like “fence start”, “fence middle”, “fence end”. If each of these parts has color variants as well, the inventory quickly becomes very cluttered.


To solve this problem, we’ve got paints and “adapting blocks”. Firstly, players will be able to make paint items, and they’ll have to use these items to “physically” paint blocks. This helps reduce all these items to one base color variant.

Secondly, Zun has made great progress on a system that automatically chooses the right 3D-model for the situation. Take for example the fence. A fence can be unconnected - basically making it a wooden pillar. It can be connected to 1, 2, 3 or 4 other fences horizontally. And if you stack the “unconnected fence” (the pillar) vertically, it adapts into a special pillar with unique pieces at the start and end. So we’ve got many different 3D-models for the fence, but only one will be available in the stockpile. That simultaneously helps solve the clutter-problem, and it makes these items a lot more usable!


A special problem was the window. One of the blocks we’re adding is a window frame, and this one will adapt to different window sizes as well. When designing the required 3D-models, I only thought about regular rectangular windows; 1x2, 2x4, 6x4.

But of course, players can build much more complicated window shapes. And in the process of building a large window, or when removing one piece from an existing large window, you also get quite weird, non-rectangular shapes.

Figuring out how to deal with these shapes and making them look relatively sensible and natural was a challenge, but Zun has solved it well! I haven’t been able to “break” the current system.


The new decorative blocks have no “functional” impact on gameplay. They are not required, they don’t make colonists happier or more productive. On one hand, they are merely tools for more artistic players. On the other hand, I do think they’ll influence less artistically inclined players as well. I’ve noticed that due to the new options, I look differently at my buildings. I’m more tempted to make them a bit unique, and I feel more immersed. We hope it’ll be a good step towards making CS feel more alive!

Bedankt voor het lezen :D

Reddit // Twitter // YouTube // Website // Discord

Friday Blog 230 - Controller Support and Better Building



In the past month, Zun has put a lot of effort into adding proper controller support to Colony Survival. For a longer time, it has been possible to access basic gameplay functionality with the Steam Controller or the Steam Deck, but it wasn’t up to standard. And playing the game with a regular Xbox/Playstation/Switch controller was pretty much impossible.

So we’ve been working to improve that situation. Rebinding jumping from space to “A” on your controller, or moving around from WASD to a thumbstick, is not that complicated. What is complicated, is replacing the mouse in the UI.

With a mouse, you just move the cursor to whatever place you need it to be and click to select it in one step. With a controller, you’ve got one button selected, and then you move that selection to another button right next to it. If there’s 10 buttons between the selected button and the intended button, you’ll need to repeat that 10 times.

Connections between buttons in the UI editor

Our interface wasn’t designed with that in mind. In some places, you have to move through dozens of other buttons to get where you want to be. For example, moving your selection through all of your savegames to get to the “play” button. That’s not very practical.

In some cases, Zun improved this situation by refactoring the layout of the UI into a more controller-friendly design. In other cases, this situation can be improved by adding button shortcuts. Instead of having to press the “Play” button in the UI, it could be enough to select a savegame and press for example “X” on the controller.



We’ll have to make those shortcuts visible in the UI, otherwise people don’t know they exist. That means we need support to display all the buttons on most controllers. And the ability to rebind all these buttons in the controls settings menu. By default, Unity doesn’t properly support that, but we’ve found a very useful asset that has helped us integrate all of that.

Good controller support is now roughly 70% finished and will be publicly released in the next update.

Better Building


One of the unexpected results of the survey was a majority preference for us to focus on better building instead of better combat. So I’ve done a lot of investigating and experimenting to see how we could integrate that into the game.

We’ve looked at “building” from a bunch of angles. Better automated construction workers. Blueprints that allow you to copy and paste designs. New requirements for bed and jobs, to prevent massive caves filled with endless rows of beds and jobblocks, devoid of all light and privacy.

Finding the perfect solution has been difficult though. Take those extra requirements for beds and jobs. If they’re simple, players will find them easy to ‘minmax’, and the new solution will be a repetitive chore as well. If they’re very complex, it becomes a completely different game with much more complicated colonists. Let us know if you’re interested in that!

We’re converging at a different solution: allowing players to build more beautiful colonies. How do we make that possible? How do we encourage that? I have to admit, this is not one of my strengths. I find it hard to build truly beautiful things, both in Colony Survival and in other games.

These are complex questions. It involves the very nature of beauty, in a way that transcends current fashion and localised preferences, and asks us to translate that to the constraints of our voxel game.

Wernigerode, Germany

Beauty in architecture is a subject I’ve long been interested in. Scott Alexander wrote a fascinating article about it that raises difficult questions. Last year, before the survey, I had already starting delving into the works of Christopher Alexander (not related to Scott), which strives to provide an answer to those questions.

Christopher Alexander writes a lot about dealing with constraints. Buildings face a lot of them. Take for example a home. It has to provide a place to cook, a place to sleep, a place to face the public world and meet strangers, a more intimate place to relax, a proper transition to the garden. It has to let in light without losing too much warmth. It has to deal with rain, with snow, with gravity.

Dealing with all these challenges properly in a consistent style while using natural materials seems to result in rather cosy places that humans like. But… our colonists are very simple. You don’t have to deal with rainwater, rotting wood, or gravity. Which results in the endless factory-caves being optimal.

So there doesn’t seem to be a perfect solution that automatically helps players build the beautiful towns of the past. But we’re working on the next best solution: give players more tools to achieve a semblance of that look, if they choose to do so.

Currently, players can pretty much only use 1x1x1 cubes. Build a wall of them and each block is identical to the next one. We want to add more detailed meshes that are more interactive. Think of pillars which automatically add a decorative top and bottom. Think of fences which connect to each other. Think of doors and window frames.

An experiment with pillars

These automatic connections between meshes are perhaps a good stepping stone towards more complicated mechanics and infrastructure in future updates: think of pipelines and electric grids.

To prevent red stone pillar / green stone pillar / blue wooden pillar / white wooden pillar from cluttering your stockpile, we’re considering a “paint feature”. Equip the red-paint-item to paint pillars/doors/fences red, and certain blocks as well.

Let us know how you feel about this! Which detailed decorations would you like to have? What features do you need to make more beautiful colonies? How would you feel about more complex colonists with more realistic needs - perhaps in a totally separate mode?

Bedankt voor het lezen :D

Reddit // Twitter // YouTube // Website // Discord

Friday Blog 229 - 20% off 0.9.1



Colony Survival is currently on sale! It's 20% off until 23 March. We also just released the first major update to 0.9: 0.9.1.

The major change in 0.9.1 concerns pathfinding and siege mode. In short: siege mode is properly functional again, and pathfinding should be better and faster. On to the long explanation!

The Old Situation Before 0.9.0

Paths for colonists and monsters are calculated in a special “Navigation World”. This world is made up out of Chunks that are 16 blocks wide, 16 blocks deep and 16 blocks tall. Many of these Chunks are underground and hold no space for NPCs to physically stand. When there are places for NPCs to be, these are designated and connected with each other in a special Navigation Mesh.

When a monster spawns far outside of a colony and has to find a path to the banner, he has to connect Navigation Meshes in many different Chunks. Sometimes, the path through a Chunk is a straight line through an empty field. Sometimes, the path through a Chunk is a complex maze with gates, barriers, stairs, bridges, tunnels and multiple different levels of height. NPCs only had access to a rough estimate of the time it would take to traverse a Chunk. This lack of information regularly caused them to make silly choices.

Before 0.9.0, monsters spawned from 8PM to 1AM. The monster spawning algorithm picked a random location outside of the safe zone and tried to find a path from there to the banner. If it succeeds, a monster is spawned there. If it fails, it does another attempt, and another, and another. After twenty attempts, the algorithm gives up and activates Siege Mode, which lasts until the end of the spawn period, 1AM.

In that period, food consumption would increase eightfold, but only in that period, leading to an increase of your daily food consumption by 160%.

"View of the world as seen by NPCs - just showing positions they can stand at. Color is approximated distance away from the banner.

The Situation in 0.9.0

In the recent big update, monsters only spawn between 8PM and 9PM. Siege mode lasts equally long, which means your daily food consumption only goes up by 32%.

We planned to have a proper Notification Menu, and in preparation for that, we removed the text message that informs you about the activation of Siege Mode. The audio effect could only be heard in the specific outpost/colony where Siege Mode was active. This made it very easy for players to be completely unaware that Siege Mode was even a thing. The effect on food was barely noticeable too.

0.9.1 Improvements

Each Navigation Mesh now contains a Signpost pointing in the direction of the banner. This makes it a lot easier for monsters to calculate the right path, which significantly improves performance when you’re dealing with large amounts of monsters. Without Signposts, pathfinding would “give up” when mazes became too long and complicated. With Signposts, 0.9.1 should support mazes that are functionally infinite.

The Signposts are recalculated every 20 to 30 seconds. Monsters only spawn in Chunks with Signposts outside the safe zone. If these are not available, there is no path to the banner, no monsters will be spawned and Siege Mode is activated. This can now happen 24/7! Closing your gates in the middle of the day will result in Siege Mode.

It will last until Signposts are available outside the safe zone again. As long as Siege Mode is active, 1 meal will be lost from the stockpile per hour for every 5 Threat related to that outpost or colony. The text message for Siege Mode has returned, and the audio signal is now ‘global’ and can be heard everywhere. Siege Mode should be a lot more obvious now, both the warning and the consequences.

NPCs now also know how long it will take to traverse a Chunk, instead of relying on a rough estimate. This should make their pathfinding choices more sensible.

Top-down view of the Sign Posts. The white blocks are a path around a colony wall to the banner.

Miscellaneous

The horizontal and vertical elevators were very slow. Their speed has been boosted to make them more relevant. The vertical elevator has been upgraded from 18km/h to 54km/h, and the horizontal version increased from 22km/h to 90km/h (that last number is the speed limit of the glider).

Colonists spawned with an empty stomach and immediately tried to collect a meal. They now arrive fully satiated.

Trade rules could not be removed. Now, that’s possible.

Clay is available at the builder.

32-bit Windows is causing issues, so support for it has ended from 0.9.1 onwards. Those on 32-bit systems can continue to play 0.9.0 via the beta branches.

And some other minor fixes and optimisations, available in the in-game changelog!

EDIT 23:18 Amsterdam time: The update has been reverted until further notice. The monsterspawning algorithm spawns monsters in safe zones in a significant amount of worlds. We're trying to find and fix the issue. EDIT 00:04 : Update 0.9.1 is live again! The problem above should be fixed now.

Bedankt voor het lezen :D

Reddit // Twitter // YouTube // Website // Discord