4
\$\begingroup\$

I am planning a colony builder game, and one part will be food production. There will be a variety of crops available, but in the end they all serve the same purpose, feeding the inhabitants.

Many games offer different grow rates/yields for different crops, but this is a rather unsatisfactory solution, as it can easily lead to an 'optimal' crop, that then gets planted exclusively.

Instead I'd rather encourage having planting a variety of crops, since people like having a selection and not eating the same food all the time. On the other hand, I'd rather abstract away different kinds of food as much as possible, to not overwhelm the player with tracking a multitude of near identical resources.

Does anyone know of good methods on how to track the 'variety' that goes into a resource?

\$\endgroup\$
1
\$\begingroup\$

I would probably handle this by tracking subcategories of food. Lets say for the example you have subcategories meat, cheese and fruit but on the main game window they may all just be summed up as "food".

Then provide a benefit from having variety but don't make it mandatory. Like if a colonist eat different types of food they get a small bonus to productivity or health but otherwise nothing bad happens.

This will add some logic for you to code like tracking each colonists food consumption and AI for selecting the next food bit to eat out of the store. If the requirement for max bonus is eating 3 different food items you track the last two eaten for each colonist and a simple priority logic could be:

  1. Eat whatever is not on the previous list that the colony has the most of in stock
  2. Eat whatever the colony has the most of in stock

This way you give the player choice in how much they care to bother with the food details. You could even have a game option to enable or disable detailed food consumption (just apply some fixed average level bonus). This is because the food system is pretty much self-contained and not a core game mechanic. The downside is you still have to spend some effort coding and balancing something that is more a cool feature than a core mechanic.

You would of course have opportunities to integrate it further into the rest of the game if you want. Like making some colonists have food preferences, differences in yields or skill requirements for production. It all depends on the specifics of your game what would be a good fit and make for interesting mechanics.

\$\endgroup\$
1
\$\begingroup\$

Yes, humans like to have variety in their food, and your concern on a game design point of view is valid. A few short ideas about it; some other very clever folks here will probably chip in and give more/better tips but here goes:

Humans like variety in their food because it makes them happy. You could have a "happiness" meter attached to your settlers which includes how much variety there is in their food (I believe Banished has something like this).

Humans need variety in their food because it makes them more healthy. You could have a "health" meter attached to your settlers which includes this as well. Both "happiness" and "health" traits should be tied to the ability/desire of the settler to work and generate new settlers.

Humans need variety in the food they produce because they need to feed animals. For instance, you could feed cabbage to humans and sheep, and use wheat to produce bread for humans and feed hens.

If you have trading game mechanics, allowing the player to sell some types of crops could encourage them to allow more variety in what they plant and grow.

A way to avoid tracking food types once it's produced and still encourage the player to add variety is by adding random events such as droughts, plant illness and parasites. Those events would target only a specific type of plant and kill them before they produce edible food, and so if the player only has that type planted that year, famine arise due to lack of food.

Finally: seasons! Some food needs to be eaten fresh and can't be stored for later, like strawberries, but some food can be kept for colder seasons when crops don't grow (like potatos). Link this to the fact that some plants grow fast and some other grow slow, you make sure that players need to diversify what they plant.

On a final note, I believe Banished, Stardew Valley and Minecraft have interesting game mechanics regarding food and crops, so you might want to take a peak at those games and see how they did it.

\$\endgroup\$
2
  • \$\begingroup\$ Thanks for your answer. I would however like to avoid having to track the different foodstuffs after they are produced, mostly since the player has to manage logistics, and I am afraid that balancing all the foodstuffs between all the shops may turn into a micromanagement nightmare. \$\endgroup\$
    – Whitecold
    Oct 4 '21 at 10:04
  • \$\begingroup\$ @Whitecold I have updated my answer a bit. You might also want to add this information to your question! \$\endgroup\$
    – Vaillancourt
    Oct 4 '21 at 11:51
0
\$\begingroup\$

Instead I'd rather encourage having planting a variety of crops, since people like having a selection and not eating the same food all the time.

One common solution to encourage this is to give some bonus for food variety. The more different kinds of food are available to the colonists, the happier and healthier they are, which improves their performance in some way.

On the other hand, I'd rather abstract away different kinds of food as much as possible, to not overwhelm the player with tracking a multitude of near identical resources.

This is mostly an UI problem.

A common solution to this problem, as seen in many successful colony builder games like Dwarf Fortress or Rimworld is to design the inventory UI as a tree view with multiple levels of subcategories the player can expand and collapse. That means a player can see that they have 120 "Food". But if they want to know more precisely they can expand that "Food" node to see that they have 82 "Meat" and 38 "Vegetable". And then expand the "Vegetable" node to see that they have 12 "Strawberry", 21 "Lettuce", 4 "Pumpkin" and 1 "Grapes".

Similarly, the player can create stockpiles or item orders on any of these level. So they can designate a storage for "Pumpkins", "any Vegetable", "any Food" or "anything". That means the player can micro-manage by setting very precise designations if they want to, or macro-manage if they don't care what their colonists eat as long as they don't starve.

Note that if you intend to make micro-management optional, then you need to make sure that the macro-management settings still lead to acceptable results. For example, if reaching a large food variety bonus is important in your overall game design, then setting a food stockpile to "any food" should result in the colonists automatically filling it with a wide variety of food instead of just filling it to the brim with nothing but cabbage because there happens to be a cabbage patch nearby.

\$\endgroup\$
2
  • \$\begingroup\$ The balancing of stockpiles is my greatest concern, since the player is to have some control over transport. \$\endgroup\$
    – Whitecold
    Oct 5 '21 at 7:58
  • \$\begingroup\$ @Whitecold It is difficult to make any recommendations while knowing so little about your actual game. But if you would write a new question explaining why it is important in your game to balance stockpiles, what tools the player has for doing so and why those tools are insufficient, we might be able to find a solution. \$\endgroup\$
    – Philipp
    Oct 5 '21 at 8:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .