3.1.19: bugs or undocumented behavior?

I was updating the Tonkin module (Legion Wargames) using 3.1.19, and I had three problems that took me two days to sort out. I am unsure if the problems are bugs or expected (but undocumented) behavior.

  1. A piece in the game has a Layer trait. It is always active. It has two levels. The first level has no image (null image). The second level has a png image. When I edit the Layer trait (the first time per edit session), I get the message “Bad Data in Module: Image not found.” I think this is a poor and uninformative message for a setup that the documentation says is valid.

  2. A piece in the game uses a prototype with two traits in the trait list in the following order:
    Report Action - ^D delete
    Delete

I have set the Delete trait to delete the piece with control-D. The report format is “$playerSide$ deletes $newPieceName$. ($oldLocation$)”.When I delete the piece, the chat window message prints a null for oldLocation: “()”. I change “oldLocation” to “location”, but I get the same result. Now if I switch the order of the report and delete traits so that report is AFTER/LOWER than delete, then location and oldLocation print correctly.

  1. There is a similar behavior with the report trait and send-to-location. I have a piece with two traits listed in the follower order:
    Report Action - ^K from hex to dead zone
    Send to Location - ^K to dead zone

The report format is “$oldPieceName$ sent ($oldLocation$ to $location$)”. The message I get is “piece sent (dead zone to dead zone)”. (“dead zone” is the destination.) If I switch the traits so Report is AFTER/LOWER, I get the desired result: “piece sent (0711 to dead zone)”.

It appears that report traits must be lower than delete or send-to-location traits in the trait list. Otherwise, the reports print undesireable value for locations. It took me a lot of work to figure this out. I have not found any odd behavior using the report trait with other traits.

2 and 3 are consistent with what I’ve experienced. I could have sworn I read somewhere that there is a problem with Send to Location properly updating the system properties for a piece. As a workaround I’ve had to do all kinds of aggravating workarounds using Triggers to get the messaging I want.

Thus spake shilinski:

I was updating the Tonkin module (Legion Wargames) using 3.1.19, and I
had three problems that took me two days to sort out. I am unsure if the
problems are bugs or expected (but undocumented) behavior.

  1. A piece in the game has a Layer trait. It is always active. It has
    two levels. The first level has no image (null image). The second level
    has a png image. When I edit the Layer trait (the first time per edit
    session), I get the message “Bad Data in Module: Image not found.” I
    think this is a poor and uninformative message for a setup that the
    documentation says is valid.

  2. A piece in the game uses a prototype with two traits in the trait
    list in the following order:
    Report Action - ^D delete
    Delete

I have set the Delete trait to delete the piece with control-D. The
report format is “$playerSide$ deletes $newPieceName$.
($oldLocation$)”.When I delete the piece, the chat window message prints
a null for oldLocation: “()”. I change “oldLocation” to “location”, but
I get the same result. Now if I switch the order of the report and
delete traits so that report is AFTER/LOWER than delete, then location
and oldLocation print correctly.

  1. There is a similar behavior with the report trait and
    send-to-location. I have a piece with two traits listed in the follower
    order:
    Report Action - ^K from hex to dead zone
    Send to Location - ^K to dead zone

The report format is “$oldPieceName$ sent ($oldLocation$ to
$location$)”. The message I get is “piece sent (dead zone to dead
zone)”. (“dead zone” is the destination.) If I switch the traits so
Report is AFTER/LOWER, I get the desired result: “piece sent (0711 to
dead zone)”.

It appears that report traits must be lower than delete or
send-to-location traits in the trait list. Otherwise, the reports print
undesireable value for locations. It took me a lot of work to figure
this out. I have not found any odd behavior using the report trait with
other traits.

Do any of these problems still occur with 3.2.0-svn8397?


J.