7
$\begingroup$

So im really not sure if this is the correct place to ask this, however i cant think of another place where it would be more appropriate to ask, so correct me if this is the wrong place to post!

So i have a little game that i like to play with about 20 of my friends. I usually design a world with photoshop, and we use it as a sort of online boardgame, where we build settlements, kingdoms, armies e.c.t. Recently however, we have started to look into new land claiming systems. With our current system, each player pays a small amount of their money, to purchase a new tile of land. We have the map split into hexagons on an excell spreadsheet. Currently, if a player wants to buy some land, they would have to let either me or another close friend of mine to update the map by dragging a hegagon with their designated colour shaded in, onto the map to show that they now own it. As you can probably imagine, this is extremely tediouse and time consuming, especially with so many people.

To combat this, we have all been brainstorming new ideas for land claiming, and we settled on a particular idea that we all liked. That idea, involves using settlements as the main claimer. We would like it very much, if everyone would pick where they want their settlements, and i could mark that down somewhere, and some software or tool would draw a perfect organic border around all the settlements. It's kind of hard to explain via text, so i have drawn these diagrams to show what i mean. Below, i have an image of an island world. The blue dot represents a settlement. Currently, the blue settlement would claim the whole entire world, as their are no competeting settlements to get in its way. enter image description here But now, another red settlement has cropped up on the map. This means that the blue settlement now has competition, and a border is drawn between the two settlements automatically. enter image description here So, this is what im asking about. This is probably really overly specific, and i dont imagine i've explained this very well, but this is a sort of summary of the tool or software im looking for. A system in which i can plot down the settlements, and watch the organic borders be drawn between all the different kingdoms. I would again like to appologise for how specific this is, and i also appologise of my english as im still in the early days of learning to speak it. Thanks in advance to anyone who took the time to read this! (i am using Windows 10, just to clarify)

$\endgroup$
7
  • 1
    $\begingroup$ Hi and welcome to worldbuilding SE! I took an overlook of your question : Do you ask about how you can make it in game design/mechanically-wise, or as a rule of your world (people inside it know about this concept)? If it's the first, it's ill-suited for this SE as it's all about worldbuilding (check the tour :)). You might consider Role-playing SE for pen and paper games -though be cautious about asking for software, it's often opinion based and can be closed- or game dev SE if you are making a video game. if it's the latter, then it's good! $\endgroup$ Feb 11, 2021 at 8:55
  • 1
    $\begingroup$ Hey Tortliena! Well, the question is actualyl sort of aimed at both points. I would love to be able to use this is not only my own map building, but also in the game. Sorry if this was not appropriate! $\endgroup$ Feb 11, 2021 at 9:08
  • 3
    $\begingroup$ Can I suggest you gamedev.stackexchange.com $\endgroup$ Feb 11, 2021 at 11:19
  • 4
    $\begingroup$ As a software engineer, I'd say what you're asking for is... complex. How much territory would be "organic"? Should the border be a straight line halfway between settlements, a circle centered on the settlement, or something else? If someone puts a settlement half an inch from another settlement that is on the coast, does the new settlement automatically claim 95% of the available land area? Adding in more than one settlement would further complicate things. I doubt there's a software to do this. $\endgroup$
    – Frostfyre
    Feb 11, 2021 at 13:27
  • 1
    $\begingroup$ You may want to look into Voronoi partitions. $\endgroup$
    – rek
    Feb 11, 2021 at 20:43

2 Answers 2

23
$\begingroup$

In a pure mathematic world - you want to generate a Voronoi diagram.

enter image description here

Here's an online webgl tool that will do it for you: http://alexbeutel.com/webgl/voronoi.html

However it's perfectly straight - it's not "organic". The organic border will depend on things like terrain and resources and history, it's not possible to generate a correct organic border without knowing these things.

You could fake it by modifying the algorithm to include some randomness.

$\endgroup$
3
  • 8
    $\begingroup$ You could tweak it by adding a "terrain coefficient": expanding on planes is easier than on mountains, etc. So planes have a x1 coefficient, while mountains have a x0.7 coefficient, for example $\endgroup$
    – L.Dutch
    Feb 11, 2021 at 9:22
  • $\begingroup$ Could also add some light randomness which favors countries with less tiles too, for cases it's only plains going on for kilometers. Also could help balancing your game so that by making relatively similar country sizes. $\endgroup$ Feb 11, 2021 at 11:52
  • $\begingroup$ @L.Dutch-ReinstateMonica A little more sophisticated modelling (have a degree of pushback to the nearest terrain transition / natural border instead of just fixing the border at place of meeting), and it automatically follows rivers. (Having the rate be partially a factor of the population too… would probably make this unnecessarily complicated.) $\endgroup$
    – wizzwizz4
    Feb 11, 2021 at 21:42
7
$\begingroup$

While this would initially seem like a case for a voronoi diagram, mapping movement of cultures across a map would appear to require more complex rules than a mere voronoi diagram.

Fortunately, the OP is already using a hex-based system. By assigning different costs to the different terrain types of the hexes, expansion can be modelled more realistically. Terrain with a higher traversal cost would slow expansion.

A search of the web shows many hex-based mapping tools, but unfortunately none appear to include the ability to program custom behavior.

Perhaps unfortunately, a solution to this problem would most likely involve writing custom software. Since the OP mentioned playing over the web, it should be possible to program such a browser-based game using javascript... if the OP is or knows someone able to write such a program. Alternatively, it might be possible to find a third-party developer who could realise this project, but such a person would likely require either a strong interest in playing this game, or a financial consideration, either on a time-spent or a fixed price basis, or in exchange for the rights to the concept, meaning that they would then sell the end-product to others to compensate them for their effort.

$\endgroup$

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