H3 random map generator alternative


I’m creating an alternative random map generator for Heroes 3.

  • templates with much more control of what is generated resulting in more predictable and balanced maps
  • allows to customize generated doodad and creatures to create more thematic maps
  • no water or underground can currently be generated
  • max 1 town/castle per zone

Current version available here:

You can create your own templates or just try out the existing one.


Looks interesting, but fail to generate anything for me.

If you ever manage to add some water / island support please put it on GitHab under GPL compatible license. :wink:

Oops, my bad. actually it worked with your template and mid-sized map.

Upd: tried few more maps, still plenty of work required, but maps looks interesting already.

Do you have any specific suggestions for improvements?

I don’t think that I’ll able to point something that isn’t obvious, but here what I thought when tested few maps.

Looks like it’s don’t handle large zones well, sand terrain (when there no town at least) look like actual desert. Also it’s looks like on small maps there usually high-level monsters block passes between different part of same zone, but on larger there just too much of empty space when there not enough zones. So might be you want to separate settings for in-zone guards and guards on zones connections.

While you expose guard strength settings it’s looks like there not yet option to leave banks that have guards on their own unguarded. And IMHO guards still need to be adequate for the reward even if different sectors have different strength scaling.

PS: You can also remove my “fdgdfgdf” crap since I didn’t expect you saving it on server-side when creating it.

And yeah what I’m really like about your generator so far is how maps (with right sector size) looks visually appealing. I suppose you put reasonable amount of effort to make it use right sets of objects especially on sector borders and this is what VCMI generator lack. :frowning:

BTW we recently merged our map format support and @AVS implemented random map saving. So if you wish you can enable map saving in settings.json of VCMI daily builds:

	"general" : {
		"saveRandomMaps" : true,

Then they can be viewer in map editor:

It is all configurable - the ‘Desert’ zone type produces hollow sand desert with cactus because of the settings:
Obstacle% = 5 means there will be only a few obstacles in the zone and Obstacle Spread% = 5 will spread this few objects guite a bit.
The doodad settings have decorative % = 0, meaning there will only hollow sand tiles.
Then there are two doodad groups the first one will affect the zone borders generating only mountains if possible(the rest will be filled at random).
The second doodad group tells to generate in-zone cactus, bush, sand dune…
You can play with these to make the theme different.

As for objects, there are no default guard strenghts you need to create a object group and assign a guard power with a specific value, where 0 is undefended.
Zone connection settings only affect guards between zones.

I will also check your editor for random maps, do I need any special requirements to run vcmieditor.exe?

If it’s all configurable and there actual way to set appropriate guards that’s nice. Probably you need some more example templates since it’s could be a bit complicated.

No, just make sure gamepath.txt in directory with editor contain valid path to VCMI directory (do not unpack it into directory with VCMI binaries). And it’s can of course load H3M maps as well.

And obviously you need to use daily builds for map format to work:


  • HotA maps are now also supported
  • Less portals more ground connections
  • Portal locations more optimal
  • Action objects should not overlap anymore
  • Added posibility to specify approximate zone location
  • Decoration classes simplified
  • More items and item options
  • Added new validations for template errors
  • Various bug and cosmetic fixes


  • improved map generation
    • improved early fault detection and repair mechanisms
  • fixed town picking on create game screen
    • only viable towns are now selectable
  • you may now select multiple zone types for a zone
    • the zone type will be chosen randomly from the list
  • added new map object classes
  • warehouse now correctly generates any warehouse type
    • additionally specific warehouses were added (gold, wood/ore, sulphur/mercury/crystal/gems)
  • player teams can now be customized
  • custom border width of a zone type can now be specified
  • in object groups -> advanced settings it is now possible to specify a artifact/spell/sec. skill subgroup
    • these setting apply to shrines, spell scrolls, artifacts and witch huts

Hosting provided by DigitalOcean