Townscaper – A building game inspired by the design of Scandinavian cities
bloomberg.com
bloomberg.com
It uses the "wave function collapse" procedural generation technique (has been on the frontpage before if I recall correctly) to select fitting tiles when the player clicks on the map to build something.
https://github.com/mxgmn/WaveFunctionCollapse
In the section about notable forks, ports and spin-offs there are some links to Oskar Stalsberg's twitter showing various points along the development of this digital toy.
https://github.com/mxgmn/WaveFunctionCollapse#notable-ports-...
I've been following this for years and it is really inspiring to see this be so successful.
I have the feeling that digital toys will become more common when gamedevs get access to things like GTP-3 seens like a really natural fit to me, supporting the creativity of the player by filling in blanks in a sufficiently advanced way.
- Oskar Stålberg's 2018 Talk "Wave Function Collapse in Bad North" (https://www.youtube.com/watch?v=0bcZb-SsnrA)
- Müller et al, 2006 - "Procedural Modeling of Buildings" (https://doi.org/10.1145/1141911.1141931)
In reality this algorith is very simple:
1) try to randomly place a part at X if it fits
2) try to pick the random part in such a way that once it will be placed we will maximize that probability that we will be able to build further on (so you just pick the part that reduces the chance of blocking the build in the next step in case nothing can fit anymore).
Then you just have to provide all combination of possible connection in terms of 2d/3d graphics.
The Townscaper seems to be using non-rectangular grid, so it's maybe more like a 2D graph of distributed nodes, with perhaps Voronoi algorithm to assign 2D geometry to each node. You make it sound trivial, it's a lot of work to make it work (and probably quite a few discarded prototypes along the way).
https://en.m.wikipedia.org/wiki/Wave_function_collapse
I actually found it a simpler and more elegant algorithm than what you describe and not hard to understand at all.
This is actually just one of the interpretations, there are more and some are gaining traction (see for instance https://youtu.be/5hVmeOCJjOU, S Caroll is a great speaker but you need to stay concentrated :)
People often forget the first versions of Minecraft weren't much more than a toy either, and look at it now.
My only complaint when last I played was that they didn't let you save a previous island after moving on to the next level, which makes progression somewhat bittersweet.
Is that right?
There is however some strategy involved in planning ahead. In the early game you might want to place buildings less optimally, to leave room for later game buildings that are worth more points, or set up large bonuses from other buildings.
How to play the beta: 1. Buy the game on Steam 2. Once the game is in your Steam library, right-click on it and select 'properties' 3. Click the 'BETAS' tab and select the beta from the dropdown list 4. Install the game 5. Enjoy :)
Heads up that it's only available for Windows at the moment.
I wonder would it be possible to extend the game with more city types. Cyberpunk-city builder would quite interesting.
What engine is this made with, if any?
EDIT: Nevermind, it is mentioned in the first paragraph:
> When Oskar Stalberg announced the release of Townscaper a few weeks ago, he made a point of calling it a “toy” rather than a video game — because it has no goal apart from the sheer enjoyment and satisfaction you get from seeing a pretty town rising from the sea as you click.
I’ve gotten more enjoyment from GTA V and Red Dead 2 from just random playing after I had already finished the story missions, because there was no stress to be good and no punishment if you make a mistake. You can just be, rather than having to be perfect.
Shorter existentialism: life is a massive multiplayer open world game.
No, that's not a requirement.
https://www.theatlantic.com/technology/archive/2019/10/dont-...