We've made good progress on the new world generation this week! We've added cliffs and some kind of tiny rivers, and new trees. We're very happy with the results! Here's a video featuring the new terrain:
https://youtu.be/QQ50AmplF3g While traversing the new terrain, the command "/debug printbiome" can be used to display info about your current location. Here's an example of using that command thrice:
Temperature and average rainfall (precipitation, in-game stat only, no visual effects) change gradually, ensuring a smooth transition between different areas. With those stats in mind, the new terrain generator selects an appropriate biome.
In the past, trees were predetermined structures. They had to be built by us, manually, block by block. We saved the structure, and the structure was loaded into appropriate locations. For the new world generation, Zun has written a program that can quickly convert simple instructions into a complete tree. This makes it a lot easier to add new trees!
To the left is an example of the tree instructions. The first "box" instructions cause the renderer to generate a trunk made of "logtemperate", 5 blocks tall. The second block of code titled "format : circleY" generates a circle of leaves on top of that trunk. The next blocks of code generate more circles of leaves.
To the right is an example of one of the biomes. The lower bounds are 20% rainfall and 9°C, the upper bounds are 60% rainfall and 15°C. The "totalStructureChance" defines the total amount of vegetation. It's followed a by a list of trees and bushes that spawn in that biome. The higher the weight, the bigger the chance of spawning that particular tree.
The code above isn't hidden deep in an inaccessible generator, it's easily available in a couple of .JSON files. It is now very easy for modders to add their own structures, and to change the terrain generation! We're sure there are talented people with more artistic skills and patience than us who will be able to improve dramatically on the examples above. We're looking forward to seeing their results!
Currently, the world is one infinite continent with randomly fluctuating temperature and precipitation. There is no cold north nor a hot south. That's our next job. The shape of the continents should be pretty random, every world should be different. But the "standard" biome in the center should be bounded by obstacles in all directions. A cold tundra in the north, a dry steppe in the east, a hot desert in the south, and an ocean to the west. On the other side of the obstacles should be different biomes, where new colonies can be started and new resources can be generated and extracted. It'll be an interesting challenge!
After multiple weeks of behind-the-scenes work resulting mostly in ugly brown hills, we're finally starting to render more interesting worlds! Every place in the world is assigned a temperature and a level of rainfall. With this information, the appropriate biome is selected. This ensure a realistic distribution of biomes, and a gradual transition.
We needed more shades of grass to make this gradual transition possible. We've got a system for giving blocks different colors without adding new textures, but we couldn't get it to work with grass in the past. Yesterday, we succeeded in doing that! So today we've been experimenting with many shades of grass.
Zun has also created a way for me and modders to easily generate new trees. The old world generator required hand-crafted trees that were saved as 'structures'. With the new system, a tree is defined by it's height and the shape of its leaves. This makes it a lot easier to generate a wide variety of trees, and to ensure a smooth transition between them.
Here is a summary of the work that still needs to be done on the new world generator:
More diverse trees and shrubbery
Random flowers
Rocky outcrops and cliffs
Clear consequences for going north/south/west/east, continents and oceans
Appropriate ores in each biome
We've made a very rough timeline for the 0.7.0 release. It'll most certainly change! September: New world generator, see list above. October: Features like trading, multiple players in one colony, happiness Closed beta starts here, we'll release a form where you can apply to become a tester November: New crops, jobs and items + airships or boats December: Finishing things up, patching issues found by testers, polishing, achievements
Hopefully, you'll be able to start testing at the end of October and to play the full release during the Christmas Holiday! But as always, development is unpredictable and Valve Time applies.
New renders and fatal crashes
I've hated the icons for wheat and wheat seeds for a long time. We've worked on new icons this week, and I'm pretty happy with them. NACH0 made a mod that adds the new icons to 0.6.3, and I feel it makes the game look a lot more professional:
The rendered icons make the hand-drawn icons for the command and banner tool stand out like a sore thumb. Time to upgrade them as well!
Something that also needed upgrading, was Zun's PC. While testing the new world renderer, his graphics card died resulting in a pretty dramatic image.
The next morning, Zun's dead graphics card was replaced with a brand new GTX 1080, and we were able to continue working without problems!
While we're talking about new hardware, my new vertical mouse arrived. Thanks for the concern about my wrist pain, I received lots of advice! It's already feeling quite a lot better. The new mouse is a Logitech MX Vertical, and it looks like this:
In a lot of ways it feels better than holding a normal mouse, and I got used to it pretty quickly. But the mouse is pretty big, which can also become uncomfortable.
We're pretty sure we can post an extensive video featuring the new world generation next week, and we're looking forward to it!
Last week's blog resulted in a lot of comments and a long discussion on Discord. They were very useful! I never expected so many people to be so passionate about Malthus and Boserup :) There were two suggestions that really surprised us and have a pretty big chance of being added to 0.7.0.
"Around999People" suggested turning the XP system into an income system. Others loved this idea and expanded upon it. We discussed it, and we think it has a lot of benefits! Instead of the consumption of a chocolate bar by a colonist resulting in some XP, the chocolate bar is assigned a monetary value, and there's a variable VAT (Value Added Tax) rate.
Imagine the value of the chocolate bar is 10, and the default VAT rate is 20%. The consumption of one bar would result in 2 "money" for the colony, to be spent on productivity upgrades. Increase the VAT rate to 40%, and you'll receive 4 "money". It will also result in more unhappiness. The opposite is also true: reduce the VAT rate to 10% and you'll only receive 1 "money", but your colony will be happier.
It might make more sense than calling it "XP", and it gives players another interesting choice. High happiness makes it easier to recruit new colonists, and improves the speed of research. But having a lot of productivity upgrades will make your colonists way more efficient, making it easier to produce food, ammo and science bags.
On Discord, Greedoflashbang and Boneidle suggested hot-air balloons / blimps / hot air boats / airships. Exploring will be an important part of 0.7, and a quicker form of transport than walking will be very useful. I've tried to convince Zun of boats, but he was hesitant. He thinks they're pretty hard to add decently, because of the floating on water + collision + multiplayer. Airships will probably be easier to add. We're almost certain trading in 0.7.0 will not involve colonists/boats traveling from one colony to another, but if we ever add something like that, airships are a lot easier to automatize than boats.
Rendering new icons
Drawing icons for items that have no in-game model has always been hard for me, and there are quite a lot of terrible icons. It felt like a huge improvement when, in 0.6.0, I replaced the ugly hand-drawn bed icon with an icon that was made using a screenshot of the in-game bed. This week, I've been busy replacing ugly hand-drawn icons with rendered alternatives. At the start of the blog, you've seen the rendered silver ingot. Here's what the old and new ingot icons look like:
I think it's a worthwhile investment to replace as many icons as possible with rendered alternatives. Zun was very unhappy with the icon for bronze coins, so I made this:
I worried about hand-drawing icons for all the new happiness items, but I think rendering them is a great solution!
Terrain generation
While I've been rendering icons, Zun was working on the terrain generation. It's taking a while, because we want the new system to meet high requirements:
More realistic world
More interesting world
More beautiful world
Better performance
Players should be able to set some parameters, like size of the biomes, amount of flat terrain, many islands vs big continents
Modders should be able to easily change the terrain
Zun is working on a new system to easily create a large variety of trees, and distribute them among appropriate biomes. Today, he showed me the first version of the new world generation with basic trees. It's starting to look more like what it's supposed to be, and we hope to show you some images and perhaps a video of our progress next week!
Wrist pain
During the last two weeks, I've been struggling with some wrist pain. Sometimes it was barely noticeable, sometimes it prevented me from using my computer mouse. I've been watching my posture and started using a gel pad, but the pain did not go away.
I was worried that the pain might be the start of carpal tunnel syndrome, so I visited the doctor yesterday. He quickly concluded that my wrist joint was perfectly healthy, I should just focus on improving my posture even more. He told me that the act of holding a standard computer mouse is pretty unnatural. Our wrists don't like moving our hands to the sides all day long. One way to improve this is by using an ergonomical, vertical mouse. Holding a vertical mouse is a bit like how you hold your hand during a handshake. It's a lot more natural. We've bought one, and we hope to be able to tell you what it's like using one next week!
What do you think of VAT, airships and the new icons? Has using a computer ever caused pain to your hand, wrist and/or forearm, and have you found a solution? Let us know!
A couple of Fridays ago, we wrote about an issue with the increasing costs of keeping colonists happy. It would encourage people to start new colonies, instead of expanding their first one. Some encouragement is fine, but there should be benefits for having a big colony with lots of colonists (that consumes lots and lots of happiness items) as well.
There are actually very interesting principles behind the real life historical benefits and costs of population growth. And instead of last week's blog about geography, this is something I've actually got an academic degree in :) Avoid the history lesson by skipping to "What does this mean for Colony Survival?".
Thomas Malthus, an English scholar who lived from 1766 to 1834, wrote some very important things about population growth, which are still taken very seriously. He's basically Thanos from the last Avengers movie. He thinks the population growths exponentially. Populations don't grow with a steady +100,000 per year, they grow with a percentage, like for example 3 or 4%.
On the other hand, food production doesn't grow as quickly. It does grow (England was a lot more populated in 1800 than in AD 100), but it increases linearly. So while food production has a growth like "10 - 12 - 14 - 16", population growth goes like "4 - 8 - 16 - 32".
The problem is obvious. After a period where enough food is produced for the entire population, the population will inevitably outgrow food production. They ran into the Malthusian trap. A period of disease, starvation and war will occur. A significant amount of the population is killed off, and food production is adequate again. But without the availability of reliable birth control, the population is bound to exceed food production a couple of generations later, running into the same Malthusian trap.
The ideas of Malthus can be used in a decent amount of situations. But it also runs into some problems. Let's take a further look at his linear increase of food production.
Our civilization has increased food production in a lot of ways in the last couple of generations. Tractors, synthetic fertilizer, irrigation, genetically modified crops, etcetera. They've spread around the world like other inventions, for example televisions and smartphones.
Tractors and smartphones are obvious improvements, and a large majority of farmers/people want them. The biggest barrier is often money.
We often apply the same view to historical food production. Someone invents a better plough or improved irrigation, and this takes the world by storm, like televisions and smartphones. Barriers are things like lack of education and lack of money, but fundamentally, people want these improvements.
That's what Europeans thought when they tried to spread their advanced farming technology around the world in the last couple of centuries. But very often, natives in other continents didn't care for those improvements. The same happened with European settlers: when English and German farmers moved to South America, they often reverted to more 'primitive' forms of agriculture.
This is pretty much unexplainable with the Malthusian perspective. Methods of food production ought to increase linearly! Knowledge and availability of more advanced agricultural technology is the bottleneck of humanity!
Enter Ester Boserup, a Danish economist who lived from 1910 to 1999.
According to Boserup, agricultural improvement is mostly a lot of extra work that isn't a whole lot of fun, and thus will be avoided if possible. You're basically trying to grow more crops per square meter, which requires you to put a lot more effort into your job.
If you're a primitive farmer in an empty, fertile Europe in 5000BC, growing crops is easy. You burn down part of a forest, the ashes make the ground extra fertile, you throw some seeds in there, and a couple of months later you've got your harvest!
If you're a medieval peasant with a small amount of land, your job is a lot harder. You've got to plough and fertilize, you might have to irrigate, you've got to remove weeds, etcetera.
Now image the medieval peasant trying to get the primitive farmer to adopt his agricultural methods. Of course he's not going to accept that! Why do all that work, when there's enough fertile land around that you don't need to optimize your crop yield per square meter?
So Boserup claims that most agricultural "improvements" are only adopted out of necessity, when lack of land / overpopulation forces farmers to do it. I believe this to be true.
This really hinders the development of cities. You can't start a major city in an area with only a handful of slash-and-burn farmers. You need a significant amount of dense villages where lots of food is produced before a nearby city can develop. Remember, there were no trucks, railroads or refrigerators! Everything had to be transported by humans, horses and simple carts. You can't import major amounts of food from far away places.
What does this mean for Colony Survival?
Earlier, we concluded that the increasing cost of happiness items would stimulate people to keep starting new colonies, instead of focusing on growing one colony as large as possible. New colonies are very attractive, because colonist #1 has a lot less demands than colonist #821, which will require a lot of happiness items.
We just concluded that the exact same thing happened in real pre-industrial villages and cities as well. Why live in a place where land is scarce and farming is a lot of work, when there are still places nearby where more land is available?
Big cities like London, Paris and Rome were all surrounded by hundreds of kilometers of densely populated farmland in all directions. If we're adding realistic incentives to Colony Survival, the optimal way of playing the game would result in a similar world: one relatively big colony, surrounded by lots of smaller colonies in all directions.
But imagine doing that, in singleplayer. Having to build dozens or hundreds of small, repetitive colonies before you can make progress. That's not fun. That's awful.
To prevent this realistic drudgery, we've got to introduce an unrealistic feature. We're thinking about experience points; XP. A pretty weird form of XP, that is only gained by consuming happiness items, instead of doing actual work (please add that in real life).
Instead of XP directly upgrading the related job, it's all added to one big pool per colony. You, the player, will have to decide how to use it. Upgrade your miners, or your farmers? It's your choice. But XP earned in a colony can only be spent in that colony on productivity improvements that only apply there. A new colony will have to start from scratch.
We just compared colonist #1 and #821. It doesn't mean that colonist #1 will always have little demands. When you've got 100 colonists, you'll have 100 colonists that demands a couple of happiness items. When you've got 821 colonists, you'll have 821 colonists which will all require lots of happiness items. This means that a colony with 800 colonists won't require merely 8x more happiness items compared to a colony with 100 inhabitants, but probably closer to 60x more happiness items!
If we tie XP to consuming happiness items, this will mean that the large colony will also receive way more XP than a smaller colony. If the XP can be invested to make jobs more productive, the motivation to start new colonies becomes a lot more balanced. Colonists in small colonies will have less demands, but they'll also be less productive. It'll still be very compelling to start colonies in different biomes with new resources, but filling the same biome with lots of repetitive colonies won't be as lucrative.
XP is one way of dealing with the quickly increasing demand for happiness items. Another way that we talked about earlier is industrial machines. We can now visualize what playing 0.7.2 (0.7.0 + a few updates) will roughly look like.
At the beginning of the game, there will be a large surplus of happiness ("presence of the King"), and it'll be easy to recruit more colonists and grow. Easier than it currently is! We've received many complaints of people who thought recruiting the first 30~50 colonists is the slowest and most boring part of the game.
Eventually, the increasing population will add unhappiness, and expanding will become more difficult and expensive. But there's a solution! Start producing and distributing happiness items, and further expansion will become possible.
At first, this will be cheap and easy. But as your population grows, they will start demanding more and more happiness items (which can also be found in other biomes). Producing them will start occupying a larger and larger part of your population, making further growth harder again.
Next solution: XP! As your colony has started consuming more happiness items, you've received more XP. Invest it to make your colonists more productive and to fuel further expansion. But the XP costs of higher levels of productivity increase exponentially, so eventually you run out of quick productivity boosts. You need something else to be able to produce enough happiness items for very large colonies.
Enter the Industrial Revolution! Invent machines that help you do just that. Spinning machines that help you turn large amounts of flax into linen for your tailors, electric furnaces that can smelt many ores simultaneously, etcetera. They will all require electricity. As you start building more machines, and invent more advanced machines, your electricity consumption quickly increases. More and more colonists will need to work at generators, and to produce the fuel they need.
Next optimization: nuclear reactors. They're a bit controversial, but we're still planning to go forward with them. They won't be very realistic, and they'll look pretty retro / steampunk. But they're a sensible way to force people to gather resources from all biomes. And they're a great solution to the problem of the increasing cost of electricity in Colony Survival.
Eventually, there will be an end to new content. There's a finite amount of happiness items and ways to optimize producing them. But we don't want to have a theoretical limit of for example #2462 colonists. Theoretically, you should be able to keep expanding. Our way of allowing this is infinite research. It'll cost a lot of energy, but when you've built nuclear reactors you'll have just that. With infinite research, you'll be able to keep optimizing your colony and to keep adding new happiness to the colony.
This was a long and dense Friday Blog - congratulations on reaching the end :) The graph above pretty much explains what we want 0.7 to look like eventually. We're pretty sure that electricity, nuclear reactors and infinite research will not be added in 0.7.0, but we need to make sure that all required ores are available in 0.7.0. We don't want to force you to start a new world in 0.7.1 or 0.7.2!
One caveat to the graph: the various "stages" will be a lot smoother and less obvious in-game. For example, the XP system isn't a bottleneck that has to be "solved" once: the productivity upgrades will keep coming throughout the game.
We'd love to have your feedback! Are you looking forward to it, or are you disappointed? Have you got suggestions to improve it, or do you see pitfalls that you want to warn us for? We're listening! Leave a comment here, or join our Discord and share your opinion!
Colony Survival is a wildly unrealistic game. Everything is blocky. Colonists don't have mouths and are born as adults from a wood-and-cloth construction. The night only lasts a couple of minutes. It's permanently summer and wheat only requires a couple of days to grow.
But despite all of these simplifications, many parts of the game required quite a lot of real-world knowledge to develop. While working on the graphics, we had to learn how light scatters through the air and reflects from various surfaces. When adding the new ores and metals in 0.4.0, we had to learn about real history and even physics.
The attempts to underlying realism might seem like overkill. I believe it isn't. The following paradox is relevant:
A.) My hands are physically able to draw a photorealistic sketch B.) My brain knows when a sketch is not photorealistic C.) Despite A and B, my brain cannot let my hands draw a photorealistic sketch
I often wondered how this is possible, and I think I have a solution. We have got a lot of unconscious knowledge and experience. In the specific case of photorealism: we are looking at the world nearly every waking moment. We know what real life looks like. We've got many years of experience with it. But we don't know why exactly the world looks like it does. While we have years of experience and know it perfectly well unconsciously, we cannot consciously verbalize the reasons why something looks realistic or fake.So while nearly all of us can judge whether a sketch is photorealistic or not, only a few us have the knowledge and skill to draw a photorealistic sketch.
I think the same principle applies to many aspects of developing Colony Survival. To portray a historical colony in a semi-realistic world, we need to understand some historical/biological/geographical principles in quite a lot of detail. The better we understand those principles and represent them in-game, the more immersive Colony Survival will be. When we 'break' those rules, you might not be able to explain precisely what's wrong, but you will feel that something is off.
In the past week, we've been struggling with the principles behind natural variety. Why do deserts and jungles exist? Why are they located where they are located? How does a desert transition to a jungle? How can we apply these principles in-game?
One of the charts we've been looking at a lot is this one:
Most of the chart make sense. Tundras are cold and dry. Deserts are hot and dry. Rainforests are hot and wet.
But to me, some of the info was pretty surprising. It's possible for a desert to receive just as much rainfall as a temperate or boreal forest. I didn't know anything about temperate rainforests.
Another thing that surprised me was the "border" between biomes. Many of them are angled from the bottom left to the top right.
Look at the red line, the border between shrubland and forests. What does it mean exactly? I struggled to put it into words.
Apparently, as the average annual temperature increases from 0°C to 22°C (30°F to 70°F), more rainfall is needed to sustain a forest.
The same can be seen all over the chart. Transitioning to a 'higher' biome requires more rainfall as the temperature increases. And 'higher' biomes are generally biomes with more vegetation. I modified the original chart to represent that a bit better:
At first glance, I thought this was a bit weird. Don't plants and trees 'like' sunlight? Not in extreme amounts, but an average annual temperature of ~10°C doesn't sound high, and in the "low rainfall scenario", there's already significantly less vegetation at that temperature compared to colder climates.
Then we figured out that the problem probably is not the heat directly, but the increased evaporation. As the temperature increases, rainfall disappears quicker, and there's less water available for vegetation to grow.
Here are some "rules" we've tried to distill from the charts above: 1.) More water = more vegetation 2.) Higher temperature = more vegetation 3.) Higher temperature = water disappears quicker (Paradox!!!1!!1!) 4.) Maximum rainfall is way higher in hot climates, meaning that a wider variety of vegetation can appear there (everything from 'none' to 'lots')
Here's what that would look like, from north to south. Average annual temperature:
Below 2°C/36°F: Tundra. It barely rains, but once it rains, the water barely evaporates. It's too cold for trees or lots of bushes, so everything is covered in grass and moss. There are no deserts.
Below 8°C/46°F: Taiga. Rainfall increases. Nearly all of the region is covered in trees. Only the driest of places revert to shrubland/grassland.
Below 22°C/71°F: Temperate. On average, more rainfall. Most of the region is covered in trees. Relatively dry places revert to shrubland or grassland. In the hottest and driest corners of the region, some small deserts exist. In the hottest and wettest parts of the region, there are temperate rainforests.
Above 22°C/71°F: Tropic. The driest ~20% of the tropics is a desert, because the heat makes the water evaporate quickly. As the rainfall increases, vegetation increases from desert to grassland, to shrubland, to woodland, to seasonal forest, to rainforest.
We believe applying these rules in Colony Survival will result in a world that's a lot more realistic and more fun to explore. We're looking forward to showing you our first successful attempts at generating the new world! This week's attempts mostly looked like brown hills, so we've still got some progress to make :)
Last week, we posted a video of functional multiple colonies. While the basics were done, many jobs and systems like science didn't work yet. Zun spent nearly the entire weekend fixing those issues, and it's done now! All jobs and systems are functional with multiple colonies now. We've made a video to show the changes:
https://youtu.be/iISE1YBYD-Q While old systems are functional, multiple colonies require many new functions. Naming your colony, trading, travel, producing banners, info on remote colonies, etcetera. But instead of immediately continuing to work on those issues, we've decided to enjoy some variation by working on a different problem: the new world generation.
World Generation
Until now, exploration hasn't been important in Colony Survival, but it will become so in 0.7.0. The non-standard biomes are pretty simple, boring and ugly currently, so that definitely has to be fixed.
We'd like to make the landscape a lot more diverse. Random flowers and plants, rock formations, cliffs, grasslands in the desert and patches of trees in the tundra, etcetera.
The transitions between biomes is very harsh now. I've been thinking of ways to improve it. I realized there's no clear line in Finland separating taiga from tundra. Nor does the desert in the west of the US appear suddenly. There's a gradual transition that looks roughly like this: No vegetation (snow/sand) -> grassland -> shrubland -> some trees -> forest
This doesn't mean the world will be a simple monotonous transition from grass to forests either. IRL, there are patches of sand in the middle of fertile Europe, and there are patches of green in the middle of the desert. I'd like biomes in Colony Survival to be like that as well.
When sharing these conclusions with Zun, he responded that he had already come up with similar ideas independently. He'd like to generate some underlying statics like temperature and humidity, and to pick a relevant biome based on that info. This should make the world both interesting and realistic! We hope to be able to show you some of the first experiments with the new world generation next week. A fastforwarded flythrough of the old world can be seen in the video above.
First Complete Texturepack!
There have been people in the past who've redone some textures, and others who've made new textures for mods. As far as we know, there is nobody who has redone all the textures in the game. Until now! Pyris-tt has made the SummerTales texturepack. It's used in all the screenshots in this blog, and the middle part of the video. It's beautiful! He's also made new icons for nearly all the items, and they improve a lot on the default icons. Thanks Pyris-tt!
In related news, Pandaros has expanded the team working on the Settlers Mod. The team now includes Pandaros himself, Pyris-tt, Kenovis and Servius. They've got many exciting ideas, and they're also planning to use the upcoming multiple colonies and happiness features. We can't wait to see what they'll produce!
We recently had some relatively boring and frustrating weeks. A lot of things changed behind the scenes, but there was barely any visible progress. Those weeks of work finally paid off! We've got a new internal development branch with new features. It's far from perfect, but it's now possible to start multiple colonies in singleplayer! Here's the video:
https://youtu.be/lh0bQ37JBE8 It's a lot of work to "port" features so that they work with multiple colonies. Step by step, we're adding jobs and mechanics back into the game. For example, area jobs and science are still broken and require attention. It takes time, but 'multiple colonies' is a mechanic with a lot of potential and we're looking forward to testing it more extensively!
The consequences of multiple colonies and happiness
We mainly wanted to add the multiple colonies mechanic so people could start new colonies in different and far-off lands. Now that multiple colonies are in-game, we realized it's quite fun to start new colonies relatively close to your first one.
If the happiness mechanic works the same for your second and third colony as it does for your first one, it becomes even more desirable to start new colonies nearby instead of expanding your first one. Why recruit colonist #400 in your first colony, who will require coffee, tea, chocolate and more, while colonist #50 in your third colony will be happy with only a new shirt once in a while?
It's actually pretty good if people are motivated to build new colonies. On the other hand, it's frustrating if the optimal way of playing the game requires you to start lots of highly similar small outposts. We'll have to find a way to balance it. One way of doing this would be to make productivity research apply only in the colony it was researched in, instead of globally. Another way is to make trading relatively expensive. Anyhow, it'll be hard to balance, and we'll require a lot of testers once these features are fleshed out a bit more :)
A new idea for icons
"Drawing" 3D models and textures for a game is very different from "normal" drawing. A computer can take multiple relatively simple objects and textures (normal maps, height maps), apply a fancy lighting system and make it look pretty great. With the right settings, of course.
"Normal" drawing lacks those luxuries. The shadows, the reflections, everything has to be done by the artist. It's a lot harder.
Blocks in Colony Survival benefit from those fancy lighting systems. To make an icon, I just screenshot a block and crop out the block, and it will look relatively decent. A couple of months ago, we updated a couple of icons. For example, the bed had a terrible hand drawn icon, and now it's a screenshot of an in-game bed. It looks a lot better.
But I can't do that with a lot of other items. Science bags, bread and wheat seeds lack an in-game 3D item. I can't screenshot them, so they've got hand drawn icons and a decent amount of them is terrible.
With the happiness mechanics and the new world in 0.7.0, we're going to have a lot of new items without in-game 3D models. Cacao, chocolate, sugar, cups of tea and coffee, etcetera. Instead of expanding our repertoire of terrible hand drawn icons, we believe it's a good idea to start updating our old icons, and to replace them with rendered icons. Make a simple 3D model that will not be used in-game, and render it in software like Blender. I've been experimenting with it this week, and I'm quite happy with the results. One of the results is the image at the start of this Friday Blog :)
Last week, we explained how we could add happiness to the game. I'm pretty sure we didn't have a single negative response! The idea seems to be pretty popular, and we're pretty sure we're going to add it in 0.7.0.
We've been thinking about the full consequences of adding happiness, and we ran into some inevitable mathematical problems. It's pretty difficult to explain, but I believe it's pretty interesting, and we'd like to explain why we make certain choices.
The first concept you need to understand is "required colonists". To stay alive, you need food, ammo, and guards. If you lack one of these three, your colony will inevitably collapse. Let's say roughly 1 in 7 colonists needs to be a guard, 1 in 7 colonists will need to produce food, and 1 in 7 colonists needs to produce ammo. This results in the next graph:
The dark green line is the total "required colonists" to stay alive. The black line is the total amount of colonists. The space in between them represents the amount of colonists that can be dedicated to non-essential tasks, like research, producing large amounts of cosmetic blocks and digging giant holes.
For colonies with less than 100 colonists, these colonists might not be essential to keep the colony alive in the next 24 hours, but they are essential for research and to gather resources for a basic fort. From 100 to 300~500 colonists, most people still manage to find purposeful work for their colonists. But larger colonies often have a surplus of 'useless' colonists. We often see entire skyscrapers full of farmers while the colony already has a 150K food surplus. It's where the game becomes less challenging and more repetitive.
We've been thinking of how to prevent this for a long time, but we didn't want to add arbitrary requirements. It's very frustrating if your colony collapses because arbitrary item '25C' isn't present.
The happiness idea as explained last week fixes the issue above, but if implemented exactly as described, it'll inevitably destroy itself. Here's the math:
every new colonist adds +1 to global unhappiness
this can only be countered by providing every colonist with new happiness items
as your colony expands, the total amount of required happiness items grows both because every new colonist needs those items, but also because every colonist needs more items as the colony grows and unhappiness increases
Here's the problem visualized in a graph:
The green line in the graph represents the 3 out of every 7 colonists that are required for food and defense. As your colony grows, you'll need to add a happiness item like tea to counter the unhappiness generated by new colonists. Let's say, as a hypothetical number, that 1 out of every 7 colonists needs to produce tea now. Not a problem, you've still got 3 per 7 colonists left to do other tasks. But keep adding required happiness jobs, like colonists who produce coffee and chocolate, and you'll reach a hard limit. If 7 out of 7 colonists are required to work to merely sustain the colony, there's no room for growth and creativity. And it's of course impossible to require 8 out of every 7 colonists to do essential work, but that's where last week's proposal inevitably leads.
The graph above compares the total amount of "required colonists" to sustain your colony, and as you can see, it quickly surpasses the total amount of colonists in your colony. Which means the game becomes impossible.
Instead of requiring 1 out of every 7 colonists to produce, we could make it so that 1 colonists can produce enough tea for 20 or even 50 colonists. But this would mean that happiness is a barely relevant mechanic at the start of the game, and it wouldn't fundamentally solve the problem. It would just occur later in the game. We're thinking of a 3-tier solution.
Tier 0
These are the standard jobs, without upgrades. They produce too little to keep up with the many demands of a large colony.
Tier 1
Tier 1 will be productivity improvements. They'll be done by the scientist. In the past, we were opposed to productivity improvements, because larger colonies had an excess of colonists anyway. In 0.7.0, they'll be fundamental to your Colony's Survival. You'll have to improve the productivity of certain jobs to prevent the red line from crossing the black line in the graph above. For example, the output of flax farmers could be increased from 100% to 200% (or more!) in multiple steps, so you'll need less colonists to produce clothing. The same improvements can be applied to others who gather and process resources.
Tier 2
While Tier 1 is focused on optimizing existing jobs, Tier 2 adds new jobs. We don't want these jobs to completely replace older jobs, but they'll dramatically optimize a part of the production line. Let's use clothing as an example again. Currently, the tailor turns both flax into linen, and multiple pieces of linen into clothing. We could add a new job where a colonist uses a machine to quickly turn a significant amount of flax into a significant amount of linen. Your tailors will still be required to turn linen into clothing, but they can now completely focus on this complex task, while simpler tasks have been outsourced to colonists with machines.
We'll try to apply the same principle to more jobs. The Tier 2 jobs might require electricity, to differentiate them from other jobs and to reward players for setting up an electricity network.
Tier 3
Ultimately, with the solutions above, we will still hit a limit where the colony can't produce enough happiness to fuel growth. And we know there's a lot of people who just want to recruit as many colonist as possible, even when they've run out of content. That's why we'll certainly add some kind of "infinite research", that for example improves the happiness produced by happiness items by 2% every time the research is completed. It'll cost a lot, to keep large colonies occupied :)
So, this is how we want to keep the game challenging for colonies with ~250+ colonists. You'll have to explore the world and utilize new inventions to balance happiness and productivity. We'd love to know what you think about it!
How to mail
We've been thinking for a while now that we should set up some sort of mail system. We'd like people to be able to subscribe to five kinds of updates:
A mail every time we release a Friday Blog
A mail every time we release a smaller update like 0.6.3
A mail every time we release a larger update like 0.7.0
A mail once we leave Early Access
A mail every time the game is on sale
I can imagine there are a lot of people who don't read every Friday Blog, but who would want to be notified when there's an update. The system above would be very useful for them.
There are a lot of services online where you can set up a system to mail large amounts of people. Nearly all of them seem to be meant for people who want to spam as many people as possible with fancy newsletters, and they become very expensive once you've got a lot of subscribers. There are cheaper alternatives, but they require you to set up your own cloud server, which seems a bit like overkill. We're now thinking that an RSS system might be ideal, but our ears are open to other solutions :)
Our biome suddenly turned tropical
We live in the north of the Netherlands. That's less than 200 km/125 miles south of Scandinavia. When it's 25°C / 77°F here, it's considered to be pretty hot. It's seldom much warmer than that, so we don't have air conditioning.
The prediction for today is 36°C / 97°F. That's very close to the highest temperature ever recorded in the Netherlands. For some reason, it's hotter here than anywhere else in Europe. It's chilly in Spain, Italy and Greece, compared to the Netherlands. It has been pretty hot here for weeks now, and they're predicting it'll stay like this for another couple of weeks. We're not sure why the weather gods are displeased with this country!
Despite this, we've continued to work to the best of our ability. We've made good progress on the "behind the scenes" systems that are required to make multiple colonies function. The Progress Meter from previous blogs is pretty outdated, now that we've decided to change our plans for 0.7.0. We'll make a new Progress Meter for next week's Friday Blog!
We switched from green to blue for those with color blindness. Light blue for previous progress, dark blue for this week's progress.
Last Saturday, hundreds of people had already answered the survey. Thanks to everybody who participated! The results are very interesting. A large majority was in favor of adding post-medieval tech like electricity. But modern tech like nuclear reactors and jetpacks was pretty controversial. The group opposed to modern tech was nearly as big as the group in favor of it.
One of those opposed to modern tech is our most prolific modder, Pandaros. A couple of weeks earlier, we already had an intense discussion with him about this subject. He doesn't want the game to turn more into a tower defense game, a sentiment expressed by others as well. He wants us to add other sources of difficulty instead of merely "kill the monsters". Many people want us to add a happiness-mechanic that forces players to keep their colonists happy.
We like the idea, but we always thought it would result in two problems:
A.) Experienced and skilled players will quickly optimize their colony's happiness and gain the benefits of a happy colony (for example, increased crafting speed). Their stockpiles, which often already contain 100K+ food, will grow even larger. New and less skilled players are often already struggling to survive, and happiness will make the game even harder for them. If their colony becomes unhappy, it might start a death spiral they cannot recover from.
B.) The happiness feature can be very extensive. It could add politics, social policies, crime & justice, revolting colonists, etcetera. This will take a very long time to develop.
This is what we were pondering about last Saturday. Simultaneously, I hadn't played any games for more than a week, and that's inexcusable for a game dev ;) So Zun and I started looking for a game we could play together. We ended up choosing Civilization V, something we hadn't played in many years.
After playing for a while, our civilizations started growing unhappy. We searched for the cause of this, and found it. In Civ V, the growth of the population causes unhappiness. This can be countered by building things like the Colosseum, theaters and stadiums.
Moderate amounts of unhappiness in Civ V don't cause death spirals, they just slow down the growth of cities. Which in itself, was the cause of the unhappiness.
Suddenly, we realized that the happiness mechanic in Civ V solves all the problems we expected from a happiness system in Colony Survival. It's an additional challenge for players that grow quickly, but it's not a problem at the start of the game. Unhappiness prevents growth, but it doesn't cause collapses. And the system is pretty simple, it's not excessively complex.
It might look weird to make 'population growth' a source of unhappiness, but the end result makes sense. Small villages don't have theaters and stadiums. Primitive civilizations don't have luxury goods like coffee and tea. As cities and civilizations grow larger, they do start to offer more (material) sources of happiness to their inhabitants. Franchises like Total War use the same system. Population growth causes social unrest, which can be countered by building temples or other sources of order and happiness.
We think it might be a good idea to adapt such a system to Colony Survival. We've made a simple mock-up of what happiness might look like in Colony Survival:
Every new colonist will add unhappiness to the colony. With a "Starting Happiness" of something between 30 and 100, it won't be a problem for small colonies. But as you grow larger, you'll have to start producing goods to increase the happiness of your colonists. These goods could for example be clothing, jewelry, tools, shoes, coffee, tea, chocolate, luxury meals and books. They could also be services like religious ceremonies and doctors.
We'd like you to be able to select different "rations" for these goods. Coffee could for example be a rare luxury that your colonists enjoy once a month, or it could be so common that your colonists will drink it three times a day. The more common something is, the more happiness it provides.
When a colony becomes unhappy, it will be more expensive to attract new colonists to the colony. If the unhappiness becomes too high, we might disable the ability to recruit new colonists entirely. Colonists might even start leaving.
It will be possible to make sources of happiness with the resources found in the spawn area, but ultimately, you'll have to start outposts in different biomes to produce new resources for new sources of happiness.
We think it's a great system and we're very enthusiastic about it! We're considering to postpone the freeze/poison guards and work on happiness instead, but before we make this choice, we'd like to have your input. Would you like to see the system described above in Colony Survival? Would you mind if freeze/poison guards were postponed or even cancelled in favor of happiness?
Survey Results
Nearly 700 people participated in the survey, in less than a week! We're very happy with the huge amount of responses. Many people told me they'd love to see the results, so I've made a lot of graphs to visualize the answers.
The first question was "What should the priority of these features be?". Here are the four lowest priority features:
PVP had the highest amount of "very low priority" votes. We expected PVP to be unpopular, but we didn't expect it to be this unpopular, because it's a feature that's asked for pretty often.
With the recent sale, we got a significant amount of negative reviews complaining about the (lack of) tutorial. This isn't reflected in the votes. We think this is caused by the way the 'voters' were selected. People turned off by the lack of decent tutorial don't read our Friday Blogs and don't participate in the Discord.
We were surprised by the many "low priority" votes for decorative items, because they're suggested pretty often. Vice versa, we were surprised by the many "medium priority" votes for animations, because they're not complained about often.
The Yogscast wanted us to add more content by "copying" old jobs. No new features in these jobs, just new textures, new items and new crafting recipes. We agreed and we expected the idea to be relatively popular, but the feature received mostly 'medium' votes. I think it has to do with the unappealing description.
Boats scored worse than expected too, probably because they weren't called "ships" :) "Jobs with new features" scored pretty good!
Steam Workshop support scored a lot better than expected, so consider the priority to be increased. Better coop and multiple colonies scored best, and that's perfect, because that's exactly what we're working on!
Questions 2 asked "How should we divide our time between "more content" and "improve existing gameplay"?". Here are the results:
"4" was the most popular option, so that's pretty balanced and close to the middle. But it is closer to "more content" than to the other side, and that's pretty obvious from the results as well. A 75/25 split seems to be roughly the way you want us to divide our attention between more content and improving existing gameplay.
Question 3 was "Which direction would you favor or oppose?".
As described in the beginning, modern tech was pretty controversial. Magic was #1 out of 4 in "strongly favor" votes, but also #2 out of 4 in "strongly oppose" votes. It's pretty controversial, and we're not planning to add that either. The random events were pretty popular, but there was also passionate opposition in the text replies.
Question 4 asked "Some people are excited for more modern technology like electricity, others think Colony Survival should stay medieval. Is there anything you'd like to say about this subject?". The replies were text, so they can't be easily visualized.
The text replies were less polarized than you might expect. Most replies were something along these lines:
1.) If you add modern tech, it should be at the end of a long time of gradual progress 2.) Allow people to choose whether they want to use modern tech or not 3.) The modern tech shouldn't look too modern, it should have a steampunk-aesthetic or something similar
We haven't decided against modern tech, but we'll be sure to follow these rules above if we add it!
Question 5 asked for some info about you, "the voter".
We were surprised by the amount of people under 26, which includes us :P, who've played more than 25 hours! During the first hours, the percentage of people who had talked with us was a lot higher, but that's probably because of the @everyone on Discord. "Steam review, ever" means "I've written a review for a Steam game".
Question 6 asked "Was learning the gameplay of Colony Survival unclear or frustrating when you first started playing the game?".
Most people seem to agree that the game isn't perfectly clear, but it isn't frustratingly unclear either. Which we're pretty happy with, we had expected worse!
Question 7 asked people who've voted '1', '2' or '3' in the question above to explain which parts exactly were unclear. Many people answered that the game had already improved a lot since they first started playing the game, so their complaints weren't relevant anymore, according to them. The rest of the answers were pretty diverse. It doesn't seem like there's a single big problem that most people stumble over.
Question 8 was "We use many forms of social media to stay in touch with our players. How often have you visited our place on:". The possible answers were: -Never, I don't like that platform -Never, but I'm glad you use it! -I've been there a couple of times -I'm there often
A lot of people dislike Facebook, and to a lesser extent, Twitter and Reddit. Discord is the only platform where the votes for "often" outnumber "sometimes", a testament to the addictiveness of Discord ;) Our YouTube Channel was more popular than we expected. We'll be certain to upload videos of the new features in 0.7.0 when we've got something interesting to show!
Question 8 was "Thanks for answering these questions! Is there anything else you'd like to say?". We got a lot of very kind and encouraging comments. Thanks a lot for them :D
This week's progress
Multiple colonies is one of the most important features in 0.7.0. This requires us to change how many jobs, items and systems are saved. Many things that are now related to the player (difficulty, crafting recipes, etc) have to be connected to specific colonies instead. Simultaneously, we were already experiencing some problems with our savegames. Crashes often corrupted them. That's why we've spent the last couple of weeks working on savegames, adapting a new savegame system that both fixes the corruption problems and works with multiple colonies.
Yesterday, Zun released the last internal stable branch. A version of Colony Survival that works, with as many savegame improvements as possible. After he did that, he pretty much killed the game. We can't release functioning builds anymore. He's now rebuilding certain systems, and after a couple of weeks of work we hope to be able to revive an enhanced version of the game, with a rudimentary system for multiple colonies!
Thanks for reading this extremely long Friday Blog. We'd love to have your feedback about the proposed happiness mechanic!
During my short stay in France, Zun enjoyed some extra days of rest. Despite that, he also made some progress on 0.7.0. He fixed some common issues that occur in corrupted savegames, specifically the ones with invisible crates and beds. During that process, he also prepared them for multiple colonies! You can compare this week's Progress Meter to the one posted last week.
There has been some controversy regarding our plans for 0.7. Some people love our plans for more modern technology, while others think the game should stay medieval. We've discussed and thought about the subject a lot, and we decided we wanted to organize another survey. We'd love to know what you think, and the previous survey was very useful. We hope you're willing to participate!
Contest winners!
During the past week, many amazing screenshots have been submitted to the Industry Challenge. We've selected five winners. All of them will receive a Steam Key for Rise of Industry! They'll also be promoted to "King" on Discord and gain access to the illustrious secret Kings Channel ;) Here are the five winning submissions:
"Rise of Industry on the Final Frontier" by Aardvark
We were thoroughly impressed by the quality of the submissions and want to thank everybody for participating! We had a hard time picking the best five, and many of those who "lost" lost only by a very small margin. We'd love to organize new challenges in the future, and hope you'll participate again!
Holiday's over
I had a great time in Normandy, France. The castles and manors kept reminding me of Colony Survival, and the landscape is a great inspiration for the new world generation. The history of the region is also very interesting and awe-inspiring. Zun spent some days completely absorbed by an addicting book series :)
I arrived in the Netherlands again yesterday, and today work continued with renewed energy. We're hoping to make some good progress during the coming week! We'll keep you updated.
A chateau near Pointe du Hoc, last Tuesday. Full size.