Hey, everyone! VS Dave here.
It’s a really exciting time here at Versus Evil because we have so many awesome games coming out, and we’re beyond stoked to talk to you about them.
Coming up in May is The Hand of Merlin, a rogue-lite, turn-based RPG that stylishly combines Arthurian Legend with sci-fi. For its Early Access release on Steam, the dev team has been hard at work testing, balancing, and just all around polishing to make it the best game it can be for you!
Today, we’re going to talk a bit about map variations with Marko Pipal, Lead Programmer at Room-C Games.
Take it away, Marko!
The Hand of Merlin: Dev Blog
As we’re nearing our early access release, we’re looking at things we need to improve during it. We have some plans and ideas of additional content to add during EA, but map variations are at the top of that list.
As Mat has been testing combat a lot and playing through the game, he agreed that he’s getting sick of playing on the exact same maps every time. Each map is tied to an encounter, but the encounter drives the initial combat conditions.
Based on your choices during the encounter, you might change the position where your units spawn, or whether the enemies start first, or their numbers, but ultimately, it’s still on the same map with the same layout and cover placement.
The core of the issue could have been solved with procedural generation had we approached our map system differently all those years ago. However, it’s important to note that even procedural generation has its issues. Maps could be generated with very bad layouts, bad spawn positions, and generally require a lot of tweaking of a black box system to get a good enough map generation algorithm.
Of course, this only applies if the map generation runs on the players’ machines, but there’s a good middle ground: generate the maps in the editor and save the good results. Unfortunately, it’s a bit late to think about that for this project. Next project perhaps. 🙂
For Merlin, we’re doing it the “dumb” way, which is luckily also very simple. Duplicate the map, change the layouts, polish the visuals. We did a test run on one map called Meadow, and it took Mat (cover placement) and Lucija (visual polish) less than a day to create the variation. Here you can see the result.
I also had to add some tech to support map variations. Since encounters define the combat map to load, they would have to be in control of the map variations. To keep encounter changes to a minimum, they can now reference a Skirmish Map Set resource file that just has a list of maps to randomly pick from.
Once an encounter links to this resource, only that resource needs to change to add a new variation, instead of potentially multiple encounters that might use the same [set of] maps.
Our plan for early access is to create variations for the most important maps. The maps that get seen most often will be prioritized over maps that get seen less often. Ultimately we’d like to add variations for all maps, but this really depends. Some maps might not need variations because they’re so rarely seen it would make little difference.
We’re also still thinking whether boss fights need variations, since they’re kind of set pieces and intended to be tougher than other fights – maybe they would benefit from not having variations so they can be “optimized?” Hopefully, you will all tell us about it during EA!
In the end, map variations are here to solve the issue of replayability, so each run feels fresh in as many aspects as possible. Tell us what you think about it on our Discord server. We’re happy to receive feedback even now before EA.