Vassal - Latest posts https://forum.vassalengine.org Latest posts Barbarossa Army Group North, Kieve to Rostov, Army Group South, Army Group Center Just do a search for Barbarossa in the module library and you will see several module options for this series.

image

]]>
https://forum.vassalengine.org/t/barbarossa-army-group-north-kieve-to-rostov-army-group-south-army-group-center/89956#post_4 Fri, 20 Mar 2026 20:15:10 +0000 forum.vassalengine.org-post-177406
Help with hex calculations This is absolutely splendid, thanks! I had already found the page from Redblob Games, and I was preparing to use those methods, but your post gives the algorithm in a ready-to-type-in form!

I have been busy splitting my code into a fourth action counter (as discussed in my other thread about execution speed), so that the added calculations will not slow the code down.

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_6 Fri, 20 Mar 2026 18:19:55 +0000 forum.vassalengine.org-post-177405
Barbarossa Army Group North, Kieve to Rostov, Army Group South, Army Group Center Sounds great. I would prefer to exchange files however; I am not able to locate the Vassal module for this game. Do you know where it is? Also, do you have a preference for sides?

]]>
https://forum.vassalengine.org/t/barbarossa-army-group-north-kieve-to-rostov-army-group-south-army-group-center/89956#post_3 Fri, 20 Mar 2026 15:00:00 +0000 forum.vassalengine.org-post-177404
Adjusting the latest PoG Module fort solo play Have you tried contacting the project owner? Cattlesquat

You can request a version update with the change.

That said, the simplest fix is to update the Allied Powers Player Hand and Central Powers Player Hand Board (And any other location in which cards will be dealt to) with the following Key Command application. I would go back and do this as an update to the original 10.8 version, to retain the original card play method versus creating more boards which would create more player confusion. The original card dealing method by cattlesquat is an elegant method for dealing the cards to the player boards. But remember to update the new version number, also to limit confusion.

Again, I recommend attempting to contact the current project owner, however you may consider creating a separate project page specifically for Paths of Glory CDG Solo System as it would prevent confusion for new players as to which version to download and play, depending on if they want the original version or the CDG Solo System version. At any rate, communication with the current module owner as to your requests, and/or intentions is always the fair thing to do, and when appropriate, give credit if you post a new project.

]]>
https://forum.vassalengine.org/t/adjusting-the-latest-pog-module-fort-solo-play/90000#post_2 Fri, 20 Mar 2026 14:11:04 +0000 forum.vassalengine.org-post-177403
Issues with Download, Installation or Running being Blocked
adamevois:

That usually works without disabling protections completely.

Just to be clear: The two methods either downloading via curl or some other utility, or xattr on MacOSX does not disable protections completely - only for Vassal. Also, the method of going through the GUI does the same as the xattr method.

@adamevois - if you have screenshots that illustrate the procedure on a relatively new MacOSX machine, please consider to post them so that we can add it to the main body of the article.

Yours,
Christian

]]>
https://forum.vassalengine.org/t/issues-with-download-installation-or-running-being-blocked/79316#post_4 Fri, 20 Mar 2026 12:58:22 +0000 forum.vassalengine.org-post-177402
Help with hex calculations
steenkh:

In my latest version of the module for “Carrier Battles: Philippine Sea” I make some hex calculations that sometimes do not give the right result. Maybe somebody could advise me a better algorithm.

For hex-grid calculations it can be beneficial to do a transformation to different coordinates. In particular the so-called cube coordinates can be quite beneficial.

If you have the location (x,y) where x is the column number, and y the row number, then the cube coordinates q, r, s are given by

  • q = x
  • r = y - (x + o * (x % 2) / 2)
  • s = -q - r

where % is the modulo operator (x % 2 is 0 for x even, 1 for x odd), the division above is a truncating (integer) division (3/2 = 1, f.ex.), and o is an offset (0 or 1) depending on whether rows are high or low in even columns.

Distance between L1=(q1,r1,s1) and L2=(q2,r2,s2)

|L1 L2| = (|q1 - q2| + |r1 - r2| + |s1-s2_|) / 2

This means that distances calculated in the column or diagonal directions (straight lines) are fairly straight forward.

