JSON map format

  1. very fast building - faster developing process
  2. RTTI makes json serialisarion being automatic
  3. I know lazarus much better than QT creator.

That could also workā€¦ if you help them a bit with a mapeditor that has good defaults :).

For example :
-Sections for engine map objects and objects from mods should be separate in the editor. Furthermore mod section objects could have a text warning that using those object will require players to have/download the mod.

-What mod is required for the map should be decided by mapeditor and not mapmaker. If the mapmaker used a building or creature/art from certain mod mapeditor would mark it as required.


The only problem is random map generation.

I can see two options :

  1. By default it should only use the stuff from base game, and have an checkbox to enable map objects from all the mods that player has enabled in vcmi launcher.

or
2) what appears or not on the map based only on the template itself.

So how do you plan to make it work with random maps ? Any other ideas ?

This is current planned behaviour.

val-gaav,
Good suggestions. Some things to note:

  1. While I completely agree that list of required mods must be auto-generated manual modification should be allowed as well. For example if a mod changes properties of an object to a point that completing a map is impossible without said mod (e.g. changing creatures available in town). IMO there should be a mod dependency dialog that will allow to:
  • see list of required mods and allow to mark extra mods as dependencies. However mods with used objects should be locked from removal
  • for locked mods - see why mod is marked as dependent. For example - show list of objects from this mod that are used on map as well as location of these usages.
  1. I donā€™t think that objects from mods should be kept separately. IMO objects should be filtered by name or by function (tags?) instead of mod-origin. However, there must be an indication that object comes from a mod and especially - if placing this object on map will add dependency. For indication we can use either color-coding of item background or some sort of icon.

OK will do this soon (but with brief lock explanation in first version) - its time to test modded objects more intensively.

Adding mod id as a tag for object is not a problem, but for now searching is not implemented at all. Any specific suggestions for colour coding?

Can you show screenshots of current editor interface (in part of selecting and placing objects)?

Currently it`s almost same as OH3 editor - drag&drop from palette.


Suggestion how to organize objects viewing in editor
(if there are thousands of objects, editor will be slowed down)


Well, then IMHO by default map editor should not show them, and there should be checkbox in option (or some other on/off switch) to enable them, because unexperienced mapmakers may end up using them without much thought about it.


About the enabling mods in mapsā€¦ Having a map that requires a mod that changes castle armies to finish is a problem in itself, because player can always enable his own mod list that will brake such map balance . That is unless you will also give mapmaker a choice to disallow unwanted mods on his/her mapā€¦ (which again strikes at players freedom)
Generally I also do not think that mapmaker should have the possibility to change such things. Town lineups should be changed in mods and not in maps. IMHO map is no place to decide such deep game changes.

If one really wants to do such special map he/she should write his own mod for it. By placing an object from this mod on map it will be required and auto enabled. Yes it is harder to do that way but IMHO not that hard, and hard enough that only people who know what they are doing will do it.


There is also another thing that could be interesting to have . H3 maps have special placeholder with random creatures, artifacts, dwellings etc. Those work well and if a player has some mod on like fe. an extra neutral creature there is a chance to get those on map. Such random placeholders could be developed further in vcmi adding random banks etc. This would prevent mod dependencies unless mapmaker really wants to do a very specific map, and furthermore it would add some fun to playing the same map again as one could get a very different set of on map buildings.

Object count is not a problem - just a bit slower loading, 1-frame icons does not use much video memory and all rendering is hardware accelerated.

Each dwelling/bank has templates. There is no guarantee, that you place random bank, and will be picked up bank only with fitting mask. Same goes for dwellings. Or you use several RANDOM BANK placeholders hoping there is a bank with fitting mask, or use standart, and get non-passable incorrectly placed objects.

Nothing specific. Some things that may work:
a) grey for unused mods (similar to how H3 disables SoD objects in RoE maps). Light-yellow (warning) or light red (error) may work as well. Light green for already used mods, white for H3 objects.
b) grey for unused + random color for mods ( to make nice random - HSV color space, fixed saturation & value, random hue ).
In any case these colors should be subtle since this is just background info.

Castle armies are just an example. There may be cases that are hard to trace (e.g. theoretical map script may reference object from mod) or just mod that significantly alters mechanics or mod that simply changes passability of an object. All of this can be done but all of these are hard to detect.

Player freedom is not at danger - this is mostly needed for players who just want to play game. Players who are capable of figuring out that this mod is not actually required for this map can just fire editor and remove that dependency.
As Warmonger said - map makers should have more responsibility that players - Iā€™d rather have map with extra dependency than broken/unplayable map.

Oh - and placing object from that map to force dependency is an ugly hack. We can do better than that :slight_smile:

Nice idea. As Macron said - objects may have different passability so this may be a problem. However we already have such bahavior for dwellings. Passability masks for dwellings look like these:

random |   actual in-game dwellings
  bb        bb    bb    b
  vv        bv    vb    vb    bv  (and more)

v = visitable
b = blocked

So for banks we can create random object that during map loading will be replaced with any bank that fits into mask of random object.

Balance of such feature is another question - value of Naga Bank is nothing like value of Imp Cache so its availability & protection shouldnā€™t be the same. Perhaps random treasures (not just resource but artefact, chest or objects like scholar) may be more easy to fit & balance. Learning visitable objects (Marletto Tower, Stone of Enlightment, etc) can work as well.

@AVS
One thing regarding map objects from mods. Make sure that you can handle situation where two mods have objects with same name. This is legal situation - HotA and WoG have enchantress and they can work at the same time.

I donā€™t think this is sensible. Banks have not only various footrprints, but also various strength. No idea how mapmaker would balance the later one.

For now we have RMG to place random banks :wink:

As I wrote in wiki: 1) map is always part of core mod; 2) all objects from other mods have identifiers mod-name:object-id. But this is not tested well yet.

So here it is. VCMI random map in json format opened in map editor.
(Far from finish but this is good checkpoint)


Nice. Looking good. Canā€™t wait for it to get finnished. How far away from finish is it? 40%? 60%?

Take a look at wiki.vcmi.eu/index.php?title=Obj ā€¦ nce_format to keep track of progress.

UPD

and also here wiki.vcmi.eu/index.php?title=Use ā€¦ _prototype

Great progress!

However I see wrong WoG objects on your map. They should not be generated with current WoG mod. Or is it some map editor / ID issue on your side?

My WoG is probably outdated, will try to reinstall - launcher says that all mods are up-to-date.

UPD. Is WoG actually updated in repository (do not see any obstacle-object configugation)?

Hi there,

I have just registered here to tell you that I keep my finger crossed, and I am hoping too see VCMI map editor quite soon! I wish I could have helped with code, but as a 3D artist I can only say that I will make good use of it when it is released.

Good luck! :slight_smile: