2020-09-12 Play by click

Many, many years ago, I maintained and developed a play by email (PBEM) game called German Atlantis. One of the problems it had was that it was a typical “explore, build, conquer” game. You gained more units and thus you had to give more orders, reports grew longer and longer, and I ended up not liking it in the end.

Today, @jbauer wondered whether there was something similar to Astrobotany out there. Astrobotany is a game where you get a seed that grows into a weird plant if you water it every few days. In order to do that, you log in and click a link. The interface is simple enough that you can “play” the game via Gemini. Sadly, that part is extremely boring. There are two things that are interesting: the plant develops and that is interesting to see: the ASCII art and the description changes over time, and you have “enough water” to water one other plant in the community garden every time you log in, which allows you to support a friend by watering their plant.

Astrobotany - Your Garden

   /              \      
  |                |     
  |                |     
  |     R.I.P.     |     
  |                |     
  |                |     
  |                |     
. |, _\/ .. \. \ /,|_ .  
  ^      '        `    ' 

name  : "Jason"
stage : fractal young agave (deceased)
age   : 21 days
score : 490177
water : N/A

You cry over the withered leaves of your plant.

Your plant was recently watered by Samsai.

Plant Actions

[1] 💧 Water
[2] 💀 Harvest
[3] 🍄 Fertilize
[4] 🔬 Plant info
[5] 📛 Plant name

[6] 🚶 Go back

Yes, I forgot about my plant… 😭

Thank you, Samsai! 🙇

But this got me wondering. We should design something for Gemini, perhaps? Maybe each player runs a small village in a generic non-tech setting. People are born and die, marry and separate, and every year players can make one decision: ask a character from a neighbouring village for marriage, send a character to help defend a village against marauders, focus on dairy, lumber, mines, salt, etc. Thus, the story progresses slowly, on autopilot, until you intervene and make one of these decisions?

OK, second iteration. There is a hex map, like a random Alpine map as generated by Text Mapper. On the map are villages and these villages belong to the various players.

Each hex also gets a wiki page. The report is generated for every hex and is appended to the wiki page. Players can edit those pages, add more stuff, elaborate, move stuff to other pages, but that doesn’t change the internal state of the game. This is how players who want to write some more can do so.

In order to keep the user interface simple, players don’t have a lot of choice. So I’m thinking: the game is simple. On auto-pilot, your village simply degenerates to some sort of hunter-gatherer tribe, decimated by bandits. The choices involve cooperating with other players and their villages or clans.

Terrain and trade. Every hex generates something that can help others: fish, lumber, salt, cheese, iron, crops, wool, leather, stone. Simplified, we could say that a hunter-gatherer tribe can grow up to twenty members, but with every trade you establish, you can add another twenty to your village: given the nine things I mentioned above, that would increase your village up to two hundred people. Cool. So, one of the actions could be establishing of regular trade with another village, giving you access to their raw materials, and giving them access to your raw materials. This would be a high level “trade” – I’m not actually interested in gold coins and prices, all I care is for trade routes to exist.

We could add calamities to mix things up. All would suffer. If there is drought, livestock perishes and people die. If you had built granaries, however, less people would have died. If there are marauders plundering the land, people die in the ensuing famine. If you had built palisades, however, less people would die. We could also think of bigger things: the Romans coming, the Huns coming, the plague coming, and so on. The thing all these things would have in common is that they would be a constant cause of degradation and impoverishment, where as the establishing of relations would mitigate these things.

We could add family politics. People are born and die, marry and divorce, they all have names, and so on. One of the actions could be to marry off children to other clans, strengthening your ties. I’m not quite sure how exactly this would work, however. Perhaps in the case of an invasion, all the related clans would help each other fight off the invaders, reducing their losses.

We could also add a little crafting or tech tree. I’m a bit hesitant, however. Perhaps it would make for a better game if there was infrastructure one could build, but it would also decay over time, leaving ruins. The constant maintenance required would also imply relations to other clans. For example: a secure water supply with an aqueduct requires trade relations with five villages having a stone quarry. If the player of one of these five quarries drops out of the game, the trade relation disappears and all the aqueducts start to decay until a replacement village is found.

Every turn the report would list the population changes, the buildings built and the buildings falling apart, and the options:

And then we just keep adding to the game if we like it. What do you think?


OK, third iteration. Looking at a random map, I remember that all the villages are placed in forest hexes because I felt that this is where villages here in Switzerland were typically built: the giant forests of central Europe. You need water to run the mills, but you need to avoid the flooding of the big rivers in spring, and you need to avoid the swamps and the Malaria they brought. I remember the Swiss valleys being locked in: they had cheese and desperately poor men that were willing to fight in other people’s wars, and they needed salt… Perhaps lumber only shows up in countries where you need to build a fleet, that is in a time of intercontinental trade (and war), which would be boring.