For more on different hexagonal coordinate systems, see this excellent page.

Incidently, Vassal uses cube coordinates internally.

Also note, that the the calculations above are entirely integer calculations, which means there’s no rounding error problems.

I recreate these coordinates in my module The Battle of Agincourt. There, I need to know, given a units facing

  • whether the unit is attacked from the rear or flanks.
  • what the range to another unit is when calculaing archery penalties,
  • and, as far as I remember, a few other things.

Suppose you have configured your grid to have locations of the format XXYY where XX is the zero-padded column, and YY is the zero-padded row. Then you can do something like

Define similar properties for other locations - say Target to have those in the cube coordinates. Then you can calculate distances like

  • Calculated Property
    • name: DistanceToTarget
    • expression: {(Math.abs(TargetQ-LocationQ)+Math.abs(TargetR-LocationR)+Math.abs(TargetS-LocationS))/2}

Because the calculations of row and column numbers uses Integer.parseInt, everything will be done as integer calculations with no rounding errors (possibly overflow - but very unlikely).

Hope that can be of some help.

Yours,
Christian

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_5 Fri, 20 Mar 2026 12:45:50 +0000 forum.vassalengine.org-post-177401
Adjusting the latest PoG Module fort solo play I have the latest (10.8) module for PoG and I would like to adjust it for private use so that I can deal cards face down from the decks. In this way I can then use CDG solo system. I have set up a separate map board to accept the cards drawn from the decks at the bottom of the map, so I don’t need to use the automated draw buttons, but whatever I do, the cards always appear face up. The checkbox to allow cards to be drawn face down is correct but I still draw face up. Can anyone advise me on what needs to be changed. I’m a bit of a novice at VASSAL but I can follow instructions well enough!!

]]>
https://forum.vassalengine.org/t/adjusting-the-latest-pog-module-fort-solo-play/90000#post_1 Fri, 20 Mar 2026 10:55:00 +0000 forum.vassalengine.org-post-177400
Barbarossa Army Group North, Kieve to Rostov, Army Group South, Army Group Center I am up for 2nd ed of Army Group Center; I can play live through Discord or I can exchange [turns] through email

]]>
https://forum.vassalengine.org/t/barbarossa-army-group-north-kieve-to-rostov-army-group-south-army-group-center/89956#post_2 Fri, 20 Mar 2026 02:22:38 +0000 forum.vassalengine.org-post-177399
Issues with Download, Installation or Running being Blocked @fnf If Gatekeeper is blocking it, try opening VASSAL once with right click and choose Open, then confirm in Security & Privacy if prompted. That usually works without disabling protections completely.

]]>
https://forum.vassalengine.org/t/issues-with-download-installation-or-running-being-blocked/79316#post_3 Fri, 20 Mar 2026 01:23:38 +0000 forum.vassalengine.org-post-177398
Can't add to Gallery?

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_10 Thu, 19 Mar 2026 12:36:54 +0000 forum.vassalengine.org-post-177392
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 Try going to the module page at Dien Bien Phu - The Final Gamble

Then click on the link to Niedowidek’s page…

Then select message to inform the owner of the Dien Bien Phu The Final Gamble of the issue and the solutions I offered.

]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_6 Thu, 19 Mar 2026 15:00:01 +0000 forum.vassalengine.org-post-177391
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 Thanks. but I cannot figure out how to respond since all involved provide no link to message. I keep getting “not public” when I try to find a way to notify someone.

]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_5 Thu, 19 Mar 2026 14:47:17 +0000 forum.vassalengine.org-post-177390
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 You can pass this on to the designer.

The problem is in the Thumbs Test [Action Button] The Button Icon is looking for the image

thumbs up — kopia.png. It is still in the images folder but has been delinked from the button icon.

I can’t be sure, but it looks like this action was a test that is not implemented into the module or never completed. Without knowing the designer’s intent for this action it’s impossible to tell.

The fixes would be to restore or complete the intended action button purpose or if the action is not needed, remove the action completely

