Choicerer's Map Randomizer

Discussion of all aspects of multiplayer development: unit balancing, map development, server development, and so forth.

Moderators: Forum Moderators, Developers

Choicerer's Map Randomizer

Postby Choicerer » February 6th, 2018, 9:19 pm

Randomize or customize (almost) any map!

Includes 6 balanced terrain sets to choose from many options such as keeping certain terrains from the original map, mirroring the map, re-randomizing it after a specified interval, not re-randomizing tiles under units and many more. It is based off the Randomized Isar's Cross Map Pack, but has been improved in many ways.

Here is some more info about the options:

Terrain Sets:
You can choose one of the 6 Terrain Sets for a map. They all are designed to be as close to each other balance-wise as possible. But there are some subtle differences - Desert does not contain any swamp, but contains a bit more desert. Winter contains snow (which is special in its own right). Caves contain significantly more impassables and no mountains (to offset the cave terrain that advantages the dwarves - which does not appear in bulk).

Choose what terrain types/tiles to keep from the original map:
You can specify what terrain types should be randomised - if you decide to keep some, they still will change their appearance based on the chosen Terrain Set. Some terrain types, however, will never be modified. Those are caves, bridges, wooden floors and walls, and some impassables. In addition, you can prevent any base terrain type from being changed in your maps by applying the Castle Overlay (Cov) to them.

There are two randomisation algorithms to choose from:
The balanced algorithm ensures there is always the same ratio of different terrain types, although with small variations. The unbalanced algorithm is still guided by chances (expressed in percentages) of different terrain types appearing, but tends to vary a lot more, because no maximum amount of each terrain type is enforced. In addition, if some terrain is selected to be carried over from the original map, only the BALANCED algorithm will take that terrain into account when generating (or re-generating) the map (that is, it will decrease the appropriate terrain type amount accordingly).

The map can be mirrored or it can be different on each side.
If the mirror is not perfect or is causing a terminal loop, tinkering with the mirror adjustments can fix it. A terminal loop crashing the game, however, is unlikely, because there is a mechanism designed to change those settings should it occur.

You can set it so that the tiles currently occupied by units will not be re-randomised.
Terrain chances will be recalculated before every iteration of the algorithm depending on how many tiles of each terrain type remain unchanged. This is to prevent players from occupying terrain types that advantage their factions and causing the map to be smothered with them. If some terrain has been selected to be carried over from the original map and remain unchangeable, it will not impact the chances of a given terrain type generation if a unit is occupying it (because it never changes).

Lastly, you can set the random interval between the iterations of the randomisation loop, or you can toggle it off altogether.

Every player receives a question mark helper unit which cannot move, attack or be attacked but can provide information on the mod (including the selected options and the current mod version), but not for the currently playing side (so players can only access the info when somebody else is playing their turn in multiplayer)

You could even use the mod to only change the appearance of a map without changing any terrain.
Attachments
CMR_screen_2.png
Caves of the Basilisk - notice the caves remain unchanged
CMR_screen_5.png
Settings Screen
CMR_screen_4.png
Auction X
CMR_screen_3.png
Isar's Cross - The lack of fords has been fixed
CMR_screen_1.png
Isar's Cross - The lack of fords has been fixed
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 7th, 2018, 3:26 pm

Version 1.1 adds a checkbox to only change the appearance of a map, another one to turn off the question mark helpers and a slider to control the amount of embellishments.
Version 1.2 fixes a bug that multiplied oasis and other embellishments if some terrains had been kept from the original map.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 10th, 2018, 11:21 pm

