Hi Darren,
First up, not sure how you created those images, but they can be very greatly reduced in size without loss of quality. They seem to be completely uncompressed. For example, the size of the YB40_Planview.png reduced from 5.6Mb to 0.4Mb and Strategic_Map_Blank.png from 5.5Mb to 0.006Mb (6Kb) just by resaving them in Gimp , stripping the guff and turning on maximum compression. Thatâs even before running them through something like optipng.
Ok, First problem that is causing the Bad Module error is your main statement is not correct
{(GetProperty("M-3 German Offensive Fire_result") != 6 && ((FighterContinues_Level == 2) ? -1 : 0}
should be
{(GetProperty("M-3 German Offensive Fire_result") != 6 && (FighterContinues_Level == 2)) ? -1 : 0}
That groups your two comparisons as one and feeds them into the ? which has to have a true or false as the first argument. What you has was trying to do ( true && -1) which does not compute.
The second problem is that this isnât the place to be returning -1 or 0.The âTrigger when properties matchâ (or any other âMatch expressionâ field must have an expression that results in either true or false. Actually false, doesnât really matter, true or âtrueâ is taken as true and anything else is false.
The Trigger Action trait canât actually change any values, it is just a sequencing mechanism to tell other traits to fire off in a specific order when something else happens.
I think what you actually need here is a Calculated Property (Iâll go through that in a moment).
Third problem is that the value of FighterContinues_Level is actually 1 when I ran this, not 2, so no -1 will be added (even though this is the wrong place).
A Calculated property creates a Named âpretendâ property that does some calculations and be used elsewhere just like a normal property.
So, assuming the FighterContinues_Level problem is resolved, then create a Calculated property called M3Result with the following expression:
GetProperty("M-3 German Offensive Fire_result") + ((GetProperty("M-3 German Offensive Fire_result") != 6 && FighterContinues_Level == 1) ? -1 : 0)
This is taking the result of the roll, then adding -1 if the roll was not 6 AND the FighterContinues_Level == 2
You can now use M3Result as a property anywhere else INSIDE that piece and it should have the value you want.
If you want to use that value OUTSIDE that piece, then you need use more advanced techniques like Set Global Property and Global Key Commands or Global Hotkeys, controlled by more Triggers.
NOTE that you canât change what the Dice button generates without these more advanced techniques, but you can remove the Report Format from the Dice Button so that it doesnât report anything, and then report the roll result using a Report Action trait on your fighter piece.
Hope this gives you some ideas.
Regards.