or - a new image for the Button Icon can be selected, saved, then removed to clear the process and resaved.

]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_4 Thu, 19 Mar 2026 13:23:48 +0000 forum.vassalengine.org-post-177388
Can't add to Gallery? Would you show me a screenshot?

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_8 Thu, 19 Mar 2026 12:22:20 +0000 forum.vassalengine.org-post-177387
Can't add to Gallery? I didn’t see anything new pop up in the console when I tried it, but eventually the screen had a message:

NetworkError: Request failed

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_7 Thu, 19 Mar 2026 12:11:04 +0000 forum.vassalengine.org-post-177386
Can't add to Gallery? Open the browser console before you try uploading an image. Do you see any errors there?

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_6 Thu, 19 Mar 2026 09:27:12 +0000 forum.vassalengine.org-post-177385
Can't add to Gallery? No, nothing. It acted like I didn’t pick a file and just returned to the main screen with the big + button.

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_5 Wed, 18 Mar 2026 22:33:26 +0000 forum.vassalengine.org-post-177383
Can't add to Gallery? Did you get any error messages?

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_4 Wed, 18 Mar 2026 22:17:04 +0000 forum.vassalengine.org-post-177382
Can't add to Gallery?
vassalengine.org
]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_3 Wed, 18 Mar 2026 22:15:20 +0000 forum.vassalengine.org-post-177381
Can't add to Gallery? For which module?

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_2 Wed, 18 Mar 2026 21:59:44 +0000 forum.vassalengine.org-post-177380
Red Storm: The Air War Over Central Germany, 1987 (live sessions) Hello
I am still looking for some Red Storm games using Vassal/Discord.
I am still located in Europe (GMT+1).

I am interested to play some of these games:
Red Storm: The Air War Over Central Germany, 1987
or the expansions
Red Storm: Baltic Approaches

Thank you

Pierre

]]>
https://forum.vassalengine.org/t/red-storm-the-air-war-over-central-germany-1987-live-sessions/89998#post_1 Wed, 18 Mar 2026 18:09:35 +0000 forum.vassalengine.org-post-177378
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 ...using VASSAL 3.17.20

3.7.20 presumably (the latest version).

]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_3 Wed, 18 Mar 2026 16:07:55 +0000 forum.vassalengine.org-post-177375
Can't add to Gallery? I have owner permissions and I select the pencil which shows the existing photos and the big plus button. I click on the plus which lets me browse to an image and select it but after that it just goes back to the main page. No new image/caption to edit??

]]>
https://forum.vassalengine.org/t/cant-add-to-gallery/89995#post_1 Wed, 18 Mar 2026 14:53:23 +0000 forum.vassalengine.org-post-177374
Help with hex calculations I have found an algorithm to convert hex numbers to cube coordinates and back. This is going to involve a lot of time consuming math, so I have to consider how to implement this best (without going into custom Java code).

But I’ll give it a shot.

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_4 Wed, 18 Mar 2026 14:02:08 +0000 forum.vassalengine.org-post-177372
Help with hex calculations Wow! Gemini certainly seems to have analysed my problem correctly. But unfortunately, Gemini doesn’t tell how to get from hex numbers to cubic coordinates. And frankly, I don’t know the relationship between hexagons and cubes, so I’ll just have to accept that it is right.

As Gemini suspects, I am not comfortable with constructing custom Java code for Vassal, but it seems like I should take a look.

As it stands, my current code gives the correct hexes for most positions. In fact, so much that after having noticed the problem once, I had difficulty recreating it. But once I had found the situation I used as an example, all intercept distances larger than 2 cause an error.

In order to give the players a fine module that works for everything else, I might calculate the distance of the raid to the target, and print a warning message to the playerif it is not correct! Then I could issue a correction later,

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_3 Wed, 18 Mar 2026 10:12:09 +0000 forum.vassalengine.org-post-177371
Help with hex calculations I suspect you will need a more sophisticated solution. Gemini AI’s response is “cube coordinates”, which is the barrier that I’ve encountered before when looking into hex grid calculations for line of sight. Sorry that I lack the expertise and time to give you a more personal response, perhaps some one else can do better. Also, have you come across this site yet?

Gemini AI (caveat emptor):

The issue described in the post is a classic “grid rounding” error. The user is treating hex coordinates (the 4-digit strings like 1605) as standard Cartesian (X,Y) coordinates and applying linear interpolation to them independently. This fails in hex grids because the relationship between the horizontal and vertical axes is not square, and standard rounding on two separate axes often results in a “drift” to an adjacent hex that doesn’t actually lie on the straightest path.