Version 1.3 focuses on fixing the question marks and labels. It fixes question marks not showing any info (oops), prevents them from spawning on top of keeps/castles/any other terrain than chasms/offmaps and some impassable mountains (so they don't get in the way of the real units). It also does the same to the labels so they appear on off-map terrain and if the map is small enough /and/or has adjacent leaders (that serve as a starting point for calculating mark/label locations) then only 1 label appears at the top of the map. It also no longer displays a message where a question mark complains of being killed when a team that does NOT have a question mark loses all units. This should fix most question mark bugs, but the question marks can still be turned off.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 12th, 2018, 3:29 pm

Version 1.4 introduces a number of cool features.
Voting feature -
-If you are the first human player (usually the red player), you can start a vote to re-generate the map, but only on turn 1 if your leader hasn't moved at all. Then for the duration of that turn no units can move and players cast their votes. Next turn if the vote succeeds, the map gets regenerated AND you can start a new vote, but again, only if your leader hasn't moved and if you don't, next turn you can no longer do it. This is way the first human player (which usually happens to be the host) is prevented from abusing this feature to regenerate the map to their liking.
-Question marks and labels no longer spawn for AI players.
-Fixed the game generally breaking if the first side (red) wasn't human, but AI. Thanks to this wonderful first human player feature (which i'd had problems with - thanks to Enclave who helped me solve them), AI or empty sides can be put before human sides and the game will still work.
-Converted the question mark info menu to LUA. This makes it much more comfortable to browse it. The menu can now be accessed by observers (if they click on the question mark of the player who is currently playing their turn), but it can't be accessed by that player. Other players can still access it by clicking their own question mark. (sadly, this is due to the limitations of the Wesnoth engine, but the code has been improved by being ported to LUA, allowing the observers to access the info as well)
-Fixed some bugs affecting the terminal loop averting mechanism.
-Fixed only one label spawning for some maps which actually should have been getting the normal amount.
-I think that's all. I should have written down all the changes, oh well.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 13th, 2018, 2:40 pm

1.5 -
Bugs fixed -
-Max players variable had been only taking into account the human players which had resulted in bugs while playing with AI.
-The Death Loop Prevention function had been taking into account both the number of changeable and unchangeable tiles, resulting in slight imbalances on smaller maps, especially (this is part of the balanced algorithm).
-Impassables hadn't been appearing on mirror tiles of the tiles that had a unit on them EVEN if mirror had been switched off (this is an old one).
-Current terrain set had been lacking the "Picked by random" label in the mod info (in the event that it had been picked by random).

The code has also been tidied up, split into different files and commented for posterity.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 14th, 2018, 4:16 pm

1.6 introduces the Axis Mirror option to mirror around a column/row instead of 1 tile.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 16th, 2018, 5:28 pm

1.7 makes the mod compatible with maps that don't have an off-map border, i.e. have some terrain painted on the tiles that form the border (are inaccessible on the map). They won't get randomised now, so the balance won't be messed up.
Also prevents the game from crashing if tile 0,0 (border tile) has some unchangeable terrain tile (one that is defined by default or by the user not to be changed).
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Dharokan » February 17th, 2018, 4:03 pm

Hi Choicerer

I really like playing your random maps. Thanks for the efforts.
And this mod is working nicely on the Afterlife scenario now as well. Well almost...
The questionmark units you are using for the mod infos belong to the players sides and are therefore copied, too. As result, each player has to fight a bunch of unkillable questionsmarks xD
Of course you can switch them off in the settings.
I just think this pinpoints the fact that units are not the best idea for displaying infos. ^^


And last not least a request:
What about setting a value for special terrain density?
Or you could call it the plain terrain percentage ... I think you understand the idea ;)

Keep up the good work!
Cheers,
Dharo
Error: signature too large
Dharokan
 
Posts: 8
Joined: March 29th, 2009, 10:45 am
Location: Germany

Re: Choicerer's Map Randomizer

Postby Choicerer » February 17th, 2018, 5:53 pm

I just think this pinpoints the fact that units are not the best idea for displaying infos. ^^

They are THE best idea for displaying unsynched info. The only other way is using a menu that can be accessed in an unconventional way, such as: right click+left click.
But I didn't like the idea, I find it a bit too clumsy, personally.
And last not least a request:
What about setting a value for special terrain density?

And the request is motivated by what? I've asked you several times if the ratio was okay, and you said yes every time. So why would you need such a slider? I could do it I guess, I could make use of one similar feature I've already implemented...
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Dharokan » February 18th, 2018, 9:09 am