The longer I’m thinking about this, the more it all breaks down. Most villages didn’t need all that long distance trade, I’m sure. So... where does the need to cooperate come from? Or make it all fantastic? I’d like to keep it non-fantastic for as long as possible, though.

So... how about players getting to say where they focus their surplus production, and they all have the same options. Let’s start small.

  • grain
  • cheese
  • meat
  • fish
  • lumber
  • stone
  • fibre

Later, we can add more resources to locations at random. Perhaps people “learn” about a local secret: copper, tin, iron, coal, dyes, tulips. Or perhaps “switching” your resource focus actually means moving your village: up into the valley if you want to focus on dairy but your grain production is going to be bad; to the lake if you want to focus on fish but your stone production is going to be bad; or to a particular mine. The point is that the game isn’t about map exploration but about building resilient networks of resource sharing.

By default, about twenty people can live in an area as hunter-gatherers.

With each food connection, you can add another twenty people:

  • grains
  • cheese
  • meat
  • fish

Non-food connections offer other benefits:

  • one lumber connection allows you to build a palisade to defend against marauders
  • one lumber connection allows you to build a mill to double your grain production one stone connection allows you to build a city wall to defend against invasion
  • one fibre connection improves your chances of surviving harsh winters

I need to experiment with the numbers. Perhaps each village can offer two outgoing connections at most? We’d get this long term situation:

  • village 1 focuses on grain and shares with village 2 and 3
  • village 2 focuses on lumber and shares with 1 and 3
  • village 3 focuses on grain and shares with village 1 and 2
  • this allows villages 1 and 3 to build a mill each
  • village 1 has 60 people (20 + 20 from the mill + 20 due to grain from village 3)
  • village 2 has 60 people (20 + 40 due to grain from villages 1 + 3)
  • village 3 has 60 people (20 + 20 from the mill + 20 due to grain from village 1)

But with random events, things get more interesting: when the marauders come, all the mills are burnt down and all the grain is stolen and all three villages are reduced to 20 hunter-gatherers again.

So now village 1 decides they need a palisade. That means no mill, and thus it only has 40 people. The trio of villages is now better prepared to resist marauders. Perhaps we can start modelling how people from the “safe” village marry into the surrounding clans after the pillaging to replenish those other clans?

I still think that with just two outgoing economic ties, we’re often going to end up in trios? So perhaps we need to have a model that says what people are doing. If we have 20 people they just feed themselves. If we have 40 people, we can have one outgoing connection. If we have 60 people, we can have two outgoing connections, and so on? Perhaps more than four outgoing connections needs some sort of infrastructure investment, again: building bridges requiring lumber or stone connections.

I’m going to try and not model “be rich” but I guess we could: seven lumber connections allows you to maintain a ship which gives you a luxury level; five fibre connections allows your clan leaders to dress in fancy silks and gives you another luxury level. Luxury levels are essentially useless but could be a player goal? I don’t know. Maybe I don’t want to make a game about amassing wealth.

– Alex 2020-09-12 21:25 UTC

L-0: food, clothing, shelter. L-1:defense, education, industry, L-2: bond with other communities, L-3:fiefdoms - require nominating a player as chief

– Kevin 2020-09-12 22:16 UTC

I’ve thought about it some more. I think the problem is that I have a lot of ideas for programming. We could make the number of outgoing connections proportional to the population size and so the reactions to calamities would have to be a prioritisation of which connections to maintain; we could have invading troops on the map, and clans could move to different villages, fleeing from the troops, or hand over part of their produce, diminishing their resources… We could have colonisers arrive, and regimes collapse, and through it all the villages would try to survive, children are born, move away if there are no opportunities, or build the settlement; we could go all dwarf fortress here and simulate how people that are too closely related are not allowed to have children; and on and on.

But the question is, I think: would I want to program the game, or would I want to play the game? I’m starting to suspect that I wouldn’t actually play the game for long. I’m too interested in programming. And that in turn makes me think I should postpone the programming: let the enthusiasm run its course, and then do nothing. Why work on a game that I wouldn’t want to play.

– Alex 2020-09-13

I just can’t drop it... Got started with a little “orc village simulator browser game” that I’m planning on integrating with my Gemini wiki, Phoebe. I’m calling the game Anthe (another of Saturn’s moon, and one of the daughters of the giant Alcyoneus that got turned into a kingfisher).

– Alex 2020-09-14 21:03 UTC

OK, Anthe has basic population growth! Orcs procreate and reports are written to a Phoebe wiki! ♥

– Alex 2020-09-18 22:27 UTC

Please make sure you contribute only your own work, or work licensed under the GNU Free Documentation License. Note: in order to facilitate peer review and fight vandalism, we will store your IP number for a number of days. See Privacy Policy for more information. See Info for text formatting rules. You can edit the comment page if you need to fix typos. You can subscribe to new comments by email without leaving a comment.

To save this page you must answer this question:

Just say HELLO