To solve this for a Vassal module, the most robust approach is to convert the coordinates to Cubic Coordinates (x, y, z) where x + y + z = 0.

The Solution: Linear Interpolation (Lerp) in Cube Space

Instead of the user’s current BeanShell math, the algorithm should follow these steps:

  1. Convert to Cube Coordinates: Convert the Origin and Target hexes from Offset (the 4-digit Vassal format) to Cube.

  2. Linear Interpolation: Find the point that is exactly $N$ distance away from the Target toward the Origin.

  3. Cube Rounding: This is the most critical step. Since the “exact” point will have decimals (e.g., x=1.2, y=-3.4, z=2.2), you must round them back to the nearest integer such that the x+y+z=0 constraint remains true.

  4. Convert back to Offset: Convert the result back to the 4-digit string.

Recommended BeanShell/Vassal Implementation

Since the user asked if a function already exists to find a path, they should use the GridLocation and Map classes in Vassal’s API if they are comfortable with custom Java code. However, for a pure BeanShell solution within the module, they can use this logic:

1. Calculate the Ratio

The user wants a hex at a specific InterceptRange from the target. The “progress” along the line (from Target to Origin) is:

t = InterceptRange / Distance

2. The “Cube Lerp” Logic

For each axis (x, y, z), the coordinate of the intercept hex is:

Intercept_x = Target_x + (Origin_x - Target_x) * t

(And similarly for y and z).

3. The “Cube Rounding” Function

This is where the user’s current code fails. To fix it, they need to implement this rounding logic:

Java

rx = Math.round(Intercept_x)
ry = Math.round(Intercept_y)
rz = Math.round(Intercept_z)

x_diff = Math.abs(rx - Intercept_x)
y_diff = Math.abs(ry - Intercept_y)
z_diff = Math.abs(rz - Intercept_z)

if (x_diff > y_diff && x_diff > z_diff) {
    rx = -ry - rz
} else if (y_diff > z_diff) {
    ry = -rx - rz
} else {
    rz = -rx - ry
}

Why the user’s current code failed

The user’s example (Origin 1605, Target 1410, Range 4) failed because they were doing:

((Origin_a - Target_a) / Distance) * InterceptRange

This treats the hexes like they are on a square grid. On a staggered hex grid (like the one in Carrier Battles), every other column is offset vertically. Simple division doesn’t account for the “zigzag” movement required to move diagonally in a hex coordinate system.

By switching to Cube Coordinates, the “distance” between any two adjacent hexes is always 1, and “straight lines” are mathematically consistent, which eliminates the +1/-1 hex error they are seeing.

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_2 Wed, 18 Mar 2026 09:17:02 +0000 forum.vassalengine.org-post-177370
Help with hex calculations In my latest version of the module for “Carrier Battles: Philippine Sea” I make some hex calculations that sometimes do not give the right result. Maybe somebody could advise me a better algorithm.

The situation is this: A Japanese is sent from an origin hex to a target hex some distance away. The target detects the raid when it is 0-5 hexes away from the target. I need to calculate the number of a hex lies the interception distance away from the target hex in a straight line. I have the distance between the origin and the target through the Range() function of attached counters.

I split the hex numbers into a) the first two digits, and b) the last two digits and treat the a and b parts separately. My algorithm goes like this: subtract target from origin, divide by distance, and multiply by Intercept Range, then round. My BeanShell code for the a part is this:

{((Math.abs(((RaidOrigin_a-RaidTarget_a)*100)/Distance*InterceptRange)+50)*((RaidOrigin_a-RaidTarget_a<0)?-1:1)/100)+RaidTarget_a}

The code for the b part is similar.

It works for most situations, but sometimes it gives a wrong result because the rounding of the a and b parts conspire to give a result that is off by one hex.

I can best illustrate this with an example.

Here the origin is Guam at 1605, the target is TF58 at 1410, and the interception range is 4, so the raid should be at 1506 or 1607, but it ended up at 1507 which is only 3 hexes away from the target.

