How to Click on a piece and evoke a move of other distant piece

Hello

I am redesigning a modue where I have this restricted access card displayed on the main board.I would like to be able that the owner of the card right click on it and a menu appeared where he could order the movement of other piece that is on the same player’s private window to move into a specific zone on the map board. I think that it will be made via a Global Key Command but at the designer’ guide it is not clearly explained how I can do it.

Could someone help me?

Thank you in advance.

For the piece you are trying to move off the private window, are there multiple copies of this piece in other private windows, or is it just in the one private windows controlled by the plater who owns the card?

Thank you for replying.

No; it is a single piece controlled by the player who owns the card.

This should be possible by adding a trait to both pieces. For the piece that would be moving from the private window to the map board, you would want to add a “send to location” trait. If you already have a zone established on the map board, you can use the “zone on selected map”, and list the map and zone you want the piece to go. You can also choose “location on selected map” to input X,Y coordinates if you want to get really specific as to where it is going. The main things you’ll want to fill in are the line “Key Command”, as well as Map and Zone under destination.

Screenshot 2024-01-13 194849

For the card you will right click on, you want to add in a Global Key Command trait. Here the main things you will want to fill in:

Menu Command: This is what will be displayed on the menu when you right click on the card.

Key Command: Can be anything you want, especially if you will only be using this ability from the card.

Global Key Command: This needs to match perfectly to what you listed in the “Key Command” line in the previous “send to location” trait. This is because this is the command this will send out to the other pieces.

Pre-select (Fast Match): I highly recommend you use this, if you can figure out a way to limit it to where you are going to draw the card from. This will keep the game from trying to send the command out to every single piece in the game, and limit it to only the area(s)/properties you set in this.

This can be much more nuanced, but I don’t think you’ll need it to. If you do need more help with it, let us know, and depending on when it is, I may be able to jump into a discord call or something else with you so we can look over it.

Screenshot 2024-01-13 195123

I know this is a lot to look at, but I hope I didn’t make it too crazy.

1 Like

BriMan83 has the correct answer, I just have a couple of points to add:

  1. If your map has defined Regions, the Send to Location option Region on Selected Map is also an excellent way to send the piece to an exact spot.
  2. In the Global Key Command, if the piece you are sending is not stored in a Deck (unlikely, unless it’s another card), make sure to set the Within a Deck, apply to option to No Pieces, as this can speed up the command considerably if your module has a significant number of pieces/cards in Decks.
1 Like

Thank you very much for your prompt and extensive answers.

It worked all right

Much obliged

I am very greatful to your suggestions that solved the problem. I have, though, another question, if I am not abusing your patience, as you have been so kind…

The thing is: I am trying to adapt a variant of Jim Dunnigan’s Origins of World War one (1969). Players have at their private windows a set of cards that, when played at the map board, allows them to make an action: send a diplomat (game piece) to a specific country (zone) at the mapboard (that was the main reason of my former question).

My second problem is:
Is there a way that those cards, before they are played on the map board, could not trigger, the sending of a diplomat? Ideally a player has those cards at his private window but he should only be able to use them (i.e. activate the “send a diplomat”) after the card isplayed on the mapboard and flipped face up. Is it feasible? At least for an ignorant guy like me?

Thank you

Yes, you would want to add a Restrict Commands trait to the piece which disables or hides (disable will gray out the option; hide will completely hide the option from the right-click menu) the appropriate command if the CurrentMap automatic property matches the name of the private window. If you’re using the Mask trait for flipping the card, you can use the automatic ObscuredToOthers property to tell if the card is flipped or not.

Ok Jonathan, thank you. The problem is that I am really ignorant using expressions.

When you wrote “the appropriate command if the CurrentMap automatic property matches the name of the private window”. How can I do that? When I place a Restrict Commands Trait, with the disabling restriction, if I write “CurrentMap” it works all right; the commands I want to restrict appear gray shaded and I cannot use them (but, of course, as it is only written “Currentmap” it is restricted everywhere; but I do not know how to write the proper comparison expression; I have made many trials. Could you help me please?

I will give a practical example with 1 single card (then if I can manage it I would extrapolate easily for the other Cards) if you would be so kind to show me how the expressions should be written:

Card Name: UK UK (traits shown on the photo below)

Placed in a Private Window named United Kingdom, whose Map Board name is UK Board, the piece is on a region called UK

That piece has 3 Commands to be sent to 1 of 3 regions on the main map that that are respectively named a) British Dip Action 1, b) British Dip Action 2 and c) British Dip Action 3 (but I could create a single zone that would include these 3 points)

The piece also has a trait that orders another piece to be moved from the same private window to a specific region on the Main Map (that I have already managed with your help)

So, when I add a restrict command trait I need to have a command (expression) that stipulates that, when the card is in the Private Window “United Kingdom” it cannot order the other piece to move. Better still If I could get instead an expression that would determine that the UK UK card could only order another piece to move when that UK UK Card is displayed face up on a specified zone / region of the Map Board.

Thank you for your patience

Yours indebted

José Miguel

Okay, first the simple version: if your Restrict Command has the expression {CurrentMap == "United Kingdom"}, that would prevent the command from working if the piece is on the United Kingdom map.

The more complex version (restrict if not in the specified Region or facedown) would be: {LocationName != "RegionName" || ObscuredToOthers}. If using a Zone instead of a Region, change “LocationName” to “CurrentZone” (and in either case, replace RegionName with the actual name of your Region or Zone). This says to restrict the command if the current location is not the one specified, or if the card is ObscuredToOthers (i.e., Masked).

Great!!! It worked all right; I worked up the “Complex” version and I’ve arranged all the 91 cards in my module. I am really greatful to your clear instructions.

I am getting a bit obsessed with this module, and I am afraid that I am beginning to be a pain in the ass, but I would like to pose you have another question. I don’t know if I should start another topic or keep on with this one (should I?); I’m posting in here because the things are linked.

Ok, the thing is: I have the cards that each player picks each turn from their private windows to send to their specific zones and, by unmasking them at those zones, they can send a Diplomat piece from the pool to a specific country (zone) on the main map, it works perfectly.

Now:

  1. At the end of each turn the player moves back the cards from the main map to his window by a “sent to location” trait (named “return home”); is there a way that, when the player orders the cards back to his private window, they would automatically mask again? Actually I am calling them “cards” but they are really pieces.

  2. The Diplomat pieces that are ordered to the main map (from a region pool in the private window), have values, from 1 to 9 (a layer trait with 9 levels). They too, sometimes, when they are eliminated, are returned to the pool. Is there a way that, when they are returned to the pool they automatically assume the value 1 (i.e. reset to the minimum layer value?).

Thank you very much again.

With increasing debt, yours

José Miguel

Since the topic of this thread is marked as “Solved”, it would be best to start 2 new threads for your 2 new issues. I know in general how to do them, but I’ll need to figure out the specifics.

Ok, I’ll do it.

Thank you very much Jonathan, for everything.