Place Marker trait doesn't work right

I wonder if the OP is aware that Vassal has a tool that can convert an AdC module to a Vassal module.

2 Likes

My silliness prevents me from plumbing the depths of your acumen.

Christian, I appreciate your politeness and your long, detailed posts. I see what you mean and I am vastly in agreement.

My point is that ADC2 allowed me to do the game pieces and THEN start worrying about advanced features. (Which could be incorporated in a relatively simple, straightforward fashion anyway.) On the other end, Vassal forces me to be aware of everything in advance: which features I am introducing and which not, my design strategy, bugs, incomplete features, doubly and triply interconnected interfaces, traits nested within each other etc. All this may be easy to get along with for those acquainted with programming, but its deeply counterintuitive to my poor self.

Of course, from the viewpoint of the advanced user, vassal offers an infinite wealth of features and variables, plus the ability to script the modules. (Even if I am wary of scripted gamesets since it limits the potential for house rules.)

No, I wasn’t. Thank you for mentioning it! :slightly_smiling_face:

I just converted my old Cossacks! module and it is nice to see it again, even if its unplayable in this form. I might use the converted counters though!

@wifferboy beat me to it - well done :slight_smile:

For those that do not know or are wondering. Open the VASSAL module selector app, then press ToolsConvert module… and in the file selector navigate and select a Aide de Camp scenario file (.OPS). Then be patient as VASSAL imports the module and opens it up in the editor.

Perhaps a way to proceed will be to

  • Save the converted module, for future reference, as it is.
  • Make a copy and open it in the VASSAL editor
    1. Start by cleaning up things that seems irrelevant or complicated.
    2. Save the copy of the module and open it as a regular game
    3. Go back to 1. until you have something you are comfortable with

Then, once you feel up for it, add as much functionality as you would like to make the module as user friendly as you feel is needed.

A few tips:

  • Start with a simple module: Map with a grid and pieces. Then start to add functionality to the pieces. To that end, Prototypes is a good way to go.

  • Piece Prototypes are a good way to make common behaviour for many pieces in one place.

  • Prototypes are cheap in the sense that one can have as many of those as you like.

  • Nesting Prototypes (via PrototypeTrait) is a nice way to expand upon functionality. For example

    Unit: German half 3rd guards division
      MarkTrait: CF = 8
    Unit: German half 1st division
      MarkTrait: CF = 8
    Unit: German half 2nd division
      MarkTrait: CF = 8
    ...
    Unit: Russian half 22nd division
      MarkTrait: CF = 10
      Prototype: Infantry
         MarkTrait: Type = Infantry
         Prototype: Land unit
           DynamicPropertyTrait: Strength 
           DynamicPropertyTrait: Mode 
           ...
    

    E.g., all infantry units have the Infantry prototype, and that prototype has the prototype Land Unit. Another prototype would be f.ex. Artillery or Cavalry

    I.e., you can think of Prototypes as something like Aide de Camp Classes.

  • Use MarkTrait for unit or prototype constants

  • Use DynamicPropertyTrait for unit or prototype variables. Note, each unit will have their own value.

  • Use LayerTrait to graphically reflect different states of a unit or prototype.

  • Use LabelTrait to decorate a unit or prototype with notes or text

  • For games where information is hidden, consider the RestrictAccessTrait, RestrictCommandsTrait, and MaskTrait

  • Zones are a good way of defining areas of the board that are distinct.

  • You can add as many “boards”, “hands”, “private displays” as you may need. For example, you can make a board for each faction that represent the OOB for that faction.

  • Defining a TurnTracker element is a nice way for users to keep track of the current turn. To tie it to a Game Turn marker and track on the board will take a little more though.

  • Markers used in the physical game are not always best dealt with as pieces in VASSAL. As discussed above, when a unit is in a certain state, it may be better to represent that by a LabelTrait

Good luck with your module, and looking forward to see it in the VASSAL library :slight_smile:

Yours,
Christian

2 Likes

Hi Christian,

I appreciate your throughgoing post, as I have appreciated all comments posted in this great discussion. I am going to print all of it and use it for reference.

As implied, I have come to regard this module (and Vassal in general) like a dungeon to be navigated in arms and fought to the bitter end :japanese_ogre:

:smile: :smile: :smile: :smile: :smile:

We’ll see if anything comes out of it!

Lorenzo

1 Like