.Perhaps there already exists a function that gives the straight path between two hexes so that one can count until the right hex is found for the raid?

We can ignore the situation where the interception is further away than the distance between origin and target because in that case the raid is placed in the origin hex.

]]>
https://forum.vassalengine.org/t/help-with-hex-calculations/89993#post_1 Tue, 17 Mar 2026 22:55:53 +0000 forum.vassalengine.org-post-177368
SPI Goldberg Kursk Hello, I own original Kursk version, from 1980. I have played it once when I bought it in 1981-82, and no more after that. I would appreciate to play it again. I have downloaded the module v10.

I own Borodino 41 too, and Black sea and Aachen fom the same serie.

I am french

Daniel

[email protected]

]]>
https://forum.vassalengine.org/t/spi-goldberg-kursk/89912#post_2 Tue, 17 Mar 2026 22:23:22 +0000 forum.vassalengine.org-post-177367
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 Visit the module page, and send a message to the user listed as the maintainer for whatever version you’re using.

]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_2 Tue, 17 Mar 2026 21:58:15 +0000 forum.vassalengine.org-post-177366
How do I notify someone about an error in Dien Bien Phu: The Final Gamble using VASSAL 3.17.20 Bad Data in Module: Source: thumbs up — kopia.png Error: Image not found.

  • Dien Bien Phu 2 ed version 1.22vass
]]>
https://forum.vassalengine.org/t/how-do-i-notify-someone-about-an-error-in-dien-bien-phu-the-final-gamble-using-vassal-3-17-20/89992#post_1 Tue, 17 Mar 2026 20:06:57 +0000 forum.vassalengine.org-post-177365
Rules for Europe Series Where may I find the rules of Europa Series and of its single scenaries (Poland, France…)?

Probably I’m very stupid but I cannot find out them.

Help me, please.

]]>
https://forum.vassalengine.org/t/rules-for-europe-series/89991#post_1 Tue, 17 Mar 2026 17:11:24 +0000 forum.vassalengine.org-post-177364
☐ Perform different Key Commands depending on whether properties match I got it through the co-pilot AI, and it did suggest the 3 triggers. I will use your suggestions and reply back with the results. Thanks for your help.

]]>
https://forum.vassalengine.org/t/perform-different-key-commands-depending-on-whether-properties-match/89989#post_3 Tue, 17 Mar 2026 14:39:55 +0000 forum.vassalengine.org-post-177363
I'm the Owner of a Module but I don't seem to have any ability to edit the page Many thanks, Joel!

Scott

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_7 Tue, 17 Mar 2026 11:51:30 +0000 forum.vassalengine.org-post-177362
Disconnection from server today 17/3/26 (and yesterday but time impossible to guess but post 1900 - IP address should be same though as there has been no reboot of the modem)

]]>
https://forum.vassalengine.org/t/disconnection-from-server/89968#post_9 Tue, 17 Mar 2026 11:42:11 +0000 forum.vassalengine.org-post-177361
Disconnection from server On what date?

]]>
https://forum.vassalengine.org/t/disconnection-from-server/89968#post_8 Tue, 17 Mar 2026 11:35:21 +0000 forum.vassalengine.org-post-177360
Disconnection from server circa (best I can do here), 1900 (ish) Australian eastern daylight saving

]]>
https://forum.vassalengine.org/t/disconnection-from-server/89968#post_7 Tue, 17 Mar 2026 11:34:04 +0000 forum.vassalengine.org-post-177359
Disconnection from server I need specific time to check for; an IP address isn’t sufficient.

]]>
https://forum.vassalengine.org/t/disconnection-from-server/89968#post_6 Tue, 17 Mar 2026 09:51:20 +0000 forum.vassalengine.org-post-177358
I'm the Owner of a Module but I don't seem to have any ability to edit the page I’m away this week, so not responding as quickly as normal.

The Scott_Eagles account was a placeholder account created during last year’s module library conversion. Placeholder accounts were created when there were usernames we couldn’t automatically associate with accounts.

I’ve merge the placeholder Scott_Eagle account into the seagles account.

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_6 Tue, 17 Mar 2026 09:49:30 +0000 forum.vassalengine.org-post-177357
Disconnection from server