Choicerer wrote:
Dharokan wrote:I just think this pinpoints the fact that units are not the best idea for displaying infos. ^^

They are THE best idea for displaying unsynched info. The only other way is using a menu that can be accessed in an unconventional way, such as: right click+left click.
But I didn't like the idea, I find it a bit too clumsy, personally.

Allright - after all it's your decision. I just heard quite similar feedback from other players around.
Anyway since we can switch them off, it's all fine.

Choicerer wrote:
Dharokan wrote:What about setting a value for special terrain density?

And the request is motivated by what? I've asked you several times if the ratio was okay, and you said yes every time. So why would you need such a slider?

You did ask me on normal games like isars. Now playing on Afterlife is quite different. And there are many maps out there that rely on large areas of plain terrain. So the request has been for rising gameplay compatibility with as many maps as possible.
Error: signature too large
Dharokan
 
Posts: 8
Joined: March 29th, 2009, 10:45 am
Location: Germany

Re: Choicerer's Map Randomizer

Postby Choicerer » February 18th, 2018, 6:00 pm

Dharokan wrote:Allright - after all it's your decision. I just heard quite similar feedback from other players around.
Anyway since we can switch them off, it's all fine.

Let me elaborate - the idea behind the unsynched menu is that it can be accessed by anyone and you can control the players who can't access it at any given point. Because of Wesnoth Engine limitations, the only other possibility is adding a right-click context menu, however they can only be accessed by the player who is currently playing their turn only (not observers either). With the unsynched menu, I've been able to block the currently playing person from accessing the menu, and allow the observers to also access it (although by clicking on the currently playing person's question mark only, due to said limitations). If I add a right-click context menu, I'm allowing the playing person to access the menu and read the long info when they should be playing (and preventing that had been the original idea behind the marks). But two alternatives come to mind - either adding the right-left click unsynched menu you can find in mods such as New Settlers, Orocia or Era of High Sorcery (I believe) as an alternative OR I could make it that if no suitable terrain is found that would satisfy the conditions that I give, the mod will just try to put the marks on any void/off map terrain it can find. In the case of Afterlife, that would work, because the offmap terrain is in the middle only, but my function tries to place the marks on one of the map edges.

Dharokan wrote:You did ask me on normal games like isars. Now playing on Afterlife is quite different. And there are many maps out there that rely on large areas of plain terrain. So the request has been for rising gameplay compatibility with as many maps as possible.

I see. In that case, it can be done. It might be a bit tricky, because of how these terrain chances are implemented. I'll consider it and maybe do it soon.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 19th, 2018, 7:23 am

Well, as per Dharokan's request - here's version 1.8.
What it introduces-
You can now adjust the amount of flatlands to appear on a map (from -15 to +15%). Higher values, especially negative ones seem to sometimes mess something up on Isar's Cross requiring a restart (Wat?! I don't know if any other maps are affected by this).
No matter whether you have the question mark dewds switched on or off, you can now access the info menu by quickly left and right clicking one of your units in succession. (Thanks Ageless Era for being there for me).
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm

Re: Choicerer's Map Randomizer

Postby Choicerer » February 19th, 2018, 5:43 pm

1.8 broke both ways of accessing the info menu.
1.8b fixes them.
1.8c changes the start message so it's less ambiguous and changes the chiding message that is displayed if a player tries to access the info menu by left-right clicking on one of their units (but not the question mark).
1.8d fixes the current terrain set not displaying properly and a typo in the mod info menu.
Creator of Choicerer's Map Randomizer - goo.gl/VQDxYL The Better Names Mod -goo.gl/4vPbQ2
Curse of Satan Claus -goo.gl/BPEvSY The Trolling Mod - goo.gl/Df8vbH
Randomized Isar Map Pack and the Mushroom Isar.
Choicerer
 
Posts: 100
Joined: April 29th, 2017, 11:37 pm


Return to Multiplayer Development

Who is online

Users browsing this forum: Pentarctagon and 3 guests