As an aside, losing the server connection still leaves the user logged into the game. That created another issue as I was the game host and Vassal would not let me log back in.

]]>
https://forum.vassalengine.org/t/disconnection-from-server/89968#post_5 Tue, 17 Mar 2026 09:38:32 +0000 forum.vassalengine.org-post-177356
Improve execution speed Success!

I split up the code in three “action markers” that call each other sequentially, and kill themselves after use, and that did the trick. The code is now executing at the speed I hoped for.

Actually, there is one stage where there is a slight wait time while the code calculates the facing of a couple of units based on the direction to a target. The rest of the code in the same action counter executes fast, so I can’t speed it up further by introducing a fourth action counter. This code does some simple arithmetic, and I might be able to speed it up by trying to eliminate BeanShell, by I don’t know if it is worth it.

I have not transformed the tables because the speed is already fast.

Instead of making the action counters invisible, I gave them some red graphics that flashes like a little explosion in the hex, and looks nice in my opinion.

Thanks for the thoughts and inspiration.

]]>
https://forum.vassalengine.org/t/improve-execution-speed/89928#post_18 Tue, 17 Mar 2026 09:12:21 +0000 forum.vassalengine.org-post-177355
☐ Perform different Key Commands depending on whether properties match
bhfredjenni:

☐ Perform different Key Commands depending on whether properties match

Are you referencing some document or the like? Please provide the source for the above - I cannot seem to find it.

You need two Trigger Action traits - one for the true condition and one for the false condition. If you want the command visible in the context menu, then you may need three Trigger Action traits - one to steer the call, and the other two for the true and false conditions.

Without context menu command

  • Trigger Action
    • Name: Control-C if properties match
    • Command: empty
    • Key: Ctrl-C
    • Action keys: [Ctrl-J,Ctrl-C] (or IncrRowIndex and CheckSlotAgain)
    • Property: {RowIndex == $RowIndex$ && PieceName != $PieceName$ && CurrentMap == "YourMapName"}
  • Trigger Action
    • Name: Control-C if properties do not match
    • Command: empty
    • Key: Ctrl-C
    • Action keys: [Ctrl-M] (or MoveToSlot)
    • Property: {RowIndex != $RowIndex$ || PieceName == $PieceName$ || CurrentMap != "YourMapName"}

If you need a visible command from the context menu, add the two above Trigger Action traits, but replace the Key in both cases with somethine else - say doCtrlC (named command), and add another trigger trait

  • Trigger Action
    • Name: Steer Control-C
    • Command: "Do the command" (Context menu entry)
    • Key: Ctrl-C
    • Action keys: [doCtrlC]

The reason is, that Vassal will always try to add commands with context menu titles - even if their conditions are disjoint.

BTW, your condition seems off. The condition is executed in the context of the piece, which means that PieceName and $PieceName$ as well as RowIndex and $RowIndex$ will always be the same. Thus, your test is always false. However, if you Piece’s name is A, then

{PieceName!=$PieceName$}

will effectively become

{String("A")!=A}

which will cause an exception, because the variable A is not defined, and you cannot compare a string to an undefined value. Instead, you need

{PieceName!="$PieceName$"}

which will become

{String("A") != "A"}

which is valid. In short, it seems you need to remove the PieceName!=$PieceName$ and RowIndex==$RowIndex$ from your condition.

The pattern PropertyName == $PropertyName$ is really most useful when a command is sent from one piece to another - as in Global Key Command, Place Marker, Replace with Other, Set Piece Property, or Attachment, when matching against other pieces. For example, piece A with property Foo with value "Bar" want to send a command to other pieces with the properpty Baz that has value "Bar", then a selection criteria would be

{Baz == "$Foo$"}

Note the quotes - the $...$ expressions are substituted, on the sender side, with the literal value of the property on the sender side - before the comparison is done on the receiver side.

Yours,
Christian

]]>
https://forum.vassalengine.org/t/perform-different-key-commands-depending-on-whether-properties-match/89989#post_2 Tue, 17 Mar 2026 07:13:16 +0000 forum.vassalengine.org-post-177354
☐ Perform different Key Commands depending on whether properties match How can I locate the: ☐ Perform different Key Commands depending on whether properties match

in the Trigger window? I’m trying to add If True: If False:

 Trigger Action: CheckSlot
   - Command: CTRL C
   - Condition:
       AnyPiece(
         RowIndex == $RowIndex$
         && CurrentMap == "YourMapName"
         && PieceName != $PieceName$
       )
   - If TRUE Performs:
         CTRL J   (IncRowIndex)
         CTRL C   (CheckSlot again)
   - If FALSE Performs:
         CTRL M   (MoveToSlot)

]]>
https://forum.vassalengine.org/t/perform-different-key-commands-depending-on-whether-properties-match/89989#post_1 Tue, 17 Mar 2026 05:11:22 +0000 forum.vassalengine.org-post-177352
I'm the Owner of a Module but I don't seem to have any ability to edit the page Thanks, Jonathan!

S.

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_5 Tue, 17 Mar 2026 02:22:54 +0000 forum.vassalengine.org-post-177351
Development plan, 2026-02-23 I can’t wait for this. It’s gonna be revolutionary!

]]>
https://forum.vassalengine.org/t/development-plan-2026-02-23/89925#post_2 Mon, 16 Mar 2026 22:36:47 +0000 forum.vassalengine.org-post-177350
I'm the Owner of a Module but I don't seem to have any ability to edit the page The other Joel – @uckelman – is actually the admin. I expect he’ll see that I just tagged him.

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_4 Mon, 16 Mar 2026 22:16:29 +0000 forum.vassalengine.org-post-177349
I'm the Owner of a Module but I don't seem to have any ability to edit the page Hi Joel – thanks for contacting me. Am I supposed to ask you to merge my duplicate accounts?

If so, “Please merge my duplicate accounts.” :slight_smile:

Thanks,
Scott

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_3 Mon, 16 Mar 2026 22:04:12 +0000 forum.vassalengine.org-post-177348
I'm the Owner of a Module but I don't seem to have any ability to edit the page You have duplicate accounts: Profile - Scott_Eagles - Vassal and Profile - seagles - Vassal

Ask for them to be merged.

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_2 Mon, 16 Mar 2026 21:37:34 +0000 forum.vassalengine.org-post-177347
I'm the Owner of a Module but I don't seem to have any ability to edit the page The module is question is: The Long Road - Module Library - Vassal

I’m the owner but have no editing capability. What I want to do is add another site user as an Owner.

Anyone know what I’m missing here?

Thanks, Scott

]]>
https://forum.vassalengine.org/t/im-the-owner-of-a-module-but-i-dont-seem-to-have-any-ability-to-edit-the-page/89988#post_1 Mon, 16 Mar 2026 19:28:03 +0000 forum.vassalengine.org-post-177346
Mouse-over Stack Viewer - To show all pieces non stockables Hello friends, I’m a newbie at creating games in Vassal, and I’m quite picky about the stacking aspect. I create my pieces like deck cards, I think there’s no problem doing that, right?

For my game, I have larger cards that are the locations and smaller cards that are items, enemies, or heroes, which should be placed on top of the larger cards without movement restrictions. To avoid selecting the larger cards, I set them to only be selected when CTRL is pressed.

So far so good. Now I wanted to create a Mouse-over Stack Viewer function to zoom in on all the pieces that are on top of the larger card, but the best I could do was show only one card at a time.

Is there a solution to this? Please help me.

]]>
https://forum.vassalengine.org/t/mouse-over-stack-viewer-to-show-all-pieces-non-stockables/89987#post_1 Mon, 16 Mar 2026 18:48:12 +0000 forum.vassalengine.org-post-177344
Stellar Horizons 2 Galactic Frontier updated to 1.3.0 Oh yeah, I just remembered. There are top menu buttons (‘Game Piece Inventory’ official terminology). That report number and current locations of various pieces.

Players do have to have the center of the ship counter inside the system hex for correct reporting. Players can click on the ship in the list to center the view on selected ship/Base/Trade-Demand

]]>
https://forum.vassalengine.org/t/stellar-horizons-2-galactic-frontier-updated-to-1-3-0/89958#post_9 Mon, 16 Mar 2026 15:27:39 +0000 forum.vassalengine.org-